首先是开发效率,在几年前手机游戏开始火爆,游戏公司多,产品相似度高,那么如何能以最快的速度开发完游戏并且上线运营,在快速迭代中试错,降低开发周期就是减少开发成本。在这种环境下,很多脚本语言成了首选,比如nodejs、php甚至还有lua和python(这里多说一句,别看lua语言本身简单,其实lua在游戏领域的使用成本是非常高的,至少在这四种脚本语言中是最高的,因为他只是一个胶水语言,要依附于c/c++,作为游戏周边的库都要自己造轮子或找轮子,同时对于引擎部分来说,对核心开发人员要求也非常高,如果公司没有经验丰富的c/c++程序员,lua基本玩不转)。在这些脚本语言面前,java毫无优势。nodejs开箱即用,用js可以前后端一起写(html5的流行让这种情况更是越来越多)。而php上手容易,开发简单,而且像一些用http的弱交互游戏,热更新简直不要太爽,无感知修bug。一些简单的休闲游戏,用这些脚本语言完全可以很快速的完成,就拿之前比较火的刀塔传奇来说,用这些脚本语言一点压力都没有,还有特别是棋牌类游戏,脚本语言更是首选。
其次再来说说运行效率,在一些密集型计算的游戏中,c++是首选,一些大型游戏,对计算要求很高,业务逻辑复杂的情况下,提升效率就能多容纳在线人数,也是成本的减少。同时对内存要求也高,使用c++可以数着内存写代码(手法过于夸张[捂脸]),对象啥时候申请,啥时候释放都是程序员说了算,gc消耗不存在的。而java生成的都是字节码,代码执行都要经过jvm来跑,这中间的消耗对于那些对性能要求苛刻的程序来说,绝对不能接受。
综合以上两点,java处于运行效率和开发效率中间的语言,在游戏这个行业自然是不会受到青睐。
各种软件的开发语言列表?
1.Java
Java作为构建现代企业Web应用后端的最常用编程语言之一,是一门必须了解(掌握)的编程语言。网站开发人员凭借Java和基于Java的框架可以为各种用户创建可扩展性的Web应用。Java也是用来开发Android系统原生应用的主要编程语言之一。
2.JavaScript
现代网站离不开JavaScript。如果你想为你的网站创造互动,或者用时下流行的JavaScript框架搭建一个用户界面,那么JavaScript是最佳选择。
3.C#
C#是Windows开发环境下的主要语言。无论你是用微软云计算平台Windows Azure和.NET框架来创建现代网页应用,还是开发Windows设备上的应用,又或者是为你的企业开发功能强大的桌面应用,C#能够迅速地帮助你驾驭微软提供的所有功能。可以开发游戏吗?当然。非常流行的Unity游戏开发引擎就把C#作为了自己的主要开发语言之一。
4.PHP
网页应用需要加载数据,这个时候怎么办?用PHP。PHP语言和MySQL一类的数据库,是开发现代网页应用的最基本工具。PHP应用于绝大多数的数据驱动网站,也是内容管理系统的基础技术,比如WordPress,系统地管理你的网站内容,使之更合理。
5.C++
前面几个太难,想了解简单一点的?那就试试C++吧。当你需要直接访问硬件获得最大的处理能力时,C++是不二选择。它是开发强大的桌面软件、硬件加速的游戏,以及开发在桌面、控制端和移动设备上的内容密集型应用的最佳编程语言。
6.Python
Python几乎可以做任何编程工作。Web应用、用户交互界面、数据分析、统计等等——不管是什么问题,你总能在Python中找到需要的框架。近期,Python又成为了数据科学家用来筛选大型数据集的重要工具。
7.C语言
为何C语言如此经久不衰?答案是“小身材,大功能。”因为C语音占用的空间很小,但是处理速度和功能却很强大。如果你需要为嵌入式系统开发软件,需要处理系统内核或者想要利用手头的每一点资源,除了C语言,还有更好的选择吗?
有什么推荐的书或者学习链接吗?
当然可以学会了,unity游戏开发主要从三个方面下手
编程语言
引擎使用
进阶操作
编程语言
通常来说,使用unity开发游戏的话,是需要进行编程的,这也是实现游戏功能最重要的部分。unity支持的编程语言主要是C#,之前也有一些人使用JavaScript,也有使用lua作为辅助的,个人推荐还是使用C#和lua的组合。
学会了编程语言,就可以实现游戏的逻辑了,比如“按什么键,让物体如何移动”,“什么情况判断游戏胜利”,“什么情况出发角色死亡”等等。
引擎使用
下载官方unity引擎,个人开发者不商用的话也可以免费使用的。根据制作游戏的需要,学习对应的模块就可以了。比如制作2D游戏,那么就学习一些图片相关的,如果制作3D游戏,那么就要再学习一些模型相关的。
将一个对象,可以是图片、模型、文字等等,与编写的代码绑定在一起,点击运行,就可以让对象按照代码的描述方式运行,这就是最基本的游戏了。
unity内部也有很多免费和付费的插件,都是已经制作好的功能了,合理使用的话可以大大加快游戏开发效率,一些编辑插件也可以让一些不会编程的人也能制作游戏,不过这种功能都是被提前固定好的,想要实现一些新颖的玩法还是需要自己编程实现。
进阶操作
在满足了游戏可以玩这个重要条件后,如果还想将游戏制作地更好的话,还需要为游戏添加动画、特效、Bgm、音效、剧情等等,如果需要一些特殊功能如地图、透视、buff、自定义、存档读档等功能的话,还要进行相关学习。
想要学会还是可以学会的,只要用心慢慢学就可以了。推荐的书还是根据自身情况吧,毕竟有的书有图,有的没图,有的是中文,有的是英文,当然看一些视频也不错。贴吧,论坛,qq群,业界大神雨松MOMO(之前坐偶旁边)的个人网站都是学习的好地方。
如果觉得《什么编程语言能开发游戏 为什么Java不适合游戏开发 – 游戏开发 – 前端》对你有帮助,请点赞、收藏,并留下你的观点哦!