zoukankan      html  css  js  c++  java
  • 最适合游戏开发的语言是什么?

    很多朋友都想了解这个问题,最适合游戏开发的语言是什么?下面就跟大家分享下!

    1、先说结论:

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

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

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

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

    类似的,现在编写爬虫绝大多数情况下都会使用python;学习AI的课程 99%会采用python+TensorFlow;网页前端基本只能用javascript(以及js的衍生语言比如typescript)。

    由于现在做技术非常有必要沿着前人的路继续走,所以只能选择相对成熟的技术和语言,没有太多自由选择的空间。

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

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

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

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

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

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

    3、关于入门、熟悉和深入开发

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

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

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

  • 相关阅读:
    Cocos2d-x游戏《雷电大战》开源啦!要源代码要资源快快来~~
    Tomcat部署项目时出错java.lang.IllegalStateException: ContainerBase.addChild: start:org.apache.catalina.Life
    PCA主成分分析Python实现
    C语言知识结构之二
    javascript中构造函数的返回值问题和new对象的过程
    poj 1694 An Old Stone Game 树形dp
    Android新技术学习——阿里巴巴免Root无侵入AOP框架Dexposed
    c++中vector向量几种情况的总结(向量指针,指针的向量)
    Hash分析
    三期_day05_Dao层的准备工作_II
  • 原文地址:https://www.cnblogs.com/dyf214/p/14109743.html
Copyright © 2011-2022 走看看