2011-08-29 1 views
2

그러나 RPG 스타일 게임을 디자인하는 과정에서 데이터를 저장하는 측면에서 가장 합리적인 데이터베이스 모델링/시스템을 사용하려고했습니다.게임 캐릭터 및/또는 스프라이트를 표현할 때 가장 효과적인 모델은 무엇입니까?

나는 우리가 선택의 일부 :

  • 클래식 관계형 사용하는 ORM (? 교리 2)
  • 되는 NoSQL/스키마 적은 데이터베이스

    • 클래스 관계형 데이터베이스 (올드 스쿨 쿼리를() 아니오 조인)

    내 생각에는 게임 개체를 처리 할 수 ​​있고 데이터베이스 개체로 매핑 할 수 있으므로 ORM이 가장 적합하다고 생각했습니다. 그러나 나는 기존 게임 개발자들이 사용한 의견이나 관행에 대해 개방적이다.

    이 문제에 대한 의견을 보내 주시면 감사하겠습니다.

  • +3

    내가 게임을 코딩 할 때와 내가 Real-World [TM] 게임을 마지막으로 확인했을 때 확실히 ** 포함되지 않은 SQL DB가 함께 제공되지 않았습니다. RPG 싱글 플레이어인가 온라인인가? 온라인 일 경우 중앙 집중식 서버가 있습니까? 아니면 피어 투 피어가되어야합니까? 어쨌든, 스프라이트는 거의 항상 ** 클라이언트 측에서 렌더링되며 일반 게임 클라이언트에는 SQL이 포함되지 않습니다. – SyntaxT3rr0r

    +0

    RPG가 온라인 상태가됩니다. 중앙 서버가 있습니다. – jini

    +0

    @ SyntaxT3rr0r 누가 온라인으로 재생되지 않을 경우 누군가가 PHP (Doctrine 2에서 암시 되었음)를 고를 것으로 의심됩니다.) –

    답변

    1

    최고의 성능을 얻으려면 DAO 클래스, 평범한 오래된 쿼리 및 필요한 최적의 특수 데이터 개체를 사용해야합니다. 처리가 매우 복잡해질 수 있지만 모든 것을 제어 할 수 있습니다. Mapper 클래스를 사용하여 게임 객체를 데이터베이스 객체에 매핑하거나 그 반대로 매핑 할 수 있습니다.

    ORM은 사용하기가 훨씬 쉽지만 특별한 작업 (조인 및 기타 이와 같은 대상 쿼리)을 수행 할 때 성능과 유연성이 떨어지는 경우 손실됩니다. 팀이 ORM없이 데이터베이스 기반 응용 프로그램을 개발하는 데 익숙하지 않은 경우에도이 옵션을 선택합니다.

    NoSQL도 좋은 옵션이 될 수 있지만 관계형 데이터베이스와 비교할 때 상당히 장점/단점이 있으므로 특히 자세한 설명은 충분하지 않습니다. 장점은 특정 경우의 단점보다 중요합니다.

    관련 문제