0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

游戏引擎是什么

工程师 来源:未知 作者:姚远香 2018-11-04 11:12 次阅读

游戏引擎是什么

游戏引擎是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计者能容易和快速地做出游戏程式而不用由零开始。大部分都支持多种操作平台,如Linux、Mac OS X、微软Windows。游戏引擎包含以下系统:渲染引擎(即“渲染器”,含二维图像引擎和三维图像引擎)、物理引擎、碰撞检测系统、音效、脚本引擎、电脑动画、人工智能网络引擎以及场景管理。

游戏引擎原理

游戏引擎是一个为运行某一类游戏的机器设计的能够被机器识别的代码(指令)集合。它像一个发动机,控制着游戏的运行。一个游戏作品可以分为游戏引擎和游戏资源两大部分。游戏资源包括图象,声音,动画等部分,列一个公式就是:游戏=引擎(程序代码)+资源(图象,声音,动画等)。游戏引擎则是按游戏设计的要求顺序地调用这些资源。

游戏引擎功能

无论是2D游戏还是游戏引擎33D游戏,无论是角色扮演游戏、即时策略游戏、冒险解谜游戏或是动作射击游戏,哪怕是一个只有1兆的小游戏,都有这样一段起控制作用的代码。经过不断的进化,如今的游戏引擎已经发展为一套由多个子系统共同构成的复杂系统,从建模、动画到光影、粒子特效,从物理系统、碰撞检测到文件管理、网络特性,还有专业的编辑工具和插件,几乎涵盖了开发过程中的所有重要环节,以下就对引擎的一些关键部件作一个简单的介绍。

首先是光影效果,即场景中的光源对处于其中的人和物的影响方式。游戏的光影效果完全是由引擎控制的,折射、反射等基本的光学原理以及动态光源、彩色光源等高级效果都是通过引擎的不同编程技术实现的。

其次是动画,游戏所采用的动画系统可以分为两种:一是骨骼动画系统,一是模型动画系统,前者用内置的骨骼带动物体产生运动,比较常见,后者则是在模型的基础上直接进行变形。引擎把这两种动画系统预先植入游戏,方便动画师为角色设计丰富的动作造型。

引擎的另一重要功能是提供物理系统,这可以使物体的运动遵循固定的规律,例如,当角色跳起的时候,系统内定的重力值将决定他能跳多高,以及他下落的速度有多快,子弹的飞行轨迹、车辆的颠簸方式也都是由物理系统决定的。

碰撞探测是物理系统的核心部分,它可以探测游戏中各物体的物理边缘。当两个3D物体撞在一起的时候,这种技术可以防止它们相互穿过,这就确保了当你撞在墙上的时候,不会穿墙而过,也不会把墙撞倒,因为碰撞探测会根据你和墙之间的特性确定两者的位置和相互的作用关系。

渲染是引擎最重要的功能之一,当3D模型制作完毕之后,美工会按照不同的面把材质贴图赋予模型,这相当于为骨骼蒙上皮肤,最后再通过渲染引擎把模型、动画、光影、特效等所有效果实时计算出来并展示在屏幕上。渲染引擎在引擎的所有部件当中是最复杂的,它的强大与否直接决定着最终的输出质量。

引擎还有一个重要的职责就是负责玩家与电脑之间的沟通,处理来自键盘、鼠标、摇杆和其它外设的信号。如果游戏支持联网特性的话,网络代码也会被集成在引擎中,用于管理客户端与服务器之间的通信

通过上面这些枯燥的介绍我们至少可以了解到一点:引擎相当于游戏的框架,框架搭好后,关卡设计师、建模师、动画师只要往里填充内容就可以了。因此,在3D游戏的开发过程中,引擎的制作往往会占用非常多的时间,《马克思·佩恩》的MAX-FX引擎从最初的雏形Final Reality到最终的成品共花了四年多时间,LithTech引擎的开发共花了整整五年时间,耗资700万美元,Monolith公司(LithTech引擎的开发者)的老板詹森·霍尔甚至不无懊悔地说:“如果当初意识到制作自己的引擎要付出这么大的代价的话,我们根本就不可能去做这种傻事。没有人会预料得到五年后的市场究竟是怎样的。”

正是出于节约成本、缩短周期和降低风险这三方面的考虑,越来越多的开发者倾向于使用第三方的现成引擎制作自己的游戏,一个庞大的引擎授权市场已经形成。

其中最大的收益者是各大网络游戏公司,通过第三方引擎开发的网络游戏获益巨大。但随着市场急剧变化,用第三方引擎开发网络游戏的成本也越来越高。于是游戏引擎开发商们开始绞尽脑汁设计一种可以大量节约开发成本和周期的引擎。直到2010年zerodin引擎开发的巨作Dragona出品引起了各大游戏业巨头关注,因为此时方才发现了巨作也可以用这么少的成本,这么短的时间开发而成。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 游戏引擎
    +关注

    关注

    0

    文章

    5

    浏览量

    1431
收藏 人收藏

    评论

    相关推荐

    网易游戏与华为达成鸿蒙合作

     随着众多知名游戏引擎以及第三方游戏插件达成鸿蒙原生的适配工作,HarmonyOS NEXT已展现出强大的游戏工业化实力。且华为游戏中心PG
    的头像 发表于 12-19 13:50 400次阅读

    网易游戏与华为达成鸿蒙合作

    ,网易已跻身全球七大游戏公司之一。作为中国领先的游戏开发公司,网易一直处于网络游戏自主研发领域的前端。 随着主流游戏引擎和第三方
    的头像 发表于 12-15 14:40 675次阅读
    网易<b class='flag-5'>游戏</b>与华为达成鸿蒙合作

    【风火轮YY3568开发板免费体验】+ YY3568安装运行Unity的自制游戏教程范例

    YY3568的Android系统安装三维游戏引擎Unity的2D/3D入门教程 Beginner’s Tutorial YY3568已经适配好了的Android-11的系统,并能流畅运行App。由于
    发表于 11-14 11:44

    如何使用Python在游戏中实现延时摄影

    这个时代,随着游戏引擎技术的快速发展,游戏画面越来越精美,许多人迷上了游戏内的角色、场景。 尤其是端游,显卡技术能够支撑精美的游戏画面,最有
    的头像 发表于 10-30 09:52 265次阅读

    Unity中国、Cocos为OpenHarmony游戏生态插上腾飞的翅膀

    ://docs.cocos.com/creator/manual/zh/editor/publish/publish-openharmony.html)。随后OpenHarmony又积极扩展其他游戏引擎
    发表于 10-23 16:15

    自适应可伸缩纹理压缩开发人员指南

    ? •ASTC压缩算法的技术细节。 •如何使用Arm ASTC编码器(astcen)压缩游戏资产。 •如何将ASTC与OpenGL ES和Vulkan等图形API结合使用。 •如何将ASTC与Unity和虚幻引擎游戏
    发表于 08-10 07:58

    Arm Mobile Studio r23p2-00rel0产品说明

    Mobile Studio for Unity软件包为Streamline和Performance Advisor提供了一个开源的Unity游戏引擎集成。该软件包提供: •Streamline注释
    发表于 08-09 06:39

    ____戈多游戏引擎教程-制作 2D平台游戏_第6节

    编程代码AWS
    充八万
    发布于 :2023年08月02日 18:37:49

    ____戈多游戏引擎教程-制作 2D平台游戏_第5节 #硬声创作季

    编程代码AWS
    充八万
    发布于 :2023年08月02日 18:36:44

    ____戈多游戏引擎教程-制作 2D平台游戏_第4节 #硬声创作季

    编程代码AWS
    充八万
    发布于 :2023年08月02日 18:35:53

    ____戈多游戏引擎教程-制作 2D平台游戏_第3节 #硬声创作季

    编程代码AWS
    充八万
    发布于 :2023年08月02日 18:35:03

    ____戈多游戏引擎教程-制作 2D平台游戏_第2节 #硬声创作季

    编程代码AWS
    充八万
    发布于 :2023年08月02日 18:34:13

    ____戈多游戏引擎教程-制作 2D平台游戏_第1节 #硬声创作季

    编程代码AWS
    充八万
    发布于 :2023年08月02日 18:33:23

    实时3D艺术最佳实践-灯光指南

    的照明技术下看起来更糟。 Unity游戏引擎使灯光工作简单易懂。的手机游戏的表现受到你的照明决定的影响,所以需要使用照明高效。 本指南也可在统一学习课程的格式-手臂和统一呈现:3D艺术 移动应用程序
    发表于 08-02 08:34

    实时3D艺术最佳实践-材料和着色器用户指南

    引擎的最佳实践 处理这两种情况时的做法。 •材质和着色器对游戏性能的贡献 •如何在不同的透明度实施之间进行选择 •纹理打包和轮廓等功能如何帮助优化性能
    发表于 08-02 06:11