游戏开发一般用什么语言
Ⅰ 开发游戏要用什么语言
开发游戏不是一个人的故事,一般大厂商都是多语言混合编制。
能开发游戏的语言很多,像知名的C语言C++,java,Python,等,如果你想开发游戏仅仅学一门语言是不够的,要多学几个语言,而且不仅要学,还要学精。
Ⅱ 游戏一般用什么编程语言开发
一般的大型游戏开发不是单一用某一种软件语言的问题。一个大型游戏的开发需要非常大的团队用各种各样的语言和工具来完成。
总结一下主要有C/C++,汇编语言,着色器语言,脚本语言,高效的开发语言C#或Java。
首先一般的游戏开发架构(Windows平台)从底到顶一般是Direct X™——游戏引擎——游戏。
大型游戏开发的大部分工作其实都是在编写游戏脚本,脚本是大型游戏得以如此高速开发和发布的主要原因。脚本化的开发让游戏开发摆脱了硬编码的种种弊端,让游戏内容可以轻易的修改和调试。比如比较流行的语言。,然后编写脚本将其组织成一个游戏,不需要什么底层的编程语言。
Windows平台比较流行的方法是使用最新版本的Visual Studio,显卡厂商如NVIDIA也会为VS开发一些插件来简化显卡编程和调试。(2)游戏开发一般用什么语言扩展阅读:
汇编语言
为了克服机器语言难读、难编、难记和易出错的缺点,人们就用与代码指令实际含义相近的英文缩写词、字母和数字等符号来取代指令代码(如用ADD表示运算符号“+”的机器代码),于是就产生了汇编语言。所以说,汇编语言是一种用助记符表示的仍然面向机器的计算机语言。汇编语言亦称符号语言。
汇编语言由于是采用了助记符号来编写程序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程过程。汇编语言的特点是用符号代替了机器指令代码。而且助记符与指令代码一一对应,基本保留了机器语言的灵活性。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。
汇编语言中由于使用了助记符号,用汇编语言编制的程序送入计算机,计算机不能象用机器语言编写的程序一样直接识别和执行,必须通过预先放入计算机的 “汇编程序“的加工和翻译,才能变成能够被计算机识别和处理的二进制代码程序。
用汇编语言等非机器语言书写好的符号程序称源程序,运行时汇编程序要将源程序翻译成目标程序。目标程序是机器语言程序,它一经被安置在内存的预定位置上,就能被计算机的CPU处理和执行。
汇编语言像机器指令一样,是硬件操作的控制信息,因而仍然是面向机器的语言,使用起来还是比较繁琐费时,通用性也差。汇编语言是低级语言。但是,汇编语言用来编制系统软件和过程控制软件,其目标程序占用内存空间少,运行速度快,有着高级语言不可替代的用途。
高级语言
不论是机器语言还是汇编语言都是面向硬件的具体操作的,语言对机器的过分依赖,要求使用者必须对硬件结构及其工作原理都十分熟悉,这对非计算机专业人员是难以做到的,对于计算机的推广应用是不利的。计算机事业的发展,促使人们去寻求一些与人类自然语言相接近且能为计算机所接受的语意确定、规则明确、自然直观和通用易学的计算机语言。
这种与自然语言相近并为计算机所接受和执行的计算机语言称高级语言。高级语言是面向用户的语言。无论何种机型的计算机,只要配备上相应的高级语言的编译或解释程序,则用该高级语言编写的程序就可以通用。
如今被广泛使用的高级语言有BASIC、PASCAL、C、COBOL、FORTRAN、LOGO以及VC、VB等。这些语言都是属于系统软件。
计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过“翻译程序”翻译成机器语言形式的目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即编译方式和解释方式。
编译方式是:事先编好一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户由高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是:源程序进入计算机时,解释程序边扫描边解释作逐句输入逐句翻译,计算机一句句执行,并不产生目标程序。
PASCAL、 FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。每一种高级(程序设计)语言,都有自己人为规定的专用符号、英文单词、语法规则和语句结构(书写格式)。高级语言与自然语言(英语)更接近,而与硬件功能相分离(彻底脱离了具体的指令系统),便于广大用户掌握和使用。高级语言的通用性强,兼容性好,便于移植
Ⅲ 游戏开发需要学哪些语言
你可以先去【绘学霸】网站找“游戏特效/unity3D”板块的【免费】视频教程-【点击进入】完整入门到精通视频教程列表: www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=305,306&zdhhr-11y17r-495965250423017212
想要系统的学习可以考虑报一个网络直播课,推荐CGWANG的网络课。老师讲得细,上完还可以回看,还有同类型录播课可以免费学(赠送终身VIP)。
自制能力相对较弱的话,建议还是去好点的培训机构,实力和规模在国内排名前几的大机构,推荐行业龙头:王氏教育。
王氏教育全国直营校区面授课程试听【复制后面链接在浏览器也可打开】:
www.cgwang.com/course/gecoursemobilecheck/?zdhhr-11y17r-495965250423017212
在“游戏特效/unity3D”领域的培训机构里,【王氏教育】是国内的老大,且没有加盟分校,都是总部直营的连锁校区。跟很多其它同类型大机构不一样的是:王氏教育每个校区都是实体面授,老师是手把手教,而且有专门的班主任从早盯到晚,爆肝式的学习模式,提升会很快,特别适合基础差的学生。
大家可以先把【绘学霸】APP下载到自己手机,方便碎片时间学习——绘学霸APP下载: www.huixueba.com.cn/Scripts/download.html
Ⅳ 游戏开发需要学什么编程语言
游戏编程也是编程,都是需要敲代码的。所以基本的语言基本功是不能少的,比如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技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。
Ⅳ 网络游戏开发现在一般用什么语言开发
商业游戏一般使用几种语言混合开发,比如C++接合脚本预言。主流语言是C/C++,脚本常用的有Lua和python。有的游戏的脚本语言是开发者自己写的。不那么常用的语言有delphi、java(手机上还是常用的)、C#。
Ⅵ 大型单机游戏用什么语言开发的
一般的大型游戏开发绝不是用某种语言这么单纯的问题。一个大型游戏的开发需要庞大的团队使用各种各样的语言和工具来完成。总结一下主要有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开发一些插件来简化显卡编程和调试。
Ⅶ 做游戏用哪种语言
游戏开发分网页游戏,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。
(7)游戏开发一般用什么语言扩展阅读:
编程语言种类
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接口(用来给策划做工具),还是需要制作。
Ⅸ 游戏开发需要用哪些编程语言,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++、JAVA开发的。