首页 文章

Kotlin为游戏开发

提问于
浏览
0

背景:

我一直在寻找一种语言来取代Java用于游戏开发 . Kotlin看起来很有前途,有很好的IDE支持和Java互操作 . 但是游戏的FPS杀手之一(特别是在Android上)就是GC使用 . 因此,一些库(如libgdx)正在使用对象池,自定义集合和其他技巧来避免频繁的GC运行 . 对于Java,可以以明确的方式完成 . 其他一些JVM语言本身具有功能支持,使用大量GC本质,因此很难避免 .

问题:

  • 与Java相比,Kotlin是否会创建任何不可见的GC开销?

  • Kotlin的哪些功能最好避免GC工作量减少?

2 回答

  • 2

    根据经验,Kotlin生成的字节码尽可能接近Java生成的字节码 . 因此,例如,如果您将函数用作值,则将创建内部类,就像在Java中一样,但不会更多 . 还有一些优化技巧,如 IntArrayinline ,表现更好 .

    正如@ Peter-Lawrey所说,衡量特定案例的 Value 总是一个更好的主意 .

  • 3

    从技术上讲,你将Kotlin与Java进行比较的问题没有实际意义,他们的表现也是如此 . 但Kotlin将是一个更好的开发体验 .

    如果Java适合编写游戏,那么Kotlin只会因开发人员的工作效率而更好 .

    Note: 游戏库LWJGL 3部分使用Kotlin,GitHub统计显示67.3%的代码是Kotlin(模板模块看起来主要是Kotlin) . 所以询问使用LWJGL的人会给你最好的答案,因为他们在这方面有很多经验 .

    Github Language Stats for LWJGL3

相关问题