Двигатели построены на пигме - PullRequest
3 голосов
/ 24 октября 2009

В настоящее время я пишу RTS для pygame и написал несколько модулей поверх pygame для общих вещей, таких как эффективное обнаружение столкновений, система состояний и другие специализированные спрайты. Теперь, когда я пишу игры, кроме Rect и Surface, я почти не пишу никаких вызовов самой Pygame.

Когда гуглил по этому поводу, я не нашел ничего, что могло бы позаимствовать у pygame для большей части игрового дизайна. Итак, мне было интересно, если кто-нибудь еще использовал какой-нибудь движок, построенный на pygame, и нашел ли он полезным для работы. Я также планировал выпустить игру и движок с открытым исходным кодом, поэтому я хочу знать, как много других сделали, и что я должен делать или интегрировать в свой движок.

1 Ответ

6 голосов
/ 24 октября 2009

Ну, сама Pygame - это, по сути, оболочка Python для вызовов SDL. Я думаю, что по сути вы просто обернули бы упаковку.

Вы всегда можете создать свой собственный API-интерфейс адаптера, но что конкретно в API Pygame вам настолько не нравится, что вы чувствуете, что должны отделить его от своего кода?

Я думаю, что ваши общие методы, такие как пользовательское обнаружение столкновений, могут быть выделены в его собственный модуль движка, по сути, отделяя его от остальной части вашего игрового кода, но, по сути, вы просто используете этот подход поверх Pygame, не оборачивая это.

EDIT:
Так же, как продолжение теперь, когда вопрос изменился. Короткий ответ, нет, я не знаком с любым. Возможно, вы захотите посетить форумы Independent Gaming Source , эти люди кажутся достаточно осведомленными. Просто убедитесь, что вы публикуете ответы, которые найдете здесь.

Длинный ответ, вполне возможно, что пространство "движка" между Pygame, который обрабатывает вызовы SDL, и я думаю, что некоторая дополнительная логика (например, обнаружение столкновений), и сам код игры слишком малы, чтобы кто-то мог написать универсальную библиотеку для него. Существенно разные типы игр имеют разные требования к движку, и общие части движка, которые являются общими для всех типов игр, как представляется, покрываются самой Pygame.

Если вы написали RTS-игру в Pygame, то вы наверняка могли бы отделить RTS-движок от игровой логики, это, вероятно, помогло бы вашему общему дизайну, разделив проблемы. Кроме того, возможно, стоит выпустить этот движок, чтобы другие люди, желающие написать RTS в Pygame, могли извлечь из этого пользу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...