游戏开发需要学习什么语言

发布时间 : 2020-04-17

  游戏编程语言多种多样,学好每一种编程语言,对于游戏程序开发来说都至关重要。但根据现阶段及未来游戏的发展方向来说,还是有侧重点的,那哪一种语言是比较重要的呢?

博思游戏开发

  现代各种领域的开发技术已经成熟,不再能随意选择开发语言和技术栈,绝大多数情况下只能使用比较流行的方案、工具、和语言。

  以上观点不仅适用于游戏开发领域,其实更适用于网页前端、网站后端、爬虫、大数据、AI等等其它方向。

  举个例子:用python开发游戏其实是很有趣的,特别是语法上比较便利。但是随着时代发展,采用python的游戏引擎越来越少、越来越边缘化,离主流技术越来越远。

  现在有些人选择用python做游戏更多的就只是以学习为目的了,缺少很多常用的工具、技术支持,需要自己造轮子,离做出真正的游戏会比较远。

  类似的,现在编写爬虫绝大多数情况下都会使用python;学习AI的课程 99%会采用python+TensorFlow;网页前端基本只能用javascript(以及js的衍生语言比如typescript)。由于现在做技术非常有必要沿着前人的路继续走,所以只能选择相对成熟的技术和语言,没有太多自由选择的空间。

  具体到游戏开发上,如何选择呢?

  目前王道之选应该是Unity引擎,开发语言为C#。它也是在与Cocos2d、UE4等成熟引擎的竞争中脱颖而出的,在功能、效果、开发难度上取得了很好的平衡。优点不需多言,反正是大多数人的选择。

  其次是UE4(虚幻4,unreal engine 4),UE4对于高性能设备(电脑和PS4等)支持更好,用于开发手游也不错。上手UE4的主要问题是知识系统相对繁杂。

  比如Unity的物理系统,碰撞体、刚体组件都比较简单和统一,脚本联动也很好理解,初学者掌握起来很快。相比之下UE4的相关组件要多很多,且由于窗口比较多,初学者往往会迷失在一些奇怪的地方(当然熟悉了之后就没问题了)。

  UE4的开发语言是C++,但是游戏逻辑可以不写一行代码,直接用“蓝图”解决。使用“蓝图”开发游戏的利弊就不展开说了,总之UE4为用户提供了“较低的门槛”与“较高的门槛”这两种选择;而Unity是提供了统一一种“适中的门槛”。具体好坏见仁见智了。

  游戏开发还有另一个分支——H5游戏,也就是微信小游戏、网页游戏等,也可以打成app包。在这个领域中,cocos2d-h5又大有用武之地。但是目前这个领域主要还是服务于小游戏、简单类型的游戏的,离“现代游戏开发技术”有一点距离。

  现代引擎已经提供了很友好的开发方式和编程方式,Unity的C#,UE4的蓝图等等。建议初学者把绝大部分精力花在这些主流的开发技术上面。无论用哪种语言和技术,其思想以及解决问题的方法都是相通的,使用主流技术学习曲线更平滑、提高也更快。

  另一方面,C/C++这些更底层、潜力更大的语言未来也要掌握。对于想走技术路线的人来说,这些底层技术是迟早要掌握的(初学者可以不急着先学这些)。不仅在UE4里面C++可以直接用到;即便是用Unity,掌握C/C++以及了解底层原理也会大有裨益,比如现在流行的tolua等扩展库就是把C/C++编写的库与C#做了结合。

  总结来说:首先,一开始要跟上主流技术;其次,游戏开发的技术方面非常注重积累,底层技术这几十年来也一直在发展,C++的地位越发稳固而不可替代。

博思游戏开发

  明确目标是一方面,找到好的学习环境和好的学习资源也非常重要,上海博思游戏学校为零基础学员提供精心设计的游戏程序课程,为学员的游戏开发学习之旅保驾护航。

报名试听

咨询热线

400-720-6969

咨询时间

10:00-23:00

上海博思堂职业技能培训学校 版权所有 沪ICP备11046010号 咨询热线:400-720-6969
上海总校:上海市宝山区沪太路2695号尊木汇国际艺术广场A29栋 武汉分校:武汉市洪山区野芷湖西路16号2号楼503室
上海游戏培训 | 游戏美术 | 游戏学校 | 手机游戏开发 | unity3d培训学校 | 游戏原画 | 3d美术 | 3dmax | 动漫绘画 | 游戏策划 | 网站地图

免费领取网络课程