一、光照贴图制作:
实时光照效果:
使用光照贴图步骤:
1.选择要灯光贴图的模型,然后设置为Lightmap Static
2.光源Baking设置为Baked
3.选择Windows/Lighting,打开Lighting界面,
1》选择Scene 选项卡,设置Ambient Gi为Baked
2》选择LightMaps 选项卡,然后按Build,生成光照贴图
数秒后LightMaps界面会显示光照贴图,效果如下:
3》关掉场景中的Light
(使用光照贴图后的效果:平台差异导致的)
移动物体后效果
二、光照贴图的Shader使用:
uv:纹理贴图坐标
unity_LightmapST:纹理坐标缩放偏移向量
v.texcoord:就是uv坐标
模型展开的UV坐标信息,包含在模型网格中了。
源代码:
[plain] view plain copy
  1. // Upgrade NOTE: commented out 'float4 unity_LightmapST', a built-in variable
  2. // Upgrade NOTE: commented out 'sampler2D unity_Lightmap', a built-in variable
  3. Shader "Sbin/TexShader2"
  4. {
  5. Properties
  6. {
  7. _MainTex ("Texture", 2D) = "white" {}
  8. }
  9. SubShader
  10. {
  11. Pass
  12. {
  13. CGPROGRAM
  14. #pragma vertex vert
  15. #pragma fragment frag
  16. #include "UnityCG.cginc"
  17. sampler2D _MainTex;
  18. float4 _MainTex_ST;//纹理缩放偏移向量(Unity默认此变量赋值,变量名规则:纹理名_ST)
  19. // sampler2D unity_Lightmap;//若开启光照贴图,系统默认填值
  20. // float4 unity_LightmapST;//与上unity_Lightmap同理
  21. struct v2f{
  22. float4 pos:POSITION;
  23. float2 uv:TEXCOORD0;
  24. float2 uv2:TEXCOORD1;
  25. };
  26. v2f vert (appdata_full v)
  27. {
  28. v2f o;
  29. o.pos = mul(UNITY_MATRIX_MVP, v.vertex);
  30. //第一种方式:
  31. //o.uv = v.texcoord.xy * _MainTex_ST.xy + _MainTex_ST.zw;
  32. //第二种方式:内建宏,双方和第一种一样,只是对第一种计算的封装
  33. o.uv = TRANSFORM_TEX(v.texcoord,_MainTex);
  34. o.uv2 = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
  35. return o;
  36. }
  37. fixed4 frag (v2f v) : COLOR
  38. {
  39. //解密光照贴图计算公式
  40. float3 lightmapColor = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap,v.uv2));
  41. fixed4 col = tex2D(_MainTex, v.uv);//第一个参数:纹理,第二个参数UV向量
  42. col.rgb *= lightmapColor;
  43. return col;
  44. }
  45. ENDCG
  46. }
  47. }
  48. }

Unity lightmap shader相关推荐

  1. 关于Unity 5.x Lightmap Shader 编译过慢的分析

    关于Unity 5.x Lightmap Shader 编译过慢的分析 缘起 最近在研究Unity 5.x 的 Lightmapping 与 场景打包的相关的知识.发现坑深啊.关于怎么打包怎么用网上的 ...

  2. Unity编写Shader内置各种矩阵和方法介绍

    返回目录 大家好,我是阿赵. 这里记录一下Unity编写Shader内置各种矩阵和方法 一.Unity内置转换矩阵 1.MVP类矩阵 UNITY_MATRIX_MVP:Current model * ...

  3. Unity初学者Shader Graph教程

    Unity初学者Shader Graph教程 了解面向非程序员的 Unity 引擎可视化着色器编程工具的来龙去脉 课程英文名:Your Ultimate Guide to Shader Graph f ...

  4. 1.Unity之Shader新手入门

    Unity Shader着色器的基本概念 如何使用Unity Shader着色器 示例:如何使用Unity Shader着色器创建复杂的效果 总结 什么是Unity中的Shader着色器? Shade ...

  5. Unity学习shader笔记[一百]简单焦散Caustic效果

    焦散是模仿光透过水底的一个投影景象 有两个版本,改版最后效果如下 这里是简单的基于物体的焦散,基于水体的焦散思路是水面物体的shader中拿到ColorBuffer,然后用水体的屏幕空间坐标取采集Co ...

  6. Unity之Shader基础探索

    Unity之Shader基础探索 一.什么是Shader? 1.Shader的开发语言 2.着色器用途 3.着色器的编辑 4.着色器性能分析工具 5.着色器编译 6.异步着色器的编译工作原理 7.内置 ...

  7. Unity使用Shader快速制作一个圆形遮罩

    Unity使用Shader快速制作一个圆形遮罩 如何用Shader来做出圆形.切倒角和边缘虚化 Unity使用Shader快速制作一个圆形遮罩 橙子前言 一.创建Shader 二.创建Material ...

  8. Unity官方Shader介绍: TRANSFORM_TEX

    Unity官方Shader介绍: TRANSFORM_TEX 文章目录 Unity官方Shader介绍: TRANSFORM_TEX 纹理(Texture) 纹理坐标(UVW, STR) 纹理映射(T ...

  9. Unity 流光shader 记录分享

    Unity 流光shader 转载自:链接 Shader "Custom/DataFlowEffect" {Properties{_MainColor("Main Col ...

最新文章

  1. SAP WM Movement Type 里的‘Ref.Stor.Type Search’字段用法初探
  2. 对频率论(Frequentist)方法和贝叶斯方法(Bayesian Methods)的一个总结
  3. mysql 入门命令
  4. BZOJ-3122-随机数生成器-SDOI2013-BSGS
  5. C#实现POST提交方式
  6. qq计算机丢失msvcp100,打开会声会影提示msvcr100.dll丢失怎么办?
  7. 阿里Sentinel控制台源码修改-对接Apollo规则持久化
  8. linux部署多个jar 会宕机_部署springboot+vue项目文档(若依ruoyi项目部署步骤)
  9. DCMTK3.6.0 安装失败的说明
  10. Axure电脑web端通用元件库rplib文件格式+移动端app通用元件库rplib文件格式(内含使用教程)
  11. 2016年程序员如何提高自己的方法有哪些?
  12. Python内置函数filter, map, reduce
  13. 拓端tecdat|R语言自定义两种统计量度:平均值和中位数,何时去使用?
  14. listView的最简单的使用方法
  15. STM32入门开发: 介绍SPI总线、读写W25Q64(FLASH)(硬件+模拟时序)
  16. 不管怎么换相,电机始终反转 。这是怎么回事?
  17. 学大数据需要具备四种条件?你具备几种?
  18. linux发音,你发对了吗
  19. 实战7:机器学习实战之 随机森林、逻辑回归、SVM算法方法进行垃圾邮件过滤分类 代码+数据
  20. 【Android开发】用户界面布局

热门文章

  1. IPV6之VRRP典型组网配置案例
  2. Tomcat 配置https证书
  3. java jasper 生成xlsx_JasperReports导出到xlsx,而不是xls
  4. 解决Tomcat catalina.out 不断成长导致档案过大的问题
  5. JavaScript console.log导致错误:“不赞成在主线程上使用同步XMLHttpRequest…”
  6. 这四行棘手的C代码背后的概念
  7. Java树数据结构? [关闭]
  8. 使用Jackson忽略JSON对象上的新字段[复制]
  9. 如何在Shell脚本中漂亮地打印JSON?
  10. win11WiFi驱动如何下载 windows11WiFi驱动下载的步骤方法