美文网首页Unity技术分享
《游戏引擎架构》概述

《游戏引擎架构》概述

作者: 热爱生活的阿坤 | 来源:发表于2018-06-09 14:59 被阅读16次

真希望能早些看到此书:在介绍各个知识点之外,更重要的是将相关的知识点给整合了起来,形成了一种框架感。
比如Unity中的Lightmap,如果知道它是渲染引擎中资产调节阶段的一部分,就能和整个渲染流程产生联系了,而整个渲染引擎其实也是游戏引擎的一个子系统。
我认为,这也是作者写这本书的目的所在吧!

而此文的主要目的在于试图理解作者的框架、意图,作为总结、复习之用。
接下来,按照作者的架构顺序,做一个简略的概览:

十五章内容

一 基础

第一部分:基础

作者首先介绍了游戏团队典型的结构:程序、美术、策划,接着阐释了游戏是什么,以及游戏引擎的历史。同时,游戏类型不同,则引擎不尽相同,如虚幻引擎一开始就是供FPS游戏使用的。

游戏引擎无疑是一套大型软件系统,下面两幅图便可见一斑:

运行时游戏架构 工具及资产管理通道

而全书接下来就是围绕这些内容展开的。
而在步入正题之前,作者先介绍了必备的一些专业工具以及软件工程的基础,还有就是必不可少(让人头疼)的数学咯!
数学这节除复习了许多点、矢量、矩阵等基础知识,终于弄明白了欧拉角的万向锁问题,可谓受益匪浅!

二 低阶引擎系统

接下来,作者从每个游戏都需要的一些底层支持系统入手:游戏支持系统、资源及文件系统、循环及实时模拟、人体学接口设备、调试及开发工具。

低阶引擎系统

其中的方方面面,诸如内存管理或者资源管理,日志及追踪,都是游戏开发者会经常接触到的。

三 图形及动画

而第三部分就是个人最关心的了:渲染。
本以为渲染引擎应该是引擎中最复杂的部分了吧,没想到动画系统、碰撞和刚体力学实现起来也是十分复杂的:这三个部分也分别占据了此书近100页的内容。

下面以自己看得最仔细的渲染引擎为例,来看作者的思路:

渲染引擎

三维场景的渲染分为以下几个基本步骤:描述一个虚拟场景、定位一个虚拟摄像机、设置光源、描述场景中物体表面的视觉特性、着色方程。
而在游戏引擎中,高级的渲染步骤是由名为管道的软件架构所实现的,其最大的优点在于非常适合并行化。
下图描述了整个渲染管道中数据变换的过程:

渲染管道中数据的变换

其中,制作模型、材质等在工具阶段进行,资产调节阶段则包含了导入资源、烘焙Lightmap等,而应用程序阶段则负责可见性判断、几何排序并提交图元,几何阶段处理各顶点,而光栅化阶段则是将三角形转换为片段并处理片段。

而光照算法对渲染逼真的场景是十分重要的,可以通过贴图信息来影响光照,也可以使用HDR保留更多的细节,阴影、AO则是全局光照的一部分内容,延时渲染则提供了另一种场景着色方法。

而在游戏中,除了渲染三维固体之外,还有涉及粒子效果、贴花、环境效果、后期处理等内容。

四 游戏性

在介绍完游戏引擎用到的技术之后,作者提醒我们:游戏的本质在于游戏性——玩儿游戏的整体体验,更具体一点就是游戏机制,在游戏性系统简介这章,作者讲了关卡、游戏编辑器、数据驱动等和游戏机制息息相关的部分。

第四部分内容

而运行时游戏性基础系统,则唤起了之前作为Unity前端的种种回忆:C#及Lua脚本语言,事件驱动以及消息传递,MonoBehavior的Update(),动态内存池的管理,地图分块加载,任务系统等等等

五 总结

最后一章,作者补充了几个因为没有足够篇幅去讨论的引擎及游戏性系统:


其他内容

相关文章

  • 《游戏引擎架构》概述

    真希望能早些看到此书:在介绍各个知识点之外,更重要的是将相关的知识点给整合了起来,形成了一种框架感。比如Unity...

  • 《游戏引擎架构》PDF高清完整版-免费下载

    《游戏引擎架构》PDF高清完整版-免费下载 《游戏引擎架构》PDF高清完整版-免费下载 下载地址:网盘下载 备用地...

  • 游戏引擎架构

    还记得刚开始上班的第一天,手里抱着DirectX相关的几本书,准备好好学习一下关于哪些炫酷画面的单机游戏是如何做出...

  • 游戏引擎架构

    不用说,一图胜千言!

  • 第 2 章 InnoDB 存储引擎

    2.1 InnoDB 概述 2.2 InnoDB 存储引擎的版本 2.3 InnoDB 体系架构 InnoDB 存...

  • 阅读游戏引擎架构

    通过malloc()/free()或C++的全局new/delete运算符动态分配内存——又称为堆分配——通常是非...

  • 阅读《游戏引擎架构》

    最近开始读《游戏引擎架构》这本书。这绝对是一本值得所有游戏开发人员都拥有的书籍。 首先译者在行业内大名鼎鼎,又有云...

  • MySQL存储引擎

    插件式存储引擎架构,灵活的处理方式,高度可定制化及完全开放的实现 MySQL存储引擎概述 MyISAM存储引擎是M...

  • (转)关于ES性能调优几件必须知道的事

    (零)ElasticSearch架构概述 ElasticSearch是现在技术前沿的大数据引擎,常见的组合有ES+...

  • 002-OpenShift架构

    1.架构概述 从技术堆栈的角度分析,作为容器云,OpenShift自底而上包含了以下几个层次:基础架构层、容器引擎...

网友评论

    本文标题:《游戏引擎架构》概述

    本文链接:https://www.haomeiwen.com/subject/ojxteftx.html