2009-10-23 4 views
3

현재 파이 게임에 대한 RTS를 쓰고 있으며 효과적인 충돌 감지, 상태 시스템 및 더 많은 기능을 갖춘 스프라이트와 같은 일반적인 것들에 대해 파이 게임 위에 여러 개의 모듈을 작성했습니다. 이제는 Rect와 Surface를 제외한 게임을 작성하는 동안 파이 게임 자체에 대한 호출을 간신히 작성합니다.파이 게임에 내장 된 엔진

주위를 둘러 보았을 때 게임 디자인의 대부분에서 파이 게임 (pygame)을 대신 할만한 것을 찾지 못했습니다. 그래서, 다른 사람이 파이 게임에 내장 된 엔진을 사용했는지와 궁합이 좋았는지 궁금합니다. 또한 게임과 엔진을 오픈 소스로 공개 할 계획 이었기 때문에 다른 사람들이 얼마나 많은 일을했는지 ​​알고 싶었고, 그래서 내 엔진에 통합하거나 통합해야 할 것입니다.

+2

여기 래퍼라는 용어를 잘못 사용했을 수도 있습니다. 파이 게임 (Pygame) 위에 레이어 된 게임 엔진에 대해 실제로 이야기하고 있습니까? –

+0

나는 당신이 옳다고 생각한다. 나는 wrapper 대신 파이 게임 대신에 게임 엔진을 쌓아 두었다. 나는 지금 질문을 편집 할 것이다. – Nikwin

답변

6

음 Pygame 자체는 본질적으로 SDL 호출에 대한 Python 래퍼입니다. 본질적으로 당신은 래퍼를 감쌀 것입니다.

당신은 항상 자신 만의 어댑터 API를 만들 수 있지만, 특히 Pygame의 API에 관해서는 싫어하므로 코드에서 분리해야한다고 생각하십니까?

사용자 정의 충돌 감지와 같은 일반적인 방법은 본질적으로 나머지 게임 코드와 분리되는 고유 한 엔진 모듈로 분리 될 수 있다고 생각합니다. 그러나 본질적으로이 방법을 사용하면 Pygame 위에 레이어링하는 것만으로도 충분합니다. 그것을 포장하지 마십시오.

편집 :
이제 질문이 변경되었습니다. 짧은 대답, 아니에요. 나는 익숙하지 않습니다. The Independent Gaming Source forums을 확인해보십시오. 그 사람들은 상당히 지식이있는 것처럼 보입니다. 그냥 여기에있는 답을 게시하십시오.

긴 대답은 SDL에 대한 호출을 처리하는 Pygame과 충돌 감지와 같은 몇 가지 추가 논리를 생각할 때 "엔진"공간이 생길 수 있으며 게임 코드 자체가 누구에게나 너무 좁은 공간 일 가능성이 있습니다 그것을위한 일반 라이브러리를 작성합니다. 근본적으로 다른 유형의 게임은 엔진 요구 사항이 다르며 모든 게임 유형에서 공유되는 엔진의 일반 부분은 파이 게임 자체에서 다루는 것으로 보입니다.

Pygame에서 RTS 게임을 작성했다면 게임 로직에서 RTS 엔진을 분리 할 수 ​​있습니다. 그러면 우려를 분리하여 전반적인 디자인에 도움이 될 것입니다. 또한, 파이 게임에 RTS를 쓰고 싶어하는 다른 사람들이 그 혜택을 누릴 수 있도록 엔진 조각을 출시 할 가치가 있습니다.