DanMachi:

-compatibility improvements
Core:
-simplified object and keyframe serialization
-complicated assetbundle loading
This commit is contained in:
2024-05-10 09:56:39 +02:00
parent c922584d38
commit 2a7117fca2
191 changed files with 79813 additions and 25806 deletions

View File

@@ -0,0 +1,86 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Depth
m_Shader: {fileID: 4800000, guid: 781d003a4921452409fd6f42a135a013, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _texcoord:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Length: 5.89
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Offset: -1.27
- _Outline_Width: 0
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
- __dirty: 0
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: bedc6325a0d79c74d993303908f4a896
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,82 @@
// Made with Amplify Shader Editor
// Available at the Unity Asset Store - http://u3d.as/y3X
Shader "DepthShader"
{
Properties
{
_Cutoff( "Mask Clip Value", Float ) = 0.5
_Outline_Width("Outline_Width", Float) = 0
_MainTex("MainTex", 2D) = "white" {}
[HideInInspector] _texcoord( "", 2D ) = "white" {}
[HideInInspector] __dirty( "", Int ) = 1
}
SubShader
{
Tags{ "RenderType" = "Opaque" "Queue" = "AlphaTest+0" "IgnoreProjector" = "True" "IsEmissive" = "true" }
Cull Back
CGPROGRAM
#include "UnityShaderVariables.cginc"
#pragma target 3.0
#pragma surface surf Standard keepalpha noshadow vertex:vertexDataFunc
struct Input
{
float eyeDepth;
float2 uv_texcoord;
};
uniform float _Outline_Width;
uniform float Length;
uniform float Offset;
uniform sampler2D _MainTex;
SamplerState sampler_MainTex;
uniform float4 _MainTex_ST;
uniform float _Cutoff = 0.5;
void vertexDataFunc( inout appdata_full v, out Input o )
{
UNITY_INITIALIZE_OUTPUT( Input, o );
float3 ase_vertexNormal = v.normal.xyz;
v.vertex.xyz += ( ase_vertexNormal * ( _Outline_Width * 0.001 ) );
v.vertex.w = 1;
o.eyeDepth = -UnityObjectToViewPos( v.vertex.xyz ).z;
}
void surf( Input i , inout SurfaceOutputStandard o )
{
float cameraDepthFade1 = (( i.eyeDepth -_ProjectionParams.y - Offset ) / Length);
float3 temp_cast_0 = (cameraDepthFade1).xxx;
o.Emission = temp_cast_0;
o.Alpha = 1;
float2 uv_MainTex = i.uv_texcoord * _MainTex_ST.xy + _MainTex_ST.zw;
clip( tex2D( _MainTex, uv_MainTex ).a - _Cutoff );
}
ENDCG
}
CustomEditor "ASEMaterialInspector"
}
/*ASEBEGIN
Version=18500
287;309;1382;648;779.9207;284.6495;1.046712;True;False
Node;AmplifyShaderEditor.RangedFloatNode;8;-347.5857,445.3018;Inherit;False;Property;_Outline_Width;Outline_Width;1;0;Create;True;0;0;False;0;False;0;1;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;5;-743.1245,-136.5234;Inherit;False;Global;Length;Length;0;0;Create;True;0;0;False;0;False;5;35;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;6;-749.1449,-49.33564;Inherit;False;Global;Offset;Offset;1;0;Create;True;0;0;False;0;False;0;0;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.NormalVertexDataNode;9;-344.5857,255.3022;Inherit;False;0;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ScaleNode;10;-148.3429,440.3138;Inherit;False;0.001;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.CameraDepthFade;1;-525.7656,-123.8789;Inherit;False;3;2;FLOAT3;0,0,0;False;0;FLOAT;1;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;11;-49.58564,304.3021;Inherit;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT;0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.SamplerNode;12;-345.4782,-1.867204;Inherit;True;Property;_MainTex;MainTex;2;0;Create;True;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.OneMinusNode;4;-213.0137,-175.1542;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;15;229.2125,14.16482;Float;False;True;-1;2;ASEMaterialInspector;0;0;Standard;DepthShader;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;False;False;False;False;False;False;Back;0;False;-1;0;False;-1;False;0;False;-1;0;False;-1;False;0;Custom;0.5;True;False;0;True;Opaque;;AlphaTest;All;14;all;True;True;True;True;0;False;-1;False;0;False;-1;255;False;-1;255;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;False;2;15;10;25;False;0.5;False;0;5;False;-1;10;False;-1;0;1;False;-1;1;False;-1;0;False;-1;0;False;-1;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;0;-1;-1;-1;0;False;0;0;False;-1;-1;0;False;-1;0;0;0;False;0.1;False;-1;0;False;-1;False;16;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0;False;9;FLOAT;0;False;10;FLOAT;0;False;13;FLOAT3;0,0,0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
WireConnection;10;0;8;0
WireConnection;1;0;5;0
WireConnection;1;1;6;0
WireConnection;11;0;9;0
WireConnection;11;1;10;0
WireConnection;4;0;1;0
WireConnection;15;2;1;0
WireConnection;15;10;12;4
WireConnection;15;11;11;0
ASEEND*/
//CHKSM=6B241380E5AA10943B14A993E72468FA220D6D4E

View File

@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 781d003a4921452409fd6f42a135a013
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,82 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: KemonoAlpha
m_Shader: {fileID: 4800000, guid: 655ab0f80cef02c4eb96d201530ab0dd, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Outline_Width: 0
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _Width: 0.01
- _ZWrite: 1
- __dirty: 0
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _OutlineColor: {r: 1, g: 1, b: 1, a: 0}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a2318f03d5b39104883097cbd3909690
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,72 @@
// Made with Amplify Shader Editor
// Available at the Unity Asset Store - http://u3d.as/y3X
Shader "KemonoDepth"
{
Properties
{
_Outline_Width("Outline_Width", Float) = 0
_MainTex("MainTex", 2D) = "white" {}
[HideInInspector] _texcoord( "", 2D ) = "white" {}
[HideInInspector] __dirty( "", Int ) = 1
}
SubShader
{
Tags{ "RenderType" = "Transparent" "Queue" = "AlphaTest+0" "IgnoreProjector" = "True" "IsEmissive" = "true" }
Cull Back
ZWrite On
ZTest Always
Blend One One
AlphaToMask On
CGPROGRAM
#pragma target 3.0
#pragma surface surf Standard keepalpha noshadow vertex:vertexDataFunc
struct Input
{
float2 uv_texcoord;
};
uniform float _Outline_Width;
uniform sampler2D _MainTex;
SamplerState sampler_MainTex;
uniform float4 _MainTex_ST;
void vertexDataFunc( inout appdata_full v, out Input o )
{
UNITY_INITIALIZE_OUTPUT( Input, o );
float3 ase_vertexNormal = v.normal.xyz;
v.vertex.xyz += ( ase_vertexNormal * ( _Outline_Width * 0.001 ) );
v.vertex.w = 1;
}
void surf( Input i , inout SurfaceOutputStandard o )
{
float2 uv_MainTex = i.uv_texcoord * _MainTex_ST.xy + _MainTex_ST.zw;
float4 tex2DNode15 = tex2D( _MainTex, uv_MainTex );
float3 temp_cast_0 = (tex2DNode15.a).xxx;
o.Emission = temp_cast_0;
o.Alpha = tex2DNode15.a;
}
ENDCG
}
CustomEditor "ASEMaterialInspector"
}
/*ASEBEGIN
Version=18500
1136;278;1382;654;1112.095;125.5801;1.151147;True;False
Node;AmplifyShaderEditor.RangedFloatNode;4;-499.1572,463.9675;Inherit;False;Property;_Outline_Width;Outline_Width;0;0;Create;True;0;0;False;0;False;0;1;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.NormalVertexDataNode;8;-496.1572,273.9675;Inherit;False;0;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ScaleNode;10;-299.9144,458.9795;Inherit;False;0.001;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;9;-201.1572,322.9675;Inherit;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT;0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.SamplerNode;15;-709.3722,-52.49344;Inherit;True;Property;_MainTex;MainTex;1;0;Create;True;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;13;1,0;Float;False;True;-1;2;ASEMaterialInspector;0;0;Standard;KemonoDepth;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;False;False;False;False;False;False;Back;1;False;-1;7;False;-1;False;0;False;-1;0;False;-1;False;0;Custom;0.5;True;False;0;True;Transparent;;AlphaTest;All;14;all;True;True;True;True;0;False;-1;False;0;False;-1;255;False;-1;255;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;False;2;15;10;25;False;0.5;False;4;1;False;-1;1;False;-1;0;5;False;-1;10;False;-1;0;False;-1;0;False;-1;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;2;-1;-1;-1;0;True;0;0;False;-1;-1;0;False;-1;0;0;0;False;0.1;False;-1;0;False;-1;False;16;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0;False;9;FLOAT;0;False;10;FLOAT;0;False;13;FLOAT3;0,0,0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
WireConnection;10;0;4;0
WireConnection;9;0;8;0
WireConnection;9;1;10;0
WireConnection;13;2;15;4
WireConnection;13;9;15;4
WireConnection;13;11;9;0
ASEEND*/
//CHKSM=487328B6E22BAE0DE9E8F0D6F2DDC8E0729724B2

View File

@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 655ab0f80cef02c4eb96d201530ab0dd
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,108 @@
Shader "PRD/CheekV2"
{
Properties
{
_BaseMap ("BaseMap", 2D) = "white" {}
_BaseColor ("BaseColor", Color) = (1,1,1,1)
[MaterialToggle] _Is_LightColor_Base ("Is_LightColor_Base", float) = 1
}
SubShader
{
Tags
{
"IGNOREPROJECTOR" = "true"
"QUEUE" = "Transparent"
"RenderType" = "Transparent"
}
Pass // ind: 1, name:
{
Tags
{
"IGNOREPROJECTOR" = "true"
"LIGHTMODE" = "FORWARDBASE"
"QUEUE" = "Transparent"
"RenderType" = "Transparent"
}
Blend SrcAlpha OneMinusSrcAlpha
// m_ProgramMask = 6
CGPROGRAM
//#pragma target 4.0
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#define CODE_BLOCK_VERTEX
//uniform float4x4 unity_ObjectToWorld;
//uniform float4x4 unity_MatrixVP;
uniform float4 _LightColor0;
uniform float4 _BaseColor;
uniform float _Is_LightColor_Base;
uniform float _Alpha;
uniform float _Camouflage;
uniform sampler2D _BaseMap;
struct appdata_t
{
float4 vertex :POSITION0;
float2 texcoord :TEXCOORD0;
};
struct OUT_Data_Vert
{
float2 texcoord :TEXCOORD0;
float4 vertex :SV_POSITION;
};
struct v2f
{
float2 texcoord :TEXCOORD0;
};
struct OUT_Data_Frag
{
float4 color :SV_Target0;
};
float4 u_xlat0;
float4 u_xlat1;
OUT_Data_Vert vert(appdata_t in_v)
{
OUT_Data_Vert out_v;
out_v.vertex = UnityObjectToClipPos(in_v.vertex);
out_v.texcoord.xy = in_v.texcoord.xy;
return out_v;
}
#define CODE_BLOCK_FRAGMENT
float u_xlat0_d;
float4 u_xlat16_1;
float4 u_xlat10_1;
float3 u_xlat16_2;
float u_xlat3;
int u_xlatb3;
OUT_Data_Frag frag(v2f in_f)
{
OUT_Data_Frag out_f;
u_xlat0_d = ((-_Camouflage) + 1);
u_xlat0_d = (u_xlat0_d * _Alpha);
u_xlatb3 = (0.649999976>=_Camouflage);
u_xlat3 = (u_xlatb3)?(1):(float(0));
u_xlat0_d = (u_xlat3 * u_xlat0_d);
u_xlat10_1 = tex2D(_BaseMap, in_f.texcoord.xy);
u_xlat16_1 = (u_xlat10_1 * _BaseColor);
u_xlat0_d = (u_xlat0_d * u_xlat16_1.w);
out_f.color.w = u_xlat0_d;
u_xlat16_2.xyz = ((u_xlat16_1.xyz * _LightColor0.xyz) + (-u_xlat16_1.xyz));
out_f.color.xyz = ((float3(_Is_LightColor_Base, _Is_LightColor_Base, _Is_LightColor_Base) * u_xlat16_2.xyz) + u_xlat16_1.xyz);
return out_f;
}
ENDCG
} // end phase
}
FallBack Off
}

View File

@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: bc54e7e510c2b4b44940bbff7795c6d7
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,109 @@
Shader "PRD/EyeBallV2"
{
Properties
{
[Enum(OFF,0,FRONT,1,BACK,2)] _CullMode ("Cull Mode", float) = 2
_BaseMap ("BaseMap", 2D) = "white" {}
_BaseColor ("BaseColor", Color) = (1,1,1,1)
[MaterialToggle] _Is_LightColor_Base ("Is_LightColor_Base", float) = 1
}
SubShader
{
Tags
{
"RenderType" = "Opaque"
}
Pass // ind: 1, name: FORWARD
{
Name "FORWARD"
Tags
{
"LIGHTMODE" = "FORWARDBASE"
"RenderType" = "Opaque"
"SHADOWSUPPORT" = "true"
}
Cull Off
// m_ProgramMask = 6
CGPROGRAM
#pragma multi_compile DIRECTIONAL
//#pragma target 4.0
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#define CODE_BLOCK_VERTEX
//uniform float4x4 unity_ObjectToWorld;
//uniform float4x4 unity_MatrixVP;
uniform float4 _LightColor0;
uniform float4 _BaseColor;
uniform float4 _BaseMap_ST;
uniform float _Is_LightColor_Base;
uniform float4 _EyeColor;
uniform float _Alpha;
uniform float _Camouflage;
uniform sampler2D _BaseMap;
struct appdata_t
{
float4 vertex :POSITION0;
float2 texcoord :TEXCOORD0;
};
struct OUT_Data_Vert
{
float2 texcoord :TEXCOORD0;
float4 vertex :SV_POSITION;
};
struct v2f
{
float2 texcoord :TEXCOORD0;
};
struct OUT_Data_Frag
{
float4 color :SV_Target0;
};
float4 u_xlat0;
float4 u_xlat1;
OUT_Data_Vert vert(appdata_t in_v)
{
OUT_Data_Vert out_v;
out_v.vertex = UnityObjectToClipPos(in_v.vertex);
out_v.texcoord.xy = in_v.texcoord.xy;
return out_v;
}
#define CODE_BLOCK_FRAGMENT
float3 u_xlat0_d;
float4 u_xlat10_0;
float3 u_xlat1_d;
float3 u_xlat2;
float u_xlat16_9;
OUT_Data_Frag frag(v2f in_f)
{
OUT_Data_Frag out_f;
u_xlat0_d.xy = TRANSFORM_TEX(in_f.texcoord.xy, _BaseMap);
u_xlat10_0 = tex2D(_BaseMap, u_xlat0_d.xy);
u_xlat0_d.xyz = (u_xlat10_0.xyz + (_BaseColor.xyz * (1-u_xlat10_0.a)));
u_xlat16_9 = ((-u_xlat10_0.w) + 1);
u_xlat1_d.xyz = (float3(u_xlat16_9, u_xlat16_9, u_xlat16_9) * _EyeColor.xyz);
u_xlat2.xyz = ((u_xlat0_d.xyz * _LightColor0.xyz) + (-u_xlat0_d.xyz));
u_xlat0_d.xyz = ((float3(_Is_LightColor_Base, _Is_LightColor_Base, _Is_LightColor_Base) * u_xlat2.xyz) + u_xlat0_d.xyz);
u_xlat0_d.xyz = clamp(u_xlat0_d.xyz, 0, 1);
out_f.color.xyz = ((u_xlat1_d.xyz * _EyeColor.www) + u_xlat0_d.xyz);
u_xlat0_d.x = ((-_Camouflage) + 1);
out_f.color.w = (u_xlat0_d.x * _Alpha);
return out_f;
}
ENDCG
} // end phase
}
FallBack Off
}

View File

@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 1bde9f51cb22f214eab1a9f23f06fb6d
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,420 @@
Shader "PRD/FriendsShaderV2"
{
Properties
{
[Enum(OFF,0,FRONT,1,BACK,2)] _CullMode ("Cull Mode", float) = 2
_BaseMap ("BaseMap", 2D) = "white" {}
_BaseColor ("BaseColor", Color) = (1,1,1,1)
[MaterialToggle] _Is_LightColor_Base ("Is_LightColor_Base", float) = 1
_1st_ShadeMap ("1st_ShadeMap", 2D) = "white" {}
_1st_ShadeColor ("1st_ShadeColor", Color) = (0.9019,0.7843,0.7843,1)
[MaterialToggle] _Is_LightColor_1st_Shade ("Is_LightColor_1st_Shade", float) = 1
[MaterialToggle] _Set_SystemShadowsToBase ("Set_SystemShadowsToBase", float) = 1
_Tweak_SystemShadowsLevel ("Tweak_SystemShadowsLevel", Range(-0.5, 0.5)) = 0.2
_BaseColor_Step ("BaseColor_Step", Range(0, 1)) = 0.42
_BaseShade_Feather ("Base/Shade_Feather", Range(0.0001, 1)) = 0.0001
[MaterialToggle] _RimLight ("RimLight", float) = 0
_RimLightColor ("RimLightColor", Color) = (1,1,1,1)
[MaterialToggle] _Is_LightColor_RimLight ("Is_LightColor_RimLight", float) = 1
_RimLight_Power ("RimLight_Power", Range(0, 1)) = 0.1
_RimLight_InsideMask ("RimLight_InsideMask", Range(0.0001, 1)) = 0.0001
[MaterialToggle] _RimLight_FeatherOff ("RimLight_FeatherOff", float) = 0
_Outline_Width ("Outline_Width", float) = 2
_Farthest_Distance ("Farthest_Distance", float) = 10
_Nearest_Distance ("Nearest_Distance", float) = 0.5
_Outline_Color ("Outline_Color", Color) = (0.196,0.1176,0.1176,1)
}
SubShader
{
Tags
{
"RenderType" = "Opaque"
}
Pass // ind: 1, name: Outline
{
Name "Outline"
Tags
{
"RenderType" = "Opaque"
}
Cull Front
// m_ProgramMask = 6
CGPROGRAM
//#pragma target 4.0
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#define conv_mxt4x4_3(mat4x4) float4(mat4x4[0].w,mat4x4[1].w,mat4x4[2].w,mat4x4[3].w)
#define CODE_BLOCK_VERTEX
//uniform float3 _WorldSpaceCameraPos;
//uniform float4x4 unity_ObjectToWorld;
//uniform float4x4 unity_MatrixVP;
uniform float _Outline_Width;
uniform float _Farthest_Distance;
uniform float _Nearest_Distance;
uniform float4 _Outline_Color;
uniform float _Alpha;
uniform float _Camouflage;
struct appdata_t
{
float4 color :COLOR0;
float4 vertex :POSITION0;
float3 normal :NORMAL0;
};
struct OUT_Data_Vert
{
float4 vertex :SV_POSITION;
};
struct v2f
{
float4 vertex :Position;
};
struct OUT_Data_Frag
{
float4 color :SV_Target0;
};
float4 u_xlat0;
float4 u_xlat1;
float u_xlat16_1;
float u_xlat2;
int u_xlatb2;
float u_xlat4;
OUT_Data_Vert vert(appdata_t in_v)
{
OUT_Data_Vert out_v;
u_xlat0.xyz = ((-_WorldSpaceCameraPos.xyz) + conv_mxt4x4_3(unity_ObjectToWorld).xyz);
u_xlat0.x = length(u_xlat0.xyz);
u_xlat0.x = (u_xlat0.x + (-_Nearest_Distance));
u_xlat2 = ((-_Nearest_Distance) + _Farthest_Distance);
u_xlat2 = (float(1) / u_xlat2);
u_xlat0.x = (u_xlat2 * u_xlat0.x);
u_xlat0.x = clamp(u_xlat0.x, 0, 1);
u_xlat2 = ((u_xlat0.x * (-2)) + 3);
u_xlat0.x = (u_xlat0.x * u_xlat0.x);
u_xlat0.x = ((u_xlat2 * u_xlat0.x) + 1);
u_xlatb2 = (in_v.color.x>=1);
u_xlat4 = ((-in_v.color.y) + 1);
u_xlat16_1 = (u_xlatb2)?(1):(u_xlat4);
u_xlat2 = (u_xlat16_1 * _Outline_Width);
u_xlat2 = (u_xlat2 * 0.00100000005);
u_xlat0.x = (u_xlat0.x * u_xlat2);
u_xlat0.xyz = ((in_v.normal.xyz * u_xlat0.xxx) + in_v.vertex.xyz);
u_xlat0 = UnityObjectToClipPos(u_xlat0);
out_v.vertex = (u_xlat0 + float4(0, 0, 9.99999972E-10, 0));
return out_v;
}
#define CODE_BLOCK_FRAGMENT
float u_xlat0_d;
int u_xlatb0;
float u_xlat1_d;
int u_xlatb1;
OUT_Data_Frag frag(v2f in_f)
{
OUT_Data_Frag out_f;
u_xlatb0 = (_Outline_Width<0);
if(((int(u_xlatb0) * (-1))!=0))
{
discard;
}
u_xlat0_d = ((-_Camouflage) + 1);
u_xlat0_d = (u_xlat0_d * _Alpha);
u_xlatb1 = (0.649999976>=_Camouflage);
u_xlat1_d = (u_xlatb1)?(1):(float(0));
out_f.color.w = (u_xlat1_d * u_xlat0_d);
out_f.color.xyz = _Outline_Color.xyz;
return out_f;
}
ENDCG
} // end phase
Pass // ind: 2, name: FORWARD
{
Name "FORWARD"
Tags
{
"LIGHTMODE" = "FORWARDBASE"
"RenderType" = "Opaque"
"SHADOWSUPPORT" = "true"
}
Cull Off
// m_ProgramMask = 6
CGPROGRAM
#pragma multi_compile DIRECTIONAL
//#pragma target 4.0
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#define conv_mxt4x4_0(mat4x4) float4(mat4x4[0].x,mat4x4[1].x,mat4x4[2].x,mat4x4[3].x)
#define conv_mxt4x4_1(mat4x4) float4(mat4x4[0].y,mat4x4[1].y,mat4x4[2].y,mat4x4[3].y)
#define conv_mxt4x4_2(mat4x4) float4(mat4x4[0].z,mat4x4[1].z,mat4x4[2].z,mat4x4[3].z)
#define conv_mxt4x4_3(mat4x4) float4(mat4x4[0].w,mat4x4[1].w,mat4x4[2].w,mat4x4[3].w)
#define CODE_BLOCK_VERTEX
//uniform float4 _ProjectionParams;
//uniform float4x4 unity_ObjectToWorld;
//uniform float4x4 unity_WorldToObject;
//uniform float4x4 unity_MatrixVP;
//uniform float3 _WorldSpaceCameraPos;
//uniform float4 _WorldSpaceLightPos0;
uniform float4 _LightColor0;
uniform float4 _1st_ShadeColor;
uniform float _BaseColor_Step;
uniform float4 _BaseColor;
uniform float _Set_SystemShadowsToBase;
uniform float _BaseShade_Feather;
uniform float _RimLight;
uniform float _RimLight_Power;
uniform float4 _RimLightColor;
uniform float4 _BaseMap_ST;
uniform float4 _1st_ShadeMap_ST;
uniform float _Is_LightColor_Base;
uniform float _Is_LightColor_1st_Shade;
uniform float _Is_LightColor_RimLight;
uniform float _Tweak_SystemShadowsLevel;
uniform float _RimLight_InsideMask;
uniform float _RimLight_FeatherOff;
uniform float _Alpha;
uniform float _Camouflage;
uniform sampler2D _BaseMap;
uniform sampler2D _1st_ShadeMap;
struct appdata_t
{
float4 color :COLOR0;
float4 vertex :POSITION0;
float3 normal :NORMAL0;
float2 texcoord :TEXCOORD0;
};
struct OUT_Data_Vert
{
float2 texcoord :TEXCOORD0;
float texcoord3 :TEXCOORD3;
float4 texcoord1 :TEXCOORD1;
float3 texcoord2 :TEXCOORD2;
float4 vertex :SV_POSITION;
};
struct v2f
{
float2 texcoord :TEXCOORD0;
float texcoord3 :TEXCOORD3;
float4 texcoord1 :TEXCOORD1;
float3 texcoord2 :TEXCOORD2;
};
struct OUT_Data_Frag
{
float4 color :SV_Target0;
};
float3 u_xlat0;
float4 u_xlat1;
float u_xlat16_1;
float4 u_xlat2;
int u_xlatb3;
float u_xlat16_4;
float u_xlat9;
OUT_Data_Vert vert(appdata_t in_v)
{
OUT_Data_Vert out_v;
u_xlat0.x = max(_ProjectionParams.y, 0.00999999978);
u_xlat0.x = min(u_xlat0.x, 0.5);
u_xlatb3 = (in_v.color.x>=1);
u_xlat16_1 = (u_xlatb3)?(0):(1);
u_xlat16_4 = (u_xlat16_1 * in_v.color.x);
u_xlat16_1 = (((-in_v.color.z) * u_xlat16_1) + 1);
out_v.texcoord3 = u_xlat16_1;
u_xlat16_1 = (u_xlat16_4 * 0.166659996);
u_xlat0.x = (u_xlat0.x * u_xlat16_1);
u_xlat1 = (in_v.vertex.yyyy * conv_mxt4x4_1(unity_ObjectToWorld));
u_xlat1 = ((conv_mxt4x4_0(unity_ObjectToWorld) * in_v.vertex.xxxx) + u_xlat1);
u_xlat1 = ((conv_mxt4x4_2(unity_ObjectToWorld) * in_v.vertex.zzzz) + u_xlat1);
u_xlat2 = (u_xlat1 + conv_mxt4x4_3(unity_ObjectToWorld));
out_v.texcoord1 = ((conv_mxt4x4_3(unity_ObjectToWorld) * in_v.vertex.wwww) + u_xlat1);
u_xlat1 = mul(unity_MatrixVP, u_xlat2);
u_xlat0.x = (u_xlat0.x / u_xlat1.w);
out_v.vertex.z = ((u_xlat0.x) + u_xlat1.z);
out_v.vertex.xyw = u_xlat1.xyw;
out_v.texcoord.xy = in_v.texcoord.xy;
u_xlat0.x = dot(in_v.normal.xyz, conv_mxt4x4_0(unity_WorldToObject).xyz);
u_xlat0.y = dot(in_v.normal.xyz, conv_mxt4x4_1(unity_WorldToObject).xyz);
u_xlat0.z = dot(in_v.normal.xyz, conv_mxt4x4_2(unity_WorldToObject).xyz);
out_v.texcoord2.xyz = normalize(u_xlat0.xyz);
return out_v;
}
#define CODE_BLOCK_FRAGMENT
float4 u_xlat0_d;
float3 u_xlat10_0;
float4 u_xlat1_d;
float3 u_xlat10_1;
int u_xlatb1;
float3 u_xlat2_d;
float3 u_xlat16_2;
float3 u_xlat3;
float3 u_xlat4;
float u_xlat6;
float u_xlat15;
float u_xlat16_15;
int u_xlatb15;
float u_xlat16;
OUT_Data_Frag frag(v2f in_f)
{
OUT_Data_Frag out_f;
u_xlat0_d.xy = TRANSFORM_TEX(in_f.texcoord.xy, _1st_ShadeMap);
u_xlat10_0.xyz = tex2D(_1st_ShadeMap, u_xlat0_d.xy).xyz;
u_xlat0_d.xyz = (u_xlat10_0.xyz * _1st_ShadeColor.xyz);
u_xlat1_d.xyz = ((u_xlat0_d.xyz * _LightColor0.xyz) + (-u_xlat0_d.xyz));
u_xlat0_d.xyz = ((float3(float3(_Is_LightColor_1st_Shade, _Is_LightColor_1st_Shade, _Is_LightColor_1st_Shade)) * u_xlat1_d.xyz) + u_xlat0_d.xyz);
u_xlat1_d.xy = TRANSFORM_TEX(in_f.texcoord.xy, _BaseMap);
u_xlat10_1.xyz = tex2D(_BaseMap, u_xlat1_d.xy).xyz;
u_xlat1_d.xyz = (u_xlat10_1.xyz * _BaseColor.xyz);
u_xlat2_d.xyz = ((u_xlat1_d.xyz * _LightColor0.xyz) + (-u_xlat1_d.xyz));
u_xlat1_d.xyz = ((float3(_Is_LightColor_Base, _Is_LightColor_Base, _Is_LightColor_Base) * u_xlat2_d.xyz) + u_xlat1_d.xyz);
u_xlat16_2.xyz = normalize(_WorldSpaceLightPos0.xyz);
u_xlat3.xyz = normalize(in_f.texcoord2.xyz);
u_xlat15 = (((u_xlat16_15)?(1):(0)!=0))?(1):((1));
u_xlat4.xyz = (float3(u_xlat15, u_xlat15, u_xlat15) * u_xlat3.xyz);
u_xlat3.xyz = ((u_xlat3.xyz * float3(u_xlat15, u_xlat15, u_xlat15)) + float3(1, 1, 1));
u_xlat15 = dot(u_xlat4.xyz, u_xlat16_2.xyz);
u_xlat15 = ((u_xlat15 * 0.5) + 0.5);
u_xlat16 = (_Tweak_SystemShadowsLevel + 1);
u_xlat16 = clamp(u_xlat16, 0, 1);
u_xlat16 = ((u_xlat15 * u_xlat16) + (-u_xlat15));
u_xlat0_d.w = ((_Set_SystemShadowsToBase * u_xlat16) + u_xlat15);
u_xlat1_d.w = (_BaseColor_Step + (-_BaseShade_Feather));
u_xlat0_d = (u_xlat0_d + (-u_xlat1_d));
u_xlat16 = ((-u_xlat1_d.w) + _BaseColor_Step);
u_xlat15 = (u_xlat0_d.w / u_xlat16);
u_xlat15 = ((-u_xlat15) + 1);
u_xlat15 = clamp(u_xlat15, 0, 1);
u_xlat15 = (u_xlat15 * in_f.texcoord3);
u_xlat0_d.xyz = ((float3(u_xlat15, u_xlat15, u_xlat15) * u_xlat0_d.xyz) + u_xlat1_d.xyz);
u_xlat1_d.xyz = ((-in_f.texcoord1.xyz) + _WorldSpaceCameraPos.xyz);
u_xlat1_d.xyz = normalize(u_xlat1_d.xyz);
u_xlat15 = dot(u_xlat4.xyz, u_xlat1_d.xyz);
u_xlat15 = ((-u_xlat15) + 1);
u_xlat15 = log2(u_xlat15);
u_xlat1_d.x = ((_RimLight_Power * (-3)) + 3);
u_xlat1_d.x = exp2(u_xlat1_d.x);
u_xlat15 = (u_xlat15 * u_xlat1_d.x);
u_xlat15 = exp2(u_xlat15);
u_xlatb1 = (u_xlat15>=_RimLight_InsideMask);
u_xlat15 = (u_xlat15 + (-_RimLight_InsideMask));
u_xlat1_d.x = (u_xlatb1)?(1):(float(0));
u_xlat6 = ((-_RimLight_InsideMask) + 1);
u_xlat15 = (u_xlat15 / u_xlat6);
u_xlat1_d.x = ((-u_xlat15) + u_xlat1_d.x);
u_xlat15 = ((_RimLight_FeatherOff * u_xlat1_d.x) + u_xlat15);
u_xlat15 = clamp(u_xlat15, 0, 1);
u_xlat1_d.xyz = ((_RimLightColor.xyz * _LightColor0.xyz) + (-_RimLightColor.xyz));
u_xlat1_d.xyz = ((float3(float3(_Is_LightColor_RimLight, _Is_LightColor_RimLight, _Is_LightColor_RimLight)) * u_xlat1_d.xyz) + _RimLightColor.xyz);
u_xlat1_d.xyz = (float3(u_xlat15, u_xlat15, u_xlat15) * u_xlat1_d.xyz);
u_xlat0_d.xyz = ((float3(_RimLight, _RimLight, _RimLight) * u_xlat1_d.xyz) + u_xlat0_d.xyz);
u_xlat0_d.xyz = clamp(u_xlat0_d.xyz, 0, 1);
u_xlatb15 = (_Camouflage>=0.800000012);
u_xlat0_d.xyz = (int(u_xlatb15))?(float3(0, 0, 0)):(u_xlat0_d.xyz);
u_xlat15 = (u_xlatb15)?(1):(float(0));
u_xlat1_d.xyz = (float3(u_xlat15, u_xlat15, u_xlat15) * u_xlat3.xyz);
out_f.color.xyz = ((u_xlat1_d.xyz * float3(0.5, 0.5, 0.5)) + u_xlat0_d.xyz);
u_xlat0_d.x = ((-_Camouflage) + 1);
out_f.color.w = (u_xlat0_d.x * _Alpha);
return out_f;
}
ENDCG
} // end phase
Pass // ind: 3, name: ShadowCaster
{
Name "ShadowCaster"
Tags
{
"LIGHTMODE" = "SHADOWCASTER"
"RenderType" = "Opaque"
"SHADOWSUPPORT" = "true"
}
Cull Off
Offset 1, 1
// m_ProgramMask = 6
CGPROGRAM
#pragma multi_compile SHADOWS_DEPTH
//#pragma target 4.0
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#define CODE_BLOCK_VERTEX
//uniform float4 unity_LightShadowBias;
//uniform float4x4 unity_ObjectToWorld;
//uniform float4x4 unity_MatrixVP;
struct appdata_t
{
float4 vertex :POSITION0;
};
struct OUT_Data_Vert
{
float4 vertex :SV_POSITION;
};
struct v2f
{
float4 vertex :Position;
};
struct OUT_Data_Frag
{
float4 color :SV_Target0;
};
float4 u_xlat0;
float4 u_xlat1;
float u_xlat4;
OUT_Data_Vert vert(appdata_t in_v)
{
OUT_Data_Vert out_v;
u_xlat0 = UnityObjectToClipPos(in_v.vertex);
u_xlat1.x = (unity_LightShadowBias.x / u_xlat0.w);
u_xlat1.x = clamp(u_xlat1.x, 0, 1);
u_xlat4 = (u_xlat0.z + u_xlat1.x);
u_xlat1.x = max((-u_xlat0.w), u_xlat4);
out_v.vertex.xyw = u_xlat0.xyw;
u_xlat0.x = ((-u_xlat4) + u_xlat1.x);
out_v.vertex.z = ((unity_LightShadowBias.y * u_xlat0.x) + u_xlat4);
return out_v;
}
#define CODE_BLOCK_FRAGMENT
OUT_Data_Frag frag(v2f in_f)
{
OUT_Data_Frag out_f;
out_f.color = float4(0, 0, 0, 0);
return out_f;
}
ENDCG
} // end phase
}
FallBack Off
}

View File

@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 6397f5af8f31d234894a483db4a96e5b
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 47cf150f8c29ec644a472be0012f9e49
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: cca54dbfd52471f49af9050bef2184d9
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant: