unity3d Camera.SetReplacementShader的用法.
来源:互联网 发布:atmega128p单片机 编辑:程序博客网 时间:2024/05/19 17:50
unity3d Camera.SetReplacementShader的用法.
用此方法可以让全局使用一个shader来处理全部的vertex和fragment.
第一个参数是一个shader. 第二个参数replacementTag(看文档无解了半天还以为函数有bug,结果是没说清楚,这个Tag是填Tag的名字.具体对应的就会被保留,比方说第一个参数的Shader里面Tags {"RenderType" = "Timeshift"}. 那么这个第二个参数就要填"RenderType", 然后场景里面的材质.只要用了这个RenderType=Timeshift的都会被保留下来.然后使用第一个参数的Shader处理).
将该脚本扔到随便什么物体上.
using UnityEngine;using System.Collections;public class Test2 : MonoBehaviour {// Use this for initializationvoid Start () {Camera.main.SetReplacementShader(Shader.Find("Custom/Test6"), "RenderType");}// Update is called once per framevoid Update () {}}
shader代码:
Shader "Custom/Test6" {Properties {_MainTex ("Base (RGB)", 2D) = "white" {}_Float1("Float1", Float) = 0.5}SubShader {Tags {"RenderType" = "Timeshift"}PASS {CGPROGRAM#pragma vertex vert#pragma fragment fragsampler2D _MainTex;uniform float _Float1;struct Input {float4 pos : POSITION;float4 normal : NORMAL;float4 color : COLOR;};struct InputFrag {float4 pos : SV_POSITION;float4 color : COLOR;}; InputFrag vert (Input i) {InputFrag o;o.pos = mul (UNITY_MATRIX_MVP, i.pos);o.color = i.normal * -0.5 + 0.5;return o;}float4 frag(InputFrag i) : COLOR{return i.color;}ENDCG}} }由于Plane和外星人都使用了 Timeshift RenderType的Shader所以保留了下来.但是内容却被参数1的shader内容替代了.
0 0
- unity3d Camera.SetReplacementShader的用法.
- Unity3D中Camera类的RenderWithShader方法和SetReplacementShader方法使用解析
- Unity RenderWithShader SetReplacementShader 的使用
- Unity3D:Camera的Clear Flags
- Unity3d-Camera
- unity3d camera的使用(原)
- Unity3D中Camera的跟随方案
- Unity3D的LightProbe用法
- unity3d--unity3d射线的原理用法
- unity3d之camera
- Unity3D -- 图形 -- Camera
- Unity3D之Camera设置
- Unity3D学习之Camera
- Unity3D 基础篇-Camera
- Unity3D 摄像机(Camera)
- unity3d camera.culling mask
- Unity3d 二维Camera跟随
- Unity3D Unity Camera摄像机类 - 相机的函数方法
- 堆排序算法总结!
- 在C#调用C++的DLL简析(二)—— 生成托管dll
- pthread_mutex_t封装
- OpenGL学习(八) 纹理初步
- 链表C++实现
- unity3d Camera.SetReplacementShader的用法.
- 一个简单的TCP客户端程序流程
- telnet操作memcached增删改查
- Struts2 学习记录(4)
- 在Linux与Winodws下编译boost
- 6.HTML5基本Canvas 绘图
- android.view.GestureDetector
- Jump Game II
- SSE并行程序设计试验代码