游戏引擎开发涉及的知识和技术
运行时引擎架构
可以看到游戏引擎架构由多个软件层组成,几乎涵盖了计算机软件所有方面的内容。这里也不可能将全部讲清,主要是讲些重要的。这里主要以unity为例。
1、物理引擎
,例如,当角色跳起的时候,系统内定的重力值将决定他能跳多高,以及他下落的速度有多快,子弹的飞行轨迹、车辆的颠簸方式也都是由物理系统决定的。
碰撞探测是物理系统的核心部分,它可以探测游戏中各物体的物理边缘。当两个3D物体撞在一起的时候,这种技术可以防止它们相互穿过,这就确保了当你撞在墙上的时候,不会穿墙而过,也不会把墙撞倒,因为碰撞探测会根据你和墙之间的特性确定两者的位置和相互的作用关系。
游戏物理引擎主要包括:粒子数学、运动定律、粒子物理引擎、合力、弹力、硬约束条件、质体物理引擎、旋转操作的数学知识、刚体运算定律、刚体物理引擎、碰撞检测、生成碰撞、碰撞处理方案、静态接触和摩擦力、稳定性和优化问题、整合方案以及其他物理引擎等内容。
2、渲染引擎
渲染是引擎最重要的功能之一,当3D模型制作完毕之后,美工会按照不同的面把材质贴图赋予模型,这相当于为骨骼蒙上皮肤,最后再通过渲染引擎把模型、动画、光影、特效等所有效果实时计算出来并展示在屏幕上。渲染引擎在引擎的所有部件当中是最复杂的,它的强大与否直接决定着最终的输出质量。
渲染引擎由渲染管理器组成。这个管理器负责将数据发送到GPU并激活正确的着色器。
要在屏幕上渲染像素,你需要与GPU通信。要做到这一点,你需要一个媒介。 这种介质称为OpenGL。