我正在考虑开发一个游戏引擎,我可以在其中为android和其他移动平台制作游戏,我没有线索。我只看到了针对特定平台制作游戏引擎的教程,并没有找到针对各种平台制作游戏引擎的教程!请给我一些提示
如果你真的想为Android制作游戏引擎,我建议你阅读Game and Graphics Programming for iOS and Android with OpenGL ES 2.0。他的项目样本太老了,而且是在Eclipse上编写的(Google不支持Android开发),我花了很多时间把他的旧项目转换为Android Studio。他的源代码非常小,但在新设备上运行顺畅。他的项目也包括iOS XCode项目,但也做了一些小的修改,将旧的XCode迁移到新的。两个Android和iOS项目共享95% C源代码(真正的跨平台)和一些平台代码(Android的Java和iOS的Objective-C,但只有5%)。
我还建议你考虑在跨平台游戏引擎中使用OpenGL ES图形API,而不是使用多个图形API,因为你可以使用Google ANGLE项目将OpenGL ES图形API转换为其他设备的本地API,如DirectX (Windows PC, Windows Phone), Metal (MacOS, iOS), Vulkan, Desktop OpenGL只有一个代码库。基于OpenGL ES API的最成功的游戏引擎是Godot engine。使用ANGLE的最流行的项目之一是Google Chrome。
2014年,苹果宣布他们的Metal API不支持OpenGL ES(但我测试了OpenGL ES项目仍然在新的iOS 13上运行),所以如果使用OpenGL ES,唯一的选择是ANGLE。如果你想关注ANGLE Metal,可以关注这里
初始化时,微软创建的Windows运行时(Windows Store, Windows Phone)只是支持DirectX,但他们也创建了教程的角度转换OpenGL ES到DirectX,见这里的教程