yum-archive/2ner

A toon shader for Unity's BIRP.

git clone https://git.yummers.dev/yum-archive/2ner

yumAdd anisotropic reflectionsd0c27e8

master
1.3 KiB53 linesraw
1#ifndef __INTERPOLATORS_INC
2#define __INTERPOLATORS_INC
3
4#include "AutoLight.cginc"
5
6struct appdata {
7  float4 vertex   : POSITION;
8  float2 uv0      : TEXCOORD0;
9  float2 uv1      : TEXCOORD1;
10  float2 uv2      : TEXCOORD2;
11  float2 uv3      : TEXCOORD3;
12  float3 normal   : NORMAL;
13  float4 tangent  : TANGENT;
14  float4 color    : COLOR;  // vertex color
15
16  UNITY_VERTEX_INPUT_INSTANCE_ID
17};
18
19struct v2f {
20#if defined(_TESSELLATION)
21	float4 tpos         : INTERNALTESSPOS;
22#endif
23  linear noperspective centroid float4 pos         : SV_POSITION;
24	float4 uv01        : TEXCOORD0;
25	float4 uv23        : TEXCOORD1;  // just one more uv slot bro please
26	float4 objPos      : TEXCOORD2;
27	float3 normal      : TEXCOORD3;
28	float4 tangent     : TEXCOORD4;
29  float4 vertexLight : TEXCOORD5; // vertexLight.xyz | furLayer
30  UNITY_LIGHTING_COORDS(6,7)
31
32#if defined(V2F_ORIG_POS)
33  float3 orig_pos : TEXCOORD8;
34#endif
35
36#if defined(V2F_COLOR)
37  float4 color       : TEXCOORD9;
38#endif
39
40  UNITY_VERTEX_INPUT_INSTANCE_ID
41  UNITY_VERTEX_OUTPUT_STEREO
42};
43
44// Fragment shader common data. f2f = fragment 2 fragment
45struct f2f {
46  float3 worldPos;
47  float3 binormal;
48  float3 eyeVec;
49  float3 viewDir;
50  float3x3 tbn;
51};
52
53#endif  // __INTERPOLATORS_INC