我似乎找不到这个问题的简单、简洁的答案。
我正在将我的一款游戏移植到 Android。这是我第一次尝试这样做,这个系统太陌生了,以至于削弱了我对新系统的 react 能力。
我维护了一个看起来像这样的跨平台代码库:
Windows_Core/
Mac_Core/
iOS_Core/
Linux_Core/
Android_Core/
Game_Code/
游戏本身驻留在 Game_Code 中,每个系统的每个项目要么设置系统自己的“核心”代码的包含路径,要么就 XCode 而言,只是将核心代码添加到项目中。
我如何在 Android Studio 2.2 中使用 Gradle 模仿它?我尝试添加到 gradle 脚本中的任何内容都会被忽略或导致实际错误。
如果我使用 Gradle 生成一个新的 NDK 项目,我该怎么做才能添加我现有的 Game_Code/*.cpp/h 以使它们成为项目的一部分,并设置一个正确的包含路径以便代码像
#include "graphics_core.h"
将从 Android_Core/拉取 ?
最佳答案
使用 CMakelists 将您的代码包含并构建到共享库中。 https://developer.android.com/studio/projects/add-native-code.html
具体来说,在您的 GameCode/和 Android_Core/目录中使用 CMakeLists,并在根目录中使用 CMakeList 为这两个目录调用“add_subdirectory”。
这是简单的部分。实际上,您想要的是一个使用 OpenGL ES 2+ 绘制到屏幕的 native_activity 示例:https://github.com/googlesamples/android-ndk/tree/master/hello-gl2
我什至会推荐使用 nVidia 工具:https://github.com/PolygonTek/BlueshiftEngine/tree/master/Engine/Source/Dependencies/nvidia ,尤其是 nv_file 和 nv_egl 实用程序。
关于android - 将 C++ 添加到 Android Studio 2.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44096913/