游戏开发主要有哪些语言
① 游戏开发需要用哪些编程语言,JAVA或者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。
② 游戏开发,需要学习什么编程语言
主要是C#。
游戏编程也是编程,都是需要敲代码的。所以基本的语言基本功是不能少的,比如C语言或者C++或者C#至少要精通其中一门。精通到什么地步呢,基本数据结构和基础的算法还有设计模式你得非常熟悉。这样算是入门了。
接下来你就可以选择一个游戏引擎了,市面上主流的游戏引擎有两种一个Unity3D一个虚幻四。但是这两款引擎的脚本语言并不一样,Unity是C#虚幻四是C++所以在学习之前要想好使用引擎开发什么类型的游戏。
主要学的内容如下:
1.游戏程序设计:C++程序设计入门;基本数据类型和输入输出;流程控制语句;数组、指针和引用、函数;程序结构和书写规;范结构体和联合体、类;继承与多态;异常处理与程序调试。
2.算法与数据结构:算法分析;数据结构;基本算法;STL的概念与使用;静态库与动态库;XML库的使用。
3.Win32程序设计:Windows程序入门;Windows消息;GDI绘图游戏工具与MFC;网络编程基础。
4.游戏数学和智能应用:游戏中的坐标系;矢量、矩阵;几何碰撞;物理模拟;人工智能与寻路算法。
5.2D游戏技术与应用:2D游戏技术概论;游戏地图系统;GUI系统;战斗系统设计;任务系统;优秀的声音引擎BASS;Cocos2D-X引擎;Box2D物理引擎。
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。
③ 做游戏用哪种语言
游戏开发分网页游戏,flash,java游戏俗称小游戏,基本上都是一些休闲类的傻呆萌的情节和操作,这类游戏开发相对比较简单,会javascript, flash cs, java 就可以进行开发了。
开发游戏我们经常听到的是游戏引擎,一个游戏引擎决定一个游戏最基本的东西操作和效果,那么一般的游戏开发架构从底到顶一般是Direct X(Windows平台)——游戏引擎——游戏。
Direct X可是大名鼎鼎相当于所有显卡的一个统一接口,为游戏提供一个利用硬件渲染的编程模型,但Direct X接口为了追求高性能功能非常简单基本的绘图功能,不利于游戏的高效开发。
此时就需要根据游戏特点对其进行适当的取舍和封装,实现一组更高抽象的游戏开发接口和框架,可以理解成游戏引擎中的图形引擎。这部分的开发一般使用的语言是C/C++和少量的汇编语言。
游戏引擎是一个非常复杂的功能聚合体,所有的游戏开发工作都是在之上进行的。包括图形引擎,音频引擎,碰撞引擎,艺术资源管理,脚本引擎等等。
基础语言C/C++,这个是必选项那要提高些效率是不是还得会点汇编语言。一些东西需要重复性的工作来做,我们是不是应该会点脚本语言?至少不用重复的去干某一件事情。
基础的讲完了,高大上的东西是不是也得搞搞,不是搞搞是要精通。Direct X是建立在OpenGL上的,OpenGL语法类似C语言,游戏执行时被编译加载到显卡上,在实现硬件渲染速度的同时又实现了软件编程的灵活性。
游戏开发人员都对游戏开发的绝大部分知识都有一定的了解,如果是客户端程序员,基本上需要了解以下知识:
图形学,图形API(D3D/OGL),算法/数据结构,物理,游戏逻辑,音乐音效,人工智能,编程语言,设计模式,操作系统,工具编写,UI。
(3)游戏开发主要有哪些语言扩展阅读:
编程语言种类
1、汇编语言
汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。
它同样需要编程者将每一步具体的操作用命令的形式写出来。汇编程序通常由三部分组成:指令、伪指令和宏指令。
2、脚本语言
脚本语言是为了缩短传统的编写-编译-链接-运行过程而创建的计算机编程语言。此命名起源于一个脚本“screenplay”,每次运行都会使对话框逐字重复。
早期的脚本语言经常被称为批量处理语言或工作控制语言。一个脚本通常是解释运行而非编译。
虽然许多脚本语言都超越了计算机简单任务自动化的领域,成熟到可以编写精巧的程序,但仍然还是被称为脚本。
几乎所有计算机系统的各个层次都有一种脚本语言。包括操作系统层,如计算机游戏,网络应用程序,字处理文档,网络软件等。
在许多方面,高级编程语言和脚本语言之间互相交叉,二者之间没有明确的界限。
脚本编程速度更快,且脚本文件明显小于如同类C程序文件。这种灵活性是以执行效率为代价的。脚本通常是解释执行的,速度可能很慢,且运行时更耗内存。
在很多案例中,如编写一些数十行的小脚本,它所带来的编写优势就远远超过了运行时的劣势,尤其是在当前程序员工资趋高和硬件成本趋低时。
3、机器语言
由于计算机内部只能接受二进制代码,因此,用二进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算机的机器语言,用机器语言编程的程序称为目标程序。
只有目标程序才能被计算机直接识别和执行。但是机器语言编写的程序无明显特征,难以记忆,不便阅读和书写,且依赖于具体机种,局限性很大,机器语言属于低级语言。
4、高级语言
高级语言是大多数编程者的选择。
和汇编语言相比,它不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等,这样就大大简化了程序中的指令。
同时,由于省略了很多细节,编程者也就不需要有太多的专业知识。
高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,像最简单的编程语言PASCAL语言也属于高级语言。
参考资料:
网络-编程语言
④ 游戏开发需要懂几种语言
游戏开发大致可以分为PC端游戏开发和移动端游戏开发,但不管怎样都离不开这三大语言,即Java、C语言和C++语言,用来的开发引擎主要就是Unity3D和Cocos,比较熟悉的还是unity.
Unity过去主要针对3D游戏开发的市场,目标是占领整个游戏开发团队。72%的以游戏开发类别为首要工作的参与者选择Unity作为他们的首选游戏开发工具。采用Unity目标定位于桌面平台的开发又占了一半,这可显然比均值高很多,此外还有一些其他的垂直功能,例如视觉结构,军事仿真和教育等Unity都迎合了设计者的需求。
编译原理之类的都需要学习;动画做工具),STL,而不是程序。这些只是属于基础知识,只有引擎并不是一个游戏,比如说一个网游里面有10个副本:
网络游戏里面有副本系统。
如果你单纯想知道游戏引擎相关的技术,线性代数,撤销,你说的操作系统,数据结构,有了引擎。
比如说你会需要了解3DSMAX Script(用来给美术,自动存盘,场景,里面怪物的模型,不过根据不同的游戏类型可以设计出各种不同的开发工具,等等之类的;粘贴NPC;动画,游戏本身事实上是数据驱动的,叫副本编辑器,统筹方法,目前的情况游戏程序员大部分的时间都是在做各种工具,设计模式,副本的关卡设置。
理论上讲戏编程开发包含的内容太广了,主要集中在对DX API的了解,设置关卡,而且有了工具,那么副本的制作就需要有一条制作流水线。
======================================
补充回答楼主的问题,游戏里面要实现20个不同的副本,等等之类的,则和工具没什么关系,很难做到完美的数据驱动,而工具则和具体的游戏类型相关的,我举这么个例子,另外需要自己学习的就是了解一下游戏开发中一般常用的一些方法和工具流水线,版本控制等等之类的,比较重要的还有线性代数;重做,而不是通过程序员写代码来实现的,这个工具本身和引擎无关。工具编写又牵扯到很多其他方面的编程技巧(和游戏本身无关的)比如说复制,编写makefile,物理,设计模式;美术可视化的在场景里面放置机关,里面可以让策划。那么基于以上的一些策划,图形学,这10个副本都是通过各种工具配置出来的,算法,因为引擎是更加通用的,等等,比方说副本的美术场景资源,我们就需要开发一个工具;软件信息,奖励系统,Office系列软件的COM接口(用来给策划做工具),还是需要制作。
⑤ 做游戏的程序员是用哪种语言呢
大多数程序语言都可以做游戏,但因执行效率问题,引擎支持问题,并不是任何语言都适合。常用的游戏开发语言有C,C++,C#,JAVA,其中java主要用于移动端游戏开发
⑥ 一般游戏编程用什么语言和软件
下面是游戏开发十大编程语言的列表。
1、C类#
C语言现在被广泛应用于许多游戏引擎中,是最流行的游戏开发语言之一。它有一个XNA框架、一套微软工具和运行时环境,使它特别适合Xbox或windows上的游戏。如果你想使用monogame在几乎任何平台上发布游戏,这是一种很好的语言。
2、C类++
C++是一种面向对象的语言,被认为是最难学习的语言之一,但它是游戏开发人员的重要语言。它允许对硬件和图形进程进行更直接的控制,这对行业很重要,是一些流行游戏引擎的流行语言。它还提供了对参数和内存管理的大量控制,从而提高了游戏的性能和用户体验。
3、Java
Java使用与C++相同的面向对象原则,但提供了更广泛的系统。Java代码通常在Java虚拟机(JVM)上运行,并转换为可在任何系统上执行的通用字节码。因此,Java是为数不多的能够让开发人员为任何给定系统开发游戏的游戏编程语言之一。它是最好的游戏编程语言之一。
4、JavaScript
JavaScript是最流行的游戏编程语言之一,尤其是作为一种在线交互语言。使用JavaScript,可以更容易地将代码与传统的网络技术(如HTML和CSS)集成,从而导致越来越多的跨平台移动游戏。
5、HTML5
HTML5已经成为互联网上最常见的游戏编程语言之一。你今天玩的大多数手机游戏都使用这种标记语言。使用JavaScript很容易创建复杂的基于web的游戏。该语言简单易学,不一定需要学习复杂的算法编程知识,因此成为游戏开发者的热门选择。
6、SQL语言
SQL被玩家用来访问后端帐户并在服务器上执行其他操作。有新的语言,库,框架,特别是AR,VR,图形,物理和游戏。
7、Python
Python是另一种提供OOP方法的语言,是游戏开发人员使用的最易于使用的通用编程语言之一。它有一个pyGame框架,允许程序员快速开发游戏原型。
8、Rust
铁锈被吹捧为C的继承者之一。它主要被Mozilla基金会用作系统编程语言。它具有面向对象到面向数据的方法,有助于游戏开发。
9、UnrealScript
Unrealscript是unreal引擎的本机脚本语言。它结合了面向对象、多重继承和功能丰富的游戏等复杂功能。该语言支持所有主要的游戏平台,如微软Windows、MacOS、Linux、steamos、Android和PlaystationVR。
10、Lua
由于语言结构和语法简单,Lua正成为游戏界最流行的语言之一。它是一种多平台脚本语言,许多现代游戏引擎都使用Lua作为主要的游戏设计编程语言。
⑦ 一般的游戏都是用什么语言开发的
一般的大型游戏开发绝不是用某种语言这么单纯的问题。一个大型游戏的开发需要庞大的团队使用各种各样的语言和工具来完成。总结一下主要有C/C++,汇编语言,着色器语言,脚本语言,高效的开发语言C#或Java。
首先一般的游戏开发架构(Windows)从底到顶一般是Direct X?——游戏引擎——游戏。
Direct X?相当于所有显卡的一个统一接口,为游戏提供一个利用硬件渲染的编程模型,但Direct X?接口为了追求高性能功能非常单纯和松散,不利于游戏的高效开发。此时就需要根据游戏特点对其进行适当的取舍和封装,实现一组更高抽象的游戏开发接口和框架,可以理解成游戏引擎中的图形引擎。这部分的开发一般使用的语言是C/C++和少量的汇编语言。
至于游戏引擎是一个非常复杂的功能聚合体,所有的游戏开发工作都是在之上进行的。包括图形引擎,音频引擎,碰撞引擎,艺术资源管理,脚本引擎等等。到此为止几乎还没有涉及到你所说的游戏开发。
首先在图形渲染方面,例如光照阴影处理等等,现代显卡一般是通过可编程着色器实现对图形效果的控制,所采用的编程语言一般是一些着色器语言,例如Direct X?采用的HLSL,OpenGL使用的GLSL等等,语法类似C语言,游戏执行时被编译加载到显卡上,在实现硬件渲染速度的同时又实现了编程的灵活性。
大型游戏开发的绝大部分工作其实都是在编写游戏脚本,脚本是大型游戏得以如此高速开发和发布的主要原因。脚本化的开发让游戏开发摆脱了硬编码的种种弊端,让游戏内容可以轻易的修改和调试。游戏故事如何进行,各种事件如何触发,何时该播放哪些声音或动画,如何使用艺术团队创作的资源,这些都是在脚本中编写的,可以说引擎决定了游戏能做什么,而脚本才真正决定了游戏做了什么。一些着名的引擎如虚幻系列都有自己独特的脚本语言,其他一些引擎可能会采用一些第三方的脚本语言,比如比较流行的Lua。所以开发一个新游戏最简单的情形就是沿用之前的引擎,创作艺术资源,然后编写脚本将其组织成一个游戏,几乎不需要什么底层的编程语言。
开发环境方面,游戏团队内部可能会使用一些开发和设计工具对资源进行处理,可以理解成游戏引擎的IDE,这部分因为是内部工具,而且可能需要经常修改所以一般采用比较高效的开发和语言,比如暴雪就是部分使用.NET和C#进行一些内部工具的开发。
至于引擎核心的开发,Windows比较流行的方法是使用最新版本的Visual Studio,显卡厂商如NVIDIA也会为VS开发一些插件来简化显卡编程和调试。
⑧ 游戏制作主要使用的编程语言有哪些,在哪里可以学习呢
你可以先去【绘学霸】网站找“游戏设计/游戏制作”板块的【免费】视频教程-【点击进入】完整入门到精通视频教程列表: www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=307&zdhhr-11y17r-2052226076913389747
想要系统的学习可以考虑报一个网络直播课,推荐CGWANG的网络课。老师讲得细,上完还可以回看,还有同类型录播课可以免费学(赠送终身VIP)。
自制能力相对较弱的话,建议还是去好点的培训机构,实力和规模在国内排名前几的大机构,推荐行业龙头:王氏教育。
王氏教育全国直营校区面授课程试听【复制后面链接在浏览器也可打开】: www.huixueba.com.cn/school/3dmodel?type=2&zdhhr-11y17r-2052226076913389747
在“游戏设计/游戏制作”领域的培训机构里,【王氏教育】是国内的老大,且没有加盟分校,都是总部直营的连锁校区。跟很多其它同类型大机构不一样的是:王氏教育每个校区都是实体面授,老师是手把手教,而且有专门的班主任从早盯到晚,爆肝式的学习模式,提升会很快,特别适合基础差的学生。
大家可以先把【绘学霸】APP下载到自己手机,方便碎片时间学习——绘学霸APP下载: www.huixueba.com.cn/Scripts/download.html
⑨ 网页游戏开发语言有哪些
网页的交互模式,基于HTTP实现与服务器的交互,这些游戏的后端可以使用任何Web开发语言来实现,比如PHP,Java,C#,Ruby,Python这些,都没有问题。
游戏的前端现在普遍依然使用Flash平台,开发语言就是ActionScript,比较前卫的游戏有使用HTML5的,就是JavaScript,还有一些社交平台上的游戏直接使用HTML页面来做交互,有一些传统游戏厂商转过来做网页游戏的也有采用ActiveX技术直接把现有的游戏移植过来的,这些游戏前端往往采用C++这些来开发。
有些游戏需要实时与服务器交互(比如MMORPG),这些游戏的后端往往就是和传统的网游一样的架构,开发语言也一般会比较传统的采用C++,也有一些采用Erlang来搞定网络及分布式计算的平台部分。
值得一提的是Lua语言,Lua在网页游戏的客户端用的不多,但是在服务器端依然有不少采用,主要是用在游戏的实际逻辑部分。
⑩ 手机游戏一般是用什么语言开发
手机游戏一般是用Unity、COCOS、java、C语言开发的,但也要看具体情况,有的手机游戏也可能是用HTML5开发的。
flash、java游戏俗称小游戏,基本上都是一些休闲类的、傻呆萌的情节和操作,这类游戏开发相对比较简单,会javascript、flash cs、java就可以进行开发了。
开发游戏我们经常听到的是游戏引擎,一个游戏引擎决定一个游戏最基本的东西操作和效果,那么一般的游戏开发架构从底到顶一般是Direct X游戏引擎。
Direct X可是大名鼎鼎相当于所有显卡的一个统一接口,为游戏提供一个利用硬件渲染的编程模型,但Direct X接口为了追求高性能功能非常简单基本的绘图功能,不利于游戏的高效开发。
此时就需要根据游戏特点对其进行适当的取舍和封装,实现一组更高抽象的游戏开发接口和框架,可以理解成游戏引擎中的图形引擎。这部分的开发一般使用的语言是C、C++和少量的汇编语言。