暗黑三泛光算法研究

 

GPA过好几次暗黑三的绘制,曾经对其绘制某些物体两遍的操作感到不解,这两天又看了一眼,知道,其是为了绘制GLOW。

暗黑三中并没有使用浮点精度贴图格式,其泛光计算与UE3的浮点溢出算法不一样。一般的使用8位图的游戏,是全部全屏处理查找亮色来计算泛光区域,我搞过类似的效果给美术查看,不尽人意。瀑布就是发白啊,就是不想泛光啊之类的。

暗黑三是比较取巧的方法,其首先将需要泛光的物体绘制了两遍,其渲染系统为,第一遍绘制,与大部分的物体的绘制方式一样,只是颜色只写到RenderTarget的RGB通道内(通过设置RenderState的ColorWriteEnable)。对于泛光的物体,有第二遍绘制,此时会往RenderTarget的Alpha通道中绘制遮罩信息。

 

一、泛光绘制第一步,执行down sample和high-pass filter。通过采样刚才生成的RenderTarget,并通过检测其Alpha通道,将颜色图中颜色计算亮度,将亮度较大的颜色输出到新的四分之一的RT上。

 

 

二、对刚才的图像进行高斯Blur

三、将Blur图像叠加到原图中,公式一般自由发挥。暗黑计算中比较诡异(配合第一步计算中的潜规则),,其Bloom颜色乘以了4.5。。

 

 

转载于:https://www.cnblogs.com/hellohuan/p/3478834.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值