Cryengine 2完全技术分析 

2007-05-16 15:00 发布

"转帖"

翻译自Crytek在GDC 2007上的Cryengine2 PDF说明文档,如有错漏请指教,本文的目的是想让一般玩家对Crysis的引擎和其他图象技术有基本的了解。文章里还带有大量的图片和视频,使得这些技术说明更为直观的同时,也使文章更为有趣味。


按此在新窗口浏览图片

次世代的时实渲染

  CE2的渲染器能够在支持DX9/10的硬件上创造出无缝连接的室内和室外场景。面向Xbox 360和PS3平台的版本也在开发中。

实时的光照和动态柔和阴影

  CE2能够创造出自然和谐的光源并实时生成柔和阴影。能够生成高分辨率、带透视矫正的容积化阴影。

容积化、多层次以及远视距雾化技术

  该技术可以生成笼罩地表的云、雾层,能够自然地模糊远景的可视对比度。此外还可以跟动态光影相结合,减少景物之间的生硬过渡,从而增强大场景的立体自然感。


按此在新窗口浏览图片

2.5D地形环境光照遮蔽贴图

  该技术根据场景里的环境物体(比如植物、建筑物)对光源的遮挡情况,正确计算出物体接收到的光照量。

按此在新窗口浏览图片


法线贴图和视差映射

  法线贴图技术通过计算高细节度模型的法线信息并将其保存在一张高压缩比(3DC/DC5)的法线贴图之中,然后将这张法线贴图贴用于低细节模型上代替原型的多边形曲面的光照计算,从而等到一个低多边形、高细节的3D模型。CE2还支持更高级视差遮蔽映射,能够给予多边形物体表面德贴图更强的深度感,从而令需要高度凹凸立体的浮雕、砖墙等材质更加真实。

  本演示展现了使用法线贴图和视差映射绘制的地面,凸凹感十分明显。

[此贴子已经被作者于2007-5-16 15:06:08编辑过]
B Color Smilies

全部评论10

  • zhigu
    zhigu 2007-5-16 15:01:00
    实时环境光照贴图

      实时环境关照贴图可以将预先计算的环境光照信息添加到室内环境的表面信息中,包括当前环境的入射光位置跟颜色都可以被动态添加到用于照明室内场景的光照强度中,此举可以显著提升实时逐象素光照跟阴影的逼真度。


    按此在新窗口浏览图片

    次表面散射

      次表面散射用于模拟光线在穿透半透明物体,如冰块、翡翠时所产生的漫射、衍射现象。此外,它还能模拟皮肤跟植物叶子的透光效果,然此类材质看起来更为自然逼真。


    按此在新窗口浏览图片

    视觉适应和高动态范围光照

      视觉适应是用来模拟人类眼睛碰见突然光线变化的适应情况(如从黑暗室内明亮的室外)。而高动态范围光照可以让场景有更大范围的明暗对比度从而使得画面更真实。

  • zhigu
    zhigu 2007-5-16 15:02:00
    光束、光轴

      此技术用于渲染光线在通过高度遮蔽的环境时(比如茂密的森林)所形成的光束、光轴,还可以用来渲染光透过海面在海底形成的“神圣光芒”效果。

    高级着色器技术

      CE2采用shader脚本系统可以将各种纹理跟多种算术运算结合起来创造出诸如遮蔽、湿润、泥泞或者冰冻等等特殊表面材质效果;这些特效还可以被分割或跟其他诸如金属高光、玻璃材质等常见shader效果混合使用。支持实时逐象素光照、凹凸反射/衍射、容积glow、动画贴图、透明电脑荧幕\窗户、弹孔、反光表面以及其它各种DX10统一着色器架构带来的独特shader特效。

    按此在新窗口浏览图片


    高质量的3D海洋渲染技术

      CE2在渲染海面时会根据风力跟洋流的信息即时作出动态调整,因此可以生成非常自然逼真的海面。而“柔和剪裁技术”会在海陆相接的地方根据陆地的高度和海水深度生成自然的海岸线和海床。此外,“焦散模拟技术”还会在海底环境投射效果逼真的动态阴影跟水底光纹。

  • zhigu
    zhigu 2007-5-16 15:02:00
    运动模糊和景深

      运动模糊是用来模拟慢速快门拍摄快速移动的物体或者是快速移动的镜头,模糊可以用在单个物体也可以运用在整个场景上。而景深是用于清晰视野焦点而模糊焦点前后的事物。

    运动模糊


    景深,视线焦点以外的部分比较模糊

    动态细节的地形管理

      这个特性可以优化CPU和内存的是使用,在让近处的物体和地形有不错的细节程度同时,依然可以有长达八千米的视野距离。

    按此在新窗口浏览图片


    Polybump 2

      Polybump 2可以单独使用也可以同3DS Max之类工具一起使用。这个工具可以快速提取如法线贴图、置换贴图、非闭区域方向和其他一些属性来创建包含高质量的表面描述的扩展信息。这些扩展信息可以用来绘制类似高模品质的低模,但这个速度将会快得多。这些数据储存在文件里,它可以不必再次计算就用多种不同的方法导出。即使是1000万个多边形这样的高多边形数也可以快速完成。


    内置多线程处理物理引擎 

      该技术可以让场景里的任何物体,比如树木、植被等模型对诸如风力、爆炸冲击、引力、物体之间的碰撞/摩擦等外力作出互动反应,而且无需专用物理加速硬件的支持。

  • zhigu
    zhigu 2007-5-16 15:02:00
    高级绳索物理性模拟系统

      绳索物理性模拟技术令柔软的植被、树叶能够对风、雨和角色运动等外力作出自然物理反应。此外,其它诸如吊桥跟外力的互动以及触须之类柔软可弯曲的生物组织的物理性模拟均为高级绳索物理模拟系统的杰作。

    可怜的朝鲜士兵被桶砸中,而吊桥断开下落的物理特性十分真实

    互交的可毁坏的环境

      动态的改变任何环境物件和形状,可以摧毁建筑、树木和其他物体。

      在这个十分华丽的核爆中,冲击波毁坏建筑和树木,碎片四飞,效果十分惊人,这也要得益于CE2的次世代物理系统。


    坦克可以直接撞毁房屋


    按此在新窗口浏览图片

    树木甚至可以一节一节的被打断

      使用机械瞄具的时候,注意力高度集中,准心以外的区域都模糊,这个效果太酷了,相信它会让不少玩家放弃光学瞄具。注意图片里朝鲜使用的是中国的99式主战坦克。  

    角色动画系统

      新的角色动画系统可以真实的表现人类或者载具动画。完全内置的角色编辑器可以让制作者在CryENGINE Sandbox2里预览动画效果。此外,超级强大的动画图表允许动画设计师对角色动画的状态设置以及状态转换进行可视化操作。

    个性化角色制作系统

      角色制作流水线使用一个丰富的角色特征附件粘贴系统,可以给人物角色粘贴上蒙皮材质、动画信息等数据。此外,还可以将物理信息粘贴到骨架跟人物多边形脸孔上,甚至还允许设计师任意更换角色的身体,比如更换头部、手臂或者上下身。支持硬件加速的人物模型变形系统允许设计师对人物模型网格的变量进行修改。该系统不仅支持手动变形操作而且还可以选用程序化自动生成的样本,以减少内存的占用量。此外还有一个基于着色器的变形系统,可以对泥泞、衣物以及用于皮肤伪装的着色器效果进行变形操作。


    按此在新窗口浏览图片

    参数化骨骼动画系统

      通过对用户定义的动画样本进行混合,设计师可以对角色的动画进行互动控制,令该角色能够自然合理地根据实际游戏环境改变动画运动。该系统允许角色可以以不同的速度走动;可以在对通道、路径的方向转变作出合理反应;可以作出自然的上、下山运动;可以通过动态混合各种碰撞反应动画来改变角色的移动方式。

    程序化运动变形

      CE2采用CCD-IK,分析IK、样本IK等程序化算法以及物理模拟来增强预设定动画。这些程序法处理方法都是让计算机根据这些算法规定的步骤来计算人物的运动方式。CE2采用了一种运动变形技术来保留原本基础运动的方式,使得原本生硬的计算机生成跟真人动作捕捉混合动画看起来更加自然逼真。

      人物的动作十分自然,如跑动转向的重心调整都表现了出来,而上下坡行走动作也同在平地上也有区别。

    高质量动画压缩

      CE2采用了关键帧压缩技术,可以根据特定动画所需的保真度动态调节压缩等级。该技术可以在提供高保真度的同时节约至少90%的内存占用量。

  • zhigu
    zhigu 2007-5-16 15:03:00
    Cryengine 2完全技术分析的下篇更为偏向游戏开发环境方面,相信对于MOD的爱好者对此部分会有更大的兴趣,当然其中不少内容也涉及游戏的内容,普通玩家也可以看看。

    集成的CryENGINE Sandbox2编辑器

      运行时间引擎是完全集成在CryENGINE Sandbox2编辑器给了设计者“所见既所玩”特性。

    在编辑器里开发者可以随时直接进行游戏,检查制作结果


    集成的面部表情编辑器

      强大的全新面部表情编辑工具使用音频波形分析技术自动的同步获取声音并将语音的关键点转化为自然而可信的面部表情和唇型。成熟而方便的多重基于摇杆的用户界面允许使用多种方法直观而快速的被定义和被组合。表情和动画一但被创建,就可以在多个不同的人物模型上运用。在系统的配合下,视频跟踪工具可以用普通的摄象机来捕捉演员的动作,这些运动会在编辑器里直接被转化成想要的面部模型,表情和运动能够同步组合成唇型,可以被动画制作人进一部的处理。


    集成的植被和地形生成系统

      在运行的时候植被会依据如坡度,地表特性等自然特性程序性的生成植被而创建一个可信的自然环境而不用设计师对其每个树木或者草进行调整。植被还会随其地面纹理而改变颜色,使得其和环境更为融合。

    集成3D地表生成及渲染(VOXEL) 技术高级地形系统

      允许设计者在他们的场景里安置悬空的悬崖、洞穴隧道,并控制每个区域的地形细节程度来减少多边形数量。

  • zhigu
    zhigu 2007-5-16 15:04:00
    按此在新窗口浏览图片

    流程图

      一个可视化编辑系统允许玩家通过连接逻辑单元的入口和出口、定义它们属性和状态来创建事件、触发器和其他逻辑条件。可以让设计者不用写C++代码或者LUA脚本就完成复杂关卡的设计。

    按此在新窗口浏览图片

    开发者可以方便的用流程图确定各个事件直接的关系


    高级的柔和粒子系统和集成的FX编辑器

      可以用次世代的柔和粒子十分简单的创建复杂的爆炸、火、烟和其他特殊效果,其还可以检测同其他物体的碰撞、对风、重力等外力施力或者受力做出反应,并能够对光影互相影响。

    动态的时间日夜设定

      在游戏过程中动态的改变时间会有不同的光照条件和不同的24小时循环的日/月位置,从雾气蒙蒙的清晨日出到炽橙的日落再到月高夜冷。


    按此在新窗口浏览图片

    道路和河流工具

      集成的这些公共能够轻易的平滑和改变地形的层次并在崎岖的地形上创建小道,公路和河流。

  • zhigu
    zhigu 2007-5-16 15:04:00
    载具编辑器

      允许设计者设置载具的损坏系统,可以定义部件损坏和损坏效果,定义成员座位和状态(如控制坦克炮塔或者附武器,还由引擎提供了完全可控的物理参数。也可以表现载具的尾气和表面粒子效果。

    按此在新窗口浏览图片

    如汽车可以被打爆轮胎而翻覆


    音效和音乐

      CryEngine2的音效系统有了很多新的特性和进异步发展了数据驱动的概念,每个音效都带有自己独特的特性,所以音效设计者能够完全控制音效的最终质量,音效会贯穿游戏始终。

    数据驱动音效系统

      录音室质量的音效能够轻易的被创作和分发,并支持任何现有的环绕立体声扬声器配置。由内建音效库的FMOD确保了其多平台的兼容性。

    互交的动态音乐系统

      有特别定义逻辑的改进的音轨回放可以对游戏的事件提供你所期望的变化,其能够给玩家提供电影音乐般的体验。

    按此在新窗口浏览图片


    动态环境音效

      任何物理接触都会产生由大量如材质类型、物体类型、质量等大量参数控制独特音效。这个技术给互交的游戏世界提供了无重复的和有感应的音效回放。

  • zhigu
    zhigu 2007-5-16 15:05:00
    智能物体

      给关卡设计师给关卡里的特别的物体提供简易创建连接特别动作的方法,角色动画和物体在动画开始和结束前校正堆齐和按自动的动画顺序播放。

    按此在新窗口浏览图片


    性能分析

      强大的测试程序允许开发者实时分析引擎性能,创建内存使用报告,自动遍历每个场景产生测试结果。

    离线渲染 

      可以从控制台命令轻易创建视频流或者图象,并将其输出成任意分辨率和比例的画面,甚至还可以生成360度可以全景环绕的画面。

    模块化的C++支持

      整个程序都由C++模块化编写,并且有完整文档和注释,并分离为独立的逻辑DLL文件,你可以使用你需要的,也可以按你个人项目的需求自己修改或者替换引擎的组件。

    多线程支持

      完全支持现在的多核心处理器架构,CryENGINE 2的如物理、网络、音效等子系统代码都被重写来支持多线程

    资源编译器

      在项目建立的时候可以用资源编译器可以从原始格式编译,这个允许依照设置和目标将全局性的改变(如mipmap计算、网面生成)输出数据而不会影响最终的场景载入时间,或者需要开发者为多平台开发多个版本。

    流系统

      流系统能够按需求实时的载入大的关卡,这样可以让游戏更为复杂,同时也会降低内存需求。

    网络客户端/服务器系统

      CryENGINE 2有一个全新的多线程的管理多人游戏模式全部连接的网络系统。它是一个使用基于高压缩的十分可靠,低延迟、低带宽的系统。  

  • 幽谷
    幽谷 2007-5-16 15:25:00

    长见识了 谢谢发帖

    [em04]
12下一页

你可能喜欢

Cryengine 2完全技术分析 
联系
我们
快速回复 返回顶部 返回列表