您的位置:首页 > 移动开发 > Unity3D

Cookies 纹理

2018-02-04 21:09 369 查看
原文链接:Cookies纹理

创建Cookie纹理

为光照引用Cookie纹理

Cookie纹理的应用

在剧院和电影中,光照效果经常被用来显示当前视角中不存在的物体。丛林探索者身上照着一层树林阴影的图像。一个监狱的场景中的光线,可以让人看到带栏杆的窗户,即使窗户并没有出现在场景中。这种营造氛围的阴影,只需要光源和场景中间放置一个特定形状的遮罩即可。这种遮罩简称为cucoloris or cookie。可以向Unity的光照以纹理的形式添加Cookie;这是一种有效地在场景中制造氛围的方法。



在directional light上增加cookie,模拟从窗户进来的光线

创建Cookie纹理

Cookie本身是一个普通的纹理,和普通纹理的区别是只使用alpha(透明)通道。在Unity中导入Cookie时,会提供将图像的亮度转换为alpha的选项,所以使用灰度纹理设计cookie更方便。可以用任何编辑器创建cookie然后保存到项目的Assets文件夹。



一个用来模仿光线穿过窗户效果的简单cookie

将cookie导入Unity后,在项目视图中选中它并在inspector中将纹理类型设置成Cookie。如果没有设置图片的alpha通道,则需要启用Alpha From Grayscale



光的类型会影响cookie的投影方式。由于point light向所有方向发光,cookie纹理必须是Cubemap形式的。Spot light必须使用设置为Spotlight类型的cookie纹理,而directional light可以使用Spotlight或者Directional类型的cookie纹理。当directional light使用directional cookie时,cookie纹理会在整个场景中重复平铺。使用spotlight cookie时,cookie将只在光束的方向上出现一次;这是directional light的位置唯一有作用的情况。



在directional模式下,window cookie重复平铺

为光照引用Cookie纹理

导入cookie纹理后,将其拖动到Light inspector的Cookie属性即可应用。



Spot light和Point light会根据锥体或者球体的大小自动缩放cookie。Directional light通过Cookie Size属性进行缩放。缩放对Spotlight和Directional类型的Cookie都有效。

Cookie纹理的应用

Cookies经常用来改变光照的形状,以满足场景中的细节。比如一个较暗的隧道顶部的条带形灯光,如果使用标准的spot lights将会形成圆形光照效果,使用cookies可以将其限制成一个细长的矩形。一个显示器向角色脸部投射的光线,应该被限制成一个小盒子形状。

注意生成Cookie可以使用仍以的灰度级,不一定要完全黑白的影像。这可以用来模拟光线传播路径上的灰尘。比如在一个老旧废弃房屋里发生的游戏场景,可以在窗户或其他光源上用‘dirty’ cookies来制造氛围。同样,车头灯的边缘会在光速中形成明暗相间的区域,也可以通过cookie纹理实现。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity manual light