现代各种领域的开发技术已经成熟,不再能随意选择开发语言和技术栈,绝大多数情况下只能使用比较流行的方案、工具、和语言。
以上观点不仅适用于游戏开发领域,其实更适用于网页前端、网站后端、爬虫、大数据、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++的地位越发稳固而不可替代。

not about
https://www.jianshu.com/p/bd6c26c564ef

适用于游戏开发领域的语言相关推荐

  1. 游戏开发适合什么语言?

    游戏开发适合什么语言?哪种语言最好呢?今天就来跟大家分享下! 1.先说结论: 现代各种领域的开发技术已经成熟,不再能随意选择开发语言和技术栈,绝大多数情况下只能使用比较流行的方案.工具.和语言. 以上 ...

  2. 在Visual Studio 2012中使用VMSDK开发领域特定语言(一)

    前言 本专题主要介绍在Visual Studio 2012中使用Visualization & Modeling SDK进行领域特定语言(DSL)的开发,包括两个部分的内容.在第一部分中,将对 ...

  3. 在Visual Studio 2012中使用VMSDK开发领域特定语言(二)

    本文为<在Visual Studio 2012中使用VMSDK开发领域特定语言>专题文章的第二部分,在这部分内容中,将以实际应用为例,介绍开发DSL的主要步骤,包括设计.定制.调试.发布以 ...

  4. 基于游戏开发的C语言大作业视频集锦

    基于游戏开发的C语言大作业视频集锦 从2014年至今,尝试了基于游戏开发的C语言程序设计教学,每次课程均会布置大作业,以下视频为一些学生做的大作业视频集锦. 基于游戏开发的C语言大作业视频集锦 后续, ...

  5. 怎么进入游戏开发领域?

    先学好一门基础的编程开发语言,掌握基本的数据结构与常用的算法,比如C/C++,C/C++与数据结构,比如Java与数据结构.这个是入门编程的最基本的要求. 游戏开发分为服务端开发与客户端开发,你先想下 ...

  6. B2B电子商务网站建设怎么做:B2B系统开发流程、语言、架构解答

    一个B2B电子商务系统建设的要点是什么?如何选择合适的B2B电子商务网站开发语言?想要开发一个属于自己公司的B2B系统网站需要先定位好市场.产品以及选择什么样的语言程序架构等等. 一.主流的B2B电子 ...

  7. [Unity3D]Unity3D游戏开发Lua随着游戏的债券(于)

    ---------------------------------------------------------------------------------------------------- ...

  8. 学习游戏开发,有哪些常识需要了解

    https://baijiahao.baidu.com/s?id=1594194162947494181&wfr=spider&for=pc 玩游戏这么简单的事情,是个人都会.三岁孩童 ...

  9. U3D游戏开发工程师正确入行姿势指南

    2021年,游戏圈上演了一场精彩绝伦的抢人大战.在上海游戏圈,年薪百万的人越来越多了. 据多名HR估算,在上海,过去一年TA.引擎.美术等稀缺岗位拟的薪资涨幅大概在20%-30%左右.某位圈内知名资深 ...

  10. Windows游戏开发感想一个完整的Windows窗口程序

    现在的互联网行业从事Windows游戏开发的人实在是太少了.一是因为门槛较高,游戏行业本来就是互联网行业最尖端的领域,要想从事游戏开发,不仅要掌握一门过硬的语言,尤其是对C++的精通,还要对算法非常精 ...

最新文章

  1. HTML在线编辑器控件
  2. 笔记-高项案例题-2019年上-人力资源管理
  3. Linux 小知识翻译 - 「邮件服务器」
  4. 静态ip ssh无法登录_识别动静态IP的技巧
  5. 当爬虫遇到需要动态ip才能获取资源的时候如何解决?
  6. 桂林电子科技大学计算机专业排名,桂林电子科技大学专业排名怎样
  7. vscode中断点调试nodejs实用方便
  8. 大数据如何更好进行分析
  9. MySQL 第一次练习(安装MySQL)
  10. Pytorch总结十五之优化算法:AdaGrad、RMSProp、AdaDelta、Adam算法详解
  11. Topaz DeNoise AI 人工智能降噪插件
  12. 5. find操作详解
  13. 201771010112罗松《面向对象程序设计(java)》第二周学习总结
  14. Java 中的 String、StringBuffer、StringBuilder
  15. 操作系统的基本特征、区别及功能
  16. QQ商家(QQ在线咨询,QQ推广等)
  17. 嵌入式工程师必备技能--如何使用示波器查看IIC波形
  18. NAT网关(SNAT,DNAT)
  19. 《Java 核心技术 卷1》 笔记 第11章 异常、日志、断言和调试
  20. 大疆Phantom 4 RTK 通过4G SIM卡来控制飞机

热门文章

  1. 前端静态页面html珠宝首饰电商平台网站购物商城系统.rar含源码
  2. 软件测试简历上实战项目:开源项目部署--litemall商城
  3. 【Matlab语音识别】声纹识别系统(带面板)【含GUI源码 1022期】
  4. table导出excel php_php导出excel表格的方法分享(代码)
  5. Himall商城LinqHelper帮助类(1)
  6. linux 系统硬件信息检测工具,在Linux上查找系统hwinfo硬件信息工具
  7. CNVD、CNNVD、CICSVD等区别与联系详解
  8. 基于Chrome内核(WebKit内核)定制开发DoNet浏览器
  9. 共轭梯度(CG)算法
  10. fanuc系统网络服务器,FANUC的网络配置.doc