位置: 编程技术 - 正文

Unity shader教程-第六课:Ramp Texture(unity的shader用法)

编辑:rootadmin

推荐整理分享Unity shader教程-第六课:Ramp Texture(unity的shader用法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity shader saturate,unity shader视频教程,unity shader lerp,unity的shader用法,《unity shader入门精要》,unityshader教程,unityshader教程,unity shader视频教程,内容如对您有帮助,希望把文章链接给更多的朋友!

本文首发地址: Texture在Valve公司的军团要塞2后开始成为一种控制漫反射的方法。

Ramp Texture是类&#;下图的一张贴图:

在一般的Blinn/Phong模型中,我们对漫反射的系数是基于入射光和击中的点的法线的角度。在这种情况下,系数的计算代码大致如下:

使用Ramp texture,可以用一张1D的材质图来做为索引表。用来控制漫反射的系数。虚拟代码如下:

我们这节课来改动原来的shader,自己来观察原来的shader在加入Ramp Texture后能做的事情。

把原来的BaiscDiffuse代码改成如下

在Properties中加入

在SubShader块中加入

为了保证你最后的结果跟我的是一样的,这里是最后的代码:

Unity shader教程-第六课:Ramp Texture(unity的shader用法)

保存,然后我们回到unity。

选中某个材质球,Inspector面板上会出现选择图片的控件,这里我们可以拖入一张图观察结果。

对那些还不会使用绘图工具的读者,你可以用我这里给你准备好的几张图(ramp texture生成方式可以使用photoshop的gradient工具,附录里我们写了这些步骤)

对于Ramp Texture shader来说,我们主要是加入了对送入的Ramp texture的色彩的检索,检索出来的色彩&#;最后能影响到我们的光照模型的输出。

tex2D()方法是cg的库方法,用来根据第二个参数提供的uv&#;(类型是float2,分别代码水平方向的u和竖直方向的v),来检索第一个参数代表的图档中的RGBA&#;。

这里我们给定的uv&#;有half lambert的&#;决定,half lambert越大,意味着我们索引到的像素的&#;的位置在原图中越是偏向于右下角方向。美术可以利用这个特性来控制一个物体表面的漫反射(越是往右,越是往下,意为着物体的法线方向越来越接近于入射光)。

附录:

在Photoshop中,我们可以几个步骤来建立Ramp texture:

打开photoshop,新建一张图选中工具箱中的渐变工具(一般在橡皮擦的下面一个)然后在图上从左到右拖动一根线出来结果就得到一张从photoshop中设置的前景色过渡到背景色的图出来了

教育原创,转载请注明出处(jy.net),否则视为侵权。

Unity增强现实功能的实现 首先先在

unity->高通增强现实 1.还是跟原来一样,登录

[置顶] 高通AR增强现实最新教程unity3d 高通AR增强现实最新教程之前网上很多有关于高通AR增强现实的教程,教我们unity的龙哥跟我们说这方面的时候便去搜了搜,但是很不巧的是,这玩意在

本文链接地址:https://www.jiuchutong.com/biancheng/381541.html 转载请保留说明!

上一篇:从Unity引擎过度到Unreal4引擎(最终版)(unity引擎占用内存多少)

下一篇:Unity增强现实功能的实现(unity提高渲染画质)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络