古剑3所用vision engine和渲染分析

  • G
    GuardHei
    本来想加点截图来着的,结果手机里没有,有空补

    ===== 更新 =====
    看到有人说需要配个图,那我就来更新一波

    这个是体积光,可以看到人物,尤其是头发边缘细碎模糊的问题,如果镜头动起来就会导致edge bleeding。同时可以看到体积光用了某种空间性噪声采样+模糊。

    草的细节等级变化(LOD)可以在这里清楚的看出来 -- 完整模型 - 十字面片 - 纯面片

    注意地上水坑的反射,有很明显的空洞痕迹(不知道s1会不会压图片质量)

    对于湖面的反射来说,额外模糊扭曲了一层,看起来像油画一样,所以问题就不大了。值得注意的是,看两张截图里湖面的左边,能明显看出倒影的物体和岸上的物体形状对不上,这就是典型的屏幕空间反射采集不到信息,fallback到反射探头的问题

    部分池塘周围的物体做了一层焦散的效果,就是简单的平移uv贴图做的,美工辛苦了。

    左图里能明显看到分层的顶点,以及边缘的像素飞点去柔和。右图就是那个帧率骤跌的过场动画。

    分镜挺漂亮的,但是很明显这个景深效果只是一个高斯模糊,没有bokeh做的散景光圈

    很明显场景里的所有静态物体的阴影也是实时画的,级联阴影的过度明显。由于这个原因,对于较大的关卡来说,阴影粉刺和锯齿严重,如右图所示。同时,中间图里的脚印只是个法线贴图的贴片,凹凸程度不多。

    环境光以及间接光照明质量令人失望,只有一层低频的红色,来自环境贴图里的熔岩。同时注意天空盒的分辨率很低,明显的赶工痕迹。

    沙漠的夜景很美,但是并没有考虑贴图去重的问题,沙漠上贴图重复的痕迹严重,近距离看问题倒是不大。

    远处的树像素碎点严重,动起来非常糊。同时注意这些树都有实时阴影,但是精度不高。这个做法说实在的,挺浪费的。

    半透明雾的混合有问题,可以看到前景里人物的头发也被错误的混合进去了。很有可能是因为头发是半透明,而没有写入深度的原因。

    注意腋下拉伸过大导致的贴图失真,这个嘛,场景不多,也能接受

    最后放几张我特别喜欢的夜晚莲中境的截图,这个天空盒的色彩真不错,给美工喂鸡腿🍗
  • h
    hoilc
    **的成本会比虚幻低吗
  • q
    qappip
    有缘古剑4了, 虚幻引擎的古剑4好想玩到。

    -- 来自 能手机投票的 Stage1官方 Android客户端
  • m
    miraclePTSD
    mark
  • z
    zhangqq_008
    预算?

    话说静态烘焙的技术难度很高吗
    这玩意儿不是ue4和unity早期就已经被玩烂的技术了嘛……又不是实时动态的效果,提前给材质处理一下既能增加很多地方的画面表现力又能大幅减少gpu负担

    还是vision引擎天生又缺陷不太好支持?

    —— 来自 Xiaomi MI 9 SE, Android 10上的S1Next-鹅版v2.4.3
  • G
    GuardHei
    最的好还是有点复杂的
    直接预烘培阴影的话,不能处理静态建筑物对动态物体都投影
    预烘培静态物体的shadowmask的话(相当于阴影的一个中间步),针对大场景会有shadowmask分辨率不够的问题,要不然就得吃显存,整个8kx8k的
    一般做法有分区域烘培静态shadowmask,或者近处物体都是实时阴影。远处物体fallback到只有静态阴影。
    ve我没用过。不知道管线流程是什么样的,但烛龙这肯定“偷懒”了
  • z
    zhangqq_008
    话说你怎么看柳叶刀工作室最近刚宣布完成基础开发的太空fps边境
    那个光追和立体空间里的物理碰撞效果惊艳到我了

    —— 来自 OnePlus KB2000, Android 11上的S1Next-鹅版v2.4.3
  • a
    armagemon
    古剑的主美和企划走了,基本算是重创。
    看了这篇分析更觉得是这样了
  • 省心
    巫师1好像也是这个引擎?

    —— 来自 Xiaomi Redmi K30 5G, Android 10上的S1Next-鹅版v2.4.3
  • 一个过路的
    原来如此,我已经完全弄明白了.jpg
  • G
    GuardHei
    看了下那个光追演示
    这个要分两方面看:
    一方面是本身ue4已经支持光追了,而且老黄现在为了推广光追,也会给很多小开发商提供技术协助,所以单纯给游戏加到不是什么难点。
    另一方面来说,怎么优化好就不好说了。
    就现在的演示来看,有光追软阴影,光追焦散和光追反射,不确定有没有光追gi。总体来说,光追软阴影的躁点是相当明显的,反射的话也比较糊。我看了下benchmark,1080p+dlss下,用2080在一开始室内跑不满60fps(大概是场景比较复杂),室外比较流畅(大概模型少了很多)。
    单纯从画面效果来说,这种游戏挺适合光追的,素色的模型能非常逼近groundtruth的结果,一开始的焦散效果也非常惊艳,但是这个效果并没有在室外出现过。室内优化不好说,但是我觉得这游戏应该没什么室内游玩内容,所以问题不大。
    目前没有看到大面积镜面反射的场景,不知道这个会怎么影响帧率
  • a
    atomone
    这种我只能围观增加下人气了
  • 慕容断月
    其实烛龙还是没能很好地发挥这个引擎

    印象比较深的还是古剑2时期,当时官方论坛有人分析,他们给某个大平地加了一大堆三角形,导致走到那附近的时候帧数直接暴降(也隔了7年,是因为什么加的或者具体的原因就不是很清楚,但多边形那张图印象非常深刻)

    比较纳闷的是当时udk已经是支持按比例和买断授权两种,而且虚幻3做大型网游也在那个时候有很多案例可以借鉴了(2010-2012这段时期国产自研网游用虚幻3的比例特别高)为什么古剑2还是要选择名不见经传的引擎,这也是我一直以来非常纳闷的问题
  • G
    GuardHei
    ve不算名不见经传呀,之前像育碧这类大厂也用过
    其实现在也有游戏在用,指手游
    要不然后来怎么会被英特尔收购了
  • 慕容断月
    原来如此,我还真不知道育碧以前用过

    不过老上软+烛龙这拨人用不好引擎全部实力也是传统艺能了,以前renderware也是这样
  • l
    lbzlxx
    vision好像古一就开始用了,所以被吐槽传家宝,不过古三做成这样是不错了

    虚幻三当年就网上不停吹,但国内根本没人才,你看仙剑6就是这结果,后来虚幻4免费才**普及开来
  • G
    GuardHei
    古一我没记错的话是gamebryo
    我查vision engine的授权记录,烛龙也确实是从古二才有的。
    另外仙6不是unity5吗
  • e
    endlessFF
    我也来回帖赞一下技术力,最主要的是我点了最下面的广告版主一定不会怪我水
  • 白左
    有图就好了
    满屏幕的术语, 脑子里没有对应的意象, 仿佛看见了满眼紫色的方块上顶着个问号
  • S
    Sorcerian
    古1是gamebryo,工长君三千万开发预算里面号称一半都用在了这个老滚4/辐射3的引擎上面。

    —— 来自 samsung SM-G9750, Android 10上的S1Next-鹅版v2.4.3
  • g
    gugui
    真的好文 学到不少
  • G
    GuardHei
    taa没上估计是因为整个管线都要改的原因,这样的话,包括之前内置的ssao啥的都要改。拖影确实,尤其对于烛龙这种非技术大厂来说是没啥精力去调了。
    tiled deferred这个之所以单独拿出来一说,是因为我个人觉得ve还是个ps3时代的引擎,所以值得一提,要不然现在都基本往cluster发展了。话说我看新版本unity urp的源码,也上tiled deferred了,还是支持depth mask的2.5d tile。话又说回来,ue4也是在灯光少的时候用传统的stencil deferred,以古剑3里的光源数量来说,我觉得传统的deferred也是完全可行的。
    distance field阴影这东西也是ue4带流行起来的吧?这个要打完整个流程,从生成合理开销的df,到转换空间,到raymarch,对引擎也要改不少,大概也就没做了。
    没tonemapping是不应该,而且本身游戏hdr这块做的不行,可惜美术了
  • h
    holyplumes
    可是我是一名两年的古剑ol的玩家,古剑ol的体验上来说其实非常的差。
    官方也准备转移到虚幻4了。我倒是没觉得古剑ol选择用ve是对的。
    古剑三倒是很好。。也有可能ol的开发组没吃透吧/
  • G
    GuardHei
    更了下截图和说明,在二楼翻翻当时的截图还蛮有意思的