切换到宽版
  • 348阅读
  • 1回复

虚幻引擎的开发语言分析 [复制链接]

上一主题 下一主题
离线xg_55
 

目前使用虚幻引擎进行开发,可选择5种语言,C++,蓝图,Lua,JS,C#。我们逐个比较分析:

C++
C++的优势显而易见,那就是效率高,速度快。这也是C++开发人员一直所推崇的。
但是C++开发是有门槛的,首先C++难学,难用。而且对于大规模代码来说,用C++编程可能是噩梦。后期大部分时间都用来调试BUG,无穷无尽。
所以C++效率高,说的是程序执行效率,而不是开发效率。就目前的行业开发人员比例来说,一般不会有人使用C++开发游戏。


蓝图
蓝图开发对于非编程人员来说很好用,而且前期调试也方便。但是蓝图写不了大规模代码,看下面这张图就知道了

蓝图基本上就等于不可维护,明明几行代码可以搞定的东西,蓝图实现可能要连接得自己都搞不清。总的来说,蓝图只适合用来娱乐,或者开发小型的游戏,代码量稍微一多,可能就变得不可维护了。

Lua
虚幻官方提供了Lua脚本插件。Lua的优势是在跨平台性。也是许多游戏引擎使用的脚本,就目前来看,Lua一般作为热更的解决方案。Lua是解释执行的,效率不高,其次,Lua语言本身不是真面向对象语言,虽然Lua语言可以模仿出面向对象的效果,但是,使用起来,细节非常之多,如果你不了解它的实现方案,很多时候都会感觉莫名其妙的效果,如果你了解了Lua的内部实现机制,就会明白为什么会出现这些效果。这增加了Lua语言的难度。而且目前虚幻官方也没有完全的支持Lua语言,只是有一个初级的插件范例,用户还是需要手动扩展这个插件。

JS
虚幻商城有一个插件,Unreal.JS。这个插件可以使用java script语言进行开发。java script,本质上来说,跟Lua语言没什么不同。而且这个插件目前只支持两个平台:Windows和Mac

C#
最近新出的插件,UnrealCS。使用这个插件可以使用C#语言进行开发。 C#是纯面向对象的语言,开发效率与执行效率都很不错,在中国,大概有250万unity开发人员。unity引擎是使用C#开发的,这是极大的成功案例。所以,unity开发人员如果转虚幻4引擎,C#语言是首选。基本上不用什么额外的学习成本,就可以很轻松的过渡到虚幻开发中来,并且现有的unity代码,只要改一些API接口,也可以很容易的移植到虚幻引擎。借助虚幻引擎强大的渲染功能,将使现有的unity游戏的品质更上一层楼。有人曾经试过将一款用unity开发的格斗游戏移植到虚幻引擎,基本上只用了2天、。
但是目前这款插件只支持Windows版本。插件底层也是跟unity一样,使用mono实现的。所以对于这个插件的跨平台特性来说,还是很期待的。


当然,也可以选择多钟语言混合开发。这个就看个人喜好了



离线lvzuoxin

只看该作者 沙发  发表于: 02-10
喜欢C#语言,如果能很好支持这个语言写代码就非常好,开发效率奇高
快速回复
限100 字节
批量上传需要先选择文件,再选择上传
 
上一个 下一个