欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Unity Shader實現(xiàn)動態(tài)過場切換圖片效果

 更新時間:2021年07月27日 11:43:51   作者:仙魁XAN  
這篇文章主要為大家詳細(xì)介紹了Unity Shader實現(xiàn)動態(tài)過場切換圖片效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Unity Shader實現(xiàn)動態(tài)過場切換圖片的具體代碼,供大家參考,具體內(nèi)容如下

一、簡單介紹

Shader Language的發(fā)展方向是設(shè)計出在便攜性方面可以和C++、Java等相比的高級語言,“賦予程序員靈活而方便的編程方式”,并“盡可能的控制渲染過程”同時“利用圖形硬件的并行性,提高算法效率”。

本文介紹,如何使用 shader ,動態(tài)過場形式切換圖片的一點簡單效果。

二、實現(xiàn)原理

1、通過時間疊加判斷,當(dāng) 值小于 主圖 uv 的時候,進(jìn)行切換圖的渲染

// 過場切換的位置
float curPos = _Time.y*_Speed;
 
if(curPos < i.uv.x){
 col = tex2D(_CutTex,i.uv);
}

三、注意事項

1、 當(dāng)小于 x,渲染_CutTex(開始都是小于 x的,開始渲染_CutTex), 隨著時間變化,切換為 _MainTex

四、效果預(yù)覽

五、實現(xiàn)步驟

1、打開Unity,新建一個工程

2、導(dǎo)入素材,和新建shader,并對應(yīng)新建材質(zhì)

3、編寫好shader,把材質(zhì)對應(yīng)賦值

4、場景中添加一個 Quad ,并把材質(zhì)賦給Quad,用來顯示

5、運(yùn)行場景,效果如上

六、關(guān)鍵代碼

Shader "Unlit/CutEffect"
{
    Properties
    {
        _MainTex ("Texture", 2D) = "white" {}
  _CutTex("Cut Tex",2D)="white"{}
 
  // 切換速度
  _Speed("speed",Range(-1,1))=0.2
 
    }
    SubShader
    {
        Tags { "RenderType"="Opaque" }
        LOD 100
 
        Pass
        {
            CGPROGRAM
            #pragma vertex vert
            #pragma fragment frag
        
 
            #include "UnityCG.cginc"
 
            struct appdata
            {
                float4 vertex : POSITION;
                float2 uv : TEXCOORD0;
            };
 
            struct v2f
            {
                float2 uv : TEXCOORD0;
    
                float4 vertex : SV_POSITION;
            };
 
            sampler2D _MainTex;
            float4 _MainTex_ST;
   sampler2D _CutTex;
   float _Speed;
 
            v2f vert (appdata v)
            {
                v2f o;
                o.vertex = UnityObjectToClipPos(v.vertex);
                o.uv = v.uv;
  
                return o;
            }
 
            fixed4 frag (v2f i) : SV_Target
            {
                // sample the texture
                fixed4 col = tex2D(_MainTex,i.uv);
                
 
    // 過場切換的位置
    float curPos = _Time.y*_Speed;
    // 當(dāng)小于 x,渲染_CutTex(開始都是小于 x的,開始渲染_CutTex), 
    // 隨著事件變化,切換為 _MainTex
    if(curPos < i.uv.x){
     col = tex2D(_CutTex,i.uv);
    }
    
 
                return col;
            }
            ENDCG
        }
    }
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Unity實現(xiàn)UI漸隱漸顯效果

    Unity實現(xiàn)UI漸隱漸顯效果

    這篇文章主要為大家詳細(xì)介紹了Unity實現(xiàn)UI漸隱漸顯效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • 分享用于操作FTP的客戶端C#類

    分享用于操作FTP的客戶端C#類

    用.net自帶的FtpWebRequest做的ftp客戶端得程序,有一個功能實現(xiàn)起來會非常苦難,就是移動文件和文件夾的功能。所以后來又找了一個類,用socket實現(xiàn)的,發(fā)現(xiàn)比用ftpWebRequest功能要強(qiáng)。基本的ftp客戶端得命令都實現(xiàn)了。
    2015-05-05
  • C#使用OpenCvSharp實現(xiàn)透視變換功能

    C#使用OpenCvSharp實現(xiàn)透視變換功能

    這篇文章主要為大家詳細(xì)介紹了C#如何使用OpenCvSharp實現(xiàn)透視變換的功能,文中的示例代碼簡潔易懂,具有一定的學(xué)習(xí)價值,需要的小伙伴可以參考下
    2023-11-11
  • C# 中的委托與事件機(jī)制詳解

    C# 中的委托與事件機(jī)制詳解

    本文詳細(xì)介紹了C#中委托和事件的概念、使用方法和應(yīng)用場景,包括委托定義、匿名方法、Lambda表達(dá)式、事件機(jī)制和多播委托的詳細(xì)說明,委托作為類型安全的函數(shù)指針,文章還探討了如何通過匿名方法和Lambda表達(dá)式簡化委托的使用,以及多播委托在事件處理中的應(yīng)用
    2024-10-10
  • C# 9 新特性之增強(qiáng)的foreach詳解

    C# 9 新特性之增強(qiáng)的foreach詳解

    這篇文章主要介紹了C# 9 新特性之增強(qiáng)的foreach的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • c#基于NVelocity實現(xiàn)代碼生成

    c#基于NVelocity實現(xiàn)代碼生成

    這篇文章主要介紹了c#基于NVelocity實現(xiàn)代碼生成的方法,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-01-01
  • WPF實現(xiàn)動畫效果(四)之緩動函數(shù)

    WPF實現(xiàn)動畫效果(四)之緩動函數(shù)

    這篇文章介紹了WPF實現(xiàn)動畫效果之緩動函數(shù),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • C#中如何自定義配置上周和本周起始日來查詢業(yè)務(wù)數(shù)據(jù)(思路詳解)

    C#中如何自定義配置上周和本周起始日來查詢業(yè)務(wù)數(shù)據(jù)(思路詳解)

    在C#中并沒有封裝的方法根據(jù)我們需要來直接獲取上一周某天到某天、本周某天到某天,所以需要我們自己封裝方法來實現(xiàn)(我們也可以按照這個思路使用其他語言來實現(xiàn)),感興趣的朋友跟隨小編一起看看吧
    2023-09-09
  • C#異步綁定數(shù)據(jù)實現(xiàn)方法

    C#異步綁定數(shù)據(jù)實現(xiàn)方法

    這篇文章主要介紹了C#異步綁定數(shù)據(jù)實現(xiàn)方法,實例分析了C#操作數(shù)據(jù)庫及異步綁定的相關(guān)實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-09-09
  • C#中使用NLog庫進(jìn)行日志記錄的流程詳解

    C#中使用NLog庫進(jìn)行日志記錄的流程詳解

    NLog 是 .NET 的日志記錄框架,具有豐富的日志路由和管理能力,極大地幫助您生成和管理日志,NLog 是一個庫,可以輕松地同時記錄和管理多個不同區(qū)域中的數(shù)據(jù),本文將給大家介紹在C#中使用 NLog 庫進(jìn)行日志記錄的教程,需要的朋友可以參考下
    2024-06-06

最新評論