TBH Работа по переносу, подобная этой, задействована, но довольно проста.
Прежде чем начать, заменив все на DirectX звонки с «заглушек» (то есть пустые функции). Вы делаете это, пока не сможете скомпилировать программное обеспечение. После того, как он скомпилирован, вы начнете реализацию всех функций заглушки. На пути будет много ошибок, но это стоит того.
Если вам нужен порт и поддержка телефонов перед iPhone 3GS вы имеете более сложную задачу, поскольку оборудование поддерживает только GLES 1, который с фиксированной функцией только. Вам придется как-то «подражать» этим шейдерам. На мобильных платформах я написал в прошлом код ассемблера, который выполняет «вершинное затенение» непосредственно на данных вершин. Пиксельное затенение часто более сложное, но вы можете обычно предоставлять достаточную информацию через «вершинную затенение», чтобы добиться этого. Некоторые графические функции, которые вы можете просто потерять.
В более поздних версиях iPhone используется GLES 2, так что у вас есть доступ к GLSL ... ATI написал, и у Aras P славы Unity3D было расширено программное обеспечение, которое будет порт HLSL code to GLSL.
После того, как вы сделали все это вы получите на этапе оптимизации. Вероятно, вы обнаружите, что ваш первый проход не очень эффективен. Это совершенно нормально. На этом этапе вы можете посмотреть код с более высокого уровня и посмотреть, как вы можете перемещать код и делать что-то по-другому, чтобы получить лучшую производительность.
В итоге: Ваш первый шаг будет получить код для компиляции без DirectX. Следующим шагом будет фактический перенос вызовов DirectX на вызовы OpenGL ES. Наконец, вы захотите реорганизовать оставшийся код для лучшей производительности.
(P.S: Я был бы рад сделать портирование работы за вас связаться со мной через мою страницу щий профиль;).).
Эти компьютерные игры для настольного компьютера, которые вы хотите перенести на мобильное устройство? Насколько интенсивны графики, я предполагаю, что они 3D, ожидаемая частота обновления 30 кадров в секунду?Используете ли вы DirectX9? –
Да, это настольные игры с 3D, но ничего особенного они все 10 лет и довольно упрощены. – rjstelling