GithubHelp home page GithubHelp logo

unitysample / unityshaderrepository Goto Github PK

View Code? Open in Web Editor NEW

This project forked from garsonlab/unityshaderrepository

0.0 0.0 0.0 53 KB

各种自己写的与使用过的UnityShader效果

ShaderLab 49.15% C# 50.85%

unityshaderrepository's Introduction

Unity Shader Repository

Use Unity Version > 5 当前使用Unity版本大于5

Table of Contents

[TOCM]

1.1

2.1 Rotate Mask 旋转裁剪

    fixed4 frag (v2f i) : COLOR
    {
        float2 center = float2(_CenterX, _CenterY);//自定义旋转中心点
        float2 uv = i.uv.xy - center;//当前点对应中心点的相对坐标
        // 旋转矩阵的公式: (cos - sin, sin + cos)顺时针
        float cosVal = cos(_RotateSpeed*_Time.y);
        float sinVal = sin(_RotateSpeed*_Time.y);
        uv = mul(uv, float2x2(cosVal, -sinVal, sinVal, cosVal)) + center;

        fixed4 color = tex2D(_MainTex, i.uv.xy)*_Color;
        color.a = color.a * tex2D(_MaskTex, uv).a;//用MaskTex的a做裁剪
        return color;
    }

2.2 Rect Soft Mask 矩形软裁剪

    if (_UseClipRect) 
    {
        //根据世界坐标计算,源自NGUI
        float2 factor = float2(0.0,0.0);
        float2 tempXY = (i.worldPos.xy - _ClipRect.xy)/float2(_SoftClipLeft, _SoftClipBottom)*step(_ClipRect.xy, i.worldPos.xy);
        factor = max(factor,tempXY);
        float2 tempZW = (_ClipRect.zw-i.worldPos.xy)/float2(_SoftClipRight, _SoftClipTop)*step(i.worldPos.xy,_ClipRect.zw);
        factor = min(factor,tempZW);
        color.a *= clamp(min(factor.x,factor.y),0.0,1.0);
    }

2.3 Custom Soft Mask 自定义形状软裁剪,支持反转

Mask need Component "Rect Mask 2D" in parent, Only one DrawCall. Base on .

3.1 Source from Candycat1992

4 Rain Effect 雨效

4.1 Souce from RainDropEffect

5.1 Image Grey, Support UGUI Mask and RectMask2D 图片灰度化,支持UGUI的Mask和RectMask2D下有效

5.2 Grey Effect, can reserve a Rect color window. Can use on Image and Camera effect.

5.3 Modify Image Grey, support animation. 修改图片灰度化,支持混合模式及缓动灰度化效果

参考

unityshaderrepository's People

Contributors

garsonlab avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.