我听说如果我在不使用NDK的情况下开发Android游戏,性能会明显降低。这是真的吗?
答案 0 :(得分:14)
我看到使用NDK的3个主要原因:
在所有其他情况下,您可以选择自己喜欢的任何内容。 SDK / Java允许您以与NDK相同的方式使用OpenGL,因此您的图形不会变慢。你应该小心使用GC来获得流畅的游戏体验。如果你的游戏非常占用CPU,你可以用C ++编写一些方法并通过JNI调用它们。顺便说一句,Dalvik有JIT,所以Java代码可以像C代码一样快(有时甚至更快)。
答案 1 :(得分:7)
不,这根本不是真的。
这在很大程度上取决于你的特定游戏在做什么。关键问题是:是你的游戏将是CPU密集型(或需要更大量的内存)。
选择NDK而不是SDK的一个原因是拥有C ++的巨大背景,这可能会让您在该环境中更有效率。但是,考虑到工具集的当前状态(方便的调试,构建时间,易于访问SDK库等),这很少有效。
答案 2 :(得分:1)
不,你不需要使用ndk,除非你想制作一个超逼真的3D游戏,如Real Racing 3,如果它是一个简单的图形游戏或没有太多时间关键的东西java是好的