Использование существующего движка C ++ на iPhone - PullRequest
0 голосов
/ 06 августа 2009

Я пришел из C / C ++ фона и с недавних пор прошился. В любом случае, я написал 2D-движок для AS3 и хотел бы запустить его на iPhone. Для начала я преобразовал его в C ++. В качестве теста я написал очень простой движок C ++ и добавил файлы в стандартное приложение на основе представления в XCode. Затем я добавил UIImageView, который покрывал весь экран iPhone.

Способ, которым на данный момент настроен мой тестовый движок, заключается в том, что каждый кадр выводит результат в изображение, которое затем используется для обновления UIImageView в каждом кадре. Предполагая, что я могу передать ввод с iPhone на движок C ++, это кажется довольно независимым от платформы решением. Поскольку я программировал для iPhone / Mac менее 1 дня, мне было интересно, является ли это стандартным подходом к запуску существующего движка C ++ на iPhone, и если нет, то что?

Ответы [ 2 ]

1 голос
/ 06 августа 2009

Нет проблем при рендеринге изображения и его обновлении, но вы не получаете ускорения от графического процессора при использовании этой техники. Таким образом, вы будете сжигать много циклов ЦП, которые в свою очередь разряжают батарею.

Если объекты, которые вы визуализируете, могут быть описаны в обычных графических примитивах, обязательно используйте API рисования, которые оптимизированы для платформы и могут делегировать работу графическому процессору.

Альтернативный подход заключается в использовании OpenGLES, но у него есть кривая обучения

0 голосов
/ 06 августа 2009

Да, это вполне нормальный способ справиться с этим. Как правило, вы либо используете небольшие заглушки Objective C для своих событий и таких вещей, как выталкивание кадра, либо вы устанавливаете контекст OpenGL и затем передаете его в свой код C ++.

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