Программирование игр на Objective-C и Linux

Я хотел бы дать Objective-C попытку в игровом программировании. Проблема в том, что для этого мне понадобятся некоторые инструменты и библиотеки.

Первое, что приходит в голову, мне нужен графический интерфейс и графическая библиотека.

Какие у меня есть варианты?

Ответ 1

Существуют четыре варианта реализации Mac для классов OpenStep/ Cocoa для платформы Objective C:

  • Только для OpenStep/NextStep: только для серверов Openstep/NeXT. - Снято с производства.
  • p..... может запомнить имя или найти его в Интернете - это где-то там! - Linux
  • Cocotron - только для Windows
  • GNUStep Linux/Windows

GNUSTep - это путь для Linux... Я упоминаю там других, потому что 2 и 3 доступны в источнике, и они могут использоваться для исправления дыр в коде, который GNUStep не имеет, и они могут.

Когда речь заходит о графической библиотеке, у вас могут возникнуть проблемы, потому что Apple отошла от старых API OpenStep и продолжала развивать свои API намного быстрее, чем пользователи GNUStep могут играть догонять. Поддержка новейших графических библиотек, таких как Core Animation, не поддерживается.

Поскольку Objective C является дружественным к C и С++, вы можете использовать любую из этих библиотек как есть, или сделав Objective C дружественным, создав обертку.

Вы можете или не хотите быть совместимым с Mac и делать версии для этого, поэтому это может быть не важно.

Если вы это сделаете, вы можете захотеть сделать Linux Wrapper для чего-то вроде OpenGL, если он отсутствует, и я думаю, что он есть, но проверит себя....

Существуют Linux-инструменты для разработки, включая проект IDE и GUI-конструктор для GNUStep в Linux.

Тони

Ответ 2

Я считаю, что вы просите GNUStep.

Ответ 3

SDL - это библиотека C, популярная для игрового программирования.

Если вы ищете материал Foundation/AppKit, вы также можете посмотреть Cocotron. Я никогда не пробовал, хотя.

Ответ 4

Поддержка SDL содержит Objective-C привязки здесь. Однако поскольку Objective-C является тонким слоем OO поверх C, вы можете использовать большинство существующих C lib для разработки игр, SDL, Clanlib и т.д.