虚幻3引擎是一套为DirectX 9/10 PC、
Xbox 360、
PlayStation 3平台准备的完整的游戏开发构架,提供大量的
核心技术阵列,内容编辑工具,支持高端开发团队的基础
项目建设。 虚幻3引擎的所有编写观念都是为了更加容易的内容制作和编程的开发,为了让所有的美术开发人员能够牵扯到最少程序开发内容的情况下使用抽象程序助手来自由创建
虚拟环境,以及提供程序编写者高效率的模块和可扩展的开发构架用来创建,测试,和完成各种类型的
游戏制作。
开发背景
当游戏进入3D时代之后,“引擎”这个概念越来越多的进入了我们的视野。
游戏引擎其实可以比作赛车引擎,它把游戏中的各种元素捆绑在一起,在后台指挥它们同步、有序地工作,不同游戏引擎就像不同的赛车引擎一样,会给玩家和驾车者以不一样的感受。
在
3D引擎的发展史中,为我们留下深刻印象的作品有很多。例如Quake 3引擎以其优秀的物理性能和出色的稳定性造就了一代经典,甚至为
FPS游戏开创了一个新的玩法:Defrag。玩家通过借助武器爆炸的冲力可以在空中自由的飞翔,那种感觉就像驾驶着法拉利跑车在路上自由的飞奔。
使用技巧
特性
Seamless World Support 可以根据先前的关卡景物设置通过
记忆功能自动生成多变的景物,
次时代游戏的开发也将依赖于这项技术;同时,功能强大的UnrealKismet系统提供
脚本语言提供了对
元数据的自动支持,支持十分灵活的
文件格式向下
兼容性,支持让关卡设计师使用脚本属性,关卡设计师可以随心所欲的设计和设置游戏的关卡和
AI,程序员的
工作效率也将大大提高。Epic称该引擎在角色、
法线贴图、
材质贴图、环境、光照等和先前的引擎相比将
有质一般的飞跃。
“Unreal Engine 3”并整合了由 Ageia 所提供的“NovodeX”物理
模拟技术,让展示场景中的对象呈现出如同实际物体般的反应,像是弯曲、抖动、晃动、碰撞、弹跳 等,并以常见的连锁机关方式来展示这些真实
物理反应模拟所能做到的效果。
虚幻3引擎给人留下最深印象的就是其极端细腻的人物和物品模型。通常游戏的人物模型由几百至几千个
多边形组成,并在模型上直接进行贴图和渲染等工作从而得到最终的画面。
而虚幻3引擎的进步之处就在于在游戏的制作阶段,引擎可以支持制作人员创建一个数百万多边形组成的超精细模型,并对模型进行细致的渲染,从而得到一张高品质的法线贴图,这张法线贴图中记录了
高精度模型的所有光照信息和
通道信息。
在游戏最终运行的时候,游戏会自动将这张带有全部渲染信息的法线贴图应用到一个低多边形数量(通常在5000-15000多边形)的模型上。这样的效果就是游戏的模型虽然多边形数量比较少但是其渲染精度几乎和数百万多边形的模型一样,这样可以在保证效果的同时在最大程度上节省显卡的
计算资源。
解析
在刚刚过去的
E3大展上面,虚幻引擎3无疑最引人注目的焦点之一。这是一个集合了多项优秀引擎和技术为一体的“超级引擎”,它使用上文中提到的SpeedTree对树木进行处理,并且集成了NovodeX
物理引擎,还为
游戏开发者提供了可视化交互式
开发环境UnrealEd(Unreal Editor)。
SpeedTree
SpeedTree为虚幻引擎3带来了无比真实的树木与森林效果,由于上文中已经有详细说明,这里就不再赘述。
NovodeX
NovodeX是虚幻引擎3中功能强大的新一代物理引擎,其性能决不输给
Havok PhysiCS。NovodeX支持速度、
加速度和
弹性碰撞等物理概念,并且含有
布娃娃系统令人物动作更加逼真。
程序特点
在虚幻的引擎中为了游戏开发的程序员们能够更好地进行编写,提供了3个非常具体的编写实例和百分之百开放的源代码,编辑器,Max/Maya的输出插件,以及一些公司
内部开发游戏所使用到的
游戏代码。
虚幻的游戏播放脚本语言还提供了许多自动化的原数据供游戏开发人员参考和使用。引擎不仅可以兼容多种文件格式,还允许游戏的关卡,任务编辑人员在编辑器中直接察看游戏脚本的内容,属性并直接进行修改。
引擎中将
材质编辑的这部分界面拆成了许多独立的模块,方便那些在进行制作的美术人员以后可以直接在界面中根据需要加入新的
可视化工具或是新的明暗
生成器。
拥有操作便捷高效的
软件结构,可以快速地升级到大型的团队开发项目或是多平台开发项目。
虚幻3引擎还提供了统一化的编码标准,适用于PC机的汇编及可以支持的下一代
控制平台里。所有游戏开发时所需要的内容和
数据文件都能在这些可以支持的控制平台中兼容,可以极快地增强开发的内容和数据在转化和
测试工作中的效率。
在引擎中使用了经过优化后的
DVD光驱载入系统,这种系统可以将DVD光驱的实际
传输效率充分发挥到
百分比八十以上。
虚幻3引擎提供了一个较为简易便捷的代码架构,方便不同国家的程序员在编写
游戏文字、音效、图象和视频时不同的要求和习惯。虚幻3是基于“Unicode character set”(统一编码标准的
字符集)所开发的,可以支持16位的Unicode字体和文本输入,包括可以将
TrueType字体导入成可渲染的位图格式(周诗超:
TrueType是一种
微软和Apple公司共同研制的字型标准),在共有9种语言版本可供使用,包括日文,中文和
韩文。
专业测评
渲染效果
◎ 64位色高精度动态渲染管道。
Gamma校正和
线性颜色空间渲染器提供了完整的颜色精度,同时支持了各种后期特效例如光晕,镜头光环和
景深等效果。
在最新的一代
显示芯片发布的过程中,我们注意到了一个非常明显的特点,就是新一代的显示芯片已经不再满足于传统的32位
色深,转而需要更加高精度的颜色范围,这一点在
NV40和R420身上都能非常明显的看出来。在NV40上,这种技术被称为HPDR技术,而在R420身上,这种技术也有所体现。
◎ 支持当前所有的基于像素的光照和渲染技术,包括使用法线贴图技术的参数化的Phong光照;虚拟位移贴图;光线衰减函数;采用预计算的阴影遮罩技术以及使用球形harmonic贴图的预计算的凹凸自阴影
◎ 高级的动态阴影。
虚幻引擎3提供对下列3种阴影技术的完全支持:
· 采用动态模板缓冲的阴影体积技术,能够完整支持动态光源,这样就能在场景中所有物体上精确地投射阴影。
· 能够让动态的角色在场景中投射出动态的、柔和的模糊阴影,这个过程是通过使用16X超级取样的阴影缓冲实现的。
· 采用了拥有极高质量和极高性能的预先计算出的阴影遮罩,从而可以将静态光源的交互现象
离线处理,同时保留了完整的动态高光和反射效果。
◎ 所有支持的阴影技术都是可视化的,并且可以按照美工的意愿自由混合。另外,同时可以与有颜色的衰减函数结合,从而实现具有合适阴影的
平行光、聚光灯效果,以及投射光效果。角色能够在虚幻引擎3中使用阴影技术产生动态的
软阴影◎ 强大的材质系统,使得美工可以在实时图形化界面中建立任意复杂的实时Shader,而这个界面的友好度可与Maya的非实时Shader
图形编辑界面媲美
◎ 材质框架是模块化的,所以程序员不仅可以加入新的Shader程序,还可以加入能够让美工随意与其他组件连接的Shader组件,从而可以实现Shader代码的动态合成。
◎ 完全支持室内和室外环境的
无缝连接,在任何地方都支持的动态每象素光照和阴影。
◎ 美工可以通过一个可动态变形的基本高度图来建立地形,并使用多层混合材质,这其中包括
位移贴图,法线贴图和任意复杂的材质,动态的基于
LOD的细分,以及植被。
另外,地形系统还支持美工控制的自然效果,如平地上的植被,陡坡上的岩石和山顶上的雪。
◎ 体积环境效果,包括高度雾和物理上精确的距离雾。
◎ 刚体
物理系统,支持游戏者和游戏中的物体,布娃娃角色动画以及复杂碰撞等物体交互方式。
布娃娃(
Ragdoll)系统,是最为流行的一种非常高级的物理引擎,能够付给物体以一定的质量,形状等特性,从而获得非常逼真的力学动态效果。
◎ 所有可渲染的材质都含有物理特性,例如
摩擦系数等参数。
在虚幻引擎3提供的编辑工具UnrealEd中,能够对物体的属性进行实时修改
◎ 符合物理原理的声音效果。
◎ 完全整合的基于物理原理的交通工具支持,包括游戏者控制,人工智能和网络。
◎ UnrealEd内建的可视化
物理建模工具,支持对于模型和
骨骼动画网格的用于优化
碰撞检测的
图元的建立;约束编辑;在编辑器内可交互的
物理模拟和调整。
◎ 在
地图编辑方面,使用了利用高度图直接生成地表高度的地图编辑器。(周诗超:这种游戏地图也称为“高度图”,是在较为流行的地图编辑方式。优点是地形变化丰富,美术的制作效率高。象前一段时间的《farcry》——“孤岛惊魂”就在这个功能上非常的强大)。
在编辑器里可以对不同的地面层进行柔和的材质融合,包括位移贴图,法线贴图或是更为复杂的材质类型,动态的LOD方格,及由程序自动在地表上生成大面积的植被等等强大的功能。引擎中还可以进行体积雾的设置,包括对雾的高度,雾的消失距离进行准确的设定。
动画系统
◎ 骨骼动画系统;支持每顶点可达4骨骼同时影响的效果以及复杂的骨骼结构。
◎ 动画由一棵动画物体树驱动,包括:
· 混合控制器,进行对嵌套的动画物体之间的多路混合。
· 数据驱动的控制器,封装
动作捕捉或手动制作的动画数据。
· 物理控制器,连接到刚体动态引擎,用来实现布娃娃系统的游戏者和NPC动画和对力的物理响应。
· 过程动画控制器,以C++或UnrealScript实现,为了实现一些如使一个NPC的头部和眼睛跟踪一个在关卡中行走的游戏者,或使一个角色根据
健康情况和疲劳度作出不同动作等特性。
◎ 为
3D Studio Max和Maya制作的导出工具,用于向引擎中导出赋予
蒙皮权重的网格,骨骼和动画序列。
游戏性系统
◎ 提供了一个支持普通游戏对象(如游戏者,NPC,物品,武器和触发器)的面向对象的游戏框架。
◎ 丰富的多级别
AI系统,支持寻路、复杂关卡游历、单独决策和组队AI
· 对如触发器,门和升降机等普通游戏对象敏感的寻路框架,允许复杂的游历设定,使得NPC可以按下开关,打开门,并绕过障碍物。
· 游历框架带有短期战术战斗、掩护和撤退的路线网。
· 基于小队的AI框架,适合第一人称射击、第三人称射击和战术战斗游戏。
◎ AI路径在UnrealEd中可见并可由关卡编辑者编辑,允许自定义和提示
◎ 可见的AI脚本工具,使设计者可以创建复杂的
交互性游戏设定,例如游戏者目标,通用的游戏事件触发器和交互式
过场动画
◎ UnrealMatinee,一个基于时间线的可视化序列、动画和曲线
路径工具。设计者可以使用此工具建立游戏中的过场动画,可以是交互的
或非交互的,通过动画序列化、移动包括摄像机在内的对象,控制声音和
视觉特效,并触发游戏和AI事件。
UnrealEd中的“Matinee”工具,能够编辑基于
时间轴的事件序列
◎ 支持各种平台的
输出格式,包含5.1
环绕立体声和高品质杜比数码音效。
多普勒效应:是指当发声物体在运动时,声音的音调会随着物体
移动速度而改变其高低——
声音频率的变化,这个原理也被运用在声卡3D发声原理之中。
◎ 在UnrealEd中的可视化音效工具可以为声音设计者提供对音效的全面的控制,声音强度,顺序,循环,过滤,调制,变调和随机化。声音参数被从代码中分离开,使设计者可以控制所有的与游戏、过场动画和动画序列相关的声音。
◎ 支持所有平台的主要
声音格式,包括PCM,ADPCM,游戏机对应的声音
压缩格式和
Ogg Vorbis。
◎ 支持游戏机上的声音流。
◎ Internet和局域网游戏已经成为Epic的竞赛游戏如Unreal Tournament 2004的一大特征。虚幻引擎长时间以来一直提供灵活的高级网络架构,适合于各种类型的游戏。
◎ Internet和局域网游戏在PC和所有游戏机平台上都被完全支持
Unreal Tournament 2004的游戏中带的服务器浏览器
◎ 虚幻引擎的网络游戏部分编程是高层的和数据驱动的,允许由Unreal脚本代码指定在客户端和服务器之间联系的变量和函数,来保留一个同步的对游戏状态的近似。底层游戏
网络传输是基于
UDP的并能够将可靠和不可靠
传输方式结合,来对游戏感进行优化,即使在低带宽和高延迟的环境下。
◎ 客户端-服务器模式下最多支持64个游戏者同时游戏。同时支持非服务器模式(点对点模式)下的16游戏者同时游戏。
◎ 支持不同平台间的
网络互连(例如
PC服务器和游戏机客户端;Windows,
MacOS和
Linux客户端共同进行游戏)。
◎ 所有游戏特性在网络游戏模式下都被支持,包括基于交通工具的
多人游戏,带有NPC和机器人的组队竞技,单人模式下的
协同游戏等等。支持自动下载,包括跨平台的一致的Unreal脚本代码。这项特性使得从用户自己创建的地图到奖励包,到完整的游戏mod都可以随意获得
全局光照技术“Unreal Lightmass”,可生成高质量的静态照明和带精确
半影的软阴影、相互漫射与反射、色彩释放(color bleeding)等下一代技术,同时还有新的
分布式计算框架“Swarm”,生成光照的速度可提高最多十倍。
◎ “Unreal Content Browser”(虚幻内容浏览器)基于后端数据库,支持
缩略图预览、内容标签、内容收集管理,能让开发人员在海之内容里迅速找到所需资源,不必再逐个手动打开文件查看。
◎ 可扩展统计和
数据管理后端“Unreal Master Control Program”(虚幻主控程序),作为一种
高可靠性在线服务架构,支持新闻宣布、设定管理、在线玩家追踪,以及硬件、配置、游戏状态数据搜集,并且包含一系列视觉化游戏状态工具,比如玩家活跃性区域
热图物理学碰撞
刚性物体碰撞系统可以让操作的玩家充分利用游戏里的物体碰撞,角色动画碰撞,复杂真实的交通工具和物体爆炸进行娱乐。 所有的渲染物体和模型都可以进行动力学属性的设置,包括
摩擦力。
物理碰撞音效
提供了许多和动力学有关的功能和设置,包括玩家的操作,人工智能及网络功能。 在虚幻的编辑器中可以直接进行物体,模型的动力学设置,并支持简单的碰撞优化及调整;
运动约束编辑;交互式的
物理仿真及编辑器中的tweak快速调节。
网络及联机
引擎的互联网架构和局域网架构可以很好地支持PC机及各种
操作平台。
虚幻引擎的网络架构拥有高级别的安全性能和
数据传输能力。通过提供的脚本
游戏代码可以在客户端和
服务器端进行快速稳定的复制,传输,并且十分精确。另外还有了一个低级别的网络
传输系统,它基于
UDP协议,适用于那些速率较低的
窄带和特殊场景的游戏。
在网络架构中,如果是“专业服务器”的话可以支持的联机上限为64个玩家。如果是“非专业服务器”的
话则可以支持到16个玩家。
支持不同操作平台之间的联机对战(例如:拿一台PC机作为服务器端,可以让Windows用户,MacOS 用户和Linux用户一起进行
联机游戏)
引擎中的大部分功能可以支持网络联机功能,包括玩家间的多人游戏队战,和电脑提供的NPC或是机器人进行对战,或是单人模式下的协作任务对战等等。还支持自动的游戏内容下载和更新功能,包括
跨平台的通用性虚幻脚本代码。玩家可以在自己制作的游戏地图中进行游戏,并放到互联网上供其他玩家下载。在
游戏服务器登陆界面里还可以服务器的快速检索和查找,服务器
收藏夹功能,及聊天功能等等。
可以通过设置一台“总控制服务器”对全球范围内的其他游戏服务器进行追踪,将某些玩家进行过滤和封IP,称之为“全球游戏状态
跟踪系统”。(主要针对的是那些作弊的玩家)
操作工具
虚幻的编辑器(简称为“UnrealEd”)是一个以“所见即所得”为
设计理念的操作工具,它可以很好地弥补一些在3D Studio Max和Maya中无法实现的不足,并很好地运用到游戏
开发里去。
在可视化的编辑窗口中游戏开发人员可以直接对游戏中角色,NPC,物品道具,AI的路点及光源进行自由的摆放和属性的控制,并且全部是
实时渲染的。(并且这种实时渲染还有动态的光影效果。)
并且还有完整的
数据属性编辑功能,可以让关卡设计人员自由地对游戏中的物件进行设置或是由程序人员通过
脚本编写的形式直接进行优化设置。
实时的地图编辑工具可以让游戏的美术开发人员自由地对地形进行升降的高度调节,或是通过带有alpha通过的
笔刷直接对地图层进行融合和修饰。并可以在地图编辑中直接生成碰撞数据和位移贴图。
图形化的材质编辑工具。开发人员可以对材质中的色彩,
alpha通道及贴图坐标进行自由的调解并由程序人员来定义所需要的材质内容。(周诗超:我看了虚幻的材质
编辑器,采用的是和Maya,Darktree一样的“材质节点编辑”方式,操作的时候,无论是脱拽或是关联线的操作都十分的方便,至少比我经常在用的Max中的“材质层级编辑”方式好用多了)而美术制作人员则可以在材质编辑工具中利用多个简单的材质类型融合出一个复杂漂亮的高级材质类型,并可以实时地参照场景中的灯光影响。
编辑器的
资源管理器功能也非常的强大,可以进行快速准确的查找,观看并对游戏开发中的各种资源进行整理组织。
虚幻编辑器中还为美术制作人员提供了完整的模型,骨骼和动画数据导出工具,并将它们连同编辑游戏事件所需要的声音文件,剧情脚本进行统一的编辑。
在编辑器中还为开发人员提供了一个“
游戏测试”的按钮,只要用鼠标点击后就可以对编辑好的游戏内容进行测试。这样的话,可以一边在“测试窗口”中观看游戏画面,一边在另一个窗口中进行实时的调整和修改,十分方便。
为那些使用3ds Max和Maya进行制作的美术人员,提供了完善的
导入导出插件。可以把模型导入虚幻引擎当中,包括模型的拓铺,贴图坐标,光滑组,材质名称,骨骼结构和相关的骨骼动画数据。
缺点
由于引擎开发较早,对多核CPU支持不佳,往往出现其中一个核心
利用率100%,其他核心却利用率很低的情况,导致游戏运行不流畅。
应用游戏
部分数据参考:17173,52PK 网站数据
引擎下载
老牌游戏《雷神之锤》的开发商
id Software有这样的传统,在一款游戏引擎产品使用数年后即会向公众
开放源代码。虚幻引擎开发商
Epic Games也加入了这一行列,宣布开放鼎鼎大名的虚幻引擎3(Unreal Engine 3)。虽然没有公开引擎
源代码,但任何游戏开发团队都可以采用这部免费的Unreal引擎Unreal Development Kit(UDK)开发包,开发制作独立的
UE3引擎游戏。授权方面,仅仅在非商业和教学使用完全免费,但是如要将开发出的游戏上市销售则需联络Epic付费授权。授权费用是:利润的前5万美元免费,5万美元以上的部分则须向Epicjij交纳利润的25%
2009年11月,游戏开发商
EPIC携手
NVIDIA联合推出虚幻引擎3免费版(Unreal Development Kit)。此举动为NVIDIA想进一步拓展
CUDA通用计算市场影响力,而采取的赞助授权策略。
虚幻引擎3是2006-2013年流行的游戏引擎,基于它开发的大作无数。开发包“UDK”包含完整的虚幻引擎3开发功能,除基本的关卡编辑工具Unreal Editor外,组件还包括:
Unreal Content Browser素材浏览器
Unreal Kismet可视化脚本系统
Unreal Matinee电影化场景控制系统
Unreal Cascade
粒子物理效果和
环境效果编辑器
支持
NVIDIA PhysX物理引擎的Unreal PhAT建模工具
Unreal Lightmass光照编辑器
AnimSet Viewer和AnimTree Editor骨骼、肌肉动作模拟
UDK仅面向
PC游戏,但Epic称他们也在考虑未来开放
Xbox 360和PS3游戏的开发功能。
UDK开发包安装程序容量为562MB,未来更新也将免费提供。
配置要求
最低需求
UDK开发包
安装程序容量为562MB,未来更新也将免费提供。其最低
系统需求为:
· Windows XP SP2或
Windows Vista· 2.0GHz以上处理器
· 2GB内存
· 支持Shader model 3显卡
· 3GB硬盘空间
推荐配置
· 8GB内存
· 大量硬盘空间
兼容性更强
英伟达(
NVIDIA)和Epic Games公司成功地将虚幻引擎3的PC完整版移植到
Windows 8操作系统和
Windows RT系统上。他们通过一台采用
Tegra 3的
华硕Vivo Tab RT
平板电脑展示了一段该引擎的《Epic Citadel》片段,暗示着PC和
Xbox游戏开发商都可以轻松地将虚幻引擎3游戏带到新的操作系统上。视频还顺带提到了《战争机器》和《质量效应》都是采用虚幻引擎3打造的,届时在2012年10月26日Windows 8操作系统和Windows RT系统发布时,或有可能看到这两款游戏登陆新系统。