大家好,今天小编关注到一个比较有意思的话题,就是关于电脑游戏编程语言有哪些的问题,于是小编就整理了1个相关介绍电脑游戏编程语言有哪些的解答,让我们一起看看吧。
游戏一般用什么编程语言开发?
近来遇到有很多人想从其它开发领域转到游戏开发行业上来,他们或许觉得游戏开发工资高,或许觉得做游戏开发需要掌握的技术更高级,可以锻炼自己,或许觉得想换个等等。不管出于什么原因吧,都是希望自己获得更好的发展。
游戏用什么编程语言开发?
2.如果想只是做windows方面的游戏学习,可以学习下DirectX,这个很方便在windows下做游戏开发。
3.如果要制作跨平台游戏,建议学习下opengl/opengles,这是个很强大很专业的图形接口,因为很多平台支持所以适合跨平台游戏制作使用。
4.然后接着要是想学习3d游戏并迅速工作,建议学习u3d引擎、ue引擎这些游戏引擎,有了以上的基础学习这些引擎也可以理解的更深入,u3d还会用到c#与js语言。
5.做2d游戏,可以使用cocos2dx等一些引擎,当然你也可以使用上面的3d引擎制作2d游戏。
6.然后就是可以深入的研究一些开源的游戏引擎,终极目标是可以自己做出一款比较棒的游戏引擎。
游戏开发是一个过程,为了激发玩家玩游戏热情,通过遵循设计制作规则,来设计人物、场景等游戏要素。游戏开发现在主要分为PC端游戏开发和移动端游戏开发,无论是PC端还是移动端,目前用到比较多得无非是C++、jcocos2d-x,objective-c等。
别局限在语言上面。就手游来讲,10年前是J2ME的java语言,和看起来很高大上的C语言。现在都是C++、Object-C、C#、Java以及各种脚本语言。这些语言被使用的背后是硬件的升级(不要忘记摩尔定律)和更好的解决方案的推出。举例来讲,Unity3d流行使很多C++阵营的人一夜之间用上C#,Cocos2d-x的流行又使人离不开C++。苹果的手机漫天都是的时候,Object-C也就成为了很多开发者必须要会的东西。所以,选择的时候,首要的不是语言,而是你选择用什么东西做游戏。语言只是其中的一部分,不能本末倒置。
客户端看游戏引擎,像现在最火的unity3D 就是C#+lua做手游开发,虚幻的话就是C++,h5方向有两个引擎分别是egret和laya box 用的是typescript。
服务端的话主要有3个流派,分别是cpython,clua 和erlang 。j***a 不入流,做什么都行,反过来就是做什么都不行。
总结就是服务端多语言混编交互的很多,各语言都有各自的发挥,客户端跟引擎走。
游戏本身会运行在不同的平台,而平台也影响了使用的语言。平台主要有2大类,PC(也就是常用的电脑)和手机。它们上面都可以使用网页来运行游戏,所以额外我们把网页浏览器上面跑的叫WEB端。针对上面的3种平台类型。我们来聊一聊这些平台上常见的游戏是用什么开发的。
PC端。大部分的游戏是C/C++开发的。这主要是因为我们使用的操作系统如window,mac的底层都是c。使用C/C++可以极大的发挥性能上面的优势。比如下面这个NBA2K18就是用C/C++为主开发的。
手机端。手机端的游戏我们称为手游。手机上面的操作系统主要是ios与android,也就是苹果和安卓系统。在之前,android上面的游戏以j***a开发居多。这是因为android系统本身就是以j***a开发为主。ios上面的游戏以object c开发居多,这也是因为系统本身的缘故。最近ios又出来swift语言。但是随着技术的发展,程序员们发现一款游戏要部署到各个平台的成本太高了。所以现在主流的技术是使用跨平台的游戏引擎开发,然后发布到不同的平台。所以,语言的选择从对平台的依赖变成了对游戏引擎的依赖。那我们就要看看主流的游戏引擎有哪些?主流的游戏引擎有:unity,cocos,unreal等。unity***用的是C#语言为主。cocos下面以C++、lua、js等开发语言。unreal主要是以C++为主。从上面这些中你会发现语言有很多,使用的也很多。在商业项目以及目前主流技术中,大部分高水准的游戏是以C++结合lua来开发的。C++负责处理高性能的部分,lua处理逻辑部分来加快开发速度。即使是使用unity引擎,大部分产商也会选择C#结合lua的方式来开发。C#负责核心部分,lua处理逻辑部分。
再聊一下WEB端。WEB端以前是以flash为主,常见的就是4399的很多小游戏,都是flash为主。WEB端主要是一个html与js的[_a***_]。目前WEB开发国内主要是3大引擎:白鹭、laya以及cocos-js。它们的主要开发语言为typescript,这主要是因为typescript可以提供非常快的开发速度(就像lua一样),同时它还具备提前暴露问题的能力。
实际上上面的部分主要聊的是游戏客户端。在游戏领域,实际上分为服务端和客户端。客户端指对外玩家可以见到的画面表现等。服务端是运行在产商自己的服务器上的,支持玩家之间互相可见,同步,聊天等各种逻辑。对于服务端的语言,目前有C++结合lua以及C#、j***a、php等。这几种都很常用,主流的大的游戏依然是C++为主。中小型的游戏各种都会用到。php常用于对网络需求很低的游戏的做简单的数据处理。
上面的主要是一些理论,下面我们来实战几个问题,一会我们再来总结。
1. 王者荣耀是用什么开发的?王者荣耀使用的是unity引擎,而这种全民级别的游戏是非常注重性能的。所以它***用的是C++结合C#。核心用C++,逻辑用C#。为什么不是我们前面说的C#结合lua呢?因为腾讯有这个技术实力,所以他们整体使用了更有性能优势的语言开发。
2. 微信里面的小游戏是用什么开发的?小游戏本质上是个WEB的执行环境。所以它上面的很多游戏都是typescript或者js开发的。之所以typescript还没有普及,是因为它的社区不够活跃。
3.怎么猜测一款游戏是什么语言开发的?先上网搜索它的开发引擎,如果搜索到了就看看它对性能是否要求高,来推导它的使用语言。如果搜索不到,那很可能是自研引擎。自研引擎大部分都是C++实现的。
到此,以上就是小编对于电脑游戏编程语言有哪些的问题就介绍到这了,希望介绍关于电脑游戏编程语言有哪些的1点解答对大家有用。