当前位置:   article > 正文

Unity_SurFaceShader透明物体_untiy surfaceshader怎么修改透明度

untiy surfaceshader怎么修改透明度

SurFace代码:

  1. Shader "Custom/s1"
  2. {
  3. Properties
  4. {
  5. //变量名("显示在面板上的名字",数据类型) = (值)
  6. _Color("我是颜色呀!",Color) = (1,1,1,1)
  7. _Ambient("我是环境光",Color) = (0.3,0.3,0.3,0.3)
  8. _Specular("反射高光",Color) = (1,1,1,1)
  9. _Shininess("发亮发光",Range(0,10)) = 4 //Range范围 默认等于4
  10. _Emission("自发光",Color) = (1,1,1,1)
  11. _MainTex("主贴图",2d) = ""
  12. _MainTex2("第二张贴图",2d) =""
  13. }
  14. SubShader
  15. {
  16. //渲染 透明物体 控制渲染顺序 先渲染透明的
  17. Tags { "Queue" = "Transparent" }
  18. pass{
  19. //透明度的混合 官方解释地址:file:///Applications/Unity/Hub/Editor/2018.4.4f1/Documentation/en/Manual/SL-Blend.html
  20. Blend Srcalpha OneMinusSrcAlpha
  21. //固定值用()包起来 变量值用[]包起来
  22. color[_Color]
  23. //Material材质命令块
  24. Material{
  25. //这个物体本身固有的颜色 []使用一个变量参数
  26. DIFFUSE[_Color]
  27. Ambient[_Ambient]
  28. SPECULAR[_Specular]
  29. shininess[_Shininess]
  30. emission[_Emission]
  31. }
  32. Lighting On //开启光照
  33. SeparateSpecular On //高光 和SPECULAR配合着使用
  34. //贴图
  35. SetTexture[_MainTex]
  36. {
  37. //primary 表示之前上面计算过的所有光照 quad->4倍亮度 double->两倍亮度
  38. Combine texture * primary double
  39. }
  40. //第二张贴图
  41. SetTexture[_MainTex2]
  42. {
  43. //primary 表示之前上面计算过的所有光照 quad->4倍亮度 double->两倍亮度 //previous乘上之前所有的定点计算光照 包括第一张贴图的
  44. Combine texture * previous double
  45. }
  46. }
  47. }
  48. FallBack "Diffuse"
  49. }

如果要修改透明度 请修改颜色的Alpha 透明度

 

测试效果如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/116292?site
推荐阅读
相关标签
  

闽ICP备14008679号