游戏一般用什么编程语言开发

游戏一般用什么编程语言开发,第1张

一般的大型游戏开发不是单一用某一种软件语言的问题。一个大型游戏的开发需要非常大的团队用各种各样的语言和工具来完成。

总结一下主要有C/C++,汇编语言,着色器语言,脚本语言,高效的开发语言C#或Java。

首先一般的游戏开发架构(Windows平台)从底到顶一般是Direct X™——游戏引擎——游戏。

大型游戏开发的大部分工作其实都是在编写游戏脚本,脚本是大型游戏得以如此高速开发和发布的主要原因。脚本化的开发让游戏开发摆脱了硬编码的种种弊端,让游戏内容可以轻易的修改和调试。比如比较流行的语言。,然后编写脚本将其组织成一个游戏,不需要什么底层的编程语言。

Windows平台比较流行的方法是使用最新版本的Visual Studio,显卡厂商如NVIDIA也会为VS开发一些插件来简化显卡编程和调试。

扩展资料:

汇编语言

为了克服机器语言难读、难编、难记和易出错的缺点,人们就用与代码指令实际含义相近的英文缩写词、字母和数字等符号来取代指令代码(如用ADD表示运算符号“+”的机器代码),于是就产生了汇编语言。所以说,汇编语言是一种用助记符表示的仍然面向机器的计算机语言。汇编语言亦称符号语言。

汇编语言由于是采用了助记符号来编写程序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程过程。汇编语言的特点是用符号代替了机器指令代码。而且助记符与指令代码一一对应,基本保留了机器语言的灵活性。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。

汇编语言中由于使用了助记符号,用汇编语言编制的程序送入计算机,计算机不能象用机器语言编写的程序一样直接识别和执行,必须通过预先放入计算机的 “汇编程序“的加工和翻译,才能变成能够被计算机识别和处理的二进制代码程序。

用汇编语言等非机器语言书写好的符号程序称源程序,运行时汇编程序要将源程序翻译成目标程序。目标程序是机器语言程序,它一经被安置在内存的预定位置上,就能被计算机的CPU处理和执行。

汇编语言像机器指令一样,是硬件 *** 作的控制信息,因而仍然是面向机器的语言,使用起来还是比较繁琐费时,通用性也差。汇编语言是低级语言。但是,汇编语言用来编制系统软件和过程控制软件,其目标程序占用内存空间少,运行速度快,有着高级语言不可替代的用途。

高级语言

不论是机器语言还是汇编语言都是面向硬件的具体 *** 作的,语言对机器的过分依赖,要求使用者必须对硬件结构及其工作原理都十分熟悉,这对非计算机专业人员是难以做到的,对于计算机的推广应用是不利的。计算机事业的发展,促使人们去寻求一些与人类自然语言相接近且能为计算机所接受的语意确定、规则明确、自然直观和通用易学的计算机语言。

这种与自然语言相近并为计算机所接受和执行的计算机语言称高级语言。高级语言是面向用户的语言。无论何种机型的计算机,只要配备上相应的高级语言的编译或解释程序,则用该高级语言编写的程序就可以通用。

如今被广泛使用的高级语言有BASIC、PASCAL、C、COBOL、FORTRAN、LOGO以及VC、VB等。这些语言都是属于系统软件。

计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过“翻译程序”翻译成机器语言形式的目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即编译方式和解释方式。

编译方式是:事先编好一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户由高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是:源程序进入计算机时,解释程序边扫描边解释作逐句输入逐句翻译,计算机一句句执行,并不产生目标程序。

PASCAL、 FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。每一种高级(程序设计)语言,都有自己人为规定的专用符号、英文单词、语法规则和语句结构(书写格式)。高级语言与自然语言(英语)更接近,而与硬件功能相分离(彻底脱离了具体的指令系统),便于广大用户掌握和使用。高级语言的通用性强,兼容性好,便于移植

游戏需要运行到不同的平台上,所以平台也在一定程度上影响游戏开发使用的语言。目前我们熟知的平台主要分为两大类:PC端和移动端。

PC端:使用的编程语言大部分是我们熟知的C/C++,因为我们使用的 *** 作系统如window,mac的底层是C,而使用C/C++可以极大的发挥性能上的优势;

移动端:又可以分为IOS与Android两个方向来说。Android上面的游戏以Java开发居多,大概是因为安卓系统本身就是以Java开发为主的;IOS上面的游戏以object c开发居多,也主要是因为系统本身的因素;

但因为一款游戏要部署到各个平台的成本太高了,所以现在主流的技术是使用跨平台的游戏引擎开发,然后发布到不同的平台。因此现在选择语言主要看主流的游戏引擎使用哪些语言。主流的游戏引擎有:unity,cocos,unreal等。其中,unity是以C#语言为主;cocos有C++、lua、js等开发语言;unreal也主要是以C++为主。

事实上,大部分高水准的游戏是以C++结合lua来开发的。C++负责处理高性能的部分,lua处理逻辑部分来加快开发速度。即使是使用unity引擎,大部分产商也会选择C#结合lua的方式来开发,C#负责核心部分,lua处理逻辑部分。

以王者荣耀为例,王者荣耀团队的相关文章中有明确提到,客户端,也就是手机上的的APP是用的Unity3D游戏引擎。具体的开发语言以C#为主。至于王者荣耀的后端编程语言,基本可以确定是C++,C++到现在都是腾讯公司的核心技术栈,并且游戏领域,使用java/php 等语言很难达到游戏对性能的要求,编程难度较大。

如果是想要选择一门语言学习,那么需要考虑自己未来的发展方向,是想做大项目还是做小项目。网游之类的大项目,目前推荐C++和lua。如果是微信里面的小游戏之类的小项目,推荐的是js或typescript。

以上就是关于游戏一般用什么编程语言开发全部的内容,包括:游戏一般用什么编程语言开发、游戏开发需要用哪些编程语言,JAVA或者C可以开发游戏不、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9485302.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存