У меня уже есть достаточный опыт работы с C ++ и OpenGL, и я недавно решил попробовать разработку мобильных игр. После успешного создания простого Android-приложения OpenGL ES с использованием Java я исследовал способы нацеливания на Android и iOS с использованием как можно меньшего количества кода для переписывания. Я пытался использовать инструменты разработки кроссплатформенных приложений для Visual Studio 2015, но обнаружил, что они слишком новые и поэтому крайне недокументированы. Я мог бы создать проекты шаблонов, которые дала мне программа, но я не мог понять, как, используя эти шаблоны, я мог бы добавлять ресурсы в игру или обрабатывать ввод с сенсорного экрана.
У меня, к сожалению, особое желание, слишком конкретное, чтобы найти его в Google. Я хочу сделать игру OpenGL ES с использованием C ++, с тонкими платформо-зависимыми обертками для Android и iOS. Люди задавали мне подобные вопросы (хотя и не совсем одинаковые), и несколько человек ответили, что то, что я хочу сделать, не только возможно, но и относительно просто, поскольку мне не нужно беспокоиться об интерфейсе пользователя.
Я пробовал этот урок , но ему почти три года, и, вероятно, он предназначен для более старых технологий, и в результате я столкнулся с различными неучтенными ошибками. На данный момент, тем не менее, этот учебник - самая близкая вещь к тому, что я хочу, что я нашел. Все остальное либо только для Android, либо я рекомендую платить сотни долларов в год за использование Marmalade SDK. Иногда я чувствую, что просто пишу код дважды, один раз на Java и один раз в Objective-C, но меня мотивирует знание того, что это решение возможно, но по какой-то причине нигде не освещено в современных деталях.
Подводя итог, я хочу сделать игру OpenGL ES для iOS и Android с единой базой кода C ++, обернутой в небольшие объемы кода, специфичного для платформы. Однако, несмотря на то, что несколько человек рекомендовали этот подход, никто не может сказать мне, как это сделать. Может кто-нибудь сказать мне, если это действительно возможно, и если да, что я могу сделать или куда я могу пойти, чтобы узнать, как?