‘壹’ 物理引擎是什么意思
那个是计算机术语
电子游戏里面会有很多的画面,比如你说的使命召唤,会有很多人拿着枪互相射击的画面。这些画面如果需要显示出来,需要进行物理运算和贴图运算。物理运算的内容包括子弹的弹道,人物的动作,尘土的飞扬,车辆的运转……而贴图则主要负责每个物体的颜色,细节,形状
我们的机器,其中显卡的部分负责贴图运算,而CPU负责物理运算。那么CPU进行物理运算的时候需要遵循一定的法则。简而言之,这些法则就是游戏设计人员事先设定好的运算规则,可以称之为物理引擎。
‘贰’ 引擎是什么意思
有人把引擎称为发动机,其实,发动机是一整套动力输出设备,包括变速齿轮、引擎和传动轴等等,可见引擎只是整个发动机的一个部分,但却是整个发动机的核心部分,因此把引擎称为发动机也不为过。
对于引擎,大家都应该不陌生,引擎的主要部分就是汽缸,这里就是整个汽车的动力源泉。汽缸的工作原理我在这里简单介绍一下,汽缸包括缸体、进气孔、输油孔、出气孔、活塞和火花塞(汽油机)。汽缸通过进气孔和输油孔注入汽油和空气,在汽缸内充分混合,当火花塞点燃混合物后,混合物猛烈地爆炸燃烧,推动活塞向下运动,并产生动力。同时,爆炸气巨大的压力还推开单向阀的出气孔,排出废气。而后,汽缸内残余废气逐渐变冷,气压变低,汽缸外部的大气压又推动活塞向上运动,以准备进行下一次爆炸。这就是简单的原理。现也用作IT方面的术语,指经包装过的函数库,方便别人调用,如搜索引擎、图形引擎、物理引擎等。
‘叁’ 开发3D游戏引擎要学习哪些知识
小弟我也不是内行,不过据我观察有这么几个:
1、图形渲染算法,什么光照公式啦,ray tracing啦,culling算法之类的
2、碰撞检测算法是一块
3、如果自己没有3D的建模功能就要考虑3D模型的导入,比如3ds,obj,maya之类的,这个可能涉及到模型存储的数据结构
4、骨骼系统
5、一般3D引擎应该是对底层API的封装,所以要了解DirectX或者OpenGL的知识,貌似最近有拿XNA封装的
6、我见过的引擎一般会支持一种脚本语言比方说python,lua这些
ps.一点浅见,我也蛮想听内行人讲讲的~
‘肆’ 游戏开发需要具备什么呢
一、游戏开发制作的概念
游戏开发是一个过程,为了激发玩家玩游戏热情,通过遵循设计制作规则,来设计人物、场景等游戏要素。主要流程包括原画创作、建模、材质、灯光及渲染、骨骼设定、动画、特效等部分。涉及范畴包括 :游戏规则及玩法、视觉艺术、编程、产品化、声效、编剧、游戏角色、道具、场景、界面等等元素。游戏程序开发归根到底就是软件工程,是游戏制造环节中不行短少的重要部分。游戏程序开发是技术含量最高的,游戏程序员的薪资也相对其他职业高许多,目前游戏职业中游戏程度人才的缺口非常大,供不应求。
二、游戏开发需要具备的知识
游戏本质分析,游戏产业概论、游戏开发流程及职业划分、玩家需求分析、构思创意及文档编写要求、游戏故事设计、游戏元素、规则、任务、系统、关卡设计、游戏平衡设定、界面与操作功能。透视基础、构图基础、结构素描、明暗素描、艺用人体解剖基础、人物速写、Adobe PhotoshopCS3软件应用、PhotoshopCS3造型基础、游戏美术风格技法、色彩基础、游戏色彩练习、肖像绘制、质感表现。3DMAX软件基础、游戏材质基础、游戏道具制作、作品渲染游戏场景制作技巧、场景材质制作、卡通角色制作、写实角色制作、怪物制作。简单分类的话就是:
1、扎实的算法知识。主要有:树或图的搜索算法、A*算法、碰撞检测算法、BSP树、人工智能
2、相关图形处理知识。比如:Direct X编程、OpenGL编程、图形学的相关知识(三维图形的形体、纹理、贴图、照明,还有三维对象的消隐算法比如油画算法,Z缓存)和动画处理知识。如果想深入还要学会几种三维引擎比如OGRE。
3、扎实的程序语言功底,主要代表为VC、DELPHI和JAVA。其中VC使用最广,现在比较大的游戏也由此开发;DELPHI功能也很强,很多网游:比如网金、传奇都用到了DELPHI;JAVA用于开发手机游戏。
三、游戏开发需要学哪些
游戏开发需要学哪些,课程是什么样的呢?学游戏程序开发主要有最通用的C++ 及Windows程序设计课程,算法设计、数据结构、软件工程、游戏技术,游戏设计方法及流程等课程。所有课程以行业最实用技术为参考,综合初学者的接受能力精心设计。
1、基础公共课:游戏概述 Photoshop平面软件及像素美术 3dsmax软件基础及效果图制作 游戏程序设计基础及游戏制作原理 游戏策划、制作、测试及运营实践 游戏行业规划及职业素质。
2、专业技能课:手机2D游戏开发 2D游戏开发技术实战 C++语言及算法基础 WIN32程序开发及MFC基础 2D游戏开发实践 行业规划及职业素质。2D网络游戏开发主要学习内容有网络游戏程序设计、网络游戏算法设计、2D网络游戏平台设计以及商业实战项目训练,包含C++、数据结构、算法基础、Windows API使用、MFC原理及其应用、2D图形渲染技术、界面设计与应用。
3、游戏程序方向: Direct 3D程序开发基础 3D游戏开发技术实战 游戏引擎的修改与使用网络通讯、数据库及游戏服务器、行业规划及职业素质、游戏综合项目实战训练、基地顶岗项目实训。
四、游戏开发常用软件
1、3dsMAX:大多数游戏开发公司美工使用,效率较高,可以独立制作游戏中所有美术相关资源。
2、Delphi:直接编译生成可执行代码,编译速度快。由于Delphi编译器采用了条件编译和选择链接技术,使用它生成的执行文件更加精炼,运行速度更快。在处理速度和存取服务器方面,Delphi的性能远远高于其他同类产品。
3、 Photoshop:PHOTOSHOP是一个很好的图像编辑软件,PHOTOSHOP的应用领域很广泛,在图像、图形、文字、视频、出版各方面都有涉及。
4、MAYA:跟3dsMAX差不多的软件,因个人喜好而定, MAYA在制作动作的方面较MAX稍差,不过在很多方面这两款软件都是可以兼容的。
5、其他:在个人计算机上,可以用目前流性的软件开发工具,比如:C,C++,VC++,Delphi,C++ Builder等。由于Windows操作系统的普及和其强大的多媒体功能,越来越多的游戏支持Windows操作系统。
五、学习游戏开发需要了解的常识
1、图形引擎主要包含游戏中的场景(室内或室外)管理与渲染,角色的动作管理绘制,特效管理与渲染(粒子系统,自然模拟(如水纹,植物等模拟)),光照和材质处理,LOD(Level Object Detail)管理等,另外还有图形数据转换工具开发,这些工具主要用于把美工用DCC软件(如3DS Max,Maya,Soft XSI,Soft Image3D等)软件制作的模型和动作数据以及用Photo shop或painter等工具制作的贴图,转化成flash游戏开发程序中用的资源文件。
2、物理引擎主要包含游戏世界中的物体之间、物体和场景之间发生碰撞后的力学模拟, 以及发生碰撞后的物体骨骼运动的力学模拟(比较着名的物理引擎有havok公司的game dynamics sdk,还有open source 的ODE—Open Dynamics Engine)。
3、游戏开发工具主要包含关卡编辑器,角色编辑器,资源打包管理,DCC软件的插件工具等开发。
4、支持局域网对战的网络引擎开发,主要解决局域网网络发包和延迟处理,通讯同步的问题,有同步通讯和异步通讯两种做法,异步通讯用于那些对运行帧速要求比较高的游戏,同步通讯相对异步通讯来说效率相对低,但是同步通讯的编程模型相对异步通讯来得简单一些。
5、游戏引擎主要是把图形引擎、声音引擎、物理引擎整合起来,主要针对某个游戏制作一个游戏系统,其包含游戏关卡编辑器,主要用途是可以可视化的对场景进行调整,光照效果和雾化等效果调整,事件设置,道具摆放,NPC设置,另外还有角色编辑器,主要用于编辑角色的属性和检查动作数据的正确性。一般日本游戏公司的做法,他们会把关卡编辑器和角色编辑器直接做到游戏中,所有的参数调整都在游戏中通过调试菜单来进行编辑,所以一般他们把这部分调试菜单的功能做的很强大,同时在屏幕上实时的显示一些重要的信息,这样做的好处是关卡编辑器调整的效果直接就是游戏的效果,但是对于程序的重用性来说可能不是很好,比如说要用到另外一个游戏项目中就比较难,除非两个游戏类型相同,只要把场景和角色数据换一下,还有做下一代产品也没有问题,只要根据式样增加调试菜单的功能就可以了。
想成为一个游戏开发人员,就得先成为一个很好的程序开发人员。当你成为一个很好的程序开发人员时,就可以考虑学习游戏开发了。成为游戏的测试人员,游戏的艺术人员,或者是游戏设计人员,或者游戏的管理人员都是成为游戏开发人员的前期步骤之一。
‘伍’ 物理引擎的作用是什么呢
物理引擎使用对象属性(动量、扭矩或者弹性)来模拟刚体行为,这不仅可以得到更加真实的结果,对于开发人员来说也比编写行为脚本要更加容易掌握。好的物理引擎允许有复杂的机械装置,像球形关节、轮子、气缸或者铰链。有些也支持非刚性体的物理属性,比如流体。物理引擎可以从另外的厂商购买,而一些游戏开发系统具备完整的物理引擎。
但是要注意,虽然有的系统在其特性列表中说他们有物理引擎,但其实是一些简单的加速和碰撞检测属性而已。当NVIDIA宣布正式收购Ageia及该公司的PhysX物理软硬件组件后,所有人都在期待,期待着NVIDIA会推出新的有关物理运算的东西出来。果不其然,最近当NVIDIA发布Forceware 177.79驱动后,意味着GeForce 8/9和GT200系列的GPU都支持PhysX引擎。这是因为NVIDIA将PhysX引擎集成到CUDA架构的物理运算中。这样,显卡就能自动进行物理加速运算。当然,PhysX在游戏上的运用仅仅是物理引擎众多运用的一方面,在整个CUDA通用运算领域上,都会有物理引擎的身影,比如计算天体间在相互引力的作用下,各自的运动轨迹等。
‘陆’ 游戏开发都需要学习什么呢工作的话有什么要求
游戏开发需要依靠游戏引擎进行,目前在游戏行业应用较为广泛的是unity3D和虚幻4两个游戏开发引擎,所以市面上的培训机构也都以这两大引擎软件的操作教学为主。但是游戏开发并不是简单的软件操作,还需要学习一定的编程语言,懂得如何与游戏美术设计团队配合,这样才不会浪费时间与金钱。做一名游戏开发,需要学习以下知识:
1、熟练使用游戏常用算法;
2、熟悉Linux/XCode下C/C++开发,熟悉TCP/IP网络协议,熟悉MYSQL等数据库;
3、具备数据结构、计算机网络、计算机组成原理、操作系统、算法设计、C/C++/C#、Java、离散数学等知识背景。
工作的话有什么要求:
1.热爱游戏。激情成就事业,游戏程序员的与众不同就在于,除了研发人员应有的理性之外,还必须对游戏有着无限热爱,如果连自己对游戏都提不起兴趣,又怎会做出让别人感兴趣的游戏呢!当然,若是只有热情那就不能正确理解这个行业,有时反而会做坏,比如在游戏中掺杂过多的个人意愿,忽视用户的需求。
2.扎实的基础。要成为一名合格的程序员,要熟悉包括C语言或C++语言、数据结构、编译原理、算法等计算机知识,同时数学基础也是非常重要的,这些在编制核心级的程序时往往会起到相当大的作用。
3.创新能力。作为游戏程序员,创意是灵魂。计算机本身就是发挥创意的好地方,若能将捕捉到的新事物揉入创意并应用到工程项目中,其中所含的经济价值将不容小视。
4.团队合作交流。程序员的不善交流似乎已经成为业内公认,但对于游戏程序员,任何个人的力量都是有限的,在游戏开发工作中,一个成功的软件来源于团队的精诚合作。团队精神正是程序员应该具备的最基本的素养。要知道,游戏程序员不单纯是技术的实现人员,更是游戏参与者。
‘柒’ 【从0开始学Laya】15-2d物理引擎(1)-概念
RigidBody类继承自 Component,刚体支持三种类型:static,dynamic和kinematic,默认为dynamic。
碰撞体类型分为以下4种:
‘捌’ QQ飞车,物理引擎是什么啊
物理引擎通过为刚性物体赋予真实的物理属性的方式来计算运动、旋转和碰撞反映。为每个游戏使用物理引擎并不是完全必要的—简单的“牛顿”物理(比如加速和减速)也可以在一定程度上通过编程或编写脚本来实现。然而,当游戏需要比较复杂的物体碰撞、滚动、滑动或者弹跳的时候(比如赛车类游戏或者保龄球游戏),通过编程的方法就比较困难了。
QQ飞车用的是PhysXPhysX
是一套由NVIDIA
设计的执行复杂的物理运算的技术。NVIDIA
PhysX基于NVIDIA
CUDA,允许其用户利用
PhysX
执行物理运算。
Physx在游戏中实现物理运算效果绝非易事。物理运算效果是一种对计算性能要求极高的环境,以一整套独特的物理学算法为基础,需要大量同步运算的能力。采用支持PhysX??技术的NVIDIA®(英伟达??)GeForce®处理器是实现实时物理学特效的最佳途径,这些特效包括尘土飞扬、令物体碎片四射的爆炸、生动逼真的人物动作以及衣服布料的自然下垂与撕裂等。PhysX技术被广泛应用于150多个游戏中,其注册用户数量已超过10,000名。这项技术在索尼的Playstation
3、微软的Xbox
360、任天堂的Wii以及个人计算机上均得到了良好的支持,把游戏推向全新的境界。
此外,NVIDIA
PhysX是一种功能强大的物理加速引擎,可在顶级PC和游戏中实现实时的物理学计算。PhysX设计用途是利用具备数百个内核的强大处理器来进行硬件加速。加上GPU超强的并行处理能力,PhysX将使物理加速处理能力呈指数倍增长并将您的游戏体验提升至一个全新的水平,在游戏中呈现丰富多彩、身临其境的物理学游戏环境。其中特色如下:
1、爆炸引起的烟尘和随之产生的碎片
2、复杂、连贯的几何学计算使人物的动作和互动更加逼真
3、其视觉效果令人叹为观止的全新武器
4、布纹的编织和撕裂效果非常自然
5、运动物体周围烟雾翻腾
6、采用NVIDIA支持PhysX的GeForce处理器是实现真实物理加速效果的唯一途径,其可缩放、复杂、逼真、高度互动的特性将彻底颠覆您的娱乐体验。
NVIDIA将PhysX引擎集成到CUDA架构的物理运算中,这样就可以是GeForce
8/9及GT200系列全部都支持PhysX引擎,
所有已使用PhysX技术的游戏都支持新版驱动程序,果装有支持CUDA平台的显卡,游戏将自动选取显卡进行物理加速运算,仍会使用性能较慢的CPU进行运算。此外,PhysX并不只使用于游戏市场,同时亦会运用CUDA通用运算领域上,应用更广。
无论是GPU还是CPU、PPU、Cell(PS3)都可以通过HAL翻译层来实现软、固质体动力(Soft
or
Rigid
Body
Dynamics)、通用碰撞侦测(Universal
Collision
Detection)、有限元素分析(Finite
Element
Analysis)、流体动力(Fluid
Dynamics)、毛发模拟(Hair
Simulation),以及更高级开发平台APEX中的更先进的布料模拟(Cloth
Simulation)、自然模拟(Natural
Motion)等在内新颖技术。
通过过CUDA通用接口,PhysX引擎将NVIDIA
GPU中的Thread
Scheler(线程管理器)模拟成Control
Engine(控制引擎CE),而Streaming
Processors来模拟Vector
Processing
Engine(矢量处理引擎,VPE),其中CE控制引擎负责任务的指派,相当于PhysX中的主管机构,而真正的物理运算任务则是由VPE矢量引擎来完成,最后通过Data
Movement
Engine(数据移动引擎DME)输出。</SPAN></p>
‘玖’ “引擎”是什么意思
【释义】:
发动机。为英语Engine的音译。利用热力、风力、电力等发生动力的各种机器的总称。如蒸气机、内燃机、电动机等,种类繁多。或译作“原动机”。
引申为网际网路上的一种应用程式。功能在利用关键字词,寻得网路上的相关资讯。
‘拾’ 制作游戏需要什么技术
1、物理知识
在上学的时候,我们都学习了抛物线方程,学习了牛顿定律,当时的我们觉得这些东西似乎没有什么实际价值,然而很多东西就是这样,我们看似没有用的东西。
最后都会被实践证明它们很有用。在游戏中,物理引擎就需要这些基础的物理知识,通过这些知识,我们需要进行游戏的碰撞检测,正是有了这些知识,才能让我们的游戏看起来更加逼真。
2、美术功底
对于美好的事物我们都很向往,但是并不是每个人都有一个正确的审美观,我们需要系统学习,才能够欣赏到美,我需要学习美工设计能力,需要能够设计出美轮美奂的角色,一个游戏的可玩性和画面精细度都会影响一个游戏的成败。
3、编程知识
你需要掌握一门编程语言,可以是Java,c,golang,python中的任何一种编程语言,当然也可以是其它语言。
你需要有面向对象的设计能力,你需要能够实现基本的业务逻辑,比如数值的变化,你可能需要建模的基础知识,你还需要掌握通信的基础知识,编程是个庞大的领域,而游戏开发中需要的编程知识并不少。4、音乐知识
一款游戏一定是有bgm的,特别是每个专属角色登场的时候,应该有它专属的背景音乐,对于一个游戏,你的背景音乐可以是来自于他人,但是你一定要能够选择正确的背景音乐。当然,最好是你能够自己设计出背景音乐,毕竟对于游戏的理解,你是最深刻的。
5、角色故事(游戏策划)
一个游戏一定是有故事背景的,即使是再小的游戏,它也有自己的故事线,有些时候,故事线是决定一款游戏的成败的最重要因素。
比如我们熟知的仙剑游戏,对于它的画面和可玩性并不是最出色的,但是它有着一个出色的背景故事,玩家玩的就是故事情节,所以在玩家心中,好故事比好游戏更重要。