上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 40 下一页
摘要: 左边是使用了前面提到的SpecularPerPixel,中间是没加渐变图时,右边是加了渐变图 高光+渐变图漫反射(RampTex) Shader "My/Tex/RampTexture" { Properties { _Color("Diffuse Color", Color) = (1, 1, 1 阅读全文
posted @ 2023-02-03 00:45 yanghui01 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 左侧为没用法线贴图,就视觉上没有凹凸感 要点 漫反射和高光反射的计算公式中,都有法线的参与,所以只要我们提供一个自定义的法线,就能生成各种自定义的反射效果。 法线贴图的作用就是代替顶点法线,提供了自定义法线,使得反射效果看着有凹凸感。 贴图漫反射(MainTex)+高光反射+法线贴图 Shader 阅读全文
posted @ 2023-02-03 00:23 yanghui01 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 效果 要点 1) 我们看到的物体颜色是没被物体吸收,反射出来的颜色。这个就是漫反射。 2) 漫反射相关定理和公式: a) 兰伯特定律:漫反射反射光线的强度与表面法线和光线方向夹角的cos值成正比。 b) Colorlight * Colordiffuse * 漫反射光线辐照度。光线辐照度就是光线强度 阅读全文
posted @ 2023-01-31 23:57 yanghui01 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 用到的shader Shader "My/EdgeFade" { Properties { _EdgeFade("EdgeFade", Range(0, 1)) = 0.8 } SubShader { Tags { "Queue" = "Overlay" "IgnoreProjector" = "T 阅读全文
posted @ 2023-01-31 00:12 yanghui01 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 遇到的问题 Camera直接输出画面时,混合效果和混合公式对不上 New Scene中相关的信息:底图Quad_Bg是蓝色(0, 0, 1, 1),混合图Quad_Src是红色(1, 0, 0, 0.5),混合模式为Blend DstColor Zero, One Zero(该混合方式最终颜色的计算 阅读全文
posted @ 2023-01-30 23:36 yanghui01 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 简单点就是将要调试的值输出为颜色 1) 比如:调试顶点值时,将顶点值输出为颜色 Shader "My/VertexDebug" { Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { Tags { "RenderType" 阅读全文
posted @ 2023-01-29 22:54 yanghui01 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 效果图 1) FillCamera.shader和材质FillCamera.mat,将材质贴图设置为bg 2) 场景中创建一个Quad(Plane不行),材质设置为FillCamera.mat FillCamera.shader Shader "My/FillCamera" { Properties 阅读全文
posted @ 2023-01-29 00:06 yanghui01 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 效果 使用的图集 测试shader 注意:如果Sprite带有透明度,注意使用Blend,否则透明部分将显示为黑色 Shader "My/SpriteToMatTex" { Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader 阅读全文
posted @ 2023-01-28 23:39 yanghui01 阅读(76) 评论(0) 推荐(0) 编辑
摘要: public static Vector4[] GetProjectionCorners(RectTransform rectTransform, Camera uiCamera) { var worldCorners = new Vector3[4]; // lt lb rb rt rectTra 阅读全文
posted @ 2023-01-28 23:09 yanghui01 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 裁剪区域计算涉及的几种情况 1) 只有一个RectMask2D时,裁剪区域就是RectMask2D所在的区域 2) RectMask2D嵌套RectMask2D时: a) RectMask2D(红色)的祖先节点中没有RectMask2D了,所以裁剪区域就是自己所在的矩形区域。 b) RectMask 阅读全文
posted @ 2023-01-23 15:32 yanghui01 阅读(122) 评论(0) 推荐(0) 编辑
上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 40 下一页