我从未编写过游戏,但是有大约十几年的编程接口。在我的Android手机上玩了几款游戏之后,我一直想知道用什么语言来编写像“愤怒的小鸟”这样的游戏,以及如何进行这种图形操作。母语或某些跨平台代码?
谢谢!
答案 0 :(得分:10)
我不确定,但考虑到愤怒的小鸟app文件夹中有很多.lua文件,我会说他们在某些方面使用了LUA。 但是从我所听到的情况来看,LUA不是一种主要语言,只是用来编写脚本的东西。 也就是说,我也不是一个obj-c程序员,所以请耐心等待。
答案 1 :(得分:5)
Android应用程序使用Android开发工具包用Java编码,iphone游戏用Objective c编码
此处提供Android开发工具包 http://developer.android.com/index.html
iphone(iOS)开发套件在这里可用(注意需要一个mac) http://developer.apple.com/devcenter/ios/index.action
由于这两种语言都是基于C语法的,因此代码的基本部分之间存在很多交叉兼容性,但是与手机的交互都是通过各自的sdk来完成的,因此您将不得不对其进行更改。说明这一点。另外值得注意的是iphone上的目标c不是垃圾回收所以你需要担心内存管理!
答案 2 :(得分:5)
AngryBirds(以及其他一些游戏)正在使用C / ++代码和NDK。来源:What language was used to program the 'Angry Birds' app?,http://www.gamasutra.com/view/feature/6481/postmortem_vector_units_riptide_.php
答案 3 :(得分:1)
至少必须是C的核心。如果我是他们,我会在C中编写核心并为它包装java(我认为你可以这样做)和iPhone的目标c(我知道你可以这样做)。
答案 4 :(得分:1)
我一直认为这些开发人员用c / c ++编写核心功能,然后使用本机开发工具包来连接这两者。例如,我知道在android开发中你可以使用NDK来包装java c / c ++
http://developer.android.com/sdk/ndk/index.html
具有讽刺意味的是,在这种情况下,Java不是“一次构建,每次运行都运行”语言:p