博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unity实现刺客信条灯光的思路探究
阅读量:6079 次
发布时间:2019-06-20

本文共 1042 字,大约阅读时间需要 3 分钟。

灯光需求

类似刺客信条的开场CG动画,场景中打着酷炫的灯光,玩家在场景中行走可以感受到灯光很真实。

参考视频:

运行环境

安卓/IOS手机平台,所以对性能有一定要求。

初期原型

思路分析

1.引擎自带灯光组件,变换颜色,变换transform

2.lineRenderer画线组件,模拟灯光效果,linerenderer打到人物身上效果逼真么?

3.Mesh+shader或者粒子系统进行模拟

light beam/shaft

光束,光线

volumetric lighting(体积照明)

森林场景 巴克兔子,显示光线穿过树冠 [图片引用自:wikipedia]

体积照明

体积照明技术中使用 三维计算机图形学添加照明影响渲染场景。它可以让观众看到光束照射环境;通过一个开着的窗户看到阳光流体积的一个例子,也被称为黄昏的光线。这个词似乎已经被引进摄影,现在广泛应用于3D建模和rendering 尤其是在3d游戏领域。

体积照明的光源发出的光锥被建模为一个透明的对象,可以看作一个容器的“体积”。因此,光有能力影响一个实际的三维介质(如雾,灰尘,烟或蒸汽)在它的体积内就像在现实世界一样。

体积照明是如何工作的

体积照明需要两个组件:一个光空间阴影地图和一个深度缓冲。从相机的剪辑平面附近开始,整个场景是追踪和采样值累积到输入缓冲区。对于每一个样本,它决定如果样品由光源照亮正在处理使用阴影映射作为比较。只有点燃样品将会影响最终的像素颜色。

这个基本的技术,但需要更多的实时优化功能。优化体积光效果的方法之一是使照明体积比这更粗分辨率的图形上下文使用,这就产生了一些不好的混叠的工作,但是很容易touched up一个模糊。

您还可以使用模板缓冲区像 阴影体积技术

另一种方法也可以用来提供令人满意的,如果体积灯光效果不准确。模糊的算法功能发光物体远离中心的主要光源。一般来说,透明度是逐步减少与每一个模糊的步骤。特别是在更明亮的场景。注意:这需要在屏幕上有个光源。

 

volumetric light英文

volumetric light:

light Probe

插件-Light Beams

主要功能

可以控制光fade的长度,光束强度,光的softness,纹理移动速度。单双面材质(shader model 3.0以上版本)

原理

Mesh (圆锥形或者bill飞机形)+ shader 控制纹理的参数模拟光束(Mesh不接受光照)

链接:

可调节参数

可借鉴例子

暗影之枪

转载地址:http://yahgx.baihongyu.com/

你可能感兴趣的文章
spring mvc WebArgumentResolver不生效
查看>>
利用傅里叶变换去除图像中有规律的噪声
查看>>
mysql 悲观锁 的运用
查看>>
Servlet学习:实现分页效果的方法
查看>>
linux设备驱动归纳总结(四):4.单处理器下的竞态和并发【转】
查看>>
总结2016
查看>>
Cobertura 代码覆盖率测试
查看>>
Dev控件删除按钮的两种方式
查看>>
JMeter3.0 post参数/BeanShell中文乱码问题
查看>>
ps常用快捷键
查看>>
SV通过DPI调用C
查看>>
py-faster-rcnn在windows下安装
查看>>
Nodejs 如何开发 module、npm package——directory + index.js + package.json!
查看>>
在win7系统下使用TortoiseGit(乌龟git)简单操作Git@OSC
查看>>
atime、mtime、ctime
查看>>
PHP调用webservice接口
查看>>
scanperiod 不生效
查看>>
iptables说明(转)
查看>>
使用WPF创建画图箭头
查看>>
log4net 如何关闭Nhibernate产生的大量日志
查看>>