summaryrefslogtreecommitdiff
path: root/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu
diff options
context:
space:
mode:
authortylermurphy534 <tylermurphy534@gmail.com>2022-11-06 15:12:42 -0500
committertylermurphy534 <tylermurphy534@gmail.com>2022-11-06 15:12:42 -0500
commiteb84bb298d2b95aec7b2ae12cbf25ac64f25379a (patch)
treeefd616a157df06ab661c6d56651853431ac6b08b /VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu
downloadunityprojects-eb84bb298d2b95aec7b2ae12cbf25ac64f25379a.tar.gz
unityprojects-eb84bb298d2b95aec7b2ae12cbf25ac64f25379a.tar.bz2
unityprojects-eb84bb298d2b95aec7b2ae12cbf25ac64f25379a.zip
move to self host
Diffstat (limited to 'VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu')
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/FX 1.controller5757
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/FX 1.controller.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc54
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc39
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc108
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc262
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc249
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc21
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc112
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc240
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc43
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc153
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc376
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc37
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc127
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc338
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc61
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc668
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc243
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc33
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc147
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc115
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc104
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc130
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc105
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc63
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc143
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc233
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc26
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc44
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc131
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc4
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc47
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc80
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc40
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc488
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc28
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc117
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc126
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc93
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc266
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc304
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc111
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader7648
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc54
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc39
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc108
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc262
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc249
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc21
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc112
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc240
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc43
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc153
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc376
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc37
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc127
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc338
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc61
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc668
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc243
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc33
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc147
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc115
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc104
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc130
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc105
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc63
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc143
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc233
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc26
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc44
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc131
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc4
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc47
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc80
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc40
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc488
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc28
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc117
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc126
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc93
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc266
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc304
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc111
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader7648
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc54
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc39
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc108
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc262
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc249
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc21
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc112
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc240
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc43
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc153
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc376
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc37
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc127
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc338
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc61
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc668
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc243
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc33
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc147
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc115
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc104
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc130
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc105
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc63
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc143
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc233
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc26
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc44
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc131
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc4
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc47
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc80
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc40
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc488
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc28
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc117
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc126
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc93
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc266
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc304
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc111
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader7648
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc54
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc39
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc108
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc262
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc249
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc21
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc112
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc240
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc43
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc153
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc376
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc37
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc127
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc338
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc61
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc668
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc243
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc33
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc147
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc115
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc104
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc130
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc105
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc63
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc143
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc233
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc26
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc44
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc131
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc4
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc47
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc80
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc40
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc488
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc28
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc117
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc126
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc93
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc266
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc304
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc111
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader7648
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc54
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc39
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc108
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc262
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc249
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc21
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc112
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc240
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc43
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc153
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc376
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc37
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc127
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc338
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc61
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc668
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc243
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc33
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc147
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc115
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc104
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc130
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc105
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc63
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc143
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc233
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc26
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc44
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc131
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc4
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc47
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc80
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc40
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc488
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc28
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc117
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc126
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc93
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc266
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc304
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc111
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader7648
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc54
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc39
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc108
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc262
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc249
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc21
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc112
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc240
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc43
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc153
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc376
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc37
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc127
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc338
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc61
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc668
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc243
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc33
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc147
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc115
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc104
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc130
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc105
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc63
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc143
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc233
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc26
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc44
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc131
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc4
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc47
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc80
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc40
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc488
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc28
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc117
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc126
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc93
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc266
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc304
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc111
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader7648
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc54
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc39
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc108
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc262
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc249
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc21
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc112
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc240
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc43
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc153
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc376
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc37
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc127
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc338
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc61
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc668
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc243
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc33
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc147
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc115
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc104
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc130
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc105
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc63
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc143
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc233
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc26
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc44
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc131
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc4
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc47
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc80
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc40
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc488
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc28
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc117
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc126
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc93
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc266
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc304
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc111
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader7648
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc32
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc54
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc39
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc108
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc262
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc249
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc21
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc112
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc240
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc43
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc153
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc376
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc37
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc127
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc338
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc61
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc668
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc243
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc33
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc147
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc115
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc104
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc130
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc107
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc105
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc63
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc143
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc233
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc26
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc44
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc131
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc4
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc47
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc41
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc80
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc58
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc40
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc488
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc28
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc117
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc34
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc126
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc93
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc266
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc304
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc111
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc171
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader7648
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta9
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.mat1855
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.pngbin0 -> 399264 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.png.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.mat1855
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.pngbin0 -> 1638338 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.png.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.mat1855
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.pngbin0 -> 216186 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.png.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.mat1855
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.pngbin0 -> 258130 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.png.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.mat1855
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.pngbin0 -> 549 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.png.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.mat1855
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.pngbin0 -> 1166 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.png.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/image0.mat77
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/image0.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.mat1855
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.pngbin0 -> 1431 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.png.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.mat1855
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.mat.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.pngbin0 -> 32711 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.png.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Menu.asset45
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Menu.asset.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/NSFW 1.asset36
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/NSFW 1.asset.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Paramaters.asset35
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Paramaters.asset.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu (1) 1.controller159
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu (1) 1.controller.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu.fbxbin0 -> 4168332 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu.fbx.meta1261
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick big.anim232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick big.anim.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick normal.anim232
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick normal.anim.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick.anim116
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick.anim.meta8
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/image0.jpgbin0 -> 145411 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/image0.jpg.meta88
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/【Rabbit J】Dancing tonight feat. 夏铜子【パニシング -グレイレイヴン】Official Lyric Video.mp3bin0 -> 3877676 bytes
-rw-r--r--VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/【Rabbit J】Dancing tonight feat. 夏铜子【パニシング -グレイレイヴン】Official Lyric Video.mp3.meta22
1090 files changed, 150300 insertions, 0 deletions
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/FX 1.controller b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/FX 1.controller
new file mode 100644
index 00000000..defb27d9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/FX 1.controller
@@ -0,0 +1,5757 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!91 &9100000
+AnimatorController:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: FX 1
+ serializedVersion: 5
+ m_AnimatorParameters:
+ - m_Name: Face
+ m_Type: 3
+ m_DefaultFloat: 0
+ m_DefaultInt: 0
+ m_DefaultBool: 0
+ m_Controller: {fileID: 9100000}
+ - m_Name: VRCEmote
+ m_Type: 3
+ m_DefaultFloat: 0
+ m_DefaultInt: 0
+ m_DefaultBool: 0
+ m_Controller: {fileID: 9100000}
+ - m_Name: DickSize
+ m_Type: 1
+ m_DefaultFloat: 0
+ m_DefaultInt: 0
+ m_DefaultBool: 0
+ m_Controller: {fileID: 9100000}
+ - m_Name: Dick
+ m_Type: 4
+ m_DefaultFloat: 0
+ m_DefaultInt: 0
+ m_DefaultBool: 0
+ m_Controller: {fileID: 9100000}
+ m_AnimatorLayers:
+ - serializedVersion: 5
+ m_Name: AllParts
+ m_StateMachine: {fileID: 1107406222543947020}
+ m_Mask: {fileID: 31900000, guid: b2b8bad9583e56a46a3e21795e96ad92, type: 2}
+ m_Motions: []
+ m_Behaviours: []
+ m_BlendingMode: 0
+ m_SyncedLayerIndex: -1
+ m_DefaultWeight: 0
+ m_IKPass: 0
+ m_SyncedLayerAffectsTiming: 0
+ m_Controller: {fileID: 9100000}
+ - serializedVersion: 5
+ m_Name: VRCEmote
+ m_StateMachine: {fileID: 1107492308775838736}
+ m_Mask: {fileID: 0}
+ m_Motions: []
+ m_Behaviours: []
+ m_BlendingMode: 0
+ m_SyncedLayerIndex: -1
+ m_DefaultWeight: 1
+ m_IKPass: 0
+ m_SyncedLayerAffectsTiming: 0
+ m_Controller: {fileID: 9100000}
+ - serializedVersion: 5
+ m_Name: Dick
+ m_StateMachine: {fileID: 1107006183641554202}
+ m_Mask: {fileID: 0}
+ m_Motions: []
+ m_Behaviours: []
+ m_BlendingMode: 0
+ m_SyncedLayerIndex: -1
+ m_DefaultWeight: 1
+ m_IKPass: 0
+ m_SyncedLayerAffectsTiming: 0
+ m_Controller: {fileID: 9100000}
+ - serializedVersion: 5
+ m_Name: DickSize
+ m_StateMachine: {fileID: 1107123751776154238}
+ m_Mask: {fileID: 0}
+ m_Motions: []
+ m_Behaviours: []
+ m_BlendingMode: 0
+ m_SyncedLayerIndex: -1
+ m_DefaultWeight: 1
+ m_IKPass: 0
+ m_SyncedLayerAffectsTiming: 0
+ m_Controller: {fileID: 9100000}
+--- !u!206 &20601482
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: BlendTree
+ m_Childs: []
+ m_BlendParameter: HeightScale
+ m_BlendParameterY: Blend
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &20609978
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &20624522
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Prone2
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400012, guid: 3c25f9a310357dc4d857376a700f6758, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400010, guid: 3c25f9a310357dc4d857376a700f6758, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400010, guid: 3c25f9a310357dc4d857376a700f6758, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400010, guid: 3c25f9a310357dc4d857376a700f6758, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400010, guid: 3c25f9a310357dc4d857376a700f6758, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!206 &20658388
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400012, guid: 3c25f9a310357dc4d857376a700f6758, type: 3}
+ m_Threshold: 0.3
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400090, guid: 2dc9666c890a37946b1fbb67941e523d, type: 3}
+ m_Threshold: 0.65
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 6844dcb6a866ab34fa96c67e39eab693, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ m_BlendParameter: HeightScaleNOMOVE
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0.3
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &20678964
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: BlendTree
+ m_Childs: []
+ m_BlendParameter: HeightScale
+ m_BlendParameterY: Blend
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &20683406
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &20684674
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 1}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -1}
+ m_TimeScale: -2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 1, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -1, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!1101 &110119424
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.8947368
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110128626
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: HandGestureLeft
+ m_EventTreshold: 1
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 110273718}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 4
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9
+ m_HasExitTime: 0
+ m_HasFixedDuration: 0
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110128706
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: HandGestureLeft
+ m_EventTreshold: 3
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 110212464}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 4
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9
+ m_HasExitTime: 0
+ m_HasFixedDuration: 0
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110134324
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: HandGestureLeft
+ m_EventTreshold: 5
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 110204806}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 4
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9
+ m_HasExitTime: 0
+ m_HasFixedDuration: 0
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110150130
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: HandGestureLeft
+ m_EventTreshold: 2
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 110213388}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 4
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9
+ m_HasExitTime: 0
+ m_HasFixedDuration: 0
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110161318
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: HandGestureLeft
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 110293312}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 4
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9
+ m_HasExitTime: 0
+ m_HasFixedDuration: 0
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110165452
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: HandGestureLeft
+ m_EventTreshold: 4
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 110283558}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 4
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9
+ m_HasExitTime: 0
+ m_HasFixedDuration: 0
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110178142
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: HandGestureLeft
+ m_EventTreshold: 6
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 110232320}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 4
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9
+ m_HasExitTime: 0
+ m_HasFixedDuration: 0
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110179994
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: EmoteExit
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9423077
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &110183236
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.82558143
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1102 &110200000
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 120, y: 36, z: 0}
+ m_IKOnFeet: 1
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 0}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110204806
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Gun 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 336, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400002, guid: b4830721211d64b4d95148caf14d638b, type: 3}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110212464
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Peace 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 276, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400020, guid: 9145c6654ec80054aa42bf7a76165903, type: 3}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110213388
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Point 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 36, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400008, guid: 9145c6654ec80054aa42bf7a76165903, type: 3}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110221436
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 120, y: 36, z: 0}
+ m_IKOnFeet: 1
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 0}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110232320
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Thumbs up 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 216, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400014, guid: 9145c6654ec80054aa42bf7a76165903, type: 3}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110241548
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 120, y: 36, z: 0}
+ m_IKOnFeet: 1
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 0}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110255674
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 120, y: 36, z: 0}
+ m_IKOnFeet: 1
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 0}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110273718
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Palm 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 156, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400004, guid: b4830721211d64b4d95148caf14d638b, type: 3}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110283558
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: RockNRoll 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 96, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400012, guid: 9145c6654ec80054aa42bf7a76165903, type: 3}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110293312
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Fist 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: -60, y: 192, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400006, guid: 9145c6654ec80054aa42bf7a76165903, type: 3}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &110299266
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 120, y: 36, z: 0}
+ m_IKOnFeet: 1
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 0}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!114 &114022255662586678
+MonoBehaviour:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: b658310f3202fc64aac64aa6e603b79a, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+--- !u!206 &206016604260823814
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206031328817658084
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206042011143769418
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Childs: []
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementX
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &206044813657295390
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: LocomotionHeightBlend
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 206446873584821380}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 206961392883137572}
+ m_Threshold: 0.68
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 206154770220190690}
+ m_Threshold: 1
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: Upright
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0.5
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &206075972635362766
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!206 &206083985980243616
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Childs: []
+ m_BlendParameter: LocomotionX
+ m_BlendParameterY: LocomotionX
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &206085124900947238
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206093932012389494
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206154770220190690
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206203986457737408
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206239528909019718
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: LocomotionHeightBlend
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 206443553673598300}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 206906395246964180}
+ m_Threshold: 0.68
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 206758778368637082}
+ m_Threshold: 1
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: HeightScale
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0.5
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &206245235420059064
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: LocomotionHeightBlend
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 206637873669902670}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 206754156246800710}
+ m_Threshold: 0.68
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 206016604260823814}
+ m_Threshold: 1
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: Upright
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0.5
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &206307437469983586
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206395530848215904
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206417488844622416
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206443553673598300
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!206 &206446873584821380
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!206 &206471471687492400
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!206 &206554094169995096
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206630646726750164
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!206 &206637873669902670
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!206 &206684153996676736
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206723165694216672
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206754156246800710
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206758778368637082
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: StandingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400030, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 5.96}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400032, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.05882353
+ m_Position: {x: 0, y: 3.4}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400034, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.11764706
+ m_Position: {x: 0, y: 1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400002, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.1764706
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 0.166
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400068, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.23529412
+ m_Position: {x: 0, y: -1.56}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400036, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.29411766
+ m_Position: {x: 0, y: -2.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.3529412
+ m_Position: {x: -3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.4117647
+ m_Position: {x: -1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.47058824
+ m_Position: {x: 1.56, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400038, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5294118
+ m_Position: {x: 3, y: 0}
+ m_TimeScale: 2
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400040, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5882353
+ m_Position: {x: -1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400042, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.64705884
+ m_Position: {x: 1.1, y: -1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400044, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7058824
+ m_Position: {x: -1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400046, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.7647059
+ m_Position: {x: 1.1, y: 1.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400048, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.8235294
+ m_Position: {x: -2.44, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400050, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.88235295
+ m_Position: {x: 2.4, y: 2.44}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400070, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.9411765
+ m_Position: {x: -1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400072, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 1.5, y: -1.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206906395246964180
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206913599990230568
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: LocomotionHeightBlend
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 206956841050264174}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 206723165694216672}
+ m_Threshold: 0.68
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 206085124900947238}
+ m_Threshold: 1
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: Upright
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0.5
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &206956841050264174
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!206 &206961392883137572
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CrouchingLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400026, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.5}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400024, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.5}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: -0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 1
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400028, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: 0.5, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementZ
+ m_Mirror: 0
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 2
+--- !u!206 &206965062528337704
+BlendTree:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400000, guid: 6bbe0f31a6828644eba32332a799363a, type: 2}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: DickSize
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400000, guid: 333ea48bbe327954ba27310a3258c065, type: 2}
+ m_Threshold: 1
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: DickSize
+ m_Mirror: 0
+ m_BlendParameter: DickSize
+ m_BlendParameterY: DickSize
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 1
+ m_NormalizedBlendValues: 0
+ m_BlendType: 0
+--- !u!206 &206973349054612556
+BlendTree:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: ProneLocomotion
+ m_Childs:
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400004, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0
+ m_Position: {x: 0, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.25
+ m_Position: {x: 0, y: 0.1}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.5
+ m_Position: {x: 0, y: -0.1}
+ m_TimeScale: -1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 0.75
+ m_Position: {x: 0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 0
+ - serializedVersion: 2
+ m_Motion: {fileID: 7400066, guid: 7e5debf235ac2d54397a268de3328672, type: 3}
+ m_Threshold: 1
+ m_Position: {x: -0.1, y: 0}
+ m_TimeScale: 1
+ m_CycleOffset: 0.5
+ m_DirectBlendParameter: MovementX
+ m_Mirror: 1
+ m_BlendParameter: MovementX
+ m_BlendParameterY: MovementZ
+ m_MinThreshold: 0
+ m_MaxThreshold: 1
+ m_UseAutomaticThresholds: 0
+ m_NormalizedBlendValues: 0
+ m_BlendType: 1
+--- !u!1101 &1101040781109855364
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102455094235339038}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101071561901345974
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.8076923
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101082732701353718
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101086708107522822
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: Emote
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101104924178738988
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.8076923
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101148804329760398
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: Upright
+ m_EventTreshold: 0.52
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.5
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101148981028452212
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: FeetTracking
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101168188689562528
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 10
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102253508371542814}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101178593027351574
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: FeetTracking
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101182559749504166
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 6
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102064065192412840}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101193479851557412
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 2
+ m_ConditionEvent: Grounded
+ m_EventTreshold: 0
+ - m_ConditionMode: 3
+ m_ConditionEvent: HeightScale
+ m_EventTreshold: 0.9
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101196402134137872
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 4
+ m_ConditionEvent: Upright
+ m_EventTreshold: 0.5
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.5
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101210025531826312
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101215887034957236
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: GestureLeft
+ m_EventTreshold: 2
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102492248710561608}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.1
+ m_TransitionOffset: 0
+ m_ExitTime: 1
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 0
+--- !u!1101 &1101235114653490514
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: AFK
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 1
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101272092978760438
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.93697476
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101282719630430872
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: Upright
+ m_EventTreshold: 0.52
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.5
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101288814492979198
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 8
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102207043839355514}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101295048585110788
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 14
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102079777657551698}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101297612369784376
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: GestureLeft
+ m_EventTreshold: 1
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102545041757170712}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.1
+ m_TransitionOffset: 0
+ m_ExitTime: 1
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 0
+--- !u!1101 &1101337150927893138
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 2
+ m_ConditionEvent: Dick
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102979082326966140}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101351837936359920
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: GestureLeft
+ m_EventTreshold: 5
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102518601152573940}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.1
+ m_TransitionOffset: 0
+ m_ExitTime: 1
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 0
+--- !u!1101 &1101423121419488520
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 4
+ m_ConditionEvent: TrackMoveZ
+ m_EventTreshold: 0.1
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.93697476
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101426566127248660
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 9
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102894513183157586}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101456499283018434
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: GestureLeft
+ m_EventTreshold: 3
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102699109638154208}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.1
+ m_TransitionOffset: 0
+ m_ExitTime: 1
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 0
+--- !u!1101 &1101474136737068792
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 15
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102129330565869148}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101480615058169886
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: Upright
+ m_EventTreshold: 0.52
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.5
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101512413549531714
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: Grounded
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.04
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101573855910363042
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: AFK
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 1
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101577419743741550
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: AFK
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 1
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101596317902369552
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: GestureLeft
+ m_EventTreshold: 7
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102736723225604766}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.1
+ m_TransitionOffset: 0
+ m_ExitTime: 1
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 0
+--- !u!1101 &1101598777299516300
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: Emote
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101603728083322770
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: Upright
+ m_EventTreshold: 0.7
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.5
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101613176817069000
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 2
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102749904175105336}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101616458260888098
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 4
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102358850981651888}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101629384447080740
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: FeetTracking
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101637843614510802
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: GestureLeft
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102105159254072260}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.1
+ m_TransitionOffset: 0
+ m_ExitTime: 1
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 0
+--- !u!1101 &1101647427822641960
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: Emote
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101660483277363162
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 2
+ m_ConditionEvent: Grounded
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 110226965, guid: 12cd9f87c1f675b4685e0848a464d0cf, type: 2}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.9
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101693057552009694
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 7
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102204412417478224}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101700841592070658
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 1
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102465184245332328}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101707632253518802
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 4
+ m_ConditionEvent: TrackMoveZ
+ m_EventTreshold: 0.1
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.93697476
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101734793588995286
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 13
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102374495355927976}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101742756729684132
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions: []
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.5
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101754637864197002
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: Seated
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.5
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101763489010295110
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: GestureLeft
+ m_EventTreshold: 4
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102846907222558886}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.1
+ m_TransitionOffset: 0
+ m_ExitTime: 1
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 0
+--- !u!1101 &1101798320813625374
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 5
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102285671169063880}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101836067235515452
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: Dick
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102068932051799438}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101880721889136240
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 3
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102469199005961942}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101932382716972008
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: Grounded
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.039085507
+ m_TransitionOffset: 0
+ m_ExitTime: 0.72727275
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101962578053626730
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 4
+ m_ConditionEvent: TrackMoveX
+ m_EventTreshold: 0.1
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.93697476
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101968820826125738
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: GestureLeft
+ m_EventTreshold: 6
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102096756771513856}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.1
+ m_TransitionOffset: 0
+ m_ExitTime: 1
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 0
+--- !u!1101 &1101969439990905432
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: TrackMoveZ
+ m_EventTreshold: -0.1
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.93697476
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101974865512462218
+AnimatorStateTransition:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: Seated
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.5
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 1
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1101 &1101979655734411610
+AnimatorStateTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: VRCEmote
+ m_EventTreshold: 12
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 1102561977633510480}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 3
+ m_TransitionDuration: 0.25
+ m_TransitionOffset: 0
+ m_ExitTime: 0.75
+ m_HasExitTime: 0
+ m_HasFixedDuration: 1
+ m_InterruptionSource: 0
+ m_OrderedInterruption: 1
+ m_CanTransitionToSelf: 1
+--- !u!1102 &1102064065192412840
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: SPECIALIST TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 7ee459506a0cd0f47a377706df6f440b, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102068932051799438
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: dick
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 86793e96c24dec34abf97a4076e856df, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102079777657551698
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: WHISTLE TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 50717ed1b83212242ab9ba2384a550e1, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102096756771513856
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Gun
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 336, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 0
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 1
+ m_Motion: {fileID: 7400000, guid: 98d5ecfa67305c34985745094ade494c, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter: GestureLeftWeight
+--- !u!1102 &1102105159254072260
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Idle
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 790b757e20c0f2c42b5a4e1817ea5efd, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102129330565869148
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: HENERY SITCKMAN TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: afa62111ab356554dbf4812a98dad9c2, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102204412417478224
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: TRUMPET TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 2d844bc14965b754e86bc591497ea55d, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102207043839355514
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: TAKE ON ME TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 778d809525d77fd43a485ecefaecb76c, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102253508371542814
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: LEAN ON TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 96f7e9b287fa8454396dc9e5e22e0b1c, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102285671169063880
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: SHUFFLE TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: dae888f75b4be4d44a08031f365621fd, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102358850981651888
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: RIVERS IN THE DESERT TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 90d738cc467e2ae40b00fd4f33d977d3, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102374495355927976
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: PHUT HON TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: a731a4c2771c9d94686c6f4594064319, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102443194424906508
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Topless
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 0}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102455094235339038
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: OFF TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 2050beef3b3477a4aab4ed99d7778fae, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102465184245332328
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: CARSHEARER TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: aa984b2a06880f848be46a75e0f3c7d3, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102469199005961942
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: GEDDAN TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: d64e0ba747a74d74c936e2c56a63eaf6, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102492248710561608
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Open
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 156, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 0
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 1
+ m_Motion: {fileID: 7400000, guid: bd76ddf346046e346bee29d1d6f95a5d, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter: GestureLeftWeight
+--- !u!1102 &1102518601152573940
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: RockNRoll
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 96, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 0
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 1
+ m_Motion: {fileID: 7400000, guid: 2bd397d5afcbb3647b149cb8bc1a03ee, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter: GestureLeftWeight
+--- !u!1102 &1102545041757170712
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Fist
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: -60, y: 192, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 0
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 1
+ m_Motion: {fileID: 7400000, guid: 81435368fed3f9d44b98ac6b56148f6d, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter: GestureLeftWeight
+--- !u!1102 &1102561977633510480
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: IEVAN POLKA TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: ab744ba85a97ceb40b6d4fa228e33359, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102628760306700186
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: HeightBlend 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 1
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 206245235420059064}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102670047216628226
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: HeightBlend 0
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 1
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 206044813657295390}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102695861635545808
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Blend Tree
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 206965062528337704}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102699109638154208
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Point
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 36, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 0
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 1
+ m_Motion: {fileID: 7400000, guid: 08c0ae90c5f9e56428799dc10c4c53c5, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter: GestureLeftWeight
+--- !u!1102 &1102736723225604766
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Thumbs up
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 216, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 0
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 1
+ m_Motion: {fileID: 7400000, guid: cdedf23966a15a5408db1293649dbdda, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter: GestureLeftWeight
+--- !u!1102 &1102749904175105336
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: DANSING TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: a689e972967a66843945fd57186ca99a, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102846907222558886
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Peace
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 264, y: 276, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 0
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 1
+ m_Motion: {fileID: 7400000, guid: 467d24c372e24834d8fe12b28efe5de2, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter: GestureLeftWeight
+--- !u!1102 &1102894513183157586
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: POLE TOGGLE
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: f078e3d52c6ff684b93b95a887183055, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102979082326966140
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: nothin
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 79ac91e6065cbfe43a4d5e2241e9110f, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1107 &1107006183641554202
+AnimatorStateMachine:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Dick
+ m_ChildStates:
+ - serializedVersion: 1
+ m_State: {fileID: 1102979082326966140}
+ m_Position: {x: 396, y: 60, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102068932051799438}
+ m_Position: {x: 372, y: -12, z: 0}
+ m_ChildStateMachines: []
+ m_AnyStateTransitions:
+ - {fileID: 1101337150927893138}
+ - {fileID: 1101836067235515452}
+ m_EntryTransitions: []
+ m_StateMachineTransitions: {}
+ m_StateMachineBehaviours: []
+ m_AnyStatePosition: {x: 50, y: 20, z: 0}
+ m_EntryPosition: {x: 50, y: 120, z: 0}
+ m_ExitPosition: {x: 800, y: 120, z: 0}
+ m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
+ m_DefaultState: {fileID: 1102979082326966140}
+--- !u!1107 &1107123751776154238
+AnimatorStateMachine:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: DickSize
+ m_ChildStates:
+ - serializedVersion: 1
+ m_State: {fileID: 1102695861635545808}
+ m_Position: {x: 394.28577, y: 80.714264, z: 0}
+ m_ChildStateMachines: []
+ m_AnyStateTransitions: []
+ m_EntryTransitions: []
+ m_StateMachineTransitions: {}
+ m_StateMachineBehaviours: []
+ m_AnyStatePosition: {x: 50, y: 20, z: 0}
+ m_EntryPosition: {x: 50, y: 120, z: 0}
+ m_ExitPosition: {x: 800, y: 120, z: 0}
+ m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
+ m_DefaultState: {fileID: 1102695861635545808}
+--- !u!1107 &1107406222543947020
+AnimatorStateMachine:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: AllParts
+ m_ChildStates: []
+ m_ChildStateMachines: []
+ m_AnyStateTransitions: []
+ m_EntryTransitions: []
+ m_StateMachineTransitions: {}
+ m_StateMachineBehaviours: []
+ m_AnyStatePosition: {x: 50, y: 20, z: 0}
+ m_EntryPosition: {x: 50, y: 120, z: 0}
+ m_ExitPosition: {x: 800, y: 120, z: 0}
+ m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
+ m_DefaultState: {fileID: 0}
+--- !u!1107 &1107492308775838736
+AnimatorStateMachine:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: VRCEmote
+ m_ChildStates:
+ - serializedVersion: 1
+ m_State: {fileID: 1102455094235339038}
+ m_Position: {x: 276, y: -60, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102465184245332328}
+ m_Position: {x: 276, y: -12, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102749904175105336}
+ m_Position: {x: 276, y: 36, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102469199005961942}
+ m_Position: {x: 276, y: 84, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102358850981651888}
+ m_Position: {x: 276, y: 132, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102285671169063880}
+ m_Position: {x: 276, y: 180, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102064065192412840}
+ m_Position: {x: 276, y: 228, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102204412417478224}
+ m_Position: {x: 276, y: 276, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102207043839355514}
+ m_Position: {x: 276, y: 324, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102894513183157586}
+ m_Position: {x: 276, y: 372, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102253508371542814}
+ m_Position: {x: 276, y: 420, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102561977633510480}
+ m_Position: {x: 276, y: 468, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102374495355927976}
+ m_Position: {x: 276, y: 516, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102079777657551698}
+ m_Position: {x: 276, y: 564, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102129330565869148}
+ m_Position: {x: 276, y: 612, z: 0}
+ m_ChildStateMachines: []
+ m_AnyStateTransitions:
+ - {fileID: 1101040781109855364}
+ - {fileID: 1101700841592070658}
+ - {fileID: 1101613176817069000}
+ - {fileID: 1101880721889136240}
+ - {fileID: 1101616458260888098}
+ - {fileID: 1101798320813625374}
+ - {fileID: 1101182559749504166}
+ - {fileID: 1101693057552009694}
+ - {fileID: 1101288814492979198}
+ - {fileID: 1101426566127248660}
+ - {fileID: 1101168188689562528}
+ - {fileID: 1101979655734411610}
+ - {fileID: 1101734793588995286}
+ - {fileID: 1101295048585110788}
+ - {fileID: 1101474136737068792}
+ m_EntryTransitions: []
+ m_StateMachineTransitions: {}
+ m_StateMachineBehaviours: []
+ m_AnyStatePosition: {x: 50, y: 20, z: 0}
+ m_EntryPosition: {x: 50, y: 120, z: 0}
+ m_ExitPosition: {x: 800, y: 120, z: 0}
+ m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
+ m_DefaultState: {fileID: 1102455094235339038}
+--- !u!1109 &1109311395242789590
+AnimatorTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 2
+ m_ConditionEvent: Seated
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 1
+--- !u!1109 &1109726522920850736
+AnimatorTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 3
+ m_ConditionEvent: Emote
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 1
+--- !u!1109 &1109756093405188824
+AnimatorTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 2
+ m_ConditionEvent: Grounded
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 1
+--- !u!1109 &1109763167683413500
+AnimatorTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 6
+ m_ConditionEvent: Emote
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 1
+ serializedVersion: 1
+--- !u!1109 &1109910370775189524
+AnimatorTransition:
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name:
+ m_Conditions:
+ - m_ConditionMode: 1
+ m_ConditionEvent: FeetTracking
+ m_EventTreshold: 0
+ m_DstStateMachine: {fileID: 0}
+ m_DstState: {fileID: 0}
+ m_Solo: 0
+ m_Mute: 0
+ m_IsExit: 0
+ serializedVersion: 1
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/FX 1.controller.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/FX 1.controller.meta
new file mode 100644
index 00000000..1f140fc9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/FX 1.controller.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b8e3e394c6a6bae4bb5fe5f950d43fe5
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials.meta
new file mode 100644
index 00000000..4a1f211e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f265cdc627df8ed49b65e456834ecf37
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders.meta
new file mode 100644
index 00000000..6c6a1657
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e2683597f241e9e42b485a8bec184ca4
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1.meta
new file mode 100644
index 00000000..71dacfba
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: de0947237c42bba43a17d3d6a0e5d132
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets.meta
new file mode 100644
index 00000000..fa0f874e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 3bda6b853125c5f4a890cd0703befb5d
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders.meta
new file mode 100644
index 00000000..b9df101f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 778eb97ae70f41f4f9a25107551a5314
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders.meta
new file mode 100644
index 00000000..0bfe0e8b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2bc38ba09a200224a87afb0134aa1a4e
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon.meta
new file mode 100644
index 00000000..4771a367
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 3daac0b954130f44d8239c62688ca5f2
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
new file mode 100644
index 00000000..b3b429e8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 8feaf500c36468d4f9c21022bb14f734
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
new file mode 100644
index 00000000..9f01532c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_ALPHA_TO_COVERAGE
+ #define POI_ALPHA_TO_COVERAGE
+
+ half _MainMipScale;
+ float _MainAlphaToCoverage;
+
+ float CalcMipLevel(float2 texture_coord)
+ {
+ float2 dx = ddx(texture_coord);
+ float2 dy = ddy(texture_coord);
+ float delta_max_sqr = max(dot(dx, dx), dot(dy, dy));
+
+ return 0.5 * log2(delta_max_sqr);
+ }
+
+ void ApplyAlphaToCoverage(inout float4 finalColor)
+ {
+ // Force Model Opacity to 1 if desired
+
+ if (float(0) == 1)
+ {
+
+ if(float(0))
+ {
+ // rescale alpha by mip level
+ finalColor.a *= 1 + max(0, CalcMipLevel(poiMesh.uv[0] * float4(0.0004882813,0.0004882813,2048,2048).zw)) * float(0.25);
+ // rescale alpha by partial derivative
+ finalColor.a = (finalColor.a - float(0.5)) / max(fwidth(finalColor.a), 0.0001) + float(0.5);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
new file mode 100644
index 00000000..5b9165f3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fa667b70abbeda648ab89b5062a89770
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
new file mode 100644
index 00000000..e529136f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_BACKFACE
+ #define POI_BACKFACE
+
+ float _BackFaceEnabled;
+ float _BackFaceTextureUV;
+ float _BackFaceDetailIntensity;
+ float _BackFaceEmissionStrength;
+ float2 _BackFacePanning;
+ float _BackFaceHueShift;
+ float4 _BackFaceColor;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
+
+ float3 BackFaceColor;
+ void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
+ {
+ backFaceEmission = 0;
+ BackFaceColor = 0;
+
+ if (float(0))
+ {
+ if(!poiMesh.isFrontFace)
+ {
+ albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ backFaceDetailIntensity = float(1);
+ BackFaceColor = albedo.rgb;
+ mixedHueShift = float(0);
+ backFaceEmission = BackFaceColor * float(0);
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
new file mode 100644
index 00000000..e0de4449
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 70ad95d596026bd4e97f95ef06ef1fdb
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
new file mode 100644
index 00000000..750364ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
@@ -0,0 +1,54 @@
+#ifndef POI_BLACKLIGHT
+ #define POI_BLACKLIGHT
+
+ float4 _BlackLightMaskStart;
+ float4 _BlackLightMaskEnd;
+ float4 _BlackLightMaskKeys;
+ float _BlackLightMaskDebug;
+ float _BlackLightMaskDissolve;
+ float _BlackLightMaskMetallic;
+ float _BlackLightMaskClearCoat;
+ float _BlackLightMaskMatcap;
+ float _BlackLightMaskMatcap2;
+ float _BlackLightMaskEmission;
+ float _BlackLightMaskEmission2;
+ float _BlackLightMaskFlipbook;
+ float _BlackLightMaskPanosphere;
+ float _BlackLightMaskIridescence;
+
+ half _BlackLightMaskGlitter;
+
+ half4 blackLightMask;
+
+ void createBlackLightMask()
+ {
+ blackLightMask = 0;
+ #ifdef VERTEXLIGHT_ON
+
+ for (int lightIndex = 0; lightIndex < 4; lightIndex ++)
+ {
+ float3 lightPos = float3(unity_4LightPosX0[lightIndex], unity_4LightPosY0[lightIndex], unity_4LightPosZ0[lightIndex]);
+ if (!distance(unity_LightColor[lightIndex].rgb, float3(0, 0, 0)))
+ {
+ for (int maskIndex = 0; maskIndex < 4; maskIndex ++)
+ {
+ float4 comparison = _BlackLightMaskKeys;
+ if(unity_LightColor[lightIndex].a == comparison[maskIndex])
+ {
+ blackLightMask[maskIndex] = max(blackLightMask[maskIndex], smoothstep(_BlackLightMaskEnd[maskIndex], _BlackLightMaskStart[maskIndex], distance(poiMesh.worldPos, lightPos)));
+ }
+ }
+ }
+ }
+ #endif
+ }
+#endif
+
+/*
+#ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskDissolve != 4)
+ {
+ blackLightMask[mask];
+ }
+#endif
+*/
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
new file mode 100644
index 00000000..5bf6694f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 77cd25f028a597d4aa854199217f273f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
new file mode 100644
index 00000000..f87ae6dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
@@ -0,0 +1,39 @@
+#ifndef POI_BLENDING
+ #define POI_BLENDING
+
+ /*
+ 0: Zero float4(0.0, 0.0, 0.0, 0.0),
+ 1: One float4(1.0, 1.0, 1.0, 1.0),
+ 2: DstColor destinationColor,
+ 3: SrcColor sourceColor,
+ 4: OneMinusDstColor float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ 5: SrcAlpha sourceColor.aaaa,
+ 6: OneMinusSrcColor float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ 7: DstAlpha destinationColor.aaaa,
+ 8: OneMinusDstAlpha float4(1.0, 1.0, 1.0, 1.0) - destinationColor.,
+ 9: SrcAlphaSaturate saturate(sourceColor.aaaa),
+ 10: OneMinusSrcAlpha float4(1.0, 1.0, 1.0, 1.0) - sourceColor.aaaa,
+ */
+
+ float4 poiBlend(const float sourceFactor, const float4 sourceColor, const float destinationFactor, const float4 destinationColor, const float4 blendFactor)
+ {
+ float4 sA = 1-blendFactor;
+ const float4 blendData[11] = {
+ float4(0.0, 0.0, 0.0, 0.0),
+ float4(1.0, 1.0, 1.0, 1.0),
+ destinationColor,
+ sourceColor,
+ float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sA,
+ saturate(sourceColor.aaaa),
+ 1 - sA,
+ };
+
+ return lerp(blendData[sourceFactor] * sourceColor + blendData[destinationFactor] * destinationColor,sourceColor, sA);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
new file mode 100644
index 00000000..a48755e1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0139d18ea600fdb47ae0e43b698e8e63
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
new file mode 100644
index 00000000..6e4db3fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_BULGE
+ #define POI_BULGE
+
+
+ sampler2D _BulgeMask;
+ float _BuldgeFadeLength;
+ float _BuldgeHeight;
+
+ void bulgyWolgy(inout v2f o)
+ {
+ float depth = DecodeFloatRG(tex2Dlod(_CameraDepthTexture, float4(o.grabPos.xy / o.grabPos.w, 0, 0)));
+ float bulgeMask = tex2Dlod(_BulgeMask, float4(o.uv0.xy, 0, 0));
+ depth = Linear01Depth(depth);
+
+ float intersect = 0;
+ if (depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(o.pos.z / o.pos.w));
+ if(diff > 0)
+ {
+ intersect = 1 - smoothstep(0, _ProjectionParams.w * _BuldgeFadeLength, diff);
+ }
+ }
+ float4 offset = intersect * _BuldgeHeight * float4(o.normal, 0);
+
+ offset = IsInMirror() ? 0: offset;
+ offset *= bulgeMask;
+
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos) + offset;
+ o.localPos = mul(unity_WorldToObject, o.worldPos);
+ o.pos = UnityObjectToClipPos(o.localPos);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
new file mode 100644
index 00000000..882afc95
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 93007c2ea6c9bc74eb9ecbdb0fff253b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
new file mode 100644
index 00000000..5adf7340
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
@@ -0,0 +1,108 @@
+#ifndef POI_CLEARCOAT
+ #define POI_CLEARCOAT
+
+ samplerCUBE _ClearCoatCubeMap;
+ float _ClearCoatSampleWorld;
+ POI_TEXTURE_NOSAMPLER(_ClearCoatMask);
+ POI_TEXTURE_NOSAMPLER(_ClearCoatSmoothnessMap);
+ float _ClearCoatInvertSmoothness;
+ float _ClearCoat;
+ float _ClearCoatSmoothness;
+ float3 _ClearCoatTint;
+ float _ClearCoatNormalToUse;
+ float _ClearCoatForceLighting;
+ float lighty_clear_boy_uwu_var;
+
+
+ float3 CalculateClearCoatEnvironmentalReflections()
+ {
+ float3 reflectionColor;
+
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_ClearCoatSmoothnessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+ if (float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ float roughness = 1 - smoothnessMap;
+
+ lighty_clear_boy_uwu_var = 0;
+
+ float3 reflectedDir = float(0) == 0 ? poiCam.vertexReflectionDir: poiCam.reflectionDir;
+
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool no_probe = unity_SpecCube0_HDR.a == 0 && envSample.a == 0;
+
+
+ if(float(0) == 0 && no_probe == 0)
+ {
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflectionColor = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflectionColor = probe0;
+ }
+ }
+ else
+ {
+ lighty_clear_boy_uwu_var = 1;
+ reflectionColor = texCUBElod(_ClearCoatCubeMap, float4(reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+ }
+
+ if(float(0))
+ {
+ lighty_clear_boy_uwu_var = 1;
+ }
+
+ return reflectionColor * float4(1,1,1,1);
+ }
+
+ void calculateAndApplyClearCoat(inout float4 finalColor)
+ {
+ half clearCoatMap = POI2D_SAMPLER_PAN(_ClearCoatMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskClearCoat != 4)
+ {
+ clearCoatMap *= blackLightMask[_BlackLightMaskClearCoat];
+ }
+ #endif
+
+ half3 reflectionColor = CalculateClearCoatEnvironmentalReflections();
+
+ float NormalDotView = abs(dot(float(1), float(0) == 0 ? poiLight.N0DotV: poiLight.nDotV).r);
+ #ifdef POI_LIGHTING
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var), clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ //finalColor.rgb += reflectionColor;
+ //finalColor.rgb = finalColor.rgb * (1- (reflectionColor.r + reflectionColor.g + reflectionColor.b)/3) + reflectionColor * clearCoatMap * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var);
+ #else
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor, clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
new file mode 100644
index 00000000..1b68307a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1d50a4900da34c3489783edd6ea5b0d0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
new file mode 100644
index 00000000..687dc443
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
@@ -0,0 +1,262 @@
+#ifndef POI_COLOR
+ #define POI_COLOR
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ static const float Epsilon = 1e-10;
+ // The weights of RGB contributions to luminance.
+ // Should sum to unity.
+ static const float3 HCYwts = float3(0.299, 0.587, 0.114);
+ static const float HCLgamma = 3;
+ static const float HCLy0 = 100;
+ static const float HCLmaxL = 0.530454533953517; // == exp(HCLgamma / HCLy0) - 0.5
+ static const float3 wref = float3(1.0, 1.0, 1.0);
+ #define TAU 6.28318531
+
+ float3 HUEtoRGB(in float H)
+ {
+ float R = abs(H * 6 - 3) - 1;
+ float G = 2 - abs(H * 6 - 2);
+ float B = 2 - abs(H * 6 - 4);
+ return saturate(float3(R, G, B));
+ }
+
+ float3 RGBtoHCV(in float3 RGB)
+ {
+ // Based on work by Sam Hocevar and Emil Persson
+ float4 P = (RGB.g < RGB.b) ? float4(RGB.bg, -1.0, 2.0 / 3.0): float4(RGB.gb, 0.0, -1.0 / 3.0);
+ float4 Q = (RGB.r < P.x) ? float4(P.xyw, RGB.r): float4(RGB.r, P.yzx);
+ float C = Q.x - min(Q.w, Q.y);
+ float H = abs((Q.w - Q.y) / (6 * C + Epsilon) + Q.z);
+ return float3(H, C, Q.x);
+ }
+
+ float3 HSVtoRGB(in float3 HSV)
+ {
+ float3 RGB = HUEtoRGB(HSV.x);
+ return((RGB - 1) * HSV.y + 1) * HSV.z;
+ }
+
+ float3 RGBtoHSV(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float S = HCV.y / (HCV.z + Epsilon);
+ return float3(HCV.x, S, HCV.z);
+ }
+
+ float3 HSLtoRGB(in float3 HSL)
+ {
+ float3 RGB = HUEtoRGB(HSL.x);
+ float C = (1 - abs(2 * HSL.z - 1)) * HSL.y;
+ return(RGB - 0.5) * C + HSL.z;
+ }
+
+ float3 RGBtoHSL(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float L = HCV.z - HCV.y * 0.5;
+ float S = HCV.y / (1 - abs(L * 2 - 1) + Epsilon);
+ return float3(HCV.x, S, L);
+ }
+
+ float3 HCYtoRGB(in float3 HCY)
+ {
+
+
+ float3 RGB = HUEtoRGB(HCY.x);
+ float Z = dot(RGB, HCYwts);
+ if (HCY.z < Z)
+ {
+ HCY.y *= HCY.z / Z;
+ }
+ else if(Z < 1)
+ {
+ HCY.y *= (1 - HCY.z) / (1 - Z);
+ }
+ return(RGB - Z) * HCY.y + HCY.z;
+ }
+
+ float3 RGBtoHCY(in float3 RGB)
+ {
+ // Corrected by David Schaeffer
+ float3 HCV = RGBtoHCV(RGB);
+ float Y = dot(RGB, HCYwts);
+ float Z = dot(HUEtoRGB(HCV.x), HCYwts);
+ if (Y < Z)
+ {
+ HCV.y *= Z / (Epsilon + Y);
+ }
+ else
+ {
+ HCV.y *= (1 - Z) / (Epsilon + 1 - Y);
+ }
+ return float3(HCV.x, HCV.y, Y);
+ }
+
+ float3 HCLtoRGB(in float3 HCL)
+ {
+ float3 RGB = 0;
+ if(HCL.z != 0)
+ {
+ float H = HCL.x;
+ float C = HCL.y;
+ float L = HCL.z * HCLmaxL;
+ float Q = exp((1 - C / (2 * L)) * (HCLgamma / HCLy0));
+ float U = (2 * L - C) / (2 * Q - 1);
+ float V = C / Q;
+ float A = (H + min(frac(2 * H) / 4, frac(-2 * H) / 8)) * pi * 2;
+ float T;
+ H *= 6;
+ if(H <= 0.999)
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.g = T / (1 + T);
+ }
+ else if(H <= 1.001)
+ {
+ RGB.r = 1;
+ RGB.g = 1;
+ }
+ else if(H <= 2)
+ {
+ T = tan(A);
+ RGB.r = (1 + T) / T;
+ RGB.g = 1;
+ }
+ else if(H <= 3)
+ {
+ T = tan(A);
+ RGB.g = 1;
+ RGB.b = 1 + T;
+ }
+ else if(H <= 3.999)
+ {
+ T = tan(A);
+ RGB.g = 1 / (1 + T);
+ RGB.b = 1;
+ }
+ else if(H <= 4.001)
+ {
+ RGB.g = 0;
+ RGB.b = 1;
+ }
+ else if(H <= 5)
+ {
+ T = tan(A);
+ RGB.r = -1 / T;
+ RGB.b = 1;
+ }
+ else
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.b = -T;
+ }
+ RGB = RGB * V + U;
+ }
+ return RGB;
+ }
+
+ float3 RGBtoHCL(in float3 RGB)
+ {
+ float3 HCL;
+ float H = 0;
+ float U = min(RGB.r, min(RGB.g, RGB.b));
+ float V = max(RGB.r, max(RGB.g, RGB.b));
+ float Q = HCLgamma / HCLy0;
+ HCL.y = V - U;
+ if(HCL.y != 0)
+ {
+ H = atan2(RGB.g - RGB.b, RGB.r - RGB.g) / pi;
+ Q *= U / V;
+ }
+ Q = exp(Q);
+ HCL.x = frac(H / 2 - min(frac(H), frac(-H)) / 6);
+ HCL.y *= Q;
+ HCL.z = lerp(-U, V, Q) / (HCLmaxL * 2);
+ return HCL;
+ }
+
+ //HSL MODIFT
+ float3 ModifyViaHSL(float3 color, float3 HSLMod)
+ {
+ float3 colorHSL = RGBtoHSL(color);
+ colorHSL.r = frac(colorHSL.r + HSLMod.r);
+ colorHSL.g = saturate(colorHSL.g + HSLMod.g);
+ colorHSL.b = saturate(colorHSL.b + HSLMod.b);
+ return HSLtoRGB(colorHSL);
+ }
+
+ float3 hueShift(float3 col, float hueAdjust)
+ {
+ hueAdjust *= 2 * pi;
+ const float3 k = float3(0.57735, 0.57735, 0.57735);
+ half cosAngle = cos(hueAdjust);
+ return col * cosAngle + cross(k, col) * sin(hueAdjust) + k * dot(k, col) * (1.0 - cosAngle);
+ }
+
+ float3 poiSaturation(float3 In, float Saturation)
+ {
+ float luma = dot(In, float3(0.2126729, 0.7151522, 0.0721750));
+ return luma.xxx + Saturation.xxx * (In - luma.xxx);
+ }
+ // LCH
+ float xyzF(float t)
+ {
+ return lerp(pow(t, 1. / 3.), 7.787037 * t + 0.139731, step(t, 0.00885645));
+ }
+ float xyzR(float t)
+ {
+ return lerp(t * t * t, 0.1284185 * (t - 0.139731), step(t, 0.20689655));
+ }
+ float3 rgb2lch(in float3 c)
+ {
+ c = mul(float3x3(0.4124, 0.3576, 0.1805,
+ 0.2126, 0.7152, 0.0722,
+ 0.0193, 0.1192, 0.9505), c);
+ c.x = xyzF(c.x / wref.x);
+ c.y = xyzF(c.y / wref.y);
+ c.z = xyzF(c.z / wref.z);
+ float3 lab = float3(max(0., 116.0 * c.y - 16.0), 500.0 * (c.x - c.y), 200.0 * (c.y - c.z));
+ return float3(lab.x, length(float2(lab.y, lab.z)), atan2(lab.z, lab.y));
+ }
+
+ float3 lch2rgb(in float3 c)
+ {
+ c = float3(c.x, cos(c.z) * c.y, sin(c.z) * c.y);
+
+ float lg = 1. / 116. * (c.x + 16.);
+ float3 xyz = float3(wref.x * xyzR(lg + 0.002 * c.y),
+ wref.y * xyzR(lg),
+ wref.z * xyzR(lg - 0.005 * c.z));
+
+ float3 rgb = mul(float3x3(3.2406, -1.5372, -0.4986,
+ - 0.9689, 1.8758, 0.0415,
+ 0.0557, -0.2040, 1.0570), xyz);
+
+ return rgb;
+ }
+
+ //cheaply lerp around a circle
+ float lerpAng(in float a, in float b, in float x)
+ {
+ float ang = fmod(fmod((a - b), TAU) + pi * 3., TAU) - pi;
+ return ang * x + b;
+ }
+
+ //Linear interpolation between two colors in Lch space
+ float3 lerpLch(in float3 a, in float3 b, in float x)
+ {
+ float hue = lerpAng(a.z, b.z, x);
+ return float3(lerp(b.xy, a.xy, x), hue);
+ }
+
+ float3 poiExpensiveColorBlend(float3 col1, float3 col2, float alpha)
+ {
+ return lch2rgb(lerpLch(rgb2lch(col1), rgb2lch(col2), alpha));
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
new file mode 100644
index 00000000..c8cb15d2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 84dab00bc9aefbe4fb32d39057675506
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
new file mode 100644
index 00000000..cd354f85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
@@ -0,0 +1,249 @@
+#ifndef POI_DATA
+ #define POI_DATA
+
+ float _ParallaxBias;
+ float _LightingAdditiveLimitIntensity;
+ float _LightingAdditiveMaxIntensity;
+ POI_TEXTURE_NOSAMPLER(_BumpMap);
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailMask);
+ POI_TEXTURE_NOSAMPLER(_DetailNormalMap);
+ float _DetailNormalMapScale;
+ #endif
+ float _BumpScale;
+
+ void calculateAttenuation(v2f i)
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if defined(POINT) || defined(SPOT)
+ POI_LIGHT_ATTENUATION(attenuation, shadow, i, i.worldPos.xyz)
+ poiLight.additiveShadow = shadow;
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ poiLight.additiveShadow == 0;
+ #endif
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ // fix for rare bug where light atten is 0 when there is no directional light in the scene
+ #ifdef FORWARD_BASE_PASS
+ if (all(_LightColor0.rgb == 0.0))
+ {
+ attenuation = 1.0;
+ }
+ #endif
+ #endif
+ poiLight.attenuation = attenuation;
+ }
+
+ void calculateVertexLightingData(in v2f i)
+ {
+ #ifdef VERTEXLIGHT_ON
+ float4 toLightX = unity_4LightPosX0 - i.worldPos.x;
+ float4 toLightY = unity_4LightPosY0 - i.worldPos.y;
+ float4 toLightZ = unity_4LightPosZ0 - i.worldPos.z;
+ float4 lengthSq = 0;
+ lengthSq += toLightX * toLightX;
+ lengthSq += toLightY * toLightY;
+ lengthSq += toLightZ * toLightZ;
+
+ float4 lightAttenSq = unity_4LightAtten0;
+ float4 atten = 1.0 / (1.0 + lengthSq * lightAttenSq);
+ float4 vLightWeight = saturate(1 - (lengthSq * lightAttenSq / 25));
+ poiLight.vAttenuation = min(atten, vLightWeight * vLightWeight);
+
+ poiLight.vDotNL = 0;
+ poiLight.vDotNL += toLightX * poiMesh.normals[1].x;
+ poiLight.vDotNL += toLightY * poiMesh.normals[1].y;
+ poiLight.vDotNL += toLightZ * poiMesh.normals[1].z;
+
+ float4 corr = rsqrt(lengthSq);
+ poiLight.vDotNL = max(0, poiLight.vDotNL * corr);
+ poiLight.vAttenuationDotNL = poiLight.vAttenuation * poiLight.vDotNL;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vPosition[index] = float3(unity_4LightPosX0[index], unity_4LightPosY0[index], unity_4LightPosZ0[index]);
+
+ float3 vertexToLightSource = poiLight.vPosition[index] - poiMesh.worldPos;
+ poiLight.vDirection[index] = normalize(vertexToLightSource);
+ //poiLight.vAttenuationDotNL[index] = 1.0 / (1.0 + unity_4LightAtten0[index] * poiLight.vDotNL[index]);
+ poiLight.vColor[index] = unity_LightColor[index].rgb;
+
+ if (float(0) == 1)
+ {
+ float intensity = max(0.001, (0.299 * poiLight.vColor[index].r + 0.587 * poiLight.vColor[index].g + 0.114 * poiLight.vColor[index].b));
+ poiLight.vColor[index] = min(poiLight.vColor[index], poiLight.vColor[index] / (intensity / float(1)));
+ }
+ poiLight.vHalfDir[index] = Unity_SafeNormalize(poiLight.vDirection[index] + poiCam.viewDir);
+ poiLight.vDotNL[index] = dot(poiMesh.normals[1], -poiLight.vDirection[index]);
+ poiLight.vCorrectedDotNL[index] = .5 * (poiLight.vDotNL[index] + 1);
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.vDotLH[index] = saturate(dot(poiLight.vDirection[index], poiLight.vHalfDir[index]));
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.vDotNH[index] = saturate(dot(poiMesh.normals[1], poiLight.vHalfDir[index]));
+ #endif
+ }
+ #endif
+ }
+
+ void calculateLightingData(in v2f i)
+ {
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ float3 magic = max(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb;
+ poiLight.color = magic + normalLight;
+ #else
+ #ifdef FORWARD_ADD_PASS
+ poiLight.color = _LightColor0.rgb;
+
+
+ if (float(0) == 1)
+ {
+ float additiveLightIntensity = max(0.001, (0.299 * poiLight.color.r + 0.587 * poiLight.color.g + 0.114 * poiLight.color.b));
+ poiLight.color = min(poiLight.color, poiLight.color / (additiveLightIntensity / float(1)));
+ }
+ #endif
+ #endif
+
+ #ifdef FORWARD_BASE_PASS
+ poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ #else
+ #if defined(POINT) || defined(SPOT)
+ poiLight.direction = normalize(_WorldSpaceLightPos0.xyz - i.worldPos);
+ #else
+ poiLight.direction = _WorldSpaceLightPos0;
+ #endif
+ #endif
+
+ poiLight.halfDir = normalize(poiLight.direction + poiCam.viewDir);
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.dotNH = saturate(dot(poiMesh.normals[1], poiLight.halfDir));
+ #endif
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.dotLH = saturate(dot(poiLight.direction, poiLight.halfDir));
+ #endif
+
+ poiLight.nDotV = dot(poiMesh.normals[1], poiCam.viewDir);
+ poiLight.N0DotV = dot(poiMesh.normals[0], poiCam.viewDir);
+ poiLight.nDotL = dot(poiMesh.normals[1], poiLight.direction);
+ poiLight.nDotH = dot(poiMesh.normals[1], poiLight.halfDir);
+ poiLight.lDotv = dot(poiLight.direction, poiCam.viewDir);
+ poiLight.lDotH = dot(poiLight.direction, poiLight.halfDir);
+ }
+
+ float3 CreateBinormal(float3 normal, float3 tangent, float binormalSign)
+ {
+ return cross(normal, tangent.xyz) * (binormalSign * unity_WorldTransformParams.w);
+ }
+
+ void InitializeMeshData(inout v2f i, uint facing)
+ {
+ poiMesh.isFrontFace = facing;
+ poiMesh.normals[0] = normalize(i.normal);
+ poiMesh.binormal = CreateBinormal(i.normal, i.tangent.xyz, i.tangent.w);
+ poiMesh.tangent = i.tangent.xyz;
+
+ #ifndef OUTLINE
+ if(!poiMesh.isFrontFace)
+ {
+ poiMesh.normals[0] *= -1;
+ poiMesh.tangent *= -1;
+ poiMesh.binormal *= -1;
+ }
+ #endif
+
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+ poiMesh.barycentricCoordinates = i.barycentricCoordinates;
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ #ifdef POI_UV_DISTORTION
+ poiMesh.uv[4] = calculateDistortionUV(i.uv0.xy);
+ #else
+ poiMesh.uv[4] = poiMesh.uv[0];
+ #endif
+
+ poiMesh.vertexColor = i.vertexColor;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ poiMesh.lightmapUV = i.lightmapUV;
+ #endif
+ poiMesh.modelPos = i.modelPos;
+
+ #ifdef FUR
+ poiMesh.furAlpha = i.furAlpha;
+ #endif
+ }
+
+ void initializeCamera(v2f i)
+ {
+ poiCam.viewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
+ poiCam.forwardDir = getCameraForward();
+ poiCam.worldPos = _WorldSpaceCameraPos;
+ poiCam.distanceToModel = distance(poiMesh.modelPos, poiCam.worldPos);
+ poiCam.distanceToVert = distance(poiMesh.worldPos, poiCam.worldPos);
+ poiCam.grabPos = i.grabPos;
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ poiCam.clipPos = i.pos;
+ #if defined(GRAIN)
+ poiCam.worldDirection = i.worldDirection;
+ #endif
+
+ poiCam.tangentViewDir = normalize(i.tangentViewDir);
+ poiCam.tangentViewDir.xy /= (poiCam.tangentViewDir.z + float(0.42));
+ }
+
+ void calculateTangentData()
+ {
+ poiTData.tangentTransform = float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]);
+ poiTData.tangentToWorld = transpose(float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]));
+ }
+
+ void CalculateReflectionData()
+ {
+ #if defined(_METALLICGLOSSMAP) || defined(_COLORCOLOR_ON)
+ poiCam.reflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[1]);
+ poiCam.vertexReflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[0]);
+ #endif
+ }
+
+ void calculateNormals(inout half3 detailMask)
+ {
+ half3 mainNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_BumpMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ #ifdef FINALPASS
+ detailMask = POI2D_SAMPLER_PAN(_DetailMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(1) > 0)
+ {
+ half3 detailNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_DetailNormalMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1) * detailMask.g);
+ poiMesh.tangentSpaceNormal = BlendNormals(mainNormal, detailNormal);
+ }
+ else
+ {
+ poiMesh.tangentSpaceNormal = mainNormal;
+ }
+ #else
+ poiMesh.tangentSpaceNormal = mainNormal;
+ #endif
+
+ #ifdef POI_RGBMASK
+ calculateRGBNormals(poiMesh.tangentSpaceNormal);
+ #endif
+
+ poiMesh.normals[1] = normalize(
+ poiMesh.tangentSpaceNormal.x * poiMesh.tangent +
+ poiMesh.tangentSpaceNormal.y * poiMesh.binormal +
+ poiMesh.tangentSpaceNormal.z * poiMesh.normals[0]
+ );
+
+ poiCam.viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[1]));
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
new file mode 100644
index 00000000..31083fbe
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: bce70563652461943a8739bdb2085543
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
new file mode 100644
index 00000000..125d2cd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
@@ -0,0 +1,107 @@
+#ifndef POI_DEBUG
+ #define POI_DEBUG
+
+ float _DebugEnabled;
+ float _DebugMeshData;
+ float _DebugLightingData;
+ float _DebugCameraData;
+
+ void displayDebugInfo(inout float4 finalColor)
+ {
+
+ if (float(0) != 0)
+ {
+ //Mesh Data
+ if (float(0) == 1)
+ {
+ finalColor.rgb = poiMesh.normals[0];
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiMesh.normals[1];
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiMesh.tangent;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiMesh.binormal;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiMesh.localPos;
+ return;
+ }
+
+ #ifdef POI_LIGHTING
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiLight.attenuation;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiLight.directLighting;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiLight.indirectLighting;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiLight.lightMap;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiLight.rampedLightMap;
+ return;
+ }
+ else if(float(0) == 6)
+ {
+ finalColor.rgb = poiLight.finalLighting;
+ return;
+ }
+ else if(float(0) == 7)
+ {
+ finalColor.rgb = poiLight.nDotL;
+ return;
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiCam.viewDir;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiCam.tangentViewDir;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiCam.forwardDir;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiCam.worldPos;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiCam.viewDotNormal;
+ return;
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
new file mode 100644
index 00000000..c213cde2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 5d2a0fdd36ec1f84fb3cb5008f825974
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
new file mode 100644
index 00000000..280fcbc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_DECAL
+ #define POI_DECAL
+
+ POI_TEXTURE_NOSAMPLER(_DecalTexture);
+ POI_TEXTURE_NOSAMPLER(_DecalMask);
+ float4 _DecalColor;
+ fixed _DecalTiled;
+ fixed _DecalBlendAdd;
+ fixed _DecalBlendMultiply;
+ fixed _DecalBlendReplace;
+ half _DecalRotation;
+ half2 _DecalScale;
+ half2 _DecalPosition;
+ half _DecalRotationSpeed;
+ float _DecalEmissionStrength;
+
+ void applyDecal(inout float4 albedo, inout float3 decalEmission)
+ {
+ float2 uv = poiMesh.uv[float(0)];
+ float2 decalCenter = float4(0.5,0.5,0,0);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - decalCenter.x) * cs - (uv.y - decalCenter.y) * sn + decalCenter.x, (uv.x - decalCenter.x) * sn + (uv.y - decalCenter.y) * cs + decalCenter.y);
+ uv = remap(uv, float2(0, 0) - float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float2(0, 0), float2(1, 1));
+
+ half decalAlpha = 1;
+ //float2 uv = TRANSFORM_TEX(poiMesh.uv[float(0)], _DecalTexture) + _Time.x * float4(0,0,0,0);
+ float4 decalColor = POI2D_SAMPLER_PAN(_DecalTexture, _MainTex, uv, float4(0,0,0,0)) * float4(1,1,1,1);
+ decalAlpha *= POI2D_SAMPLER_PAN(_DecalMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if (!float(0))
+ {
+ if(uv.x > 1 || uv.y > 1 || uv.x < 0 || uv.y < 0)
+ {
+ decalAlpha = 0;
+ }
+ }
+
+ if(float(0))
+ {
+ albedo.rgb = lerp(albedo.rgb, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb *= lerp(1, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb += decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+ albedo = saturate(albedo);
+ decalEmission = decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
new file mode 100644
index 00000000..b72cdb54
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6b34048692e3b97449628e03f8768ec0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
new file mode 100644
index 00000000..9b70067a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
@@ -0,0 +1,21 @@
+#ifndef POI_DEFINES
+ #define POI_DEFINES
+
+ #define DielectricSpec float4(0.04, 0.04, 0.04, 1.0 - 0.04)
+
+ #ifdef _SPECGLOSSMAP // Specular
+ #ifndef POI_VAR_DOTNH
+ #define POI_VAR_DOTNH
+ #endif
+ #ifndef POI_VAR_DOTLH
+ #define POI_VAR_DOTLH
+ #endif
+ #endif
+
+ #ifdef VIGNETTE_MASKED // Lighting
+ #ifndef POI_VAR_DOTNL
+ #define POI_VAR_DOTNL
+ #endif
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
new file mode 100644
index 00000000..eb66892e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8697972f2b100234f98593c04ba9782b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
new file mode 100644
index 00000000..828460bc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
@@ -0,0 +1,112 @@
+#ifndef POI_DEPTH_COLOR
+ #define POI_DEPTH_COLOR
+
+ float4 _DepthGlowColor;
+ float _DepthGlowEmission;
+ float _FadeLength;
+ float _DepthAlphaMin;
+ float _DepthAlphaMax;
+ POI_TEXTURE_NOSAMPLER(_DepthGradient);
+ POI_TEXTURE_NOSAMPLER(_DepthMask);
+ float _DepthGradientTextureUV;
+ float _DepthGradientBlend;
+
+ /*
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, float4 worldDirection, float4 clipPos)
+ {
+ float3 touchEmission = 0;
+ if (!IsInMirror())
+ {
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+ float depth = DecodeFloatRG(tex2Dproj(_CameraDepthTexture, worldDirection));
+ depth = Linear01Depth(depth);
+ if(depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(clipPos.z));
+ float intersect = 0;
+ if(diff > 0)
+ {
+ intersect = clamp(1 - smoothstep(0, _ProjectionParams.w * fadeLength, diff), 0, 1);
+ }
+ half4 depthGradient = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthGradient, _MainTex, intersect);
+ half3 depthMask = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthMask, _MainTex, poiMesh.uv[0]);
+ half3 depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+ }
+ }
+ depthTouchEmission = touchEmission;
+ }
+ */
+
+ inline float CorrectedLinearEyeDepth(float z, float B)
+ {
+ return 1.0 / (z / PM._34 + B);
+ }
+
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, in float4 worldDirection)
+ {
+ float3 touchEmission = 0;
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+
+ float perspectiveDivide = 1.0f / poiCam.clipPos.w;
+ float4 direction = worldDirection * perspectiveDivide;
+ float2 screenPos = poiCam.grabPos.xy * perspectiveDivide;
+ float z = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, screenPos);
+
+ #if UNITY_REVERSED_Z
+ if (z == 0)
+ #else
+ if(z == 1)
+ #endif
+ return;
+
+ float depth = CorrectedLinearEyeDepth(z, direction.w);
+ float3 worldpos = direction * depth + _WorldSpaceCameraPos.xyz;
+ /*
+ finalColor.rgb = frac(worldpos);
+ return;
+ */
+
+ float diff = distance(worldpos, poiMesh.worldPos);
+ float intersect = 0;
+ intersect = clamp(1 - smoothstep(0, fadeLength, diff), 0, 1);
+ half3 depthMask = POI2D_SAMPLER_PAN(_DepthMask, _MainTex, poiMesh.uv[_DepthMaskUV], _DepthMaskPan);
+
+ half4 depthGradient = 0;
+ half3 depthColor = 0;
+
+
+ if (_DepthGradientTextureUV == 0)
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, float2(intersect, intersect), _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ }
+ else
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, poiMesh.uv[_DepthGradientUV], _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb * intersect;
+ }
+
+
+ if(_DepthGradientBlend == 0) // rpelace
+ {
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ }
+ else if(_DepthGradientBlend == 1) // add
+ {
+ finalColor.rgb += depthColor * intersect * depthMask;
+ }
+ else if(_DepthGradientBlend == 2) // multiply
+ {
+ finalColor.rgb *= lerp(1, depthColor, intersect * depthMask);
+ }
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect * depthMask);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+
+ depthTouchEmission = touchEmission;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
new file mode 100644
index 00000000..80350551
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3d8532ee6031b194aab52de9cee1498f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
new file mode 100644
index 00000000..13175f00
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
@@ -0,0 +1,171 @@
+#ifndef POI_DISSOLVE
+ #define POI_DISSOLVE
+
+ float _DissolveType;
+ float _DissolveEdgeWidth;
+ float4 _DissolveEdgeColor;
+ sampler2D _DissolveEdgeGradient; float4 _DissolveEdgeGradient_ST;
+ float _DissolveEdgeEmission;
+ float4 _DissolveTextureColor;
+
+ POI_TEXTURE_NOSAMPLER(_DissolveToTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveNoiseTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveDetailNoise);
+ POI_TEXTURE_NOSAMPLER(_DissolveMask);
+
+ float _DissolveMaskInvert;
+ float _DissolveAlpha;
+ float _ContinuousDissolve;
+ float _DissolveDetailStrength;
+ float _DissolveEdgeHardness;
+ float _DissolveInvertNoise;
+ float _DissolveInvertDetailNoise;
+ float _DissolveToEmissionStrength;
+
+ // Point to Point
+ float _DissolveP2PWorldLocal;
+ float _DissolveP2PEdgeLength;
+ float4 _DissolveStartPoint;
+ float4 _DissolveEndPoint;
+
+ // World Dissolve
+ float _DissolveWorldShape;
+ float4 _DissolveShapePosition;
+ float4 _DissolveShapeRotation;
+ float _DissolveShapeScale;
+ float _DissolveInvertShape;
+ float _DissolveShapeEdgeLength;
+
+ float _DissolveAlpha0;
+ float _DissolveAlpha1;
+ float _DissolveAlpha2;
+ float _DissolveAlpha3;
+ float _DissolveAlpha4;
+ float _DissolveAlpha5;
+ float _DissolveAlpha6;
+ float _DissolveAlpha7;
+ float _DissolveAlpha8;
+ float _DissolveAlpha9;
+
+ // Masking
+ float _DissolveEmissionSide;
+ float _DissolveEmission1Side;
+ float _DissolveUseVertexColors;
+
+ float4 edgeColor;
+ float edgeAlpha;
+ float dissolveAlpha;
+ float4 dissolveToTexture;
+ //Globals
+
+
+ void calculateDissolve(inout float4 albedo, inout float3 dissolveEmission)
+ {
+
+ float dissolveMask = POI2D_SAMPLER_PAN(_DissolveMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+
+ if (float(0))
+ {
+ // Vertex Color Imprecision hype
+ dissolveMask = ceil(poiMesh.vertexColor.g * 100000) / 100000;
+ }
+
+ dissolveToTexture = POI2D_SAMPLER_PAN(_DissolveToTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ float dissolveNoiseTexture = POI2D_SAMPLER_PAN(_DissolveNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ float da = float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0);
+ da = saturate(da);
+
+ float dds = float(0.1);
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskDissolve != 4)
+ {
+ dissolveMask *= blackLightMask[_BlackLightMaskDissolve];
+ }
+ #endif
+
+ if(float(0))
+ {
+ dissolveMask = 1 - dissolveMask;
+ }
+
+ float dissolveDetailNoise = POI2D_SAMPLER_PAN(_DissolveDetailNoise, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(0))
+ {
+ dissolveNoiseTexture = 1 - dissolveNoiseTexture;
+ }
+ if(float(0))
+ {
+ dissolveDetailNoise = 1 - dissolveDetailNoise;
+ }
+ if(float(0) != 0)
+ {
+ da = sin(_Time.y * float(0)) * .5 + .5;
+ }
+ da *= dissolveMask;
+ dissolveAlpha = da;
+ edgeAlpha = 0;
+
+
+ if(float(1) == 1) // Basic
+ {
+ da = remap(da, 0, 1, -float(0.025), 1);
+ dissolveAlpha = da;
+ //Adjust detail strength to avoid artifacts
+ dds *= smoothstep(1, .99, da);
+ float noise = saturate(dissolveNoiseTexture - dissolveDetailNoise * dds);
+
+ noise = saturate(noise + 0.001);
+ //noise = remap(noise, 0, 1, float(0.025), 1 - float(0.025));
+ dissolveAlpha = dissolveAlpha >= noise;
+ edgeAlpha = remapClamped(noise, da + float(0.025), da, 0, 1) * (1 - dissolveAlpha);
+ }
+ else if (float(1) == 2) // Point to Point
+ {
+ float3 direction;
+ float3 currentPos;
+ float distanceTo = 0;
+ direction = normalize(float4(0,1,0,0) - float4(0,-1,0,0));
+ currentPos = lerp(float4(0,-1,0,0), float4(0,1,0,0), dissolveAlpha);
+ if (float(0) == 0)
+ {
+ distanceTo = dot(poiMesh.localPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ else
+ {
+ distanceTo = dot(poiMesh.worldPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ }
+
+ albedo = lerp(albedo, dissolveToTexture, dissolveAlpha);
+
+
+ if(float(0.025))
+ {
+ edgeColor = tex2D(_DissolveEdgeGradient, TRANSFORM_TEX(float2(edgeAlpha, edgeAlpha), _DissolveEdgeGradient)) * float4(1,1,1,1);
+ albedo.rgb = lerp(albedo.rgb, edgeColor.rgb, smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+ dissolveEmission = lerp(0, dissolveToTexture * float(0), dissolveAlpha) + lerp(0, edgeColor.rgb * float(0), smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
new file mode 100644
index 00000000..77f1f5fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 75a6b83f660cb8d4da80048622c981d1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
new file mode 100644
index 00000000..91efad39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_DITHERING
+ #define POI_DITHERING
+ fixed _DitheringEnabled;
+ fixed _DitherGradient;
+
+ half calcDither(half2 grabPos)
+ {
+ half dither = Dither8x8Bayer(fmod(grabPos.x, 8), fmod(grabPos.y, 8));
+ return dither;
+ }
+
+ #ifndef POI_SHADOW
+ void applyDithering(inout float4 finalColor)
+ {
+
+ if (float(0))
+ {
+ half dither = calcDither(poiCam.screenUV.xy);
+ finalColor.a = finalColor.a - (dither * (1 - finalColor.a) * float(0.1));
+ }
+ }
+ #else
+ void applyShadowDithering(inout float alpha, float2 screenUV)
+ {
+
+ if(float(0))
+ {
+ half dither = calcDither(screenUV);
+ alpha = alpha - (dither * (1 - alpha) * float(0.1));
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
new file mode 100644
index 00000000..cdae7feb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c599899f7e210414db97efe096c38da1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
new file mode 100644
index 00000000..4888c2ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
@@ -0,0 +1,240 @@
+#ifndef POI_EMISSION
+ #define POI_EMISSION
+
+ float4 _EmissionColor;
+ POI_TEXTURE_NOSAMPLER(_EmissionMap);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve); float4 _EmissionScrollingCurve_ST;
+ float _EmissionBaseColorAsMap;
+ float _EmissionStrength;
+ float _EnableEmission;
+ float _EmissionHueShift;
+ float4 _EmissiveScroll_Direction;
+ float _EmissiveScroll_Width;
+ float _EmissiveScroll_Velocity;
+ float _EmissiveScroll_Interval;
+ float _EmissionBlinkingEnabled;
+ float _EmissiveBlink_Min;
+ float _EmissiveBlink_Max;
+ float _EmissiveBlink_Velocity;
+ float _ScrollingEmission;
+ float _EnableGITDEmission;
+ float _GITDEMinEmissionMultiplier;
+ float _GITDEMaxEmissionMultiplier;
+ float _GITDEMinLight;
+ float _GITDEMaxLight;
+ float _GITDEWorldOrMesh;
+ float _EmissionCenterOutEnabled;
+ float _EmissionCenterOutSpeed;
+ float _EmissionHueShiftEnabled;
+ float _EmissionBlinkingOffset;
+ float _EmissionScrollingOffset;
+
+ float4 _EmissionColor1;
+ #ifdef EFFECT_HUE_VARIATION
+ POI_TEXTURE_NOSAMPLER(_EmissionMap1);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask1);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve1); float4 _EmissionScrollingCurve1_ST;
+ #endif
+ float _EmissionBaseColorAsMap1;
+ float _EmissionStrength1;
+ float _EnableEmission1;
+ float _EmissionHueShift1;
+ float4 _EmissiveScroll_Direction1;
+ float _EmissiveScroll_Width1;
+ float _EmissiveScroll_Velocity1;
+ float _EmissiveScroll_Interval1;
+ float _EmissionBlinkingEnabled1;
+ float _EmissiveBlink_Min1;
+ float _EmissiveBlink_Max1;
+ float _EmissiveBlink_Velocity1;
+ float _ScrollingEmission1;
+ float _EnableGITDEmission1;
+ float _GITDEMinEmissionMultiplier1;
+ float _GITDEMaxEmissionMultiplier1;
+ float _GITDEMinLight1;
+ float _GITDEMaxLight1;
+ float _GITDEWorldOrMesh1;
+ float _EmissionCenterOutEnabled1;
+ float _EmissionCenterOutSpeed1;
+ float _EmissionHueShiftEnabled1;
+ float _EmissionBlinkingOffset1;
+ float _EmissionScrollingOffset1;
+
+ float _EmissionReplace;
+
+ float _EmissionScrollingVertexColor;
+ float _EmissionScrollingVertexColor1;
+
+ float _EmissionScrollingUseCurve;
+ float _EmissionScrollingUseCurve1;
+
+ float calculateGlowInTheDark(in float minLight, in float maxLight, in float minEmissionMultiplier, in float maxEmissionMultiplier, in float enabled)
+ {
+ float glowInTheDarkMultiplier = 1;
+
+ if (enabled)
+ {
+ #ifdef POI_LIGHTING
+ float3 lightValue = float(0) ? poiLight.finalLighting.rgb: poiLight.directLighting.rgb;
+ float gitdeAlpha = (clamp(poiMax(lightValue), minLight, maxLight) - minLight) / (maxLight - minLight);
+ glowInTheDarkMultiplier = lerp(minEmissionMultiplier, maxEmissionMultiplier, gitdeAlpha);
+ #endif
+ }
+ return glowInTheDarkMultiplier;
+ }
+
+ float calculateScrollingEmission(in float3 direction, in float velocity, in float interval, in float scrollWidth, float offset, float3 position)
+ {
+ float phase = 0;
+ phase = dot(position, direction);
+ phase -= (_Time.y + offset) * velocity;
+ phase /= interval;
+ phase -= floor(phase);
+ phase = saturate(phase);
+ return(pow(phase, scrollWidth) + pow(1 - phase, scrollWidth * 4)) * 0.5;
+ }
+
+ float calculateBlinkingEmission(in float blinkMin, in float blinkMax, in float blinkVelocity, float offset)
+ {
+ float amplitude = (blinkMax - blinkMin) * 0.5f;
+ float base = blinkMin + amplitude;
+ return sin((_Time.y + offset) * blinkVelocity) * amplitude + base;
+ }
+
+ float3 calculateEmissionNew(in float4 baseColor, inout float4 finalColor)
+ {
+ // First Emission
+ float3 emission0 = 0;
+ float emissionStrength0 = float(0);
+ float3 emissionColor0 = 0;
+
+ float glowInTheDarkMultiplier0 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor0 = POI2D_SAMPLER_PAN(_EmissionMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+ else
+ {
+ emissionColor0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve) + (dot(pos, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength0 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos);
+ }
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor0 = hueShift(emissionColor0, float(0) * float(0));
+ float emissionMask0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask) + _Time.x * float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission != 4)
+ {
+ emissionMask0 *= blackLightMask[_BlackLightMaskEmission];
+ }
+ #endif
+
+ emissionStrength0 *= glowInTheDarkMultiplier0 * emissionMask0;
+ emission0 = emissionStrength0 * emissionColor0;
+
+ #ifdef POI_DISSOLVE
+
+ if(float(2) != 2)
+ {
+ emission0 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+
+ // Second Emission
+ float3 emission1 = 0;
+ float emissionStrength1 = 0;
+ float3 emissionColor1 = 0;
+
+ #ifdef EFFECT_HUE_VARIATION
+ emissionStrength1 = float(0);
+ float glowInTheDarkMultiplier1 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor1 = POI2D_SAMPLER_PAN(_EmissionMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ emissionColor1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap1, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)).rgb * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos1 = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos1 = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength1 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve1) + (dot(pos1, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength1 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos1);
+ }
+ }
+
+ if(float(0))
+ {
+ emissionStrength1 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor1 = hueShift(emissionColor1, float(0) * float(0));
+ float emissionMask1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask1) + _Time.x * float4(0,0,0,0));
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission2 != 4)
+ {
+ emissionMask1 *= blackLightMask[_BlackLightMaskEmission2];
+ }
+ #endif
+ emissionStrength1 *= glowInTheDarkMultiplier1 * emissionMask1;
+ emission1 = emissionStrength1 * emissionColor1;
+
+ #ifdef POI_DISSOLVE
+ if(float(2) != 2)
+ {
+ emission1 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+ #endif
+ finalColor.rgb = lerp(finalColor.rgb, saturate(emissionColor0 + emissionColor1), saturate(emissionStrength0 + emissionStrength1) * float(0) * poiMax(emission0 + emission1));
+
+ return emission0 + emission1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
new file mode 100644
index 00000000..1097a2bf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 69c00d45e5749274182a5cbfa17d418b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
new file mode 100644
index 00000000..1e9188ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
@@ -0,0 +1,43 @@
+#ifndef POI_ENVIRONMENTAL_RIM
+ #define POI_ENVIRONMENTAL_RIM
+
+ //enviro rim
+ float _EnableEnvironmentalRim;
+ POI_TEXTURE_NOSAMPLER(_RimEnviroMask);
+ float _RimEnviroBlur;
+ float _RimEnviroMinBrightness;
+ float _RimEnviroWidth;
+ float _RimEnviroSharpness;
+ float _RimEnviroIntensity;
+
+ float3 calculateEnvironmentalRimLighting(in float4 albedo)
+ {
+ float enviroRimAlpha = saturate(1 - smoothstep(min(float(0), float(0.45)), float(0.45), poiCam.viewDotNormal));
+ float(0.7) *= 1.7 - 0.7 * float(0.7);
+
+ float3 enviroRimColor = 0;
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if (interpolator < 0.99999)
+ {
+ //Probe 1
+ float4 reflectionData0 = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor0 = DecodeHDR(reflectionData0, unity_SpecCube0_HDR);
+
+ //Probe 2
+ float4 reflectionData1 = UNITY_SAMPLE_TEXCUBE_SAMPLER_LOD(unity_SpecCube1, unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor1 = DecodeHDR(reflectionData1, unity_SpecCube1_HDR);
+
+ enviroRimColor = lerp(reflectionColor1, reflectionColor0, interpolator);
+ }
+ else
+ {
+ float4 reflectionData = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ enviroRimColor = DecodeHDR(reflectionData, unity_SpecCube0_HDR);
+ }
+
+ half enviroMask = poiMax(POI2D_SAMPLER_PAN(_RimEnviroMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb);
+ return lerp(0, max(0, (enviroRimColor - float(0)) * albedo.rgb), enviroRimAlpha).rgb * enviroMask * float(1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
new file mode 100644
index 00000000..46ed5e2b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 36524fd51ee640d41998095330bfe2b9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
new file mode 100644
index 00000000..0ed89b59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
@@ -0,0 +1,153 @@
+#ifndef POI_FLIPBOOK
+ #define POI_FLIPBOOK
+
+ UNITY_DECLARE_TEX2DARRAY(_FlipbookTexArray); float4 _FlipbookTexArray_ST;
+ float4 _FlipbookColor;
+ float _FlipbookFPS;
+ float _FlipbookTotalFrames;
+ float4 _FlipbookScaleOffset;
+ float _FlipbookTiled;
+ float _FlipbookCurrentFrame;
+ float _FlipbookEmissionStrength;
+ float _FlipbookRotation;
+ float _EnableFlipbook;
+ float _FlipbookTexArrayUV;
+ float _FlipbookAlphaControlsFinalAlpha;
+ float _FlipbookRotationSpeed;
+ float _FlipbookIntensityControlsAlpha;
+ float _FlipbookColorReplaces;
+ float2 _FlipbookTexArrayPan;
+
+ // blending
+ float _FlipbookReplace;
+ float _FlipbookMultiply;
+ float _FlipbookAdd;
+ POI_TEXTURE_NOSAMPLER(_FlipbookMask);
+
+ // anim
+ float _FlipbookMovementType;
+ float4 _FlipbookStartEndOffset;
+ float _FlipbookMovementSpeed;
+
+ // Global
+ float4 flipBookPixel;
+ float4 flipBookPixelMultiply;
+ float flipBookMask;
+
+ #ifndef POI_SHADOW
+
+ void applyFlipbook(inout float4 finalColor, inout float3 flipbookEmission)
+ {
+ flipBookMask = POI2D_SAMPLER_PAN(_FlipbookMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float2 uv = frac(poiMesh.uv[float(0)]);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ // 2d rotation
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ if (float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipBookPixel = 0;
+ return;
+ }
+ }
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ flipBookPixel = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipBookPixel.a = poiMax(flipBookPixel.rgb);
+ }
+
+ if(float(0))
+ {
+ flipBookPixel.rgb = float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ flipBookPixel.rgb *= float4(1,1,1,1).rgb;
+ }
+
+ #ifdef POI_BLACKLIGHT
+
+ if(_BlackLightMaskFlipbook != 4)
+ {
+ flipBookMask *= blackLightMask[_BlackLightMaskFlipbook];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * float(1) * flipBookMask);
+ finalColor.rgb = finalColor + flipBookPixel.rgb * float(0) * flipBookMask;
+ finalColor.rgb = finalColor * lerp(1, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * flipBookMask * float(0));
+
+
+ if(float(0))
+ {
+ finalColor.a = lerp(finalColor.a, flipBookPixel.a * float4(1,1,1,1).a, flipBookMask);
+ }
+ flipbookEmission = lerp(0, flipBookPixel.rgb * float(0), flipBookPixel.a * float4(1,1,1,1).a * flipBookMask);
+ }
+
+ #else
+
+ float applyFlipbookAlphaToShadow(float2 uv)
+ {
+
+ if(float(0))
+ {
+ float flipbookShadowAlpha = 0;
+
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float theta = radians(float(0));
+
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ half4 flipbookColor = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipbookColor.a = poiMax(flipbookColor.rgb);
+ }
+
+
+ if(float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipbookColor.a = 0;
+ }
+ }
+ return flipbookColor.a * float4(1,1,1,1).a;
+ }
+ return 1;
+ }
+
+ #endif
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
new file mode 100644
index 00000000..36b0126b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 87f2879fa0bfdbc4b8a183facec776b1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
new file mode 100644
index 00000000..aa950e7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
@@ -0,0 +1,376 @@
+#ifndef POIFRAG
+ #define POIFRAG
+
+ float _MainEmissionStrength;
+ float _IgnoreFog;
+ half _GIEmissionMultiplier;
+ float _IridescenceTime;
+ float _AlphaToMask;
+ float _ForceOpaque;
+ float _commentIfZero_EnableGrabpass;
+ float _AlphaPremultiply;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+ float _commentIfZero_LightingAdditiveEnable;
+
+ float4 frag(v2f i, uint facing: SV_IsFrontFace): SV_Target
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if !defined(POI_LIGHTING)
+ return 0;
+ #endif
+ #if defined(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A) && defined(DIRECTIONAL)
+ return 0;
+ #endif
+ #endif
+ #ifdef FORWARD_ADD_PASS
+
+ if (float(1) == 0)
+ {
+ return 0;
+ }
+ #endif
+ UNITY_SETUP_INSTANCE_ID(i);
+ // Color
+ float4 albedo = 1;
+ float4 finalColor = 1;
+
+ // Lighting
+ float bakedCubemap = 0; // Whether or not metallic should run before or after lighting multiplication
+ float3 finalSpecular0 = 0;
+ float3 finalSpecular1 = 0;
+ float3 finalSSS = 0;
+ fixed lightingAlpha = 1;
+ float3 finalEnvironmentalRim = 0;
+
+ // Emissions
+ float3 finalEmission = 0;
+ float3 finalLighting = 1;
+ float3 IridescenceEmission = 0;
+ float3 spawnInEmission = 0;
+ float3 voronoiEmission = 0;
+ float3 matcapEmission = 0;
+ float3 depthTouchEmission = 0;
+ float3 decalEmission = 0;
+ float3 glitterEmission = 0;
+ float3 panosphereEmission = 0;
+ float3 backFaceEmission = 0;
+ float3 dissolveEmission = 0;
+ float3 rimLightEmission = 0;
+ float3 flipbookEmission = 0;
+ float3 textOverlayEmission = 0;
+ float3 videoEmission = 0;
+ /**********************************************************************
+ Initialize the base data that's needed everywhere else in the shader
+ **********************************************************************/
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+
+ #ifdef POI_BLACKLIGHT
+ createBlackLightMask();
+
+ if (_BlackLightMaskDebug)
+ {
+ return float4(blackLightMask.rgb, 1);
+ }
+ #endif
+
+ // This has to happen in the initializbecause it alters UV data globally
+ #ifdef POI_PARALLAX
+ calculateandApplyParallax();
+ #endif
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+ calculateVertexLightingData(i);
+ /**********************************************************************
+ Calculate Light Maps
+ **********************************************************************/
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ /**********************************************************************
+ Calculate Color Data
+ **********************************************************************/
+
+ initTextureData(albedo, mainTexture, backFaceEmission, dissolveEmission, detailMask);
+
+ #ifdef POI_DECAL
+ applyDecal(albedo, decalEmission);
+ #endif
+
+
+ #ifdef POI_IRIDESCENCE
+
+ if (_IridescenceTime == 0)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VORONOI
+ applyVoronoi(albedo, voronoiEmission);
+ #endif
+
+ #ifdef POI_MSDF
+ ApplyTextOverlayColor(albedo, textOverlayEmission);
+ #endif
+
+ #ifdef POI_ENVIRONMENTAL_RIM
+ finalEnvironmentalRim = calculateEnvironmentalRimLighting(albedo);
+ #endif
+
+ #if defined(POI_METAL) || defined(POI_CLEARCOAT)
+ CalculateReflectionData();
+ #endif
+
+ #ifdef POI_DATA
+ distanceFade(albedo);
+ #endif
+
+ #ifdef POI_RANDOM
+ albedo.a *= i.angleAlpha;
+ #endif
+
+ #ifdef MATCAP
+ applyMatcap(albedo, matcapEmission);
+ #endif
+
+ #ifdef PANOSPHERE
+ applyPanosphereColor(albedo, panosphereEmission);
+ #endif
+
+ #ifdef POI_FLIPBOOK
+ applyFlipbook(albedo, flipbookEmission);
+ #endif
+
+ #ifdef POI_GLITTER
+ applyGlitter(albedo, glitterEmission);
+ #endif
+
+ #ifdef POI_RIM
+ applyRimLighting(albedo, rimLightEmission);
+ #endif
+
+ #ifdef POI_DEPTH_COLOR
+ applyDepthColor(albedo, depthTouchEmission, finalEmission, i.worldDirection);
+ #endif
+
+ #ifdef POI_IRIDESCENCE
+
+ if(_IridescenceTime == 1)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VIDEO
+ applyScreenEffect(albedo, videoEmission);
+ #endif
+
+ applySpawnIn(albedo, spawnInEmission, poiMesh.uv[0], poiMesh.localPos);
+
+ /**********************************************************************
+ Handle a few alpha options
+ **********************************************************************/
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 0)
+ {
+ applyDithering(albedo);
+ }
+ }
+
+ albedo.a = max(float(0), albedo.a);
+
+
+ if(float(0) >= 1)
+ {
+ clip(albedo.a - float(0.5));
+ }
+
+
+ if(float(0))
+ {
+ albedo.rgb *= saturate(albedo.a + 0.0000000001);
+ }
+
+ /**********************************************************************
+ Lighting Time :)
+ **********************************************************************/
+
+ #ifdef POI_LIGHTING
+ finalLighting = calculateFinalLighting(albedo.rgb, finalColor);
+
+ #ifdef SUBSURFACE
+ finalSSS = calculateSubsurfaceScattering();
+ #endif
+ #endif
+
+ float4 finalColorBeforeLighting = albedo;
+ finalColor = finalColorBeforeLighting;
+
+ #ifdef POI_SPECULAR
+ finalSpecular0 = calculateSpecular(finalColorBeforeLighting);
+ #endif
+ #ifdef POI_PARALLAX
+ calculateAndApplyInternalParallax(finalColor);
+ #endif
+
+ #ifdef POI_ALPHA_TO_COVERAGE
+ ApplyAlphaToCoverage(finalColor);
+ #endif
+
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 1)
+ {
+ applyDithering(finalColor);
+ }
+ }
+
+ #ifdef POI_METAL
+ calculateMetallicness();
+ bool probeExists = shouldMetalHappenBeforeLighting();
+
+ if(!probeExists)
+ {
+ ApplyMetallicsFake(finalColor, albedo);
+ }
+ #endif
+
+ #ifdef POI_LIGHTING
+ #if defined(FORWARD_ADD_PASS) && defined(POI_METAL)
+ finalLighting *= 1 - metalicMap;
+ #endif
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ finalColor.rgb *= finalLighting + poiLight.vFinalLighting;
+ #else
+ finalColor.rgb *= finalLighting;
+ #endif
+
+ #ifdef POI_METAL
+
+ if(probeExists)
+ {
+ ApplyMetallics(finalColor, albedo);
+ }
+ #endif
+
+ finalColor.rgb += finalSpecular0 + finalEnvironmentalRim + finalSSS;
+
+ #ifdef FORWARD_BASE_PASS
+ #ifdef POI_CLEARCOAT
+ calculateAndApplyClearCoat(finalColor);
+ #endif
+ #endif
+
+ finalColor.a = saturate(finalColor.a);
+
+ /**********************************************************************
+ Add Up all the emission values :D
+ **********************************************************************/
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ finalEmission += finalColorBeforeLighting.rgb * float(0) * albedo.a;
+ finalEmission += wireframeEmission;
+ finalEmission += IridescenceEmission;
+ finalEmission += spawnInEmission;
+ finalEmission += voronoiEmission;
+ finalEmission += matcapEmission;
+ finalEmission += depthTouchEmission;
+ finalEmission += decalEmission;
+ finalEmission += glitterEmission;
+ finalEmission += panosphereEmission;
+ finalEmission += backFaceEmission;
+ finalEmission += rimLightEmission;
+ finalEmission += flipbookEmission;
+ finalEmission += videoEmission;
+ finalEmission += textOverlayEmission;
+ finalEmission += dissolveEmission;
+ #ifdef POI_EMISSION
+ finalEmission += calculateEmissionNew(finalColorBeforeLighting, finalColor);
+ #endif
+ #endif
+
+ /**********************************************************************
+ Meta Pass Hype :D
+ **********************************************************************/
+ #ifdef POI_META_PASS
+ UnityMetaInput meta;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, meta);
+ meta.Emission = finalEmission * float(1);
+ meta.Albedo = saturate(finalColor.rgb);
+ #ifdef POI_SPECULAR
+ meta.SpecularColor = poiLight.color.rgb * float4(1,1,1,1).rgb * lerp(1, albedo.rgb, float(0)) * float4(1,1,1,1).a;
+ #else
+ meta.SpecularColor = poiLight.color.rgb * albedo.rgb;
+ #endif
+ return UnityMetaFragment(meta);
+ #endif
+
+ /**********************************************************************
+ Apply Emission to finalColor
+ **********************************************************************/
+ finalColor.rgb += finalEmission;
+
+ /**********************************************************************
+ Grabpass features
+ **********************************************************************/
+
+
+ if (_commentIfZero_EnableGrabpass)
+ {
+ applyGrabEffects(finalColor);
+ }
+
+ /**********************************************************************
+ Unity Fog
+ **********************************************************************/
+ #ifdef FORWARD_BASE_PASS
+
+ if (float(0) == 0)
+ {
+ UNITY_APPLY_FOG(i.fogCoord, finalColor);
+ }
+ #endif
+
+ #ifdef FORWARD_ADD_PASS
+ if(float(0) > 0)
+ {
+ finalColor.rgb *= finalColor.a;
+ }
+ #endif
+
+
+ if(float(0) == 0)
+ {
+ finalColor.a = 1;
+ }
+
+ #ifdef FORWARD_ADD_PASS
+ //finalColor.rgb = smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5));
+ #endif
+
+ #ifdef POI_DEBUG
+ displayDebugInfo(finalColor);
+ #endif
+
+ //finalColor.rgb = frac(finalColor.rgb);
+ return finalColor;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
new file mode 100644
index 00000000..549dc13f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d08b04880ffea524590df7aa92343a7e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
new file mode 100644
index 00000000..8d260cdf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_FUR
+ #define POI_FUR
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurTexture); float4 _FurTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurHeightMap); float4 _FurHeightMap_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurMask); float4 _FurMask_ST;
+ float _FurAO;
+ float4 _FurColor;
+ float _FurLayers;
+ float _FurMinDistance;
+ float _FurMaxDistance;
+ float _FurHeightMapMin;
+ float _FurHeightMapMax;
+ float _FurDebug;
+ float _AoRampMin;
+ float _AoRampMax;
+ float _FurTipAlpha;
+ float _FurFadeStart;
+
+ //globals
+ half furHeightMap;
+ half furMask;
+
+ void calculateFur()
+ {
+
+ furHeightMap = UNITY_SAMPLE_TEX2D_SAMPLER(_FurHeightMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurHeightMap)).x;
+ furHeightMap = remap(furHeightMap, 0, _FurHeightMapMax, _FurHeightMapMin, 1);
+ furMask = poiMax(UNITY_SAMPLE_TEX2D_SAMPLER(_FurMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurMask)).xyz);
+ half3 furTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_FurTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurTexture));
+ clip(furHeightMap - poiMesh.furAlpha);
+ clip(furMask - poiMesh.furAlpha);
+
+ albedo.rgb = lerp(mainTexture.rgb, furTexture.rgb * _FurColor.rgb, ceil(poiMesh.furAlpha));
+ float aoRampMax = _AoRampMax - (1 - furMask);
+ albedo.rgb *= lerp(1, smoothstep(_AoRampMin, aoRampMax, furHeightMap), _FurAO);
+
+ albedo.a *= smoothstep(1.01, _FurTipAlpha, remapClamped(poiMesh.furAlpha, _FurFadeStart, 1, 0, 1)) + float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
new file mode 100644
index 00000000..7daf55a2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 466b5ecc05875544892fc1fa5bc25b50
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
new file mode 100644
index 00000000..032f3b08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
@@ -0,0 +1,37 @@
+float _FurLength;
+float _FurGravityStrength;
+
+[instance(4)]
+[maxvertexcount(20)]
+void geomFur(triangle v2f IN[3], inout TriangleStream < v2f > tristream, uint InstanceID : SV_GSInstanceID)
+{
+ float4 fur_worldPos[3];
+ v2f o_fur[3];
+ float3 offset = (float3(0, -1, 0) * (_FurLength*.9) *_FurGravityStrength);
+
+ for (int i = 0; i < 3; i++)
+ {
+ if (InstanceID == 0) {
+ IN[i].furAlpha = 0;
+ tristream.Append(IN[i]);
+ }
+ o_fur[i] = IN[i];
+ fur_worldPos[i] = float4(IN[i].worldPos + IN[i].normal * _FurLength, 1);
+ }
+ if (InstanceID == 0) {
+ tristream.RestartStrip();
+ }
+ int Total_FurLayers = clamp(floor(_FurLayers * (1 - smoothstep(_FurMinDistance, _FurMaxDistance, distance(IN[0].worldPos, getCameraPosition())))), min(1, _FurLayers), _FurLayers);
+
+ int startLayer = max(int(InstanceID) * 6 - 1, 0);
+ for (int layer = startLayer; layer < Total_FurLayers; layer++) {
+ for (int i = 0; i < 3; i++) {
+ o_fur[i].furAlpha = float(layer) / Total_FurLayers;
+ o_fur[i].worldPos = float4(lerp(IN[i].worldPos, fur_worldPos[i] + offset * o_fur[i].furAlpha, o_fur[i].furAlpha),1);
+ o_fur[i].pos = UnityWorldToClipPos(o_fur[i].worldPos);
+ o_fur[i].furAlpha += .01;
+ tristream.Append(o_fur[i]);
+ }
+ tristream.RestartStrip();
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
new file mode 100644
index 00000000..1bf609e7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a9f57ed931ed6eb4c9b70f0154b452db
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
new file mode 100644
index 00000000..e31b6498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
@@ -0,0 +1,232 @@
+#ifndef POI_GLITTER
+ #define POI_GLITTER
+
+ half3 _GlitterColor;
+ POI_TEXTURE_NOSAMPLER(_GlitterMask);
+ float2 _GlitterPan;
+ POI_TEXTURE_NOSAMPLER(_GlitterColorMap);
+ POI_TEXTURE_NOSAMPLER(_GlitterTexture);
+ half _GlitterSpeed;
+ half _GlitterBrightness;
+ float _GlitterFrequency;
+ float _GlitterJitter;
+ half _GlitterSize;
+ half _GlitterContrast;
+ half _GlitterAngleRange;
+ half _GlitterMinBrightness;
+ half _GlitterBias;
+ float _GlitterRandomColors;
+ float2 _GlitterMinMaxSaturation;
+ float2 _GlitterMinMaxBrightness;
+ fixed _GlitterUseSurfaceColor;
+ float _GlitterBlendType;
+ float _GlitterMode;
+ float _GlitterShape;
+ float _GlitterCenterSize;
+ float _glitterFrequencyLinearEmissive;
+ float _GlitterJaggyFix;
+ float _GlitterRandomRotation;
+ float _GlitterTextureRotation;
+ float4 _GlitterMinMaxSize;
+ float _GlitterRandomSize;
+
+
+ float3 randomFloat3(float2 Seed, float maximum)
+ {
+ return(.5 + float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed), float2(12.9898, 78.233))) * 43758.5453)
+ ) * .5) * (maximum);
+ }
+
+ float3 randomFloat3Range(float2 Seed, float Range)
+ {
+ return(float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1) * Range;
+ }
+
+ float3 randomFloat3WiggleRange(float2 Seed, float Range)
+ {
+ float3 rando = (float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1);
+ float speed = 1 + float(10);
+ return float3(sin((_Time.x + rando.x * pi) * speed), sin((_Time.x + rando.y * pi) * speed), sin((_Time.x + rando.z * pi) * speed)) * Range;
+ }
+
+ void Unity_RandomRange_float(float2 Seed, float Min, float Max, out float Out)
+ {
+ float randomno = frac(sin(dot(Seed, float2(12.9898, 78.233))) * 43758.5453);
+ Out = lerp(Min, Max, randomno);
+ }
+
+ float3 RandomColorFromPoint(float2 rando)
+ {
+ fixed hue = random2(rando.x + rando.y).x;
+ fixed saturation = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.x);
+ fixed value = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.y);
+ float3 hsv = float3(hue, saturation, value);
+ return HSVtoRGB(hsv);
+ }
+
+ void applyGlitter(inout float4 albedo, inout float3 glitterEmission)
+ {
+
+
+ // Scale
+ float2 st = poiMesh.uv[0] * float(300);
+
+ // Tile the space
+ float2 i_st = floor(st);
+ float2 f_st = frac(st);
+
+ float m_dist = 10.; // minimun distance
+ float2 m_point = 0; // minimum point
+ float2 randoPoint = 0;
+ float2 dank;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 neighbor = float2(i, j);
+ float2 pos = random2(i_st + neighbor);
+ float2 rando = pos;
+ pos = 0.5 + 0.5 * sin(float(1) * 6.2831 * pos);
+ float2 diff = neighbor + pos - f_st;
+ float dist = length(diff);
+
+ if (dist < m_dist)
+ {
+ dank = diff;
+ m_dist = dist;
+ m_point = pos;
+ randoPoint = rando;
+ }
+ }
+ }
+
+ float randomFromPoint = random(randoPoint);
+
+ float size = float(0.3);
+
+ if(float(0))
+ {
+ size = remapClamped(randomFromPoint, 0, 1, float4(0.1,0.5,0,1).x, float4(0.1,0.5,0,1).y);
+ }
+
+
+ // Assign a color using the closest point position
+ //color += dot(m_point, float2(.3, .6));
+
+ // Add distance field to closest point center
+ // color.g = m_dist;
+
+ // Show isolines
+ //color -= abs(sin(40.0 * m_dist)) * 0.07;
+
+ // Draw cell center
+ half glitterAlpha = 1;
+ switch(float(0))
+ {
+ case 0: //circle
+ glitterAlpha = (1. - step(size, m_dist));
+ break;
+ case 1: //sqaure
+ float jaggyFix = pow(poiCam.distanceToVert, 2) * float(0);
+
+
+ if (float(0))
+ {
+ float2 center = float2(0, 0);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ dank = float2((dank.x - center.x) * cs - (dank.y - center.y) * sn + center.x, (dank.x - center.x) * sn + (dank.y - center.y) * cs + center.y);
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ else
+ {
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ break;
+ }
+
+ float3 finalGlitter = 0;
+
+ switch(float(0))
+ {
+ case 0:
+ float3 randomRotation = 0;
+
+ if(float(10) > 0)
+ {
+ randomRotation = randomFloat3WiggleRange(randoPoint, float(90));
+ }
+ else
+ {
+ randomRotation = randomFloat3Range(randoPoint, float(90));
+ }
+ float3 norm = poiMesh.normals[0];
+
+ float3 glitterReflectionDirection = normalize(mul(poiRotationMatrixFromAngles(randomRotation), norm));
+ finalGlitter = lerp(0, float(0) * glitterAlpha, glitterAlpha) + max(pow(saturate(dot(lerp(glitterReflectionDirection, poiCam.viewDir, float(0.8)), poiCam.viewDir)), float(300)), 0);
+ finalGlitter *= glitterAlpha;
+ break;
+ case 1:
+ float offset = random(randoPoint);
+ float brightness = sin((_Time.x + offset) * float(10)) * float(20) - (float(20) - 1);
+ finalGlitter = max(float(0) * glitterAlpha, brightness * glitterAlpha * smoothstep(0, 1, 1 - m_dist * float(0.08) * 10));
+ break;
+ }
+
+
+ half3 glitterColor = float4(1,1,1,1);
+ glitterColor *= lerp(1, albedo, float(0));
+ glitterColor *= POI2D_SAMPLER_PAN(_GlitterColorMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+
+ float2 uv = remapClamped(dank, -size, size, 0, 1);
+
+ if(float(0) && !float(0))
+ {
+ float2 fakeUVCenter = float2(.5, .5);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - fakeUVCenter.x) * cs - (uv.y - fakeUVCenter.y) * sn + fakeUVCenter.x, (uv.x - fakeUVCenter.x) * sn + (uv.y - fakeUVCenter.y) * cs + fakeUVCenter.y);
+ }
+ float4 glitterTexture = POI2D_SAMPLER_PAN(_GlitterTexture, _MainTex, uv, float4(0,0,0,0));
+ //float4 glitterTexture = _GlitterTexture.SampleGrad(sampler_MainTex, frac(uv), ddx(uv), ddy(uv));
+ glitterColor *= glitterTexture.rgb;
+ float glitterMask = POI2D_SAMPLER_PAN(_GlitterMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskGlitter != 4)
+ {
+ glitterMask *= blackLightMask[_BlackLightMaskGlitter];
+ }
+ #endif
+
+ if(float(0))
+ {
+ glitterColor *= RandomColorFromPoint(random2(randoPoint.x + randoPoint.y));
+ }
+
+
+ if(float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, finalGlitter * glitterColor * float(3), finalGlitter * glitterTexture.a * glitterMask);
+ glitterEmission = finalGlitter * glitterColor * max(0, (float(3) - 1) * glitterTexture.a) * glitterMask;
+ }
+ else
+ {
+ glitterEmission = finalGlitter * glitterColor * float(3) * glitterTexture.a * glitterMask;
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
new file mode 100644
index 00000000..661f717c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 720fcc6bbd68d9548a9efcff7fef83ea
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
new file mode 100644
index 00000000..060cb720
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
@@ -0,0 +1,127 @@
+#ifndef POI_GRAB
+ #define POI_GRAB
+
+ float _RefractionIndex;
+ float _RefractionOpacity;
+ float _RefractionChromaticAberattion;
+ float _RefractionEnabled;
+ float _GrabSrcBlend;
+ float _GrabDstBlend;
+ float _GrabPassUseAlpha;
+ float _GrabPassBlendFactor;
+ float _GrabBlurDistance;
+ float _GrabBlurQuality;
+ float _GrabBlurDirections;
+ POI_TEXTURE_NOSAMPLER(_GrabPassBlendMap);
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RefractionOpacityMask); float4 _RefractionOpacityMask_ST;
+
+ float4 blur(float2 uv)
+ {
+ float two_pi = 6.28318530718;
+
+ float2 radius = _GrabBlurDistance / _ScreenParams.xy * 100; // Arbitrary constant to match old blur
+ float quality = floor(_GrabBlurQuality);
+ float directions = floor(_GrabBlurDirections);
+
+ // Pixel colour
+ float4 color = tex2D(_PoiGrab, uv);
+
+ float deltaAngle = two_pi / directions;
+ float deltaQuality = 1.0 / quality;
+ for (int i = 0; i < directions; i ++)
+ {
+ for (int j = 0; j < quality; j ++)
+ {
+ float angle = deltaAngle * i + j;
+ float offset = deltaQuality * (j + 1);
+ color += tex2D(_PoiGrab, uv + float2(cos(angle), sin(angle)) * radius * offset);
+ }
+ }
+
+ // Output to screen
+ color /= quality * directions + 1;
+ return color;
+ }
+
+ inline float4 Refraction(float indexOfRefraction, float chromaticAberration, float2 projectedGrabPos)
+ {
+ float4 refractionColor;
+ float3 worldViewDir = normalize(UnityWorldSpaceViewDir(poiMesh.worldPos));
+ float3 refractionOffset = ((((indexOfRefraction - 1.0) * mul(UNITY_MATRIX_V, float4(poiMesh.normals[1], 0.0))) * (1.0 / (poiCam.grabPos.z + 1.0))) * (1.0 - dot(poiMesh.normals[1], worldViewDir)));
+ float2 cameraRefraction = float2(refractionOffset.x, - (refractionOffset.y * _ProjectionParams.x));
+
+
+ if (_RefractionChromaticAberattion > 0)
+ {
+ float4 redAlpha = tex2D(_PoiGrab, (projectedGrabPos + cameraRefraction));
+ float green = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 - chromaticAberration)))).g;
+ float blue = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 + chromaticAberration)))).b;
+ refractionColor = float4(redAlpha.r, green, blue, redAlpha.a);
+ }
+ else
+ {
+ float2 refractedGrab = projectedGrabPos + cameraRefraction;
+
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refractionColor = blur(refractedGrab);
+ #else
+ refractionColor = tex2D(_PoiGrab, (refractedGrab));
+ #endif
+ }
+ return refractionColor;
+ }
+
+ void calculateRefraction(float2 projectedGrabPos, inout float4 finalColor)
+ {
+ float3 refraction = 1;
+
+ if(_RefractionEnabled == 1)
+ {
+ refraction = Refraction(_RefractionIndex, _RefractionChromaticAberattion, projectedGrabPos).rgb;
+ }
+ else
+ {
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refraction = blur(projectedGrabPos);
+ #else
+ refraction = tex2Dproj(_PoiGrab, poiCam.grabPos);
+ #endif
+ }
+
+ float blendFactor = _GrabPassBlendFactor * POI2D_SAMPLER_PAN(_GrabPassBlendMap, _MainTex, poiMesh.uv[_GrabPassBlendMapUV], _GrabPassBlendMapPan).r;
+
+ if(_GrabPassUseAlpha)
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor * (1 - finalColor.a));
+ finalColor.a = 1;
+ }
+ else
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor);
+ }
+ }
+
+ float2 calculateGrabPosition()
+ {
+ float4 grabPos = poiCam.grabPos;
+ #if UNITY_UV_STARTS_AT_TOP
+ float scale = -1.0;
+ #else
+ float scale = 1.0;
+ #endif
+ float halfPosW = grabPos.w * 0.5;
+ grabPos.y = (grabPos.y - halfPosW) * _ProjectionParams.x * scale + halfPosW;
+ #if SHADER_API_D3D9 || SHADER_API_D3D11
+ grabPos.w += 0.00000000001;
+ #endif
+ return(grabPos / grabPos.w).xy;
+ }
+
+ void applyGrabEffects(inout float4 finalColor)
+ {
+ float2 projectedGrabPos = calculateGrabPosition();
+ calculateRefraction(projectedGrabPos, finalColor);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
new file mode 100644
index 00000000..ed09b70e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ab8ad20fa329b5a438fe2765a076a373
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
new file mode 100644
index 00000000..9ae9e754
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
@@ -0,0 +1,338 @@
+#ifndef POI_HELPER
+ #define POI_HELPER
+
+ #include "CGI_PoiColors.cginc"
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float linearSin(float x)
+ {
+ return pow(min(cos(pi * x / 2.0), 1.0 - abs(x)), 1.0);
+ }
+
+ float random(float2 p)
+ {
+ return frac(sin(dot(p, float2(12.9898, 78.2383))) * 43758.5453123);
+ }
+
+ float2 random2(float2 p)
+ {
+ return frac(sin(float2(dot(p, float2(127.1, 311.7)), dot(p, float2(269.5, 183.3)))) * 43758.5453);
+ }
+
+ float3 random3(float3 p)
+ {
+ return frac(sin(float3(dot(p, float3(127.1, 311.7, 248.6)), dot(p, float3(269.5, 183.3, 423.3)), dot(p, float3(248.3, 315.9, 184.2)))) * 43758.5453);
+ }
+
+ float3 mod(float3 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+ float2 mod(float2 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+
+ //1/7
+ #define K 0.142857142857
+ //3/7
+ #define Ko 0.428571428571
+
+ // Permutation polynomial: (34x^2 + x) mod 289
+ float3 Permutation(float3 x)
+ {
+ return mod((34.0 * x + 1.0) * x, 289.0);
+ }
+
+ bool IsInMirror()
+ {
+ return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f;
+ }
+
+ float3 BoxProjection(float3 direction, float3 position, float4 cubemapPosition, float3 boxMin, float3 boxMax)
+ {
+ #if UNITY_SPECCUBE_BOX_PROJECTION
+
+ if (cubemapPosition.w > 0)
+ {
+ float3 factors = ((direction > 0 ? boxMax: boxMin) - position) / direction;
+ float scalar = min(min(factors.x, factors.y), factors.z);
+ direction = direction * scalar + (position - cubemapPosition);
+ }
+ #endif
+ return direction;
+ }
+
+ // Camera
+ float3 getCameraPosition()
+ {
+ #ifdef USING_STEREO_MATRICES
+ return lerp(unity_StereoWorldSpaceCameraPos[0], unity_StereoWorldSpaceCameraPos[1], 0.5);
+ #endif
+ return _WorldSpaceCameraPos;
+ }
+
+ float3 getCameraForward()
+ {
+ #if UNITY_SINGLE_PASS_STEREO
+ float3 p1 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 0, 1));
+ #else
+ float3 p1 = mul(unity_CameraToWorld, float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_CameraToWorld, float4(0, 0, 0, 1));
+ #endif
+ return normalize(p2 - p1);
+ }
+
+ float3 grayscale_vector_node()
+ {
+ return float3(0, 0.3823529, 0.01845836);
+ }
+
+ float3 grayscale_for_light()
+ {
+ return float3(0.298912, 0.586611, 0.114478);
+ }
+
+ //Math Operators
+
+ float remap(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float2 remap(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float3 remap(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float4 remap(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float remapClamped(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float2 remapClamped(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float3 remapClamped(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float4 remapClamped(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float poiMax(float2 i)
+ {
+ return max(i.x, i.y);
+ }
+
+ float poiMax(float3 i)
+ {
+ return max(max(i.x, i.y), i.z);
+ }
+
+ float poiMax(float4 i)
+ {
+ return max(max(max(i.x, i.y), i.z), i.w);
+ }
+
+ float4x4 poiAngleAxisRotationMatrix(float angle, float3 axis)
+ {
+ axis = normalize(axis);
+ float s = sin(angle);
+ float c = cos(angle);
+ float oc = 1.0 - c;
+
+ return float4x4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
+ oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
+ oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
+ 0.0, 0.0, 0.0, 1.0);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float x, float y, float z)
+ {
+ float angleX = radians(x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float3 angles)
+ {
+ float angleX = radians(angles.x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(angles.y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(angles.z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+#endif
+
+half2 calcScreenUVs(half4 grabPos)
+{
+ half2 uv = grabPos / (grabPos.w + 0.0000000001);
+ #if UNITY_SINGLE_PASS_STEREO
+ uv.xy *= half2(_ScreenParams.x * 2, _ScreenParams.y);
+ #else
+ uv.xy *= _ScreenParams.xy;
+ #endif
+
+ return uv;
+}
+
+float inverseLerp(float A, float B, float T)
+{
+ return(T - A) / (B - A);
+}
+
+float inverseLerp2(float2 a, float2 b, float2 value)
+{
+ float2 AB = b - a;
+ float2 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp3(float3 a, float3 b, float3 value)
+{
+ float3 AB = b - a;
+ float3 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp4(float4 a, float4 b, float4 value)
+{
+ float4 AB = b - a;
+ float4 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+// Dithering
+inline half Dither8x8Bayer(int x, int y)
+{
+ const half dither[ 64 ] = {
+ 1, 49, 13, 61, 4, 52, 16, 64,
+ 33, 17, 45, 29, 36, 20, 48, 32,
+ 9, 57, 5, 53, 12, 60, 8, 56,
+ 41, 25, 37, 21, 44, 28, 40, 24,
+ 3, 51, 15, 63, 2, 50, 14, 62,
+ 35, 19, 47, 31, 34, 18, 46, 30,
+ 11, 59, 7, 55, 10, 58, 6, 54,
+ 43, 27, 39, 23, 42, 26, 38, 22
+ };
+ int r = y * 8 + x;
+ return dither[r] / 64;
+}
+
+// UV Manipulation
+float2 TransformUV(half2 offset, half rotation, half2 scale, float2 uv)
+{
+ float theta = radians(rotation);
+ scale = 1 - scale;
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 centerPoint = offset + .5;
+ uv = float2((uv.x - centerPoint.x) * cs - (uv.y - centerPoint.y) * sn + centerPoint.x, (uv.x - centerPoint.x) * sn + (uv.y - centerPoint.y) * cs + centerPoint.y);
+
+ return remap(uv, float2(0, 0) + offset + (scale * .5), float2(1, 1) + offset - (scale * .5), float2(0, 0), float2(1, 1));
+}
+
+bool isVR()
+{
+ // USING_STEREO_MATRICES
+ #if UNITY_SINGLE_PASS_STEREO
+ return true;
+ #else
+ return false;
+ #endif
+}
+
+bool isVRHandCamera()
+{
+ return !isVR() && abs(UNITY_MATRIX_V[0].y) > 0.0000005;
+}
+
+bool isDesktop()
+{
+ return !isVRHandCamera();
+}
+
+bool isVRHandCameraPreview()
+{
+ return isVRHandCamera() && _ScreenParams.y == 720;
+}
+
+bool isVRHandCameraPicture()
+{
+ return isVRHandCamera() && _ScreenParams.y == 1080;
+}
+
+bool isPanorama()
+{
+ // Crude method
+ // FOV=90=camproj=[1][1]
+ return unity_CameraProjection[1][1] == 1 && _ScreenParams.x == 1075 && _ScreenParams.y == 1025;
+}
+
+float3 calculateluminance(float3 color)
+{
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
new file mode 100644
index 00000000..e0e9be4c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 5d150d3b0cce78c43872567838a1d99d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
new file mode 100644
index 00000000..6ee66d3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
@@ -0,0 +1,36 @@
+#ifndef POI_HOLOGRAM
+ #define POI_HOLOGRAM
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_HoloAlphaMap); float4 _HoloAlphaMap_ST;
+ float _HoloCoordinateSpace; // 0 World, 1 Local, 2 UV
+ float3 _HoloDirection;
+ float _HoloScrollSpeed;
+ float _HoloLineDensity;
+
+ fixed _HoloFresnelAlpha;
+ fixed _HoloRimSharpness;
+ fixed _HoloRimWidth;
+ void ApplyHoloAlpha(inout float4 color)
+ {
+ float uv = 0;
+
+ if (_HoloCoordinateSpace == 0)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.worldPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 1)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.localPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 2)
+ {
+ uv = dot(_HoloDirection, poiMesh.uv[0] * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+ float holoRim = saturate(1 - smoothstep(min(_HoloRimSharpness, _HoloRimWidth), _HoloRimWidth, poiCam.viewDotNormal));
+ holoRim = abs(lerp(1, holoRim, _HoloFresnelAlpha));
+ color.a *= UNITY_SAMPLE_TEX2D_SAMPLER(_HoloAlphaMap, _MainTex, uv).r * holoRim;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
new file mode 100644
index 00000000..83a206a2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 088ee396e92284b489cf26c323ccf673
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
new file mode 100644
index 00000000..bcea8ccc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
@@ -0,0 +1,61 @@
+#ifndef POI_IRIDESCENCE
+ #define POI_IRIDESCENCE
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceRamp); float4 _IridescenceRamp_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceMask); float4 _IridescenceMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceNormalMap); float4 _IridescenceNormalMap_ST;
+ float _IridescenceNormalUV;
+ float _IridescenceMaskUV;
+ float _IridescenceNormalSelection;
+ float _IridescenceNormalIntensity;
+ float _IridescenceNormalToggle;
+ float _IridescenceIntensity;
+ fixed _IridescenceAddBlend;
+ fixed _IridescenceReplaceBlend;
+ fixed _IridescenceMultiplyBlend;
+ float _IridescenceEmissionStrength;
+
+ //global
+
+ float3 calculateNormal(float3 baseNormal)
+ {
+ float3 normal = UnpackScaleNormal(UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceNormalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceNormalUV], _IridescenceNormalMap)), _IridescenceNormalIntensity);
+ return normalize(
+ normal.x * poiMesh.tangent +
+ normal.y * poiMesh.binormal +
+ normal.z * baseNormal
+ );
+ }
+
+ void applyIridescence(inout float4 albedo, inout float3 IridescenceEmission)
+ {
+ float3 normal = poiMesh.normals[_IridescenceNormalSelection];
+
+ // Use custom normal map
+
+ if (_IridescenceNormalToggle)
+ {
+ normal = calculateNormal(normal);
+ }
+
+ float ndotv = dot(normal, poiCam.viewDir);
+
+ float4 iridescenceColor = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceRamp, _MainTex, 1 - abs(ndotv));
+ float4 iridescenceMask = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceMaskUV], _IridescenceMask));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskIridescence != 4)
+ {
+ iridescenceMask *= blackLightMask[_BlackLightMaskIridescence];
+ }
+ #endif
+
+
+ albedo.rgb = lerp(albedo.rgb, saturate(iridescenceColor.rgb * _IridescenceIntensity), iridescenceColor.a * _IridescenceReplaceBlend * iridescenceMask);
+ albedo.rgb += saturate(iridescenceColor.rgb * _IridescenceIntensity * iridescenceColor.a * _IridescenceAddBlend * iridescenceMask);
+ albedo.rgb *= saturate(lerp(1, iridescenceColor.rgb * _IridescenceIntensity, iridescenceColor.a * _IridescenceMultiplyBlend * iridescenceMask));
+
+ IridescenceEmission = saturate(iridescenceColor.rgb * _IridescenceIntensity) * iridescenceColor.a * iridescenceMask * _IridescenceEmissionStrength;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
new file mode 100644
index 00000000..c0281860
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2c938cdd1ce014342a1ccdce36e7c5e2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
new file mode 100644
index 00000000..8f35cb62
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
@@ -0,0 +1,668 @@
+
+#ifndef POI_LIGHTING
+ #define POI_LIGHTING
+
+ float _LightingShadingEnabled;
+ float _LightingRampType;
+ float _LightingIgnoreAmbientColor;
+ float _UseShadowTexture;
+ float _LightingEnableAO;
+ float _LightingDetailShadowsEnabled;
+
+ float _LightingOnlyUnityShadows;
+ float _LightingMode;
+ float _ForceLightDirection;
+ float _ShadowStrength;
+ float _OutlineShadowStrength;
+ float _ShadowOffset;
+ float3 _LightDirection;
+ float _ForceShadowStrength;
+ float _CastedShadowSmoothing;
+ float _AttenuationMultiplier;
+ float _EnableLighting;
+ float _LightingControlledUseLightColor;
+ fixed _LightingStandardSmoothness;
+ fixed _LightingStandardControlsToon;
+ fixed _LightingMinLightBrightness;
+ float _LightingUseShadowRamp;
+ float _LightingMinShadowBrightnessRatio;
+ UNITY_DECLARE_TEX2D(_ToonRamp);
+ fixed _LightingMonochromatic;
+
+ fixed _LightingGradientStart;
+ fixed _LightingGradientEnd;
+ float3 _LightingShadowColor;
+ POI_TEXTURE_NOSAMPLER(_LightingShadowTexture);
+ float _AOStrength;
+ fixed _LightingDetailStrength;
+ fixed _LightingAdditiveDetailStrength;
+ fixed _LightingNoIndirectMultiplier;
+ fixed _LightingNoIndirectThreshold;
+ float _LightingUncapped;
+
+ float _LightingDirectColorMode;
+ float _LightingIndirectColorMode;
+ float _LightingAdditiveType;
+ fixed _LightingAdditiveGradientStart;
+ fixed _LightingAdditiveGradientEnd;
+ fixed _LightingAdditivePassthrough;
+ float _LightingDirectAdjustment;
+ float _LightingIndirect;
+ // HSL JUNK
+ float _LightingEnableHSL;
+ float _LightingShadowHue;
+ float _LightingShadowSaturation;
+ float _LightingShadowLightness;
+ float _LightingHSLIntensity;
+ /*
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ToonRamp3);
+ half _LightingShadowStrength3;
+ half _ShadowOffset3;
+ */
+
+ half4 shadowStrength;
+
+ POI_TEXTURE_NOSAMPLER(_LightingDetailShadows);
+ POI_TEXTURE_NOSAMPLER(_LightingAOTex);
+ POI_TEXTURE_NOSAMPLER(_LightingShadowMask);
+
+ /*
+ * MIT License
+ *
+ * Copyright (c) 2018 s-ilent
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+ /*
+ * Silent's code starts here
+ */
+
+ float shEvaluateDiffuseL1Geomerics_local(float L0, float3 L1, float3 n)
+ {
+ // average energy
+ float R0 = max(0, L0);
+
+ // avg direction of incoming light
+ float3 R1 = 0.5f * L1;
+
+ // directional brightness
+ float lenR1 = length(R1);
+
+ // linear angle between normal and direction 0-1
+ //float q = 0.5f * (1.0f + dot(R1 / lenR1, n));
+ //float q = dot(R1 / lenR1, n) * 0.5 + 0.5;
+ float q = dot(normalize(R1), n) * 0.5 + 0.5;
+ q = saturate(q); // Thanks to ScruffyRuffles for the bug identity.
+
+ // power for q
+ // lerps from 1 (linear) to 3 (cubic) based on directionality
+ float p = 1.0f + 2.0f * lenR1 / R0;
+
+ // dynamic range constant
+ // should vary between 4 (highly directional) and 0 (ambient)
+ float a = (1.0f - lenR1 / R0) / (1.0f + lenR1 / R0);
+
+ return R0 * (a + (1.0f - a) * (p + 1.0f) * pow(q, p));
+ }
+
+ half3 BetterSH9(half4 normal)
+ {
+ float3 indirect;
+ float3 L0 = float3(unity_SHAr.w, unity_SHAg.w, unity_SHAb.w) + float3(unity_SHBr.z, unity_SHBg.z, unity_SHBb.z) / 3.0;
+ indirect.r = shEvaluateDiffuseL1Geomerics_local(L0.r, unity_SHAr.xyz, normal);
+ indirect.g = shEvaluateDiffuseL1Geomerics_local(L0.g, unity_SHAg.xyz, normal);
+ indirect.b = shEvaluateDiffuseL1Geomerics_local(L0.b, unity_SHAb.xyz, normal);
+ indirect = max(0, indirect);
+ indirect += SHEvalLinearL2(normal);
+ return indirect;
+ }
+
+ float3 BetterSH9(float3 normal)
+ {
+ return BetterSH9(float4(normal, 1));
+ }
+
+ /*
+ * Standard stuff starts here
+ */
+ UnityLight CreateLight(float3 normal, fixed detailShadowMap)
+ {
+ UnityLight light;
+ light.dir = poiLight.direction;
+ light.color = saturate(_LightColor0.rgb * lerp(1, poiLight.attenuation, float(0)) * detailShadowMap);
+ light.ndotl = DotClamped(normal, poiLight.direction);
+ return light;
+ }
+
+ float FadeShadows(float attenuation)
+ {
+ #if HANDLE_SHADOWS_BLENDING_IN_GI || ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ // UNITY_LIGHT_ATTENUATION doesn't fade shadows for us.
+
+ #if ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ attenuation = lerp(1, poiLight.attenuation, float(0));
+ #endif
+
+ float viewZ = dot(_WorldSpaceCameraPos - poiMesh.worldPos, UNITY_MATRIX_V[2].xyz);
+ float shadowFadeDistance = UnityComputeShadowFadeDistance(poiMesh.worldPos, viewZ);
+ float shadowFade = UnityComputeShadowFade(shadowFadeDistance);
+ float bakedAttenuation = UnitySampleBakedOcclusion(poiMesh.lightmapUV.xy, poiMesh.worldPos);
+ attenuation = UnityMixRealtimeAndBakedShadows(
+ attenuation, bakedAttenuation, shadowFade
+ );
+ #endif
+
+ return attenuation;
+ }
+
+ void ApplySubtractiveLighting(inout UnityIndirect indirectLight)
+ {
+ #if SUBTRACTIVE_LIGHTING
+ poiLight.attenuation = FadeShadows(lerp(1, poiLight.attenuation, float(0)));
+
+ float ndotl = saturate(dot(i.normal, _WorldSpaceLightPos0.xyz));
+ float3 shadowedLightEstimate = ndotl * (1 - poiLight.attenuation) * _LightColor0.rgb;
+ float3 subtractedLight = indirectLight.diffuse - shadowedLightEstimate;
+ subtractedLight = max(subtractedLight, unity_ShadowColor.rgb);
+ subtractedLight = lerp(subtractedLight, indirectLight.diffuse, _LightShadowData.x);
+ indirectLight.diffuse = min(subtractedLight, indirectLight.diffuse);
+ #endif
+ }
+
+ float3 weightedBlend(float3 layer1, float3 layer2, float2 weights)
+ {
+ return(weights.x * layer1 + weights.y * layer2) / (weights.x + weights.y);
+ }
+
+ UnityIndirect CreateIndirectLight(float3 normal)
+ {
+ UnityIndirect indirectLight;
+ indirectLight.diffuse = 0;
+ indirectLight.specular = 0;
+
+ #if defined(FORWARD_BASE_PASS)
+ #if defined(LIGHTMAP_ON)
+ indirectLight.diffuse = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap, poiMesh.lightmapUV.xy));
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 lightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_LightmapInd, unity_Lightmap, poiMesh.lightmapUV.xy
+ );
+ indirectLight.diffuse = DecodeDirectionalLightmap(
+ indirectLight.diffuse, lightmapDirection, normal
+ );
+ #endif
+ ApplySubtractiveLighting(indirectLight);
+ #endif
+
+ #if defined(DYNAMICLIGHTMAP_ON)
+ float3 dynamicLightDiffuse = DecodeRealtimeLightmap(
+ UNITY_SAMPLE_TEX2D(unity_DynamicLightmap, poiMesh.lightmapUV.zw)
+ );
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 dynamicLightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_DynamicDirectionality, unity_DynamicLightmap,
+ poiMesh.lightmapUV.zw
+ );
+ indirectLight.diffuse += DecodeDirectionalLightmap(
+ dynamicLightDiffuse, dynamicLightmapDirection, normal
+ );
+ #else
+ indirectLight.diffuse += dynamicLightDiffuse;
+ #endif
+ #endif
+
+ #if !defined(LIGHTMAP_ON) && !defined(DYNAMICLIGHTMAP_ON)
+ #if UNITY_LIGHT_PROBE_PROXY_VOLUME
+ if (unity_ProbeVolumeParams.x == 1)
+ {
+ indirectLight.diffuse = SHEvalLinearL0L1_SampleProbeVolume(
+ float4(normal, 1), poiMesh.worldPos
+ );
+ indirectLight.diffuse = max(0, indirectLight.diffuse);
+ #if defined(UNITY_COLORSPACE_GAMMA)
+ indirectLight.diffuse = LinearToGammaSpace(indirectLight.diffuse);
+ #endif
+ }
+ else
+ {
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ }
+ #else
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ #endif
+ #endif
+
+ float3 reflectionDir = reflect(-poiCam.viewDir, normal);
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = 1 - float(0);
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+ #if UNITY_SPECCUBE_BLENDING
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ indirectLight.specular = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ indirectLight.specular = probe0;
+ }
+ #else
+ indirectLight.specular = probe0;
+ #endif
+ float occlusion = 1;
+
+ if(float(0))
+ {
+ occlusion = lerp(1, POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ }
+
+ indirectLight.diffuse *= occlusion;
+ indirectLight.diffuse = max(indirectLight.diffuse, float(0));
+ indirectLight.specular *= occlusion;
+ #endif
+
+ return indirectLight;
+ }
+
+ /*
+ * Poiyomi's cool as heck code starts here :smug:
+ */
+
+ half PoiDiffuse(half NdotV, half NdotL, half LdotH)
+ {
+ half fd90 = 0.5 + 2 * LdotH * LdotH * SmoothnessToPerceptualRoughness(.5);
+ // Two schlick fresnel term
+ half lightScatter = (1 + (fd90 - 1) * Pow5(1 - NdotL));
+ half viewScatter = (1 + (fd90 - 1) * Pow5(1 - NdotV));
+
+ return lightScatter * viewScatter;
+ }
+
+ float3 ShadeSH9Indirect()
+ {
+ return ShadeSH9(half4(0.0, -1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Direct()
+ {
+ return ShadeSH9(half4(0.0, 1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Normal(float3 normalDirection)
+ {
+ return ShadeSH9(half4(normalDirection, 1.0));
+ }
+
+ half3 GetSHLength()
+ {
+ half3 x, x1;
+ x.r = length(unity_SHAr);
+ x.g = length(unity_SHAg);
+ x.b = length(unity_SHAb);
+ x1.r = length(unity_SHBr);
+ x1.g = length(unity_SHBg);
+ x1.b = length(unity_SHBb);
+ return x + x1;
+ }
+
+ float3 calculateRealisticLighting(float4 colorToLight, fixed detailShadowMap)
+ {
+ return UNITY_BRDF_PBS(1, 0, 0, float(0), poiMesh.normals[1], poiCam.viewDir, CreateLight(poiMesh.normals[1], detailShadowMap), CreateIndirectLight(poiMesh.normals[1]));
+ }
+
+ void calculateBasePassLightMaps()
+ {
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ float AOMap = 1;
+ float AOStrength = 1;
+ float3 lightColor = poiLight.color;
+ /*
+ * Generate Basic Light Maps
+ */
+
+ bool lightExists = false;
+ if (all(_LightColor0.rgb >= 0.002))
+ {
+ lightExists = true;
+ }
+ #ifndef OUTLINE
+
+ if(float(0))
+ {
+ AOMap = POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ AOStrength = float(1);
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ if (lightExists)
+ {
+ lightColor = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+ }
+ else
+ {
+ lightColor = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ }
+
+ //lightColor = magic * magiratio + normalLight * normaRatio;
+ //lightColor = magic + normalLight;
+ #endif
+ #endif
+
+ float3 grayscale_vector = float3(.33333, .33333, .33333);
+ float3 ShadeSH9Plus = GetSHLength();
+ float3 ShadeSH9Minus = BetterSH9(float4(0, 0, 0, 1));
+
+ shadowStrength = 1;
+ #ifndef OUTLINE
+ shadowStrength = POI2D_SAMPLER_PAN(_LightingShadowMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(1);
+ #else
+ shadowStrength = float(1);
+ #endif
+
+ float bw_lightColor = dot(lightColor, grayscale_vector);
+ float bw_directLighting = (((poiLight.nDotL * 0.5 + 0.5) * bw_lightColor * lerp(1, poiLight.attenuation, float(0))) + dot(ShadeSH9Normal(poiMesh.normals[1]), grayscale_vector));
+ float bw_bottomIndirectLighting = dot(ShadeSH9Minus, grayscale_vector);
+ float bw_topIndirectLighting = dot(ShadeSH9Plus, grayscale_vector);
+ float lightDifference = ((bw_topIndirectLighting + bw_lightColor) - bw_bottomIndirectLighting);
+
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(0))
+ {
+ poiLight.lightMap = poiLight.attenuation;
+ }
+ else
+ {
+ poiLight.lightMap = smoothstep(0, lightDifference, bw_directLighting - bw_bottomIndirectLighting);
+ }
+ poiLight.lightMap *= detailShadow;
+
+ /*
+ * Decide on light colors
+ */
+
+ float3 indirectLighting = 0;
+ float3 directLighting = 0;
+
+
+
+
+ if (float(0) == 1)
+ {
+ indirectLighting = BetterSH9(float4(poiMesh.normals[0], 1));
+ }
+ else
+ {
+ indirectLighting = ShadeSH9Minus;
+ }
+
+ poiLight.directLighting = lightColor;
+ poiLight.indirectLighting = indirectLighting;
+
+
+ if(float(0) == 0)
+ {
+ float3 magic = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+
+ float magiLumi = calculateluminance(magic);
+ float normaLumi = calculateluminance(normalLight);
+ float maginormalumi = magiLumi + normaLumi;
+
+ float magiratio = magiLumi / maginormalumi;
+ float normaRatio = normaLumi / maginormalumi;
+
+ float target = calculateluminance(magic * magiratio + normalLight * normaRatio);
+ float3 properLightColor = magic + normalLight;
+ float properLuminance = calculateluminance(magic + normalLight);
+ directLighting = properLightColor * max(0.0001, (target / properLuminance));
+ }
+ else
+ {
+ directLighting = lightColor;
+ }
+
+
+ if(!float(0))
+ {
+ float directluminance = calculateluminance(directLighting);
+ float indirectluminance = calculateluminance(indirectLighting);
+ directLighting = min(directLighting, directLighting / max(0.0001, (directluminance / 1)));
+ indirectLighting = min(indirectLighting, indirectLighting / max(0.0001, (indirectluminance / 1)));
+ }
+
+ directLighting = lerp(directLighting, dot(directLighting, float3(0.299, 0.587, 0.114)), float(0));
+ indirectLighting = lerp(indirectLighting, dot(indirectLighting, float3(0.299, 0.587, 0.114)), float(0));
+
+ if(max(max(indirectLighting.x, indirectLighting.y), indirectLighting.z) <= _LightingNoIndirectThreshold && max(max(directLighting.x, directLighting.y), directLighting.z) >= 0)
+ {
+ indirectLighting = directLighting * _LightingNoIndirectMultiplier;
+ }
+
+
+ if(float(0))
+ {
+ float directluminance = clamp(directLighting.r * 0.299 + directLighting.g * 0.587 + directLighting.b * 0.114, 0, 1);
+ if(directluminance > 0)
+ {
+ indirectLighting = max(0.001, indirectLighting);
+ }
+ float indirectluminance = clamp(indirectLighting.r * 0.299 + indirectLighting.g * 0.587 + indirectLighting.b * 0.114, 0, 1);
+ float targetluminance = directluminance * float(0);
+ if(indirectluminance < targetluminance)
+ {
+ indirectLighting = indirectLighting / max(0.0001, indirectluminance / targetluminance);
+ }
+ }
+
+ /*
+ * Create Shade Maps
+ */
+
+ if (float(0))
+ {
+ switch(float(0))
+ {
+ case 0: // Ramp Texture
+ {
+ poiLight.rampedLightMap = lerp(1, UNITY_SAMPLE_TEX2D(_ToonRamp, poiLight.lightMap + float(0)), shadowStrength.r);
+
+ if (float(0))
+ {
+ poiLight.finalLighting = lerp(poiLight.rampedLightMap * directLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ else
+ {
+ poiLight.finalLighting = lerp(indirectLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ }
+ break;
+ case 1: // Math Gradient
+ {
+ poiLight.rampedLightMap = saturate(1 - smoothstep(float(0) - .000001, float(0.5), 1 - poiLight.lightMap));
+ float3 shadowColor = float4(1,1,1,1);
+
+ if (float(0))
+ {
+ shadowColor = 1;
+ }
+
+ if(float(0))
+ {
+ poiLight.finalLighting = lerp((directLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ else
+ {
+ poiLight.finalLighting = lerp((indirectLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ }
+ break;
+ }
+ }
+ else
+ {
+ poiLight.rampedLightMap = 1 - smoothstep(0, .5, 1 - poiLight.lightMap);
+ poiLight.finalLighting = directLighting;
+ }
+
+ if(!float(0))
+ {
+ poiLight.finalLighting = saturate(poiLight.finalLighting);
+ }
+ //poiLight.finalLighting *= .8;
+ #endif
+ }
+
+ void applyShadowTexture(inout float4 albedo)
+ {
+
+ if (float(0) && float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, POI2D_SAMPLER_PAN(_LightingShadowTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1), (1 - poiLight.rampedLightMap) * shadowStrength);
+ }
+ }
+
+ float3 calculateNonImportantLighting(float attenuation, float attenuationDotNL, float3 albedo, float3 lightColor, half dotNL)
+ {
+ fixed detailShadow = 1;
+
+ if(float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ return lightColor * attenuationDotNL * detailShadow;
+ }
+ else
+ {
+ return lerp(lightColor * attenuation, lightColor * float(0.5) * attenuation, smoothstep(float(0), float(0.5), dotNL)) * detailShadow;
+ }
+ }
+
+
+ float3 calculateFinalLighting(inout float3 albedo, float4 finalColor)
+ {
+ float3 finalLighting = 1;
+ // Additive Lighting
+ #ifdef FORWARD_ADD_PASS
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ finalLighting = poiLight.color * poiLight.attenuation * max(0, poiLight.nDotL) * detailShadow;
+ }
+ else
+ {
+ #if defined(POINT) || defined(SPOT)
+ finalLighting = lerp(poiLight.color * max(poiLight.additiveShadow, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * poiLight.attenuation * detailShadow;
+ #else
+ finalLighting = lerp(poiLight.color * max(poiLight.attenuation, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * detailShadow;
+ #endif
+ }
+ #endif
+
+ // Base and Meta Lighting
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ #ifdef VERTEXLIGHT_ON
+ poiLight.vFinalLighting = 0;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vFinalLighting += calculateNonImportantLighting(poiLight.vAttenuation[index], poiLight.vAttenuationDotNL[index], albedo, poiLight.vColor[index], poiLight.vCorrectedDotNL[index]);
+ }
+ #endif
+
+ switch(float(0))
+ {
+ case 0: // Toon Lighting
+ {
+ // HSL Shading
+
+ if (float(0))
+ {
+ float3 HSLMod = float3(float(0.5) * 2 - 1, float(0.5) * 2 - 1, float(0.5) * 2 - 1) * (1 - poiLight.rampedLightMap);
+ albedo = lerp(albedo.rgb, ModifyViaHSL(albedo.rgb, HSLMod), float(1));
+ }
+
+ // Normal Shading
+
+ if (float(0) > 0)
+ {
+ poiLight.finalLighting = max(0.001, poiLight.finalLighting);
+ float finalluminance = calculateluminance(poiLight.finalLighting);
+ finalLighting = max(poiLight.finalLighting, poiLight.finalLighting / max(0.0001, (finalluminance / float(0))));
+ }
+ else
+ {
+ finalLighting = poiLight.finalLighting;
+ }
+ }
+ break;
+ case 1: // realistic
+ {
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ float3 realisticLighting = calculateRealisticLighting(finalColor, detailShadow).rgb;
+ finalLighting = lerp(realisticLighting, dot(realisticLighting, float3(0.299, 0.587, 0.114)), float(0));
+ }
+ break;
+ }
+ #endif
+ return finalLighting;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
new file mode 100644
index 00000000..1ccb867d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6ba0ce078526b964089e4aa245218e4f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
new file mode 100644
index 00000000..c23736df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
@@ -0,0 +1,243 @@
+#ifndef POI_MSDF
+ #define POI_MSDF
+
+ sampler2D _TextGlyphs;
+ float4 _TextGlyphs_ST;
+ float4 _TextGlyphs_TexelSize;
+ float _TextFPSUV;
+ float _TextTimeUV;
+ float _TextPositionUV;
+ float _TextPixelRange;
+
+ float _TextFPSEnabled;
+ float _TextPositionEnabled;
+ float _TextTimeEnabled;
+
+
+ float4 _TextFPSColor;
+ half _TextFPSEmissionStrength;
+ fixed4 _TextFPSPadding;
+ half2 _TextFPSOffset;
+ half2 _TextFPSScale;
+ half _TextFPSRotation;
+
+ fixed _TextPositionVertical;
+ float4 _TextPositionColor;
+ half _TextPositionEmissionStrength;
+ fixed4 _TextPositionPadding;
+ half2 _TextPositionOffset;
+ half2 _TextPositionScale;
+ half _TextPositionRotation;
+
+ float4 _TextTimeColor;
+ half _TextTimeEmissionStrength;
+ fixed4 _TextTimePadding;
+ half2 _TextTimeOffset;
+ half2 _TextTimeScale;
+ half _TextTimeRotation;
+
+ #define glyphWidth 0.0625
+
+ #define ASCII_LEFT_PARENTHESIS 40
+ #define ASCII_RIGHT_PARENTHESIS 41
+ #define ASCII_POSITIVE 43
+ #define ASCII_PERIOD 46
+ #define ASCII_NEGATIVE 45
+ #define ASCII_COMMA 44
+ #define ASCII_E 69
+ #define ASCII_F 70
+ #define ASCII_I 73
+ #define ASCII_M 77
+ #define ASCII_O 79
+ #define ASCII_P 80
+ #define ASCII_S 83
+ #define ASCII_T 54
+ #define ASCII_SEMICOLON 58
+
+ float3 globalTextEmission;
+
+ half2 getAsciiCoordinate(float index)
+ {
+ return half2((index - 1) / 16, 1 - ((floor(index / 16 - glyphWidth)) / 16));
+ }
+
+ float median(float r, float g, float b)
+ {
+ return max(min(r, g), min(max(r, g), b));
+ }
+
+ void ApplyPositionText(inout float4 albedo, float2 uv)
+ {
+ float3 cameraPos = clamp(getCameraPosition(), -999, 999);
+ float3 absCameraPos = abs(cameraPos);
+ float totalCharacters = 20;
+ float positionArray[20];
+ positionArray[0] = cameraPos.x >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[1] = floor((absCameraPos.x * .01) % 10) + 48;
+ positionArray[2] = floor((absCameraPos.x * .1) % 10) + 48;
+ positionArray[3] = floor(absCameraPos.x % 10) + 48;
+ positionArray[4] = ASCII_PERIOD;
+ positionArray[5] = floor((absCameraPos.x * 10) % 10) + 48;
+ positionArray[6] = ASCII_COMMA;
+ positionArray[7] = cameraPos.y >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[8] = floor((absCameraPos.y * .01) % 10) + 48;
+ positionArray[9] = floor((absCameraPos.y * .1) % 10) + 48;
+ positionArray[10] = floor(absCameraPos.y % 10) + 48;
+ positionArray[11] = ASCII_PERIOD;
+ positionArray[12] = floor((absCameraPos.y * 10) % 10) + 48;
+ positionArray[13] = ASCII_COMMA;
+ positionArray[14] = cameraPos.z >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[15] = floor((absCameraPos.z * .01) % 10) + 48;
+ positionArray[16] = floor((absCameraPos.z * .1) % 10) + 48;
+ positionArray[17] = floor(absCameraPos.z % 10) + 48;
+ positionArray[18] = ASCII_PERIOD;
+ positionArray[19] = floor((absCameraPos.z * 10) % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if (uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(positionArray[currentCharacter]);
+
+ float2 startUV = float2(1 / totalCharacters * currentCharacter, 0);
+ float2 endUV = float2(1 / totalCharacters * (currentCharacter + 1), 1);
+
+ fixed4 textPositionPadding = float4(0,0,0,0);
+ textPositionPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, startUV, endUV, float2(glyphPos.x + textPositionPadding.x, glyphPos.y - glyphWidth + textPositionPadding.y), float2(glyphPos.x + glyphWidth - textPositionPadding.z, glyphPos.y - textPositionPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textPositionPadding.z - .001 || uv.x < glyphPos.x + textPositionPadding.x + .001 || uv.y > glyphPos.y - textPositionPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textPositionPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTimeText(inout float4 albedo, float2 uv)
+ {
+ float instanceTime = _Time.y;
+ float hours = instanceTime / 3600;
+ float minutes = (instanceTime / 60) % 60;
+ float seconds = instanceTime % 60;
+ float totalCharacters = 8;
+ float timeArray[8];
+ timeArray[0] = floor((hours * .1) % 10) + 48;
+ timeArray[1] = floor(hours % 10) + 48;
+ timeArray[2] = ASCII_SEMICOLON;
+ timeArray[3] = floor((minutes * .1) % 10) + 48;
+ timeArray[4] = floor(minutes % 10) + 48;
+ timeArray[5] = ASCII_SEMICOLON;
+ timeArray[6] = floor((seconds * .1) % 10) + 48;
+ timeArray[7] = floor(seconds % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(timeArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+ fixed4 textTimePadding = float4(0,0,0,0);
+ textTimePadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textTimePadding.x, glyphPos.y - glyphWidth + textTimePadding.y), float2(glyphPos.x + glyphWidth - textTimePadding.z, glyphPos.y - textTimePadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textTimePadding.z - .001 || uv.x < glyphPos.x + textTimePadding.x + .001 || uv.y > glyphPos.y - textTimePadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textTimePadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyFPSText(inout float4 albedo, float2 uv)
+ {
+ float smoothDeltaTime = clamp(unity_DeltaTime.w, 0, 999);
+ float totalCharacters = 7;
+ float fpsArray[7];
+ fpsArray[0] = ASCII_F;
+ fpsArray[1] = ASCII_P;
+ fpsArray[2] = ASCII_S;
+ fpsArray[3] = ASCII_SEMICOLON;
+ fpsArray[4] = floor((smoothDeltaTime * .01) % 10) + 48;
+ fpsArray[5] = floor((smoothDeltaTime * .1) % 10) + 48;
+ fpsArray[6] = floor(smoothDeltaTime % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(fpsArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+
+ fixed4 textFPSPadding = float4(0,0,0,0);
+ textFPSPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textFPSPadding.x, glyphPos.y - glyphWidth + textFPSPadding.y), float2(glyphPos.x + glyphWidth - textFPSPadding.z, glyphPos.y - textFPSPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textFPSPadding.z - .001 || uv.x < glyphPos.x + textFPSPadding.x + .001 || uv.y > glyphPos.y - textFPSPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textFPSPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,1,1,1).rgb, opacity * float4(1,1,1,1).a);
+ globalTextEmission += float4(1,1,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTextOverlayColor(inout float4 albedo, inout float3 textOverlayEmission)
+ {
+ globalTextEmission = 0;
+ half positionalOpacity = 0;
+ #ifdef EFFECT_BUMP
+
+ if(float(0))
+ {
+ ApplyFPSText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyPositionText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyTimeText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ textOverlayEmission = globalTextEmission;
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
new file mode 100644
index 00000000..7d3d4262
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 68c4853e9685add4a9f20c6e84a95cd4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
new file mode 100644
index 00000000..ecac0805
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
@@ -0,0 +1,33 @@
+#ifndef POI_MACROS
+ #define POI_MACROS
+
+ #define POI_TEXTURE_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_TEXTURE(tex) UNITY_DECLARE_TEX2D(tex##); float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_NORMAL_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV; float tex##Scale
+
+ #define POI2D_SAMPLER_PAN(tex, texSampler, uv, pan) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D_SAMPLER(tex, texSampler, uv) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex)))
+ #define POI2D_PAN(tex, uv, pan) (tex2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D(tex, uv) (tex2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D(tex, uv) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D_PAN(tex, uv, pan) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+
+ #ifdef POINT
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ unityShadowCoord3 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1)).xyz; \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = tex2D(_LightTexture0, dot(lightCoord, lightCoord).rr).r;
+ #endif
+
+ #ifdef SPOT
+ #if !defined(UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS)
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1))
+ #else
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = input._LightCoord
+ #endif
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ DECLARE_LIGHT_COORD(input, worldPos); \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = (lightCoord.z > 0) * UnitySpotCookie(lightCoord) * UnitySpotAttenuate(lightCoord.xyz);
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
new file mode 100644
index 00000000..8afd3182
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4122ee27bdf6ba94b8e96f4b0c8465bc
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
new file mode 100644
index 00000000..270384af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
@@ -0,0 +1,147 @@
+#ifndef POI_MAINTEXTURE
+ #define POI_MAINTEXTURE
+
+
+
+ POI_TEXTURE_NOSAMPLER(_AlphaMask);
+ POI_TEXTURE_NOSAMPLER(_MainFadeTexture);
+ float4 _Color;
+ float _MainVertexColoring;
+ float _MainUseVertexColorAlpha;
+ float _Saturation;
+ float2 _MainDistanceFade;
+ half _MainMinAlpha;
+ float _MainHueShift;
+ #ifdef COLOR_GRADING_HDR
+ POI_TEXTURE_NOSAMPLER(_MainHueShiftMask);
+ float _MainHueShiftToggle;
+ float _MainHueShiftSpeed;
+ float _MainHueShiftReplace;
+ #endif
+
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailTex);
+ half _DetailTexIntensity;
+ half3 _DetailTint;
+ float _DetailBrightness;
+ #endif
+ //globals
+ float alphaMask;
+ half3 diffColor;
+
+ #include "CGI_PoiBackFace.cginc"
+
+ float3 wireframeEmission;
+
+ inline FragmentCommonData SpecularSetup(float4 i_tex, inout float4 albedo)
+ {
+ half4 specGloss = 0;
+ half3 specColor = specGloss.rgb;
+ half smoothness = specGloss.a;
+
+ half oneMinusReflectivity;
+ diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specColor, /*out*/ oneMinusReflectivity);
+
+ FragmentCommonData o = (FragmentCommonData)0;
+ o.diffColor = diffColor;
+ o.specColor = specColor;
+ o.oneMinusReflectivity = oneMinusReflectivity;
+ o.smoothness = smoothness;
+ return o;
+ }
+
+ inline FragmentCommonData FragmentSetup(float4 i_tex, half3 i_viewDirForParallax, float3 i_posWorld, inout float4 albedo)
+ {
+ i_tex = i_tex;
+
+ FragmentCommonData o = SpecularSetup(i_tex, albedo);
+ o.normalWorld = float4(0, 0, 0, 1);
+ o.eyeVec = poiCam.viewDir;
+ o.posWorld = i_posWorld;
+
+ // NOTE: shader relies on pre-multiply alpha-blend (float(1) = One, float(0) = OneMinusSrcAlpha)
+ o.diffColor = PreMultiplyAlpha(o.diffColor, 1, o.oneMinusReflectivity, /*out*/ o.alpha);
+ return o;
+ }
+
+ void initTextureData(inout float4 albedo, inout float4 mainTexture, inout float3 backFaceEmission, inout float3 dissolveEmission, in half3 detailMask)
+ {
+ dissolveEmission = 0;
+
+ #if (defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ #endif
+
+ alphaMask = POI2D_SAMPLER_PAN(_AlphaMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ mainTexture.a *= alphaMask;
+
+ #ifndef POI_SHADOW
+ albedo = float4(lerp(mainTexture.rgb, dot(mainTexture.rgb, float3(0.3, 0.59, 0.11)), -float(0)) * max(float4(1,1,1,1).rgb, float3(0.000000001, 0.000000001, 0.000000001)) * lerp(1, GammaToLinearSpace(poiMesh.vertexColor.rgb), float(0)), mainTexture.a * max(float4(1,1,1,1).a, 0.0000001));
+
+ #ifdef POI_LIGHTING
+ applyShadowTexture(albedo);
+ #endif
+
+ albedo *= lerp(1, poiMesh.vertexColor.a, float(0));
+ #ifdef POI_RGBMASK
+ albedo.rgb = calculateRGBMask(albedo.rgb);
+ #endif
+
+ albedo.a = saturate(float(0) + albedo.a);
+
+ wireframeEmission = 0;
+ #ifdef POI_WIREFRAME
+ applyWireframe(wireframeEmission, albedo);
+ #endif
+ float backFaceDetailIntensity = 1;
+
+ float mixedHueShift = float(0);
+ applyBackFaceTexture(backFaceDetailIntensity, mixedHueShift, albedo, backFaceEmission);
+
+ #ifdef POI_FUR
+ calculateFur();
+ #endif
+
+ #ifdef COLOR_GRADING_HDR
+ float hueShiftAlpha = POI2D_SAMPLER_PAN(_MainHueShiftMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if(float(1))
+ {
+ albedo.rgb = lerp(albedo.rgb, hueShift(albedo.rgb, mixedHueShift + float(0) * _Time.x), hueShiftAlpha);
+ }
+ else
+ {
+ albedo.rgb = hueShift(albedo.rgb, frac((mixedHueShift - (1 - hueShiftAlpha) + float(0) * _Time.x)));
+ }
+ #endif
+ #ifdef FINALPASS
+ half3 detailTexture = POI2D_SAMPLER_PAN(_DetailTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb * float4(1,1,1,1).rgb;
+ albedo.rgb *= LerpWhiteTo(detailTexture * float(1) * unity_ColorSpaceDouble.rgb, detailMask.r * float(1) * backFaceDetailIntensity);
+ #endif
+ albedo.rgb = saturate(albedo.rgb);
+
+ #ifdef POI_HOLOGRAM
+ ApplyHoloAlpha(albedo);
+ #endif
+
+ s = FragmentSetup(float4(poiMesh.uv[0], 1, 1), poiCam.viewDir, poiMesh.worldPos, albedo);
+ #endif
+
+ #ifdef DISTORT
+ calculateDissolve(albedo, dissolveEmission);
+ #endif
+ }
+
+ void distanceFade(inout float4 albedo)
+ {
+ half fadeMap = POI2D_SAMPLER_PAN(_MainFadeTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(fadeMap)
+ {
+ half fadeValue = max(smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, poiCam.distanceToVert), float(0));
+ albedo.a *= fadeValue;
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
new file mode 100644
index 00000000..e212012d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8ffef9bf1921f1e47ba63803c9268519
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
new file mode 100644
index 00000000..3aa6d6b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
@@ -0,0 +1,115 @@
+#ifndef MATCAP
+ #define MATCAP
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap); float4 _Matcap_ST;
+ POI_TEXTURE_NOSAMPLER(_MatcapMask);
+ float _MatcapMaskInvert;
+ float _MatcapBorder;
+ float4 _MatcapColor;
+ float _MatcapIntensity;
+ float _MatcapReplace;
+ float _MatcapMultiply;
+ float _MatcapAdd;
+ float _MatcapEnable;
+ float _MatcapLightMask;
+ float _MatcapEmissionStrength;
+ float _MatcapNormal;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap2);float4 _Matcap2_ST;
+ POI_TEXTURE_NOSAMPLER(_Matcap2Mask);
+ float _Matcap2MaskInvert;
+ float _Matcap2Border;
+ float4 _Matcap2Color;
+ float _Matcap2Intensity;
+ float _Matcap2Replace;
+ float _Matcap2Multiply;
+ float _Matcap2Add;
+ float _Matcap2Enable;
+ float _Matcap2LightMask;
+ float _Matcap2EmissionStrength;
+ float _Matcap2Normal;
+
+ void blendMatcap(inout float4 finalColor, float add, float multiply, float replace, float4 matcapColor, float matcapMask, inout float3 matcapEmission, float emissionStrength
+ #ifdef POI_LIGHTING
+ , float matcapLightMask
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , uint blackLightMaskIndex
+ #endif
+ )
+ {
+ #ifdef POI_LIGHTING
+ if (matcapLightMask)
+ {
+ matcapMask *= lerp(1, poiLight.rampedLightMap, matcapLightMask);
+ }
+ #endif
+ #ifdef POI_BLACKLIGHT
+ if(blackLightMaskIndex != 4)
+ {
+ matcapMask *= blackLightMask[blackLightMaskIndex];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor.rgb, matcapColor.rgb, replace * matcapMask * matcapColor.a);
+ finalColor.rgb *= lerp(1, matcapColor.rgb, multiply * matcapMask * matcapColor.a);
+ finalColor.rgb += matcapColor.rgb * add * matcapMask * matcapColor.a;
+ matcapEmission += matcapColor.rgb * emissionStrength * matcapMask * matcapColor.a;
+ }
+
+ void applyMatcap(inout float4 finalColor, inout float3 matcapEmission)
+ {
+ float4 matcap = 0;
+ float matcapMask = 0;
+ float4 matcap2 = 0;
+ float matcap2Mask = 0;
+
+ // Both matcaps use the same coordinates
+ half3 worldViewUp = normalize(half3(0, 1, 0) - poiCam.viewDir * dot(poiCam.viewDir, half3(0, 1, 0)));
+ half3 worldViewRight = normalize(cross(poiCam.viewDir, worldViewUp));
+
+ // Matcap 1
+ half2 matcapUV = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+
+ matcap = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap, _MainTex, TRANSFORM_TEX(matcapUV, _Matcap)) * float4(1,1,1,1);
+ matcap.rgb *= float(1);
+ matcapMask = POI2D_SAMPLER_PAN(_MatcapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if (float(0))
+ {
+ matcapMask = 1 - matcapMask;
+ }
+
+ blendMatcap(finalColor, float(0), float(0), float(1), matcap, matcapMask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap
+ #endif
+ );
+
+ // Matcap 2
+
+ if (float(0))
+ {
+ half2 matcapUV2 = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+ matcap2 = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap2, _MainTex, TRANSFORM_TEX(matcapUV2, _Matcap2)) * float4(1,1,1,1);
+ matcap2.rgb *= float(1);
+ matcap2Mask = POI2D_SAMPLER_PAN(_Matcap2Mask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(float(0))
+ {
+ matcap2Mask = 1 - matcap2Mask;
+ }
+ blendMatcap(finalColor, float(0), float(0), float(0), matcap2, matcap2Mask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap2
+ #endif
+ );
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
new file mode 100644
index 00000000..355218ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9bb1c79b5281a204a908b2dfc37ed58b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
new file mode 100644
index 00000000..b2d07a38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
@@ -0,0 +1,104 @@
+/*
+MIT License
+
+Copyright (c) 2019 wraikny
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+VertexTransformShader is dependent on:
+*/
+
+#ifndef POI_MATH
+ #define POI_MATH
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float4 quaternion_conjugate(float4 v)
+ {
+ return float4(
+ v.x, -v.yzw
+ );
+ }
+
+ float4 quaternion_mul(float4 v1, float4 v2)
+ {
+ float4 result1 = (v1.x * v2 + v1 * v2.x);
+
+ float4 result2 = float4(
+ - dot(v1.yzw, v2.yzw),
+ cross(v1.yzw, v2.yzw)
+ );
+
+ return float4(result1 + result2);
+ }
+
+ // angle : radians
+ float4 get_quaternion_from_angle(float3 axis, float angle)
+ {
+ return float4(
+ cos(angle / 2.0),
+ normalize(axis) * sin(angle / 2.0)
+ );
+ }
+
+ float4 quaternion_from_vector(float3 inVec)
+ {
+ return float4(0.0, inVec);
+ }
+
+ float degree_to_radius(float degree)
+ {
+ return(
+ degree / 180.0 * pi
+ );
+ }
+
+ float3 rotate_with_quaternion(float3 inVec, float3 rotation)
+ {
+ float4 qx = get_quaternion_from_angle(float3(1, 0, 0), degree_to_radius(rotation.x));
+ float4 qy = get_quaternion_from_angle(float3(0, 1, 0), degree_to_radius(rotation.y));
+ float4 qz = get_quaternion_from_angle(float3(0, 0, 1), degree_to_radius(rotation.z));
+
+ #define MUL3(A, B, C) quaternion_mul(quaternion_mul((A), (B)), (C))
+ float4 quaternion = normalize(MUL3(qx, qy, qz));
+ float4 conjugate = quaternion_conjugate(quaternion);
+
+ float4 inVecQ = quaternion_from_vector(inVec);
+
+ float3 rotated = (
+ MUL3(quaternion, inVecQ, conjugate)
+ ).yzw;
+
+ return rotated;
+ }
+
+ float4 transform(float4 input, float4 pos, float4 rotation, float4 scale)
+ {
+ input.rgb *= (scale.xyz * scale.w);
+ input = float4(
+ rotate_with_quaternion(input.xyz, rotation.xyz * rotation.w)
+ + (pos.xyz * pos.w),
+ input.w
+ );
+ return input;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
new file mode 100644
index 00000000..ed0b1870
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 54194ec4735ed1f49921917811035612
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
new file mode 100644
index 00000000..916f65eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
@@ -0,0 +1,130 @@
+#ifndef POI_METAL
+ #define POI_METAL
+
+ samplerCUBE _CubeMap;
+ float _SampleWorld;
+ POI_TEXTURE_NOSAMPLER(_MetallicMask);
+ POI_TEXTURE_NOSAMPLER(_SmoothnessMask);
+ float _Metallic;
+ float _InvertSmoothness;
+ float _Smoothness;
+ float _EnableMetallic;
+ float3 _MetalReflectionTint;
+ POI_TEXTURE_NOSAMPLER(_MetallicTintMap);
+
+ float3 finalreflections;
+ float metalicMap;
+ float3 reflection;
+ float roughness;
+ float lighty_boy_uwu_var;
+
+ bool shouldMetalHappenBeforeLighting()
+ {
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool probeExists = !(unity_SpecCube0_HDR.a == 0 && envSample.a == 0);
+ return probeExists && !float(0);
+ }
+
+ float3 fresnelRelflection(in float4 albedo)
+ {
+ half3 dotNV = 1 - abs(poiLight.nDotV);
+ half f = dotNV * dotNV * dotNV * dotNV;
+ //f *= i_sold.fresnel;
+ return lerp(lerp(DielectricSpec.rgb, albedo.rgb, metalicMap), saturate(1 - roughness + metalicMap), f);
+ }
+
+ void calculateMetallicness()
+ {
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ }
+
+ void ApplyMetallics(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflection = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflection = probe0;
+ }
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+
+ void ApplyMetallicsFake(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+ reflection = texCUBElod(_CubeMap, float4(poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
new file mode 100644
index 00000000..22b38e70
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: daceb2eb8844aab4e80d25661fcadfe0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
new file mode 100644
index 00000000..8bb16398
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
@@ -0,0 +1,77 @@
+#ifndef POI_MIRROR
+ #define POI_MIRROR
+
+ float _Mirror;
+ float _EnableMirrorTexture;
+ POI_TEXTURE_NOSAMPLER(_MirrorTexture);
+
+
+ void applyMirrorRenderVert(inout float4 vertex)
+ {
+
+ if (float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ void applyMirrorRenderFrag()
+ {
+
+ if(float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ #if(defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ void applyMirrorTexture(inout float4 mainTexture)
+ {
+
+ if(float(0))
+ {
+ if(IsInMirror())
+ {
+ mainTexture = POI2D_SAMPLER_PAN(_MirrorTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ }
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
new file mode 100644
index 00000000..8bec48bd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4eef23872f370b94faa9c3581bdea037
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
new file mode 100644
index 00000000..62e63c91
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
@@ -0,0 +1,107 @@
+float _OutlineRimLightBlend;
+float _OutlineLit;
+float _OutlineTintMix;
+float2 _MainTexPan;
+float _MainTextureUV;
+
+float4 frag(v2f i, uint facing: SV_IsFrontFace): COLOR
+{
+ float4 finalColor = 1;
+
+ if (float(0))
+ {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ float3 finalEmission = 0;
+ float4 albedo = 1;
+
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ float3 uselessData0;
+ float3 uselessData1;
+ initTextureData(albedo, mainTexture, uselessData0, uselessData1, detailMask);
+
+
+ fixed4 col = mainTexture;
+ float alphaMultiplier = smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(getCameraPosition(), i.worldPos));
+ float OutlineMask = tex2D(_OutlineMask, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0)).r;
+ clip(OutlineMask * float(0) - 0.001);
+
+ col = col * 0.00000000001 + tex2D(_OutlineTexture, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineTexture) + _Time.x * float4(0,0,0,0) );
+ col.a *= albedo.a;
+ col.a *= alphaMultiplier;
+
+ #ifdef POI_RANDOM
+ col.a *= i.angleAlpha;
+ #endif
+
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ col.a *= float4(1,1,1,1).a;
+
+
+ if(float(0) == 1)
+ {
+ applyDithering(col);
+ }
+
+ clip(col.a - float(0.5));
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+
+ if(float(0) == 1)
+ {
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ col.rgb = mainTexture.rgb;
+ }
+ else if(float(0) == 2)
+ {
+ col.rgb = lerp(col.rgb, poiLight.color, float(0));
+ }
+ col.rgb *= float4(1,1,1,1).rgb;
+
+ if(float(0) == 1)
+ {
+ col.rgb = lerp(col.rgb, mainTexture.rgb, float(0));
+ }
+
+ finalColor = col;
+
+ #ifdef POI_LIGHTING
+
+ if(float(1))
+ {
+ finalColor.rgb *= calculateFinalLighting(finalColor.rgb, finalColor);
+ }
+ #endif
+ finalColor.rgb += (col.rgb * float(0));
+ }
+ else
+ {
+ clip(-1);
+ }
+ return finalColor;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
new file mode 100644
index 00000000..b6dab6ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 55382f8b08cecf743aef82f4f5e4582a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
new file mode 100644
index 00000000..900e9e43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
@@ -0,0 +1,105 @@
+#ifndef OutlineVert
+ #define OutlineVert
+
+ #include "CGI_PoiV2F.cginc"
+
+ float _OutlineMode;
+ float4 _OutlinePersonaDirection;
+ float4 _OutlineDropShadowOffset;
+ float _OutlineUseVertexColors;
+ float _OutlineFixedSize;
+ float _commentIfZero_EnableOutlinePass;
+
+ sampler2D _OutlineMask; float4 _OutlineMask_ST; float2 _OutlineMaskPan; float _OutlineMaskUV;
+ v2f vert(appdata v)
+ {
+
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+
+ float2 uvArray[4];
+ uvArray[0] = o.uv0.xy;
+ uvArray[1] = o.uv0.zw;
+ uvArray[2] = o.uv1.xy;
+ uvArray[3] = o.uv1.zw;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ o.uv0.xy = v.uv0 + _OutlineGlobalPan.xy * _Time.y;
+ float outlineMask = 1;
+
+ outlineMask = poiMax(tex2Dlod(_OutlineMask, float4(TRANSFORM_TEX(uvArray[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0), 0, 0)).rgb);
+
+ if (float(0) == 2)
+ {
+ outlineMask *= v.color.r;
+ }
+
+
+ if(float(0) != 1)
+ {
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ }
+ else
+ {
+ o.normal = UnityObjectToWorldNormal(v.color);
+ }
+
+
+ half offsetMultiplier = 1;
+ half distanceOffset = 1;
+
+ if(float(0))
+ {
+ distanceOffset *= distance(_WorldSpaceCameraPos, mul(unity_ObjectToWorld, v.vertex).xyz);
+ }
+
+ float3 offset = o.normal * (float(0) * float(0) / 100) * outlineMask * distanceOffset;
+
+
+ if(float(0) == 2)
+ {
+ float3 lightDirection = poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ offsetMultiplier = saturate(dot(lightDirection, o.normal));
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 3)
+ {
+ half3 viewNormal = mul((float3x3)UNITY_MATRIX_V, o.normal);
+ offsetMultiplier = saturate(dot(viewNormal.xy, normalize(float4(1,0,0,0).xy)));
+
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 4)
+ {
+ offset = mul((float3x3)transpose(UNITY_MATRIX_V), float4(1,0,0,0));
+ offset *= distanceOffset;
+ }
+
+ o.worldPos = mul(unity_ObjectToWorld, v.vertex) + float4(offset, 0);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.pos = UnityWorldToClipPos(o.worldPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0);
+ UNITY_TRANSFER_FOG(o, o.pos);
+ return o;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
new file mode 100644
index 00000000..aa3a194d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 00d0b85883a36a14194bd8302ce76791
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
new file mode 100644
index 00000000..da64a89d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
@@ -0,0 +1,63 @@
+#ifndef PANOSPHERE
+ #define PANOSPHERE
+
+ sampler2D _PanosphereTexture; float4 _PanosphereTexture_ST;
+ POI_TEXTURE_NOSAMPLER(_PanoMask);
+ float _PanoEmission;
+ float _PanoBlend;
+ float4 _PanosphereColor;
+ float3 _PanospherePan;
+ float _PanoToggle;
+ float _PanoCubeMapToggle;
+ float _PanoInfiniteStereoToggle;
+ samplerCUBE _PanoCubeMap; half4 _PanoCubeMap_HDR;
+
+ float3 panoColor;
+ float panoMask;
+
+ float2 projectIt(float3 coords)
+ {
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude + _Time.y * float4(0,0,0,0).x, latitude + _Time.y * float4(0,0,0,0).y) * float2(1.0 / UNITY_PI, 1.0 / UNITY_PI);
+ sphereCoords = float2(1.0, 1.0) - sphereCoords;
+ return(sphereCoords + float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).xy) * float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).zw;
+ }
+
+ void applyPanosphereColor(inout float4 albedo, inout float3 panosphereEmission)
+ {
+ panoMask = POI2D_SAMPLER_PAN(_PanoMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskPanosphere != 4)
+ {
+ panoMask *= blackLightMask[_BlackLightMaskPanosphere];
+ }
+ #endif
+
+
+ if(float(0))
+ {
+ float3 cubeUV = mul(poiRotationMatrixFromAngles(float4(0,0,0,0).xyz * _Time.y), float4(-poiCam.viewDir, 1));
+ half4 cubemap = texCUBE(_PanoCubeMap, cubeUV);
+ panoColor = DecodeHDR(cubemap, _PanoCubeMap_HDR);
+ }
+ else
+ {
+ float2 uv = projectIt(normalize(lerp(getCameraPosition().xyz, poiCam.worldPos.xyz, float(0)) - poiMesh.worldPos.xyz) * - 1);
+
+ float2 ddxuv = ddx(uv);
+ float2 ddyuv = ddy(uv);
+ if(any(fwidth(uv) > .5))
+ {
+ ddxuv = ddyuv = 0.001;
+ }
+ panoColor = tex2D(_PanosphereTexture, TRANSFORM_TEX(uv, _PanosphereTexture), ddxuv, ddyuv).rgb * float4(1,1,1,1).rgb;
+ }
+ panosphereEmission = panoColor * float(0) * panoMask * float(0);
+ albedo.rgb = lerp(albedo.rgb, panoColor, float(0) * panoMask);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
new file mode 100644
index 00000000..44042402
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2eeb1de0e2ecc2e4ba554deb310a3392
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
new file mode 100644
index 00000000..6cd94900
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
@@ -0,0 +1,143 @@
+#ifndef POI_PARALLAX
+ #define POI_PARALLAX
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxHeightMap); float4 _ParallaxHeightMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxHeightMapMask);
+ float2 _ParallaxHeightMapPan;
+ float _ParallaxStrength;
+ float _ParallaxHeightMapEnabled;
+ float _ParallaxUV;
+
+ //Internal
+ float _ParallaxInternalMapEnabled;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxInternalMap); float4 _ParallaxInternalMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxInternalMapMask);
+ float _ParallaxInternalIterations;
+ float _ParallaxInternalMinDepth;
+ float _ParallaxInternalMaxDepth;
+ float _ParallaxInternalMinFade;
+ float _ParallaxInternalMaxFade;
+ float4 _ParallaxInternalMinColor;
+ float4 _ParallaxInternalMaxColor;
+ float4 _ParallaxInternalPanSpeed;
+ float4 _ParallaxInternalPanDepthSpeed;
+ float _ParallaxInternalHeightmapMode;
+ float _ParallaxInternalHeightFromAlpha;
+
+ float GetParallaxHeight(float2 uv)
+ {
+ return clamp(UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxHeightMap, _MainTex, TRANSFORM_TEX(uv, _ParallaxHeightMap) + _Time.x * float4(0,0,0,0)).g, 0, .99999);
+ }
+ /*
+ float2 ParallaxOffset(float2 viewDir)
+ {
+ float height = GetParallaxHeight();
+ height -= 0.5;
+ height *= float(0);
+ return viewDir * height;
+ }
+ */
+ float2 ParallaxRaymarching(float2 viewDir)
+ {
+ float2 uvOffset = 0;
+ float stepSize = 0.1;
+ float2 uvDelta = viewDir * (stepSize * float(0));
+
+ float stepHeight = 1;
+ float surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)]);
+
+
+ float2 prevUVOffset = uvOffset;
+ float prevStepHeight = stepHeight;
+ float prevSurfaceHeight = surfaceHeight;
+
+ for (int i = 1; i < 10 && stepHeight > surfaceHeight; i ++)
+ {
+ prevUVOffset = uvOffset;
+ prevStepHeight = stepHeight;
+ prevSurfaceHeight = surfaceHeight;
+
+ uvOffset -= uvDelta;
+ stepHeight -= stepSize;
+ surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)] + uvOffset);
+ }
+
+ float prevDifference = prevStepHeight - prevSurfaceHeight;
+ float difference = surfaceHeight - stepHeight;
+ float t = prevDifference / (prevDifference + difference);
+ uvOffset = prevUVOffset -uvDelta * t;
+
+ return uvOffset *= POI2D_SAMPLER_PAN(_ParallaxHeightMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+
+ void calculateandApplyParallax()
+ {
+
+ if (float(0))
+ {
+ float2 parallaxOffset = ParallaxRaymarching(poiCam.tangentViewDir.xy);
+
+ if(float(0) == 0)
+ {
+ poiMesh.uv[0] += parallaxOffset;
+ }
+
+ if(float(0) == 1)
+ {
+ poiMesh.uv[1] += parallaxOffset;
+ }
+
+ if(float(0) == 2)
+ {
+ poiMesh.uv[2] += parallaxOffset;
+ }
+
+ if(float(0) == 3)
+ {
+ poiMesh.uv[3] += parallaxOffset;
+ }
+ }
+ }
+
+ void calculateAndApplyInternalParallax(inout float4 finalColor)
+ {
+ #if defined(_PARALLAXMAP)
+
+ if(float(0))
+ {
+ float3 parallax = 0;
+
+ for (int j = float(1); j > 0; j --)
+ {
+ float ratio = (float)j / float(1);
+ float2 parallaxOffset = _Time.y * (float4(0,0,0,0) + (1 - ratio) * float4(0,0,0,0));
+ float fade = lerp(float(0), float(1), ratio);
+ float4 parallaxColor = UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxInternalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _ParallaxInternalMap) + lerp(float(0), float(1), ratio) * - poiCam.tangentViewDir.xy + parallaxOffset);
+ float3 parallaxTint = lerp(float4(1,1,1,1), float4(1,1,1,1), ratio);
+ float parallaxHeight;
+ if(float(0))
+ {
+ parallaxTint *= parallaxColor.rgb;
+ parallaxHeight = parallaxColor.a;
+ }
+ else
+ {
+ parallaxHeight = parallaxColor.r;
+ }
+ //float parallaxColor *= lerp(float4(1,1,1,1), float4(1,1,1,1), 1 - ratio);
+
+ if (float(0) == 1)
+ {
+ parallax = lerp(parallax, parallaxTint * fade, parallaxHeight >= 1 - ratio);
+ }
+ else
+ {
+ parallax += parallaxTint * parallaxHeight * fade;
+ }
+ }
+ //parallax /= float(1);
+ finalColor.rgb += parallax * POI2D_SAMPLER_PAN(_ParallaxInternalMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
new file mode 100644
index 00000000..ff4f5563
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e7db4af27502be74c8ae21ecf69b92b8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
new file mode 100644
index 00000000..81230e8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
@@ -0,0 +1,233 @@
+/*
+USED---------------------------------------------
+"_PARALLAXMAP",
+"_REQUIRE_UV2",
+"_SUNDISK_NONE",
+"_DETAIL_MULX2",
+"_GLOSSYREFLECTIONS_OFF",
+"_METALLICGLOSSMAP",
+"_COLORADDSUBDIFF_ON",
+"_SPECGLOSSMAP",
+"_TERRAIN_NORMAL_MAP",
+"_SUNDISK_SIMPLE",
+"_EMISSION",
+"_COLORCOLOR_ON",
+"_COLOROVERLAY_ON",
+"_ALPHAMODULATE_ON",
+"_SUNDISK_HIGH_QUALITY",
+"_MAPPING_6_FRAMES_LAYOUT",
+"_NORMALMAP"
+"EFFECT_BUMP",
+"BLOOM",
+"BLOOM_LOW",
+"GRAIN",
+"DEPTH_OF_FIELD",
+"USER_LUT",
+"CHROMATIC_ABERRATION_LOW",
+"BLOOM_LENS_DIRT",
+"_FADING_ON",
+"CHROMATIC_ABERRATION",
+"DISTORT",
+"GEOM_TYPE_BRANCH",
+"_SPECULARHIGHLIGHTS_OFF",
+"_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A",
+"EFFECT_HUE_VARIATION",
+"GEOM_TYPE_LEAF",
+"GEOM_TYPE_MESH",
+"FINALPASS",
+"AUTO_EXPOSURE"
+"VIGNETTE",
+"VIGNETTE_MASKED",
+"COLOR_GRADING_HDR",
+
+UNUSED-------------------------------------------
+"_ALPHABLEND_ON",
+"_ALPHAPREMULTIPLY_ON",
+"_ALPHATEST_ON",
+"GEOM_TYPE_BRANCH_DETAIL",
+"GEOM_TYPE_FROND",
+"PIXELSNAP_ON",
+"SOFTPARTICLES_ON",
+"DITHERING",
+"TONEMAPPING_NEUTRAL",
+"TONEMAPPING_FILMIC",
+"TONEMAPPING_ACES",
+"TONEMAPPING_CUSTOM",
+"DEPTH_OF_FIELD_COC_VIEW",
+"COLOR_GRADING",
+"COLOR_GRADING_LOG_VIEW",
+"VIGNETTE_CLASSIC",
+"COLOR_GRADING_HDR_3D",
+
+DO NOT USE -----------------------------------------
+"BILLBOARD_FACE_CAMERA_POS",
+*/
+
+
+#ifndef POI_PASS
+ #define POI_PASS
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #ifdef POI_META_PASS
+ #include "UnityMetaPass.cginc"
+ #endif
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+
+ #include "CGI_PoiSpawnInVert.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+
+ #ifdef BLOOM_LOW
+ #include "CGI_PoiBulge.cginc"
+ #endif
+
+ #include "CGI_PoiVert.cginc"
+
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+
+ #include "CGI_PoiDithering.cginc"
+
+ #ifdef _PARALLAXMAP
+ #include "CGI_PoiParallax.cginc"
+ #endif
+
+ #ifdef USER_LUT
+ #include "CGI_PoiUVDistortion.cginc"
+ #endif
+
+ #ifdef VIGNETTE
+ #include "CGI_PoiRGBMask.cginc"
+ #endif
+
+ #include "CGI_PoiData.cginc"
+
+ #ifdef _SPECULARHIGHLIGHTS_OFF
+ #include "CGI_PoiBlackLight.cginc"
+ #endif
+
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+
+ #ifdef DEPTH_OF_FIELD
+ #include "CGI_PoiHologram.cginc"
+ #endif
+
+ #ifdef BLOOM_LENS_DIRT
+ #include "CGI_PoiIridescence.cginc"
+ #endif
+
+
+ #ifdef FUR
+ #include "CGI_PoiFur.cginc"
+ #include "CGI_PoiGeomFur.cginc"
+ #endif
+
+ #ifdef VIGNETTE_MASKED
+ #include "CGI_PoiLighting.cginc"
+ #endif
+
+ #include "CGI_PoiMainTex.cginc"
+
+ #ifdef GEOM_TYPE_BRANCH
+ #include "CGI_PoiDecal.cginc"
+ #endif
+
+ #ifdef CHROMATIC_ABERRATION
+ #include "CGI_PoiVoronoi.cginc"
+ #endif
+
+ #ifdef _DETAIL_MULX2
+ #include "CGI_PoiPanosphere.cginc"
+ #endif
+
+ #ifdef EFFECT_BUMP
+ #include "CGI_PoiMSDF.cginc"
+ #endif
+
+ #ifdef GRAIN
+ #include "CGI_PoiDepthColor.cginc"
+ #endif
+
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _GLOSSYREFLECTIONS_OFF
+ #include "CGI_PoiRimLighting.cginc"
+ #endif
+
+ #ifdef _MAPPING_6_FRAMES_LAYOUT
+ #include "CGI_PoiEnvironmentalRimLighting.cginc"
+ #endif
+
+ #ifdef _METALLICGLOSSMAP
+ #include "CGI_PoiMetal.cginc"
+ #endif
+
+ #ifdef _COLORADDSUBDIFF_ON
+ #include "CGI_PoiMatcap.cginc"
+ #endif
+
+ #ifdef _SPECGLOSSMAP
+ #include "CGI_PoiSpecular.cginc"
+ #endif
+
+ #ifdef BLOOM
+ #include "CGI_PoiVideo.cginc"
+ #endif
+
+ #ifdef _TERRAIN_NORMAL_MAP
+ #include "CGI_PoiSubsurfaceScattering.cginc"
+ #endif
+
+ #include "CGI_PoiBlending.cginc"
+ #include "CGI_PoiGrab.cginc"
+
+ #ifdef _SUNDISK_SIMPLE
+ #include "CGI_PoiGlitter.cginc"
+ #endif
+
+ #ifdef _EMISSION
+ #include "CGI_PoiEmission.cginc"
+ #endif
+
+ #ifdef _COLORCOLOR_ON
+ #include "CGI_PoiClearCoat.cginc"
+ #endif
+
+ #include "CGI_PoiAlphaToCoverage.cginc"
+
+ #ifdef _COLOROVERLAY_ON
+ #include "CGI_PoiDebug.cginc"
+ #endif
+ #include "CGI_PoiFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
new file mode 100644
index 00000000..54dc7616
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 92aadfc6f2fc4c540b906b6dfdd3fbd0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
new file mode 100644
index 00000000..5e365972
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
@@ -0,0 +1,26 @@
+#ifndef POI_PASS_OUTLINE
+ #define POI_PASS_OUTLINE
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiOutlineVert.cginc"
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiLighting.cginc"
+ #include "CGI_PoiMainTex.cginc"
+ #include "CGI_PoiData.cginc"
+ #include "CGI_PoiDithering.cginc"
+ #include "CGI_PoiOutlineFrag.cginc"
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
new file mode 100644
index 00000000..19719c50
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7982c288d9d4af7478dd49124442155b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
new file mode 100644
index 00000000..d21a5d4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
@@ -0,0 +1,44 @@
+#ifndef POI_PASS_SHADOW
+ #define POI_PASS_SHADOW
+
+ #pragma multi_compile_shadowcaster
+ #include "UnityCG.cginc"
+ #include "UnityShaderVariables.cginc"
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiShadowIncludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiMirror.cginc"
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+ #include "CGI_PoiData.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+ #include "CGI_PoiDithering.cginc"
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+ #include "CGI_PoiSpawnInVert.cginc"
+ #include "CGI_PoiShadowVert.cginc"
+ #include "CGI_PoiShadowFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
new file mode 100644
index 00000000..e1938347
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fd1dc3f55efff0b4aa29d3937adcbfe8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
new file mode 100644
index 00000000..d4cd1697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
@@ -0,0 +1,131 @@
+#ifndef POI_RGBMASK
+ #define POI_RGBMASK
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RGBMask); float4 _RGBMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RedTexure); float4 _RedTexure_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_GreenTexture); float4 _GreenTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BlueTexture); float4 _BlueTexture_ST;
+
+ #ifdef GEOM_TYPE_MESH
+ POI_NORMAL_NOSAMPLER(_RgbNormalR);
+ POI_NORMAL_NOSAMPLER(_RgbNormalG);
+ POI_NORMAL_NOSAMPLER(_RgbNormalB);
+ float _RgbNormalsEnabled;
+ #endif
+
+ float4 _RedColor;
+ float4 _GreenColor;
+ float4 _BlueColor;
+
+ float4 _RGBMaskPanning;
+ float4 _RGBRedPanning;
+ float4 _RGBGreenPanning;
+ float4 _RGBBluePanning;
+
+ float _RGBBlendMultiplicative;
+
+ float _RGBMaskUV;
+ float _RGBRed_UV;
+ float _RGBGreen_UV;
+ float _RGBBlue_UV;
+ float _RGBUseVertexColors;
+ float _RGBNormalBlend;
+
+ static float3 rgbMask;
+
+ void calculateRGBNormals(inout half3 mainTangentSpaceNormal)
+ {
+ #ifdef GEOM_TYPE_MESH
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+
+ if(float(0))
+ {
+
+ if(float(0) == 0)
+ {
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.r);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.g);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.b);
+ }
+ return;
+ }
+ else
+ {
+ half3 newNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0) * rgbMask.r);
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.g);
+ normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.b);
+ mainTangentSpaceNormal = BlendNormals(newNormal, mainTangentSpaceNormal);
+ return;
+ }
+ }
+ #endif
+ }
+
+ float3 calculateRGBMask(float3 baseColor)
+ {
+ //If RGB normals are in use this data will already exist
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+ float4 red = POI2D_SAMPLER_PAN(_RedTexure, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 green = POI2D_SAMPLER_PAN(_GreenTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 blue = POI2D_SAMPLER_PAN(_BlueTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+
+ if(float(0))
+ {
+ float3 RGBColor = 1;
+ RGBColor = lerp(RGBColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ baseColor *= RGBColor;
+ }
+ else
+ {
+ baseColor = lerp(baseColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ }
+
+ return baseColor;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
new file mode 100644
index 00000000..82896ceb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fedb03e8a468e8244ba8be15264eb71c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
new file mode 100644
index 00000000..137ef6de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
@@ -0,0 +1,4 @@
+#ifndef POI_RNG
+ #define POI_RNG
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
new file mode 100644
index 00000000..95d10841
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 17345e293ff1e684b84d45b4b379ad3d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
new file mode 100644
index 00000000..11f3eea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_RANDOM
+ #define POI_RANDOM
+
+ float _EnableRandom;
+ float m_start_Angle;
+ float _AngleType;
+ float3 _AngleForwardDirection;
+ float _CameraAngleMin;
+ float _CameraAngleMax;
+ float _ModelAngleMin;
+ float _ModelAngleMax;
+ float _AngleMinAlpha;
+ float _AngleCompareTo;
+
+ float ApplyAngleBasedRendering(float3 modelPos, float3 worldPos)
+ {
+ half cameraAngleMin = float(45) / 180;
+ half cameraAngleMax = float(90) / 180;
+ half modelAngleMin = float(45) / 180;
+ half modelAngleMax = float(90) / 180;
+ float3 pos = float(0) == 0 ? modelPos : worldPos;
+ half3 cameraToModelDirection = normalize(pos - getCameraPosition());
+ half3 modelForwardDirection = normalize(mul(unity_ObjectToWorld, normalize(float4(0,0,1,0))));
+ half cameraLookAtModel = remapClamped(.5 * dot(cameraToModelDirection, getCameraForward()) + .5, cameraAngleMax, cameraAngleMin, 0, 1);
+ half modelLookAtCamera = remapClamped(.5 * dot(-cameraToModelDirection, modelForwardDirection) + .5, modelAngleMax, modelAngleMin, 0, 1);
+ if (float(0) == 0)
+ {
+ return max(cameraLookAtModel, float(0));
+ }
+ else if(float(0) == 1)
+ {
+ return max(modelLookAtCamera, float(0));
+ }
+ else if(float(0) == 2)
+ {
+ return max(cameraLookAtModel * modelLookAtCamera, float(0));
+ }
+ return 1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
new file mode 100644
index 00000000..67d662bb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1f198b51227682b41ad41f70e6114efa
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
new file mode 100644
index 00000000..d4571c0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
@@ -0,0 +1,47 @@
+#ifndef POI_RIM
+ #define POI_RIM
+
+ float4 _RimLightColor;
+ float _RimLightingInvert;
+ float _RimWidth;
+ float _RimStrength;
+ float _RimSharpness;
+ float _RimLightColorBias;
+ float _ShadowMix;
+ float _ShadowMixThreshold;
+ float _ShadowMixWidthMod;
+ float _EnableRimLighting;
+ float _RimBrighten;
+ float _RimLightNormal;
+
+ POI_TEXTURE_NOSAMPLER(_RimTex);
+ POI_TEXTURE_NOSAMPLER(_RimMask);
+ POI_TEXTURE_NOSAMPLER(_RimWidthNoiseTexture);
+
+ float _RimWidthNoiseStrength;
+
+ float4 rimColor = float4(0, 0, 0, 0);
+ float rim = 0;
+
+ void applyRimLighting(inout float4 albedo, inout float3 rimLightEmission)
+ {
+ float rimNoise = POI2D_SAMPLER_PAN(_RimWidthNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimNoise = (rimNoise - .5) * float(0.1);
+
+ float viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+
+ if (float(0))
+ {
+ viewDotNormal = 1 - abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+ }
+ float rimWidth = float(0.8);
+ rimWidth -= rimNoise;
+ float rimMask = POI2D_SAMPLER_PAN(_RimMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimColor = POI2D_SAMPLER_PAN(_RimTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ rimWidth = max(lerp(rimWidth, rimWidth * lerp(0, 1, poiLight.lightMap - float(0.5)) * float(0.5), float(0)),0);
+ rim = 1 - smoothstep(min(float(0.25), rimWidth), rimWidth, viewDotNormal);
+ rim *= float4(1,1,1,1).a * rimColor.a * rimMask;
+ rimLightEmission = rim * lerp(albedo, rimColor, float(0)) * float(0);
+ albedo.rgb = lerp(albedo.rgb, lerp(albedo.rgb, rimColor, float(0)) + lerp(albedo.rgb, rimColor, float(0)) * float(0), rim);
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
new file mode 100644
index 00000000..f5314fd0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 82d5ee4b71f766b449e83b1560b89cfd
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
new file mode 100644
index 00000000..16701f61
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
@@ -0,0 +1,116 @@
+#ifndef SHADOW_FRAG
+ #define SHADOW_FRAG
+
+ float2 _MainDistanceFade;
+ float _ForceOpaque;
+ float _MainShadowClipMod;
+ float2 _AlphaMaskPan;
+ float _AlphaMaskUV;
+ sampler3D _DitherMaskLOD;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+
+ half4 fragShadowCaster(
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ V2FShadow i, uint facing: SV_IsFrontFace
+ #endif
+ ): SV_Target
+ {
+ poiMesh.uv[0] = i.uv;
+ poiMesh.uv[1] = i.uv1;
+ poiMesh.uv[2] = i.uv2;
+ poiMesh.uv[3] = i.uv3;
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+
+
+ //Possible Bug with clip
+ float clipValue = clamp(float(0.5) + float(0), - .001, 1.001);
+
+ poiMesh.vertexColor = saturate(i.vertexColor);
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+ #if defined(UNITY_STANDARD_USE_SHADOW_UVS)
+
+ half4 alpha = mainTexture;
+
+
+ if (float(0))
+ {
+ if(IsInMirror())
+ {
+ alpha.a = UNITY_SAMPLE_TEX2D_SAMPLER(_MirrorTexture, _MainTex, TRANSFORM_TEX(i.uv, _MirrorTexture)).a;
+ }
+ }
+
+
+ alpha.a *= smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(i.modelPos, _WorldSpaceCameraPos));
+ half alphaMask = POI2D_PAN(_AlphaMask, poiMesh.uv[float(0)], float4(0,0,0,0));
+ alpha.a *= alphaMask;
+ alpha.a *= float4(1,1,1,1).a + .0001;
+ alpha.a += float(0);
+ alpha.a = saturate(alpha.a);
+
+
+ if(float(0) == 0)
+ {
+ alpha.a = 1;
+ }
+
+
+ if(float(0) == 1)
+ {
+ applyShadowDithering(alpha.a, calcScreenUVs(i.grabPos).xy);
+ }
+
+ #ifdef POI_DISSOLVE
+ float3 fakeEmission = 1;
+ calculateDissolve(alpha, fakeEmission);
+ #endif
+
+ if(float(0) == 1)
+ {
+ clip(alpha.a - 0.001);
+ }
+
+ /*
+ return poiMesh.vertexColor.g;
+
+ #ifdef POI_RANDOM
+ alpha.a *= i.angleAlpha;
+ #endif
+
+
+ if(float(0) >= 1)
+ {
+ applySpawnInShadow(uv[0], i.localPos);
+
+ #if defined(POI_FLIPBOOK)
+ alpha.a *= applyFlipbookAlphaToShadow(uv[float(0)]);
+ #endif
+ }
+ */
+
+ if (float(0) == 1)
+ {
+ clip(alpha.a - clipValue);
+ }
+
+
+ if(float(0) > 1)
+ {
+ float dither = tex3D(_DitherMaskLOD, float3(i.pos.xy * .25, alpha.a * 0.9375)).a;
+ clip(dither - 0.01);
+ }
+
+ #endif
+ SHADOW_CASTER_FRAGMENT(i)
+ }
+
+ #endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
new file mode 100644
index 00000000..6f8da493
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9374058c986f54e4fb4c3bfec9817e7f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
new file mode 100644
index 00000000..fd8f19a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
@@ -0,0 +1,41 @@
+#ifndef SHADOW_INCLUDES
+ #define SHADOW_INCLUDES
+
+ #define UNITY_STANDARD_USE_SHADOW_UVS 1
+
+ float4 _Color;
+ sampler2D _AlphaMask; float4 _AlphaMask_ST;
+
+ struct VertexInputShadow
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ struct V2FShadow
+ {
+ V2F_SHADOW_CASTER_NOPOS
+ float4 pos: SV_POSITION;
+ float2 uv: TEXCOORD1;
+ float2 uv1: TEXCOORD2;
+ float2 uv2: TEXCOORD3;
+ float2 uv3: TEXCOORD4;
+ float3 modelPos: TEXCOORD5;
+ float4 worldPos: TEXCOORD6;
+ float4 localPos: TEXCOORD7;
+ float3 angleAlpha: TEXCOORD8;
+ float4 grabPos: TEXCOORD9;
+ fixed3 barycentricCoordinates: TEXCOORD10;
+ float4 vertexColor: TEXCOORD11;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
new file mode 100644
index 00000000..94136b5d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 023d53ad0c9c9df4a962f92ab3c4f8df
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
new file mode 100644
index 00000000..f0b7184a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
@@ -0,0 +1,80 @@
+float _EnableTouchGlow;
+float _EnableBulge;
+float _VertexManipulationHeightUV;
+
+V2FShadow vertShadowCaster(VertexInputShadow v)
+{
+ V2FShadow o;
+ UNITY_SETUP_INSTANCE_ID(v);
+
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(V2FShadow, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.uv = v.uv0;
+ o.uv1 = v.uv1;
+ o.uv2 = v.uv2;
+ o.uv3 = v.uv3;
+
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, v.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.vertexColor = v.color;
+
+
+ if(_EnableTouchGlow || _EnableBulge)
+ {
+ o.pos = UnityObjectToClipPos(float3(0, 0, -5));
+ o.localPos.xyz = float3(0, 0, -5);
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ }
+
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+
+ o.pos = UnityClipSpaceShadowCasterPos(o.localPos, v.normal);
+ o.pos = UnityApplyLinearShadowBias(o.pos);
+
+ return o;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
new file mode 100644
index 00000000..3ca905b4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 436ebb45e5bf4514baa741c57fb20377
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
new file mode 100644
index 00000000..0c18d1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+ #endif
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_SpawnInNoise); float4 _SpawnInNoise_ST;
+
+ float calculateGradientValueFrag(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnIn(inout float4 finalColor, inout float3 spawnInEmission, float2 uv, float3 localPos)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ spawnInEmission = saturate(inverseGradient + _SpawnInAlpha + _SpawnInEmissionOffset +noise - 1) * _SpawnInEmissionColor;
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+
+ void applySpawnInShadow(float2 uv, float3 localPos)
+ {
+
+ if(_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float alpha = gradient - _SpawnInAlpha - noise + length(_SpawnInVertOffset);
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
new file mode 100644
index 00000000..79147307
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e028a81145e3bdf42bb50a41e74c292b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
new file mode 100644
index 00000000..fdcc457f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
@@ -0,0 +1,40 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+
+ #endif
+ //sampler2D _SpawnInNoiseVert; float4 _SpawnInNoiseVert_ST;
+
+ float calculateGradientValueVert(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnInVert(inout float4 worldPos, inout float4 localPos, float2 uv)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = 0;
+ float gradient = calculateGradientValueVert(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ worldPos.xyz += saturate(inverseGradient + _SpawnInAlpha + _SpawnInVertOffsetOffset -1) * float3(0, _SpawnInVertOffset, 0);
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+ //float noise = tex2Dlod(_SpawnInNoise, float4(TRANSFORM_TEX(uv, _SpawnInNoise))).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
new file mode 100644
index 00000000..00fe9b4e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: bb4c57dbd3ed50345a4c2bd2ffc6a7c3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
new file mode 100644
index 00000000..f5287465
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
@@ -0,0 +1,488 @@
+#ifndef POI_SPECULAR
+ #define POI_SPECULAR
+ float _SpecWhatTangent;
+ float _SpecularType;
+ float _SmoothnessFrom;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap);
+ fixed _CenterOutSpecColor;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro);
+ float _SpecularAnisoJitterMirrored;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoFakeUV);
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask);
+ float _SpecularAnisoJitterMicroMultiplier;
+ float _SpecularAnisoJitterMacroMultiplier;
+ float4 _SpecularTint;
+ float _SpecularSmoothness;
+ float _Spec1Offset;
+ float _Spec1JitterStrength;
+ float _Spec2Smoothness;
+ float _Spec2Offset;
+ float _Spec2JitterStrength;
+ float _AnisoUseTangentMap;
+ float _AnisoSpec1Alpha;
+ float _AnisoSpec2Alpha;
+ float _SpecularInvertSmoothness;
+ half _SpecularMetallic;
+ float _SpecularNormal;
+ float _SpecularNormal1;
+ // Toon
+ fixed _SpecularToonStart;
+ fixed _SpecularToonEnd;
+ half4 _SpecularToonInnerOuter;
+
+ float _EnableSpecular1;
+ float _SpecWhatTangent1;
+ float _SpecularType1;
+ float _SmoothnessFrom1;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro1);
+ float _SpecularAnisoJitterMirrored1;
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask1);
+ float _SpecularAnisoJitterMicroMultiplier1;
+ float _SpecularAnisoJitterMacroMultiplier1;
+ float4 _SpecularTint1;
+ float _SpecularSmoothness1;
+ float _Spec1Offset1;
+ float _Spec1JitterStrength1;
+ float _Spec2Smoothness1;
+ float _Spec2Offset1;
+ float _Spec2JitterStrength1;
+ float _AnisoUseTangentMap1;
+ float _AnisoSpec1Alpha1;
+ float _AnisoSpec2Alpha1;
+ float _SpecularInvertSmoothness1;
+ half _SpecularMetallic1;
+ // Toon
+ half4 _SpecularToonInnerOuter1;
+ fixed _SpecularToonStart1;
+ fixed _SpecularToonEnd1;
+
+ UnityIndirect ZeroIndirect()
+ {
+ UnityIndirect ind;
+ ind.diffuse = 0;
+ ind.specular = 0;
+ return ind;
+ }
+
+ // From unity just putting it here in case I want to mod it
+ half4 poiRealisticSpecular(half3 diffColor, half3 specColor, half oneMinusReflectivity, half smoothness,
+ float3 normal, float3 halfDir,
+ UnityLight light, UnityIndirect gi)
+ {
+ float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
+ #define UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV 0
+
+ #if UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV
+ half shiftAmount = dot(normal, poiCam.viewDir);
+ normal = shiftAmount < 0.0f ? normal + poiCam.viewDir * (-shiftAmount + 1e-5f): normal;
+ float nv = saturate(dot(normal, poiCam.viewDir));
+ #else
+ half nv = abs(dot(normal, poiCam.viewDir));
+ #endif
+
+ float nl = saturate(dot(normal, light.dir));
+ float nh = saturate(dot(normal, halfDir));
+
+ half lv = saturate(dot(light.dir, poiCam.viewDir));
+ half lh = saturate(dot(light.dir, halfDir));
+
+ half diffuseTerm = DisneyDiffuse(nv, nl, lh, perceptualRoughness) * nl;
+
+ float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
+
+ roughness = max(roughness, 0.002);
+ float V = SmithJointGGXVisibilityTerm(nl, nv, roughness);
+ float D = GGXTerm(nh, roughness);
+
+ float specularTerm = V * D * UNITY_PI;
+
+ #ifdef UNITY_COLORSPACE_GAMMA
+ specularTerm = sqrt(max(1e-4h, specularTerm));
+ #endif
+
+ specularTerm = max(0, specularTerm * nl);
+ #if defined(_POI_SPECULARHIGHLIGHTS_OFF)
+ specularTerm = 0.0;
+ #endif
+
+ half surfaceReduction;
+ #ifdef UNITY_COLORSPACE_GAMMA
+ surfaceReduction = 1.0 - 0.28 * roughness * perceptualRoughness;
+ #else
+ surfaceReduction = 1.0 / (roughness * roughness + 1.0);
+ #endif
+
+ specularTerm *= any(specColor) ? 1.0: 0.0;
+
+ half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
+ half3 color = diffColor * (gi.diffuse + light.color * diffuseTerm)
+ + specularTerm * light.color * FresnelTerm(specColor, lh)
+ + surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, nv);
+
+ return half4(color, 1);
+ }
+
+ half3 calculateRealisticSpecular(float4 albedo, float2 uv, float4 specularTint, float specularSmoothness, float invertSmoothness, float mixAlbedoWithTint, float4 specularMap, float3 specularLight, float3 normal, float attenuation, float3 lightDirection, float nDotL, float3 halfDir)
+ {
+ half oneMinusReflectivity;
+ half3 finalSpecular;
+ UnityLight unityLight;
+ unityLight.color = specularLight;
+ unityLight.dir = lightDirection;
+ unityLight.ndotl = nDotL;
+
+
+ if (float(1) == 0)
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularMap.rgb * specularTint.rgb, /*out*/ oneMinusReflectivity);
+ finalSpecular = poiRealisticSpecular(diffColor, specularMap.rgb, oneMinusReflectivity, specularMap.a * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ else
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularTint.rgb, /*out*/ oneMinusReflectivity);
+ float smoothness = max(max(specularMap.r, specularMap.g), specularMap.b);
+ finalSpecular = poiRealisticSpecular(diffColor, 1, oneMinusReflectivity, smoothness * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ finalSpecular *= lerp(1, albedo.rgb, mixAlbedoWithTint);
+ return finalSpecular;
+ }
+
+ half3 calculateToonSpecular(float4 albedo, float2 uv, float2 specularToonInnerOuter, float specularMixAlbedoIntoTint, float smoothnessFrom, float4 specularMap, float3 specularLight, float3 normal, float3 halfDir, float attenuation)
+ {
+ half3 finalSpecular = smoothstep(1 - specularToonInnerOuter.y, 1 - specularToonInnerOuter.x, dot(halfDir, normal)) * specularLight;
+
+ if (smoothnessFrom == 0)
+ {
+ finalSpecular.rgb *= specularMap.rgb * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ finalSpecular *= specularMap.a;
+ }
+ else
+ {
+ finalSpecular *= specularMap.r * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+ return finalSpecular;
+ }
+
+ float3 strandSpecular(float TdotL, float TdotV, float specPower, float nDotL)
+ {
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+ float Specular = saturate(nDotL) * pow(saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV), specPower);
+ half normalization = sqrt((specPower + 1) * ((specPower) + 1)) / (8 * pi);
+ Specular *= normalization;
+ return Specular;
+ }
+
+ half3 AnisotropicSpecular(
+ float specWhatTangent, float anisoUseTangentMap, float specularSmoothness, float spec2Smoothness,
+ float anisoSpec1Alpha, float anisoSpec2Alpha, float4 specularTint, float specularMixAlbedoIntoTint, float4 specularMap, float3 specularLight, float3 lightDirection, float3 halfDir, float nDotL, float jitter, float4 packedTangentMap, in float4 albedo)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ tangentDirectionMap += float(0) +jitter;
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+ half specPower = RoughnessToSpecPower(1.0 - specularSmoothness * specularMap.a);
+ half spec2Power = RoughnessToSpecPower(1.0 - spec2Smoothness * specularMap.a);
+ half Specular = 0;
+
+ float3 spec = strandSpecular(TdotL, TdotV, specPower, nDotL) * anisoSpec1Alpha;
+ float3 spec2 = strandSpecular(TdotL, TdotV, spec2Power, nDotL) * anisoSpec2Alpha;
+
+ return max(spec, spec2) * specularMap.rgb * specularTint.a * specularLight * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+
+ inline float3 toonAnisoSpecular(float specWhatTangent, float anisoUseTangentMap, float3 lightDirection, float halfDir, float4 specularMap, float nDotL, fixed gradientStart, fixed gradientEnd, float4 specColor, float4 finalColor, fixed metallic, float jitter, float mirrored, float4 packedTangentMap)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ if (!mirrored)
+ {
+ tangentDirectionMap += jitter;
+ }
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+
+ float specular = saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV);
+
+ fixed smoothAlpha = specular;
+ if(mirrored)
+ {
+ smoothAlpha = max(specular - jitter, 0);
+ }
+
+ specular = smoothstep(gradientStart, gradientEnd, smoothAlpha);
+
+ /*
+
+ if(_CenterOutSpecColor)
+ {
+ specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, clamp(float2(specular, specular), 0.01, .99), float4(0,0,0,0));
+ }
+ */
+
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+
+ return saturate(nDotL) * specular * poiLight.color * specColor * specularMap.rgb * lerp(1, finalColor, metallic) * specularMap.a;
+ }
+
+ inline float SpecularHQ(half roughness, half dotNH, half dotLH)
+ {
+ roughness = saturate(roughness);
+ roughness = max((roughness * roughness), 0.002);
+ half roughnessX2 = roughness * roughness;
+
+ half denom = dotNH * dotNH * (roughnessX2 - 1.0) + 1.0f;
+ half D = roughnessX2 / (3.14159 * denom * denom);
+
+ half k = roughness / 2.0f;
+ half k2 = k * k;
+ half invK2 = 1.0f - k2;
+
+ half vis = rcp(dotLH * dotLH * invK2 + k2);
+
+ float specTerm = vis * D;
+
+ return specTerm;
+ }
+
+ float3 calculateNewSpecular(in float3 specularMap, uint colorFrom, in float4 albedo, in float3 specularTint, in float specularMetallic, in float specularSmoothness, in half dotNH, in half dotLH, in float3 lightColor, in float attenuation)
+ {
+ float3 specColor = specularTint;
+ float metallic = specularMetallic;
+ float roughness = 1 - specularSmoothness;
+ float perceptualRoughness = roughness;
+ //float reflectInverse = DielectricSpec.a - metallic * DielectricSpec.a;
+ //float reflectivity = 1.0h - reflectInverse;
+ float3 specMapColor = lerp(specularMap, 1, colorFrom);
+ float3 specularColor = lerp(DielectricSpec.rgb * specMapColor, lerp(specularMap, albedo.rgb, colorFrom), metallic);
+ //albedo.rgb *= reflectInverse;
+ return clamp(specularColor * lightColor * attenuation * specularTint * SpecularHQ(perceptualRoughness, dotNH, dotLH), 0, lightColor * specularTint);
+ }
+
+ float3 calculateSpecular(in float4 albedo)
+ {
+ half3 finalSpecular = 0;
+ half3 finalSpecular1 = 0;
+ float4 realisticAlbedo = albedo;
+ float4 realisticAlbedo1 = albedo;
+ float4 specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half metallic = POI2D_SAMPLER_PAN(_SpecularMetallicMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ half specularMask = POI2D_SAMPLER_PAN(_SpecularMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float attenuation = saturate(poiLight.nDotL);
+ #ifdef POI_LIGHTING
+
+ if (float(0) && float(0) == 0 && float(0) == 1)
+ {
+ attenuation = poiLight.rampedLightMap;
+ }
+ #endif
+
+
+ if(float(1) == 1) // Realistic
+ {
+ if (float(1) == 1)
+ {
+ specularMap.a = specularMap.r;
+ specularMap.rgb = 1;
+ }
+
+ if(float(0))
+ {
+ specularMap.a = 1 - specularMap.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, attenuation);
+ #else
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic, jitter, float(0), packedTangentMap);
+ finalSpecular *= attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular += calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic, float(1), specularMap, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += AnisotropicSpecular(float(0), float(0), float(1), float(0), float(1), float(1), float4(1,1,1,1), metallic, specularMap, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular *= float4(1,1,1,1);
+ finalSpecular *= attenuation;
+ }
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+
+ finalSpecular *= float4(1,1,1,1).a;
+ finalSpecular = finalSpecular.rgb;
+ finalSpecular *= specularMask;
+
+
+ if (float(0))
+ {
+ float4 specularMap1 = POI2D_SAMPLER_PAN(_SpecularMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half specularMask1 = POI2D_SAMPLER_PAN(_SpecularMask1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ half metallic1 = POI2D_SAMPLER_PAN(_SpecularMetallicMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ float attenuation = poiLight.attenuation;
+
+ if(float(1) == 1) // Realistic
+ {
+
+ if (float(1) == 1)
+ {
+ specularMap1.a = specularMap1.r;
+ specularMap1.rgb = 1;
+ }
+ else
+ {
+ realisticAlbedo1.rgb = specularMap1.rgb;
+ }
+
+
+ if(float(0))
+ {
+ specularMap1.a = 1 - specularMap1.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, saturate(poiLight.nDotL));
+ #else
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap1, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic1, jitter, float(0), packedTangentMap);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular1 = calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic1, float(1), specularMap1, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular1 *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 = AnisotropicSpecular(float(0), float(0), float(0.75), float(0), float(1), float(1), float4(1,1,1,1), metallic1, specularMap1, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular1 *= float4(1,1,1,1);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ // Non Important Lights
+ #ifdef VERTEXLIGHT_ON
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular1 += calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+ #endif
+
+ finalSpecular1 *= float4(1,1,1,1).a;
+ finalSpecular1 = finalSpecular1.rgb;
+ finalSpecular1 *= specularMask1;
+ }
+ return finalSpecular + finalSpecular1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
new file mode 100644
index 00000000..9fb2c16a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 12561a4691e625e4abe8d64d8d56f5e0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
new file mode 100644
index 00000000..b7c21c01
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
@@ -0,0 +1,28 @@
+#ifndef SUBSURFACE
+ #define SUBSURFACE
+
+ float _SSSThicknessMod;
+ float _SSSSCale;
+ float _SSSPower;
+ float _SSSDistortion;
+ float4 _SSSColor;
+ float _EnableSSS;
+
+ POI_TEXTURE_NOSAMPLER(_SSSThicknessMap);
+
+ float3 calculateSubsurfaceScattering()
+ {
+ float SSS = 1 - POI2D_SAMPLER_PAN(_SSSThicknessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ half3 vLTLight = poiLight.direction + poiMesh.normals[0] * float(1);
+ half flTDot = pow(saturate(dot(poiCam.viewDir, -vLTLight)), float(5)) * float(0.25);
+ #ifdef FORWARD_BASE_PASS
+ half3 fLT = (flTDot) * saturate(SSS + - 1 * float(0));
+ #else
+ half3 fLT = poiLight.attenuation * (flTDot) * saturate(SSS + - 1 * float(0));
+ #endif
+
+ return fLT * poiLight.color * float4(1,0,0,1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
new file mode 100644
index 00000000..ff543ea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 24f6def60b291d54cb3e4dd4ed359065
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
new file mode 100644
index 00000000..4912473d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
@@ -0,0 +1,117 @@
+#ifndef POI_TESSELLATION
+ #define POI_TESSELLATION
+
+ float _TessellationPhongStrength;
+ float _TessellationEdgeLength;
+ float _TessellationExtrusionAmount;
+ float _TessellationUniform;
+
+ struct TessellationControlPoint
+ {
+ float4 vertex: INTERNALTESSPOS;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ };
+
+ struct TessellationFactors
+ {
+ float edge[3]: SV_TessFactor;
+ float inside: SV_InsideTessFactor;
+ };
+
+ TessellationControlPoint poiTessellationVert(appdata v)
+ {
+ TessellationControlPoint p;
+ p.vertex = v.vertex;
+ p.normal = v.normal;
+ p.tangent = v.tangent;
+ p.color = v.color;
+ p.uv0 = v.uv0;
+ p.uv1 = v.uv1;
+ p.uv2 = v.uv2;
+ p.uv3 = v.uv3;
+ return p;
+ }
+
+ float TessellationEdgeFactor(float3 p0, float3 p1)
+ {
+ #ifndef _FADING_ON
+ float edgeLength = distance(p0, p1);
+
+ float3 edgeCenter = (p0 + p1) * 0.5;
+ float viewDistance = distance(edgeCenter, _WorldSpaceCameraPos);
+
+ return edgeLength * _ScreenParams.y /
+ (_TessellationEdgeLength * viewDistance);
+ #else
+ return _TessellationUniform;
+ #endif
+ }
+
+ TessellationFactors poiPatchConst(
+ InputPatch < TessellationControlPoint, 3 > patch
+ )
+ {
+
+ TessellationFactors f;
+ float3 p0 = mul(unity_ObjectToWorld, patch[0].vertex).xyz;
+ float3 p1 = mul(unity_ObjectToWorld, patch[1].vertex).xyz;
+ float3 p2 = mul(unity_ObjectToWorld, patch[2].vertex).xyz;
+ f.edge[0] = TessellationEdgeFactor(p1, p2);
+ f.edge[1] = TessellationEdgeFactor(p2, p0);
+ f.edge[2] = TessellationEdgeFactor(p0, p1);
+ f.inside = (TessellationEdgeFactor(p1, p2) +
+ TessellationEdgeFactor(p2, p0) +
+ TessellationEdgeFactor(p0, p1)) * (1 / 3.0);
+ return f;
+ }
+
+ [UNITY_domain("tri")]
+ [UNITY_outputcontrolpoints(3)]
+ [UNITY_outputtopology("triangle_cw")]
+ [UNITY_partitioning("fractional_odd")]
+ [UNITY_patchconstantfunc("poiPatchConst")]
+ TessellationControlPoint poiHull(
+ InputPatch < TessellationControlPoint, 3 > patch,
+ uint id: SV_OutputControlPointID
+ )
+ {
+ return patch[id];
+ }
+
+ [UNITY_domain("tri")]
+ v2f poiDomain(
+ TessellationFactors factors,
+ OutputPatch < TessellationControlPoint, 3 > patch,
+ float3 barycentricCoordinates: SV_DomainLocation
+ )
+ {
+ appdata data;
+
+ #define MY_DOMAIN_PROGRAM_INTERPOLATE(fieldName) data.fieldName = patch[0].fieldName * barycentricCoordinates.x + patch[1].fieldName * barycentricCoordinates.y + patch[2].fieldName * barycentricCoordinates.z;
+
+ MY_DOMAIN_PROGRAM_INTERPOLATE(vertex)
+ float3 pp[3];
+ for (int i = 0; i < 3; ++ i)
+ {
+ pp[i] = data.vertex.xyz - patch[i].normal * (dot(data.vertex.xyz, patch[i].normal) - dot(patch[i].vertex.xyz, patch[i].normal));
+ }
+ data.vertex.xyz = _TessellationPhongStrength * (pp[0] * barycentricCoordinates.x + pp[1] * barycentricCoordinates.y + pp[2] * barycentricCoordinates.z) + (1.0f - _TessellationPhongStrength) * data.vertex.xyz;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(normal)
+ data.vertex.xyz += data.normal.xyz * _TessellationExtrusionAmount;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(tangent)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(color)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv0)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv1)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv2)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv3)
+
+ return vert(data);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
new file mode 100644
index 00000000..4445c06d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ebad47c43c5c66d44be3000cb47b6c7d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
new file mode 100644
index 00000000..38d5fd75
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_UV_DISTORTION
+ #define POI_UV_DISTORTION
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture); float4 _DistortionFlowTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture1); float4 _DistortionFlowTexture1_ST;
+ POI_TEXTURE_NOSAMPLER(_DistortionMask);
+
+ float _DistortionStrength;
+ float _DistortionStrength1;
+ float2 _DistortionSpeed;
+ float2 _DistortionSpeed1;
+
+ float2 getTorusUv(float2 uv)
+ {
+ // translated to hlsl from https://www.shadertoy.com/view/Md3Bz7
+ // http://web.cs.ucdavis.edu/~amenta/s12/findnorm.pdf
+ float phi = 6.28318530718f * uv.x;
+ float theta = 6.28318530718f * uv.y;
+ float3 c = cos(float3(phi, phi + 1.57079632679f, theta));
+ float2 result = float2(c.x * c.z, -c.y * c.z);
+ return result * 0.5 + 0.5;
+ }
+
+ float2 calculateDistortionUV(float2 uv)
+ {
+ half distortionMask = POI2D_SAMPLER_PAN(_DistortionMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flowVector = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ float4 flowVector1 = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture1, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture1) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ flowVector *= float(0.5);
+ flowVector1 *= float(0.5);
+ return uv + ((flowVector.xy + flowVector1.xy) / 2) * distortionMask;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
new file mode 100644
index 00000000..9863f3d5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9f3002d63b18b754aa33abffe1af4383
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
new file mode 100644
index 00000000..0e29a179
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_V2F
+ #define POI_V2F
+
+ struct v2f
+ {
+ float4 pos: SV_POSITION;
+ float4 uv0: TEXCOORD0;
+ float4 uv1: TEXCOORD1;
+ float3 normal: TEXCOORD2;
+ float3 tangentViewDir: TEXCOORD3;
+ float4 tangent: TEXCOORD4;
+ float4 worldPos: TEXCOORD5;
+ float4 localPos: TEXCOORD6;
+ float4 grabPos: TEXCOORD7;
+ float3 barycentricCoordinates: TEXCOORD8;
+ #if defined(GRAIN)
+ float4 worldDirection: TEXCOORD9;
+ #endif
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV: TEXCOORD10;
+ #endif
+ float3 modelPos: TEXCOORD11;
+ float angleAlpha: TEXCOORD12;
+ float4 vertexColor: TEXCOORD14;
+ #ifdef FUR
+ float furAlpha: TEXCOORD15;
+ #endif
+ UNITY_SHADOW_COORDS(16)
+ UNITY_FOG_COORDS(17)
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ UNITY_VERTEX_OUTPUT_STEREO
+ };
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
new file mode 100644
index 00000000..163e6cae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a39cc1d370adb344ba6fbc02d599f358
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
new file mode 100644
index 00000000..1558e937
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
@@ -0,0 +1,126 @@
+#ifndef POI_VERT
+ #define POI_VERT
+
+ float _VertexManipulationHeightUV;
+ float _VertexUnwrap;
+
+ #define PM UNITY_MATRIX_P
+
+ inline float4 CalculateFrustumCorrection()
+ {
+ float x1 = -PM._31 / (PM._11 * PM._34);
+ float x2 = -PM._32 / (PM._22 * PM._34);
+ return float4(x1, x2, 0, PM._33 / PM._34 + x1 * PM._13 + x2 * PM._23);
+ }
+
+ v2f vert(appdata v)
+ {
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ #ifdef _COLOROVERLAY_ON
+ v.vertex.xyz = lerp(v.vertex.xyz, float3(v.uv0.x - .5, v.uv0.y - .5, 0), float(0));
+ #endif
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.tangent, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ #ifdef _REQUIRE_UV2 //POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ TANGENT_SPACE_ROTATION;
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ //o.localPos.x *= -1;
+ //o.localPos.xz += sin(o.localPos.y * 100 + _Time.y * 5) * .0025;
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, o.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+ o.vertexColor = v.color;
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.tangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
+
+ #ifdef POI_BULGE
+ bulgyWolgy(o);
+ #endif
+
+
+ o.angleAlpha = 1;
+ #ifdef _SUNDISK_NONE //POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ #if defined(LIGHTMAP_ON)
+ o.lightmapUV.xy = v.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
+ #endif
+ #ifdef DYNAMICLIGHTMAP_ON
+ o.lightmapUV.zw = v.uv2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0.xy);
+ UNITY_TRANSFER_FOG(o, o.pos);
+
+ #if defined(_PARALLAXMAP) // POI_PARALLAX
+ v.tangent.xyz = normalize(v.tangent.xyz);
+ v.normal = normalize(v.normal);
+ float3x3 objectToTangent = float3x3(
+ v.tangent.xyz,
+ cross(v.normal, v.tangent.xyz) * v.tangent.w,
+ v.normal
+ );
+ o.tangentViewDir = mul(objectToTangent, ObjSpaceViewDir(v.vertex));
+ #endif
+
+ #ifdef POI_META_PASS
+ o.pos = UnityMetaVertexPosition(v.vertex, v.uv1.xy, v.uv2.xy, unity_LightmapST, unity_DynamicLightmapST);
+ #endif
+
+ #if defined(GRAIN)
+ float4 worldDirection;
+
+ worldDirection.xyz = o.worldPos.xyz - _WorldSpaceCameraPos;
+ worldDirection.w = dot(o.pos, CalculateFrustumCorrection());
+ o.worldDirection = worldDirection;
+ #endif
+
+ return o;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
new file mode 100644
index 00000000..b6023a72
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 537592ce1dd5e49439a6da6624b08937
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
new file mode 100644
index 00000000..94c16148
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
@@ -0,0 +1,93 @@
+#ifndef POI_VERTEX_MANIPULATION
+ #define POI_VERTEX_MANIPULATION
+
+ #include "CGI_PoiMath.cginc"
+
+ float4 _VertexManipulationLocalTranslation;
+ float4 _VertexManipulationLocalRotation;
+ float4 _VertexManipulationLocalScale;
+ float4 _VertexManipulationWorldTranslation;
+
+ float _VertexManipulationHeight;
+ float _VertexManipulationHeightBias;
+ sampler2D _VertexManipulationHeightMask; float4 _VertexManipulationHeightMask_ST;
+ float2 _VertexManipulationHeightPan;
+
+
+ //Vertex Glitching
+ float _EnableVertexGlitch;
+ sampler2D _VertexGlitchMap; float4 _VertexGlitchMap_ST;
+ float _VertexGlitchThreshold;
+ float _VertexGlitchFrequency;
+ float _VertexGlitchStrength;
+ // Rounding
+ float _VertexRoundingDivision;
+ float _VertexRoundingEnabled;
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 tangent, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ tangent.xyz = rotate_with_quaternion(tangent.xyz, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyWorldVertexTransformation(inout float4 worldPos, inout float4 localPos, inout float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyWorldVertexTransformationShadow(inout float4 worldPos, inout float4 localPos, float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyVertexRounding(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if (float(0))
+ {
+ worldPos.xyz = (ceil(worldPos * float(500)) / float(500)) - 1 / float(500) * .5;
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+ void applyVertexGlitching(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if(_EnableVertexGlitch)
+ {
+ float3 forward = getCameraPosition() - mul(unity_ObjectToWorld, float4(0, 0, 0, 1)).xyz;
+ forward.y = 0;
+ forward = normalize(forward);
+ float3 glitchDirection = normalize(cross(float3(0, 1, 0), forward));
+ float glitchAmount = frac(sin(dot(_Time.xy + worldPos.y, float2(12.9898, 78.233))) * 43758.5453123) * 2 - 1;
+ /*
+ float uvl = worldPos.y * _VertexGlitchDensity + _Time.x * _VertexGlitchMapPanSpeed;
+ float uvr = worldPos.y * _VertexGlitchDensity - _Time.x * _VertexGlitchMapPanSpeed;
+ float glitchAmountLeft = tex2Dlod(_VertexGlitchMap, float4(uvl, uvl, 0, 0)).r;
+ float glitchAmountRight = -tex2Dlod(_VertexGlitchMap, float4(uvr, uvr, 0, 0)).r;
+ float glitchAmount = glitchAmountLeft + glitchAmountRight;
+ */
+ float time = _Time.y * _VertexGlitchFrequency;
+ float randomGlitch = (sin(time) + sin(2.2 * time + 5.52) + sin(2.9 * time + 0.93) + sin(4.6 * time + 8.94)) / 4;
+ worldPos.xyz += glitchAmount * glitchDirection * (_VertexGlitchStrength * .01) * step(_VertexGlitchThreshold, randomGlitch);
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+#endif
+//
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
new file mode 100644
index 00000000..42cef6a6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ed7eb84055666fa4ea8888130195b629
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
new file mode 100644
index 00000000..ec2d37e4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
@@ -0,0 +1,266 @@
+#ifndef POI_VIDEO
+ #define POI_VIDEO
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoPixelTexture); float4 _VideoPixelTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoMaskTexture); float4 _VideoMaskTexture_ST;
+
+ float _VideoUVNumber;
+ float _VideoType;
+ float3 pixels;
+ float2 _VideoResolution;
+ sampler2D _VideoGameboyRamp;
+ half _VideoBacklight;
+ half _VideoCRTRefreshRate;
+ half _VideoCRTPixelEnergizedTime;
+ half _VideoEnableVideoPlayer;
+ half _VideoRepeatVideoTexture;
+ half _VideoPixelateToResolution;
+ float2 _VideoMaskPanning;
+ // Video Settings
+ half _VideoSaturation;
+ half _VideoContrast;
+ float2 _VideoTiling;
+ float2 _VideoOffset;
+ float2 _VideoPanning;
+ //Debug
+ half _VideoEnableDebug;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoDebugTexture); float4 _VideoDebugTexture_ST;
+
+
+ sampler2D _VRChat_VideoPlayer;
+ float4 _VRChat_VideoPlayer_TexelSize;
+
+ float4 globalVideoPlayerColor;
+ float3 globalColorToDisplayOnScreen;
+ float globalVideoOn;
+
+ float3 applyBacklight(float3 albedo, half backlightStrength)
+ {
+ return max(backlightStrength, albedo.rgb);
+ }
+
+ float3 applyViewAngleTN(float3 albedo)
+ {
+ float3 reflectionVector = normalize(reflect(poiCam.viewDir.rgb, poiMesh.normals[1].rgb));
+ float upwardShift = dot(reflectionVector, poiMesh.binormal);
+ upwardShift = pow(upwardShift, 1);
+ float sideShift = dot(reflectionVector, poiMesh.tangent);
+ sideShift *= pow(sideShift, 3);
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = LinearToGammaSpace(albedo);
+ #endif
+ albedo = saturate(lerp(half3(0.5, 0.5, 0.5), albedo, upwardShift + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = GammaToLinearSpace(albedo);
+ #endif
+ albedo = (lerp(albedo, albedo.gbr, sideShift));
+ return albedo;
+ }
+
+ float calculateCRTPixelBrightness()
+ {
+ float totalPixels = _VideoResolution.x * _VideoResolution.y;
+ float2 uvPixel = float2((floor((1 - poiMesh.uv[_VideoUVNumber].y) * _VideoResolution.y)) / _VideoResolution.y, (floor(poiMesh.uv[_VideoUVNumber].x * _VideoResolution.x)) / _VideoResolution.x);
+ float currentPixelNumber = _VideoResolution.x * (_VideoResolution.y * uvPixel.x) + _VideoResolution.y * uvPixel.y;
+ float currentPixelAlpha = currentPixelNumber / totalPixels;
+ half electronBeamAlpha = frac(_Time.y * _VideoCRTRefreshRate);
+ float electronBeamPixelNumber = totalPixels * electronBeamAlpha;
+
+ float DistanceInPixelsFromCurrentElectronBeamPixel = 0;
+ if (electronBeamPixelNumber >= currentPixelNumber)
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber - currentPixelNumber;
+ }
+ else
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber + (totalPixels - currentPixelNumber);
+ }
+ float CRTFrameTime = 1 / _VideoCRTRefreshRate;
+ float timeSincecurrentPixelWasHitByElectronBeam = (DistanceInPixelsFromCurrentElectronBeamPixel / totalPixels);
+
+ return saturate(_VideoCRTPixelEnergizedTime - timeSincecurrentPixelWasHitByElectronBeam);
+ }
+
+ void applyContrastSettings(inout float3 pixel)
+ {
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = LinearToGammaSpace(pixel);
+ #endif
+ pixel = saturate(lerp(half3(0.5, 0.5, 0.5), pixel, _VideoContrast + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = GammaToLinearSpace(pixel);
+ #endif
+ }
+
+ void applySaturationSettings(inout float3 pixel)
+ {
+ pixel = lerp(pixel.rgb, dot(pixel.rgb, float3(0.3, 0.59, 0.11)), -_VideoSaturation);
+ }
+
+ void applyVideoSettings(inout float3 pixel)
+ {
+ applySaturationSettings(pixel);
+ applyContrastSettings(pixel);
+ }
+
+ void calculateLCD(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateTN(inout float4 albedo)
+ {
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ globalColorToDisplayOnScreen = applyViewAngleTN(globalColorToDisplayOnScreen);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateCRT(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ float brightness = calculateCRTPixelBrightness();
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * brightness * _VideoBacklight;
+ }
+ void calculateOLED(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateGameboy(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ half brightness = saturate((globalColorToDisplayOnScreen.r + globalColorToDisplayOnScreen.g + globalColorToDisplayOnScreen.b) * .3333333);
+ albedo.rgb = tex2D(_VideoGameboyRamp, brightness);
+ }
+ void calculateProjector(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+
+ float3 projectorColor = albedo * globalColorToDisplayOnScreen * _VideoBacklight;
+ albedo.r = clamp(projectorColor.r, albedo.r, 1000);
+ albedo.g = clamp(projectorColor.g, albedo.g, 1000);
+ albedo.b = clamp(projectorColor.b, albedo.b, 1000);
+ }
+
+ void applyScreenEffect(inout float4 albedo, inout float3 videoEmission)
+ {
+ float4 albedoBeforeScreen = albedo;
+
+ pixels = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoPixelTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoPixelTexture) * _VideoResolution);
+ globalVideoOn = 0;
+
+ if(_VideoEnableVideoPlayer == 1)
+ {
+ float4 videoTexture = 0;
+
+ if(_VideoPixelateToResolution)
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, round(TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoResolution + .5) / _VideoResolution);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, round(poiMesh.uv[_VideoUVNumber] * _VideoResolution + .5) / _VideoResolution);
+ }
+ }
+ else
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoTiling + _VideoOffset);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, ((poiMesh.uv[_VideoUVNumber] + _Time.x * _VideoPanning) * _VideoTiling) + _VideoOffset);
+ }
+ }
+ if(videoTexture.a == 1)
+ {
+ globalColorToDisplayOnScreen = videoTexture.rgb;
+ globalVideoOn = 1;
+ }
+ }
+
+
+ if(_VideoRepeatVideoTexture == 1)
+ {
+ if(poiMesh.uv[_VideoUVNumber].x > 1 || poiMesh.uv[_VideoUVNumber].x < 0 || poiMesh.uv[_VideoUVNumber].y > 1 || poiMesh.uv[_VideoUVNumber].y < 0)
+ {
+ return;
+ }
+ }
+
+ switch(_VideoType)
+ {
+ case 0: // LCD
+ {
+ calculateLCD(albedo);
+ break;
+ }
+ case 1: // TN
+ {
+ calculateTN(albedo);
+ break;
+ }
+ case 2: // CRT
+ {
+ calculateCRT(albedo);
+ break;
+ }
+ case 3: // OLED
+ {
+ calculateOLED(albedo);
+ break;
+ }
+ case 4: // Gameboy
+ {
+ calculateGameboy(albedo);
+ break;
+ }
+ case 5: // Projector
+ {
+ calculateProjector(albedo);
+ break;
+ }
+ }
+
+ float screenMask = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoMaskTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoMaskTexture) + _Time.x * _VideoMaskPanning);
+ albedo = lerp(albedoBeforeScreen, albedo, screenMask);
+ videoEmission = max(albedo.rgb * screenMask - 1, 0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
new file mode 100644
index 00000000..907fa6ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cf32f40b31d1f2e46bb549a58552f3c1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
new file mode 100644
index 00000000..db3d3130
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
@@ -0,0 +1,304 @@
+#ifndef POI_VORONOI
+ #define POI_VORONOI
+
+ #include "CGI_PoiRNG.cginc"
+
+ float _VoronoiSpace;
+ float _VoronoiBlend;
+ float _VoronoiType;
+ float4 _VoronoiColor0;
+ float _VoronoiEmission0;
+ float4 _VoronoiColor1;
+ float _VoronoiEmission1;
+ float2 _VoronoiGradient;
+ float _VoronoiScale;
+ float3 _VoronoiSpeed;
+ float _VoronoiEnableRandomCellColor;
+ float2 _VoronoiRandomMinMaxSaturation;
+ float2 _VoronoiRandomMinMaxBrightness;
+ float3 randomPoint;
+ float _VoronoiEffectsMaterialAlpha;
+
+ POI_TEXTURE_NOSAMPLER(_VoronoiMask);
+ POI_TEXTURE_NOSAMPLER(_VoronoiNoise);
+ float _VoronoiNoiseIntensity;
+
+ float2 inoise(float3 P, float jitter)
+ {
+ float3 Pi = mod(floor(P), 289.0);
+ float3 Pf = frac(P);
+ float3 oi = float3(-1.0, 0.0, 1.0);
+ float3 of = float3(-0.5, 0.5, 1.5);
+ float3 px = Permutation(Pi.x + oi);
+ float3 py = Permutation(Pi.y + oi);
+
+ float3 p, ox, oy, oz, dx, dy, dz;
+ float2 F = 1e6;
+
+ for (int i = 0; i < 3; i ++)
+ {
+ for (int j = 0; j < 3; j ++)
+ {
+ p = Permutation(px[i] + py[j] + Pi.z + oi); // pij1, pij2, pij3
+
+ ox = frac(p * K) - Ko;
+ oy = mod(floor(p * K), 7.0) * K - Ko;
+
+ p = Permutation(p);
+
+ oz = frac(p * K) - Ko;
+
+ dx = Pf.x - of[i] + jitter * ox;
+ dy = Pf.y - of[j] + jitter * oy;
+ dz = Pf.z - of + jitter * oz;
+
+ float3 d = dx * dx + dy * dy + dz * dz; // dij1, dij2 and dij3, squared
+
+ //Find lowest and second lowest distances
+ for (int n = 0; n < 3; n ++)
+ {
+ if (d[n] < F[0])
+ {
+ F[1] = F[0];
+ F[0] = d[n];
+ randomPoint = p;
+ }
+ else if(d[n] < F[1])
+ {
+ F[1] = d[n];
+ }
+ }
+ }
+ }
+
+ return F;
+ }
+
+ float voronoi2D(in float2 x, float scale, float2 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float2 n = floor(x);
+ float2 f = frac(x);
+
+ // first pass: regular voronoi
+ float2 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 g = float2(float(i), float(j));
+ float2 o = random2(n + g);
+ float2 currentPoint = o;
+
+ float2 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint.xy = currentPoint;
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ float2 g = mg + float2(float(q), float(r));
+ float2 o = random2(n + g);
+
+ float2 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ return md;
+ }
+
+ float voronoi3D(in float3 x, float scale, float3 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float3 n = floor(x);
+ float3 f = frac(x);
+
+ // first pass: regular voronoi
+ float3 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ for (int h = -1; h <= 1; h ++)
+ {
+ float3 g = float3(float(h), float(i), float(j));
+ float3 o = random3(n + g);
+ float3 currentPoint = o;
+
+ float3 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint = currentPoint;
+ }
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ for (int p = -2; p <= 2; p ++)
+ {
+ float3 g = mg + float3(float(p), float(q), float(r));
+ float3 o = random3(n + g);
+
+ float3 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ }
+ return md;
+ }
+
+
+
+ // fracal sum, range -1.0 - 1.0
+ float VoronoiNoise_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ float VoronoiNoiseDiff_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[1]) - sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ void applyVoronoi(inout float4 finalColor, inout float3 VoronoiEmission)
+ {
+ float voronoiOctaveNumber = 1;
+ float voronoiOctaveScale = 1;
+ float voronoiOctaveAttenuation = 1;
+ randomPoint = 0;
+ float4 voronoiColor1 = _VoronoiColor1;
+
+ float voronoi = 0;
+
+ float3 position = 0;
+
+
+ if (_VoronoiSpace == 0)
+ {
+ position = poiMesh.localPos;
+ }
+
+ if(_VoronoiSpace == 1)
+ {
+ position = poiMesh.worldPos;
+ }
+
+ if(_VoronoiSpace == 2)
+ {
+ position = float3(poiMesh.uv[0].x, poiMesh.uv[0].y, 0);
+ }
+
+ float mask = POI2D_SAMPLER_PAN(_VoronoiMask, _MainTex, poiMesh.uv[_VoronoiMaskUV], _VoronoiMaskPan).r;
+ float edgeNoise = POI2D_SAMPLER_PAN(_VoronoiNoise, _MainTex, poiMesh.uv[_VoronoiNoiseUV], _VoronoiNoisePan).r * _VoronoiNoiseIntensity;
+
+
+ if(_VoronoiType == 0) // Basic
+ {
+ voronoi = voronoi2D(position.xy, _VoronoiScale, _VoronoiSpeed);
+ }
+
+ if (_VoronoiType == 1) // Diff
+ {
+ voronoi = VoronoiNoiseDiff_Octaves(position, _VoronoiScale, _VoronoiSpeed, voronoiOctaveNumber, voronoiOctaveScale, voronoiOctaveAttenuation, 1, _Time.x);
+ }
+
+ if (_VoronoiType == 2) // Fixed Border
+ {
+ voronoi = voronoi3D(position, _VoronoiScale, _VoronoiSpeed);
+ // isolines
+ //color = c.x * (0.5 + 0.5 * sin(64.0 * c.x)) * 1.0;
+ }
+
+ if (_VoronoiEnableRandomCellColor == 1)
+ {
+ float3 rando = random3(randomPoint);
+ fixed hue = rando.x;
+ fixed saturation = lerp(_VoronoiRandomMinMaxSaturation.x, _VoronoiRandomMinMaxSaturation.y, rando.y);
+ fixed value = lerp(_VoronoiRandomMinMaxBrightness.x, _VoronoiRandomMinMaxBrightness.y, rando.z);
+ float3 hsv = float3(hue, saturation, value);
+
+ voronoiColor1.rgb = HSVtoRGB(hsv);
+ }
+
+ float2 voronoiGradient = _VoronoiGradient;
+ voronoiGradient.xy += edgeNoise;
+ float ramp = smoothstep(voronoiGradient.x, voronoiGradient.y, voronoi);
+
+
+ if(_VoronoiBlend == 0)
+ {
+ float4 voronoiColor = lerp(_VoronoiColor0, voronoiColor1, ramp);
+
+ if(_VoronoiEffectsMaterialAlpha)
+ {
+ finalColor.rgba = lerp(finalColor, voronoiColor, mask);
+ }
+ else
+ {
+ finalColor.rgb = lerp(finalColor.rgb, voronoiColor.rgb, mask * voronoiColor.a);
+ }
+ }
+ float4 voronoiEmissionColor = lerp(_VoronoiColor0 * _VoronoiEmission0, voronoiColor1 * _VoronoiEmission1, ramp);
+ VoronoiEmission = voronoiEmissionColor.rgb * mask * voronoiEmissionColor.a;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
new file mode 100644
index 00000000..a317a419
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3eaac84536d3d6b4aa1e56b0202dabf1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
new file mode 100644
index 00000000..49c602c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
@@ -0,0 +1,111 @@
+#ifndef POI_WIREFRAME
+ #define POI_WIREFRAME
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_WireframeTexture); float4 _WireframeTexture_ST;
+ float2 _WireframeTexturePan;
+ float _WireframeSmoothing;
+ float _WireframeThickness;
+ float4 _WireframeColor;
+ float _WireframeAlpha;
+ float _WireframeEnable;
+ float _WireframeWaveEnabled;
+ float _WireframeWaveDensity;
+ float _WireframeWaveSpeed;
+ float _WireframeEdgeOpacity;
+ float _WireframeFaceOpacity;
+ half _WireframeEmissionAlpha;
+ float _WireframeEmissionStrength;
+ float _WireframeQuad;
+ float _WireframeUV;
+
+ #ifndef POI_SHADOW
+ void applyWireframe(inout float3 wireframeEmission, inout float4 albedo)
+ {
+
+ if (_WireframeEnable)
+ {
+ float4 colorMap = UNITY_SAMPLE_TEX2D_SAMPLER(_WireframeTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_WireframeUV], _WireframeTexture) + _Time.x * _WireframeTexturePan);
+ float size = _WireframeThickness;
+ half3 width = abs(ddx(poiMesh.barycentricCoordinates)) + abs(ddy(poiMesh.barycentricCoordinates));
+ half3 eF = smoothstep(0, width * size, poiMesh.barycentricCoordinates);
+ half minBary = size > 0 ? min(min(eF.x, eF.y), eF.z): 1;
+
+ float4 wireframeColor = _WireframeColor * colorMap;
+
+ albedo.a *= lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ albedo.rgb = lerp(lerp(albedo.rgb, wireframeColor.rgb, wireframeColor.a), albedo.rgb, minBary);
+ wireframeEmission = wireframeColor.rgb * _WireframeEmissionStrength * (1 - minBary) * _WireframeColor.a;
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle v2f IN[3], inout TriangleStream < v2f > tristream)
+ {
+
+ if(_WireframeQuad)
+ {
+ float e1 = length(IN[0].localPos - IN[1].localPos);
+ float e2 = length(IN[1].localPos - IN[2].localPos);
+ float e3 = length(IN[2].localPos - IN[0].localPos);
+
+ float3 quad = 0;
+ if(e1 > e2 && e1 > e3)
+ quad.y = 1.;
+ else if(e2 > e3 && e2 > e1)
+ quad.x = 1;
+ else
+ quad.z = 1;
+
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0) + quad;
+ IN[1].barycentricCoordinates = fixed3(0, 0, 1) + quad;
+ IN[2].barycentricCoordinates = fixed3(0, 1, 0) + quad;
+ }
+ else
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ }
+
+
+
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #else
+
+ float applyShadowWireframe(float2 uv, float3 barycentricCoordinates, float3 normal, float3 worldPos)
+ {
+
+ if(_WireframeEnable)
+ {
+ float wireframeFadeAlpha = _WireframeAlpha;
+ float3 finalWireframeColor = 0;
+
+ float3 barys;
+ barys.xy = barycentricCoordinates;
+ barys.z = 1 - barys.x - barys.y;
+ float3 deltas = fwidth(barys);
+ float3 smoothing = deltas * _WireframeSmoothing;
+ float wireframeThickness = _WireframeThickness;
+ float3 thickness = deltas * wireframeThickness;
+ barys = smoothstep(thickness, thickness + smoothing, barys);
+ float minBary = min(barys.x, min(barys.y, barys.z));
+
+ return lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle V2FShadow IN[3], inout TriangleStream < V2FShadow > tristream)
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
new file mode 100644
index 00000000..c0f8e261
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d03e5857369e93d4eb90f190a611f30b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
new file mode 100644
index 00000000..319de57c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
@@ -0,0 +1,171 @@
+#ifndef POICLUDES
+ #define POICLUDES
+
+ UNITY_DECLARE_TEX2D(_MainTex); float4 _MainTex_ST; float4 _MainTex_TexelSize;
+ sampler2D _PoiGrab;
+ sampler2D _CameraDepthTexture;
+ float _Cutoff;
+ float _AlphaMod;
+
+ //Structs
+ struct appdata
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #ifdef OUTLINE
+ float _LineWidth;
+ float _OutlineEmission;
+ float4 _LineColor;
+ sampler2D _OutlineTexture; float4 _OutlineTexture_ST; float2 _OutlineTexturePan; float _OutlineTextureUV;
+ float4 _OutlineFadeDistance;
+ float4 _OutlineGlobalPan;
+ #endif
+
+ struct PoiLighting
+ {
+ half3 direction;
+ half3 color;
+ fixed attenuation;
+ #ifdef FORWARD_ADD_PASS
+ fixed additiveShadow;
+ #endif
+ half3 directLighting;
+ half3 indirectLighting;
+ half lightMap;
+ half3 rampedLightMap;
+ half3 finalLighting;
+ half3 halfDir;
+ half nDotL;
+ half nDotH;
+ half lDotv;
+ half lDotH;
+ half nDotV;
+ half N0DotV;
+ half diffuseTerm;
+
+ // World normal dot half direction
+ #ifdef POI_VAR_DOTNH
+ half dotNH;
+ #endif
+
+ // Light direction dot half direction
+ #ifdef POI_VAR_DOTLH
+ half dotLH;
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ float4 vDotNL;
+ float3 vColor[4];
+ float4 vCorrectedDotNL;
+ float4 vAttenuation;
+ float4 vAttenuationDotNL;
+ float3 vPosition[4];
+ float3 vDirection[4];
+ float3 vFinalLighting;
+ float3 vHalfDir[4];
+
+ #ifdef POI_VAR_DOTLH
+ half4 vDotLH;
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ half4 vDotNH;
+ #endif
+
+ #endif
+ };
+
+ struct PoiCamera
+ {
+ half3 viewDir;
+ half3 tangentViewDir;
+ half3 forwardDir;
+ half3 worldPos;
+ float viewDotNormal;
+ float distanceToModel;
+ float distanceToVert;
+ float3 reflectionDir;
+ float3 vertexReflectionDir;
+ float2 screenUV;
+ float4 clipPos;
+ #if defined(GRAIN)
+ float4 worldDirection;
+ #endif
+ float4 grabPos;
+ };
+
+ struct PoiMesh
+ {
+ float3 normals[2];
+ float3 tangent;
+ float3 binormal;
+ float3 localPos;
+ float3 worldPos;
+ float3 modelPos;
+ float3 tangentSpaceNormal;
+ float2 uv[5];
+ float4 vertexColor;
+ fixed3 barycentricCoordinates;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV;
+ #endif
+ float isFrontFace;
+ #ifdef FUR
+ float furAlpha;
+ #endif
+ };
+
+ struct PoiTangentData
+ {
+ float3x3 tangentTransform;
+ float3x3 tangentToWorld;
+ };
+
+ struct FragmentCommonData
+ {
+ half3 diffColor, specColor;
+ // Note: smoothness & oneMinusReflectivity for optimization purposes, mostly for DX9 SM2.0 level.
+ // Most of the math is being done on these (1-x) values, and that saves a few precious ALU slots.
+ half oneMinusReflectivity, smoothness;
+ float3 normalWorld;
+ float3 eyeVec;
+ half alpha;
+ float3 posWorld;
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 reflUVW;
+ #endif
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 tangentSpaceNormal;
+ #endif
+ };
+
+ struct Debug
+ {
+ float debug1;
+ float2 debug2;
+ float3 debug3;
+ float4 debug4;
+ };
+
+ static Debug debug;
+ static PoiLighting poiLight;
+ static PoiCamera poiCam;
+ static PoiMesh poiMesh;
+ static UnityGI gi;
+ static FragmentCommonData s;
+ static PoiTangentData poiTData;
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
new file mode 100644
index 00000000..69ee1740
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fb7b8b482ed0a0c40ba3163336a1b8af
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
new file mode 100644
index 00000000..6052e824
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b1b27ac0ca22c3942a20a5643e1f85d3
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
new file mode 100644
index 00000000..0537f3ea
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
@@ -0,0 +1,7648 @@
+Shader "Hidden/.poiyomi/• Poiyomi Toon •/R2Changyu01001Body-af5b04c1"
+{
+ Properties
+ {
+ [HideInInspector] shader_is_using_thry_editor ("", Float) = 0
+ [HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Toon V7.0.100</color>", Float) = 0
+ [HideInInspector] shader_presets ("poiToonPresets", Float) = 0
+ [HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
+
+ [HideInInspector] footer_youtube ("youtube footer button", Float) = 0
+ [HideInInspector] footer_twitter ("twitter footer button", Float) = 0
+ [HideInInspector] footer_patreon ("patreon footer button", Float) = 0
+ [HideInInspector] footer_discord ("discord footer button", Float) = 0
+ [HideInInspector] footer_github ("github footer button", Float) = 0
+
+ // Keyword to remind users in the VRChat SDK that this material hasn't been locked. Inelegant but it works.
+ [HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Int) = 1
+ [ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Int) = 0
+ [Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Int) = 0
+
+ [ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)]_Mode("Rendering Preset--{on_value_actions:[
+ {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2450}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=1}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2451}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
+ {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:RenderType=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
+ }]}]}", Int) = 0
+ [HideInInspector] m_LockingInfo ("Locking Info--{button_right:{text:Tutorial,action:{type:URL,data:https://youtu.be/asWeDJb5LAo},hover:YouTube},is_hideable:true}", Float) = 0
+ [Helpbox(1)] _HelpBoxLocking ("LOCKING IN THE SHADER WILL DRAMATICALLY INCREASE PERFORMANCE AND DRAMATICALLY LOWER THE FILE SIZE OF AN AVATAR PACKAGE.
+
+ LOCKED IN MATERIALS CANNOT BE ANIMATED WITHOUT SETTING THE SPECIFIC PROPERTY TO DYNAMIC. RIGHT CLICK MATERIAL PROPERTIES YOU WISH TO ANIMATE, A CLOCK ICON WILL APPEAR BESIDE THE PROPERTY SIGNIFYING THAT IT CAN BE ANIMATED.
+
+ FOR MORE INFORMATION ON LOCKING PLEASE WATCH THE LOCKING TUTORIAL IN THE HEADER ABOVE.", Int) = 0
+ [Helpbox(2)] _HelpBoxHideLocking ("TO HIDE THIS CATEGORY SELECT CUSTOM UI AT THE TOP AND UNCHECK THE LOCKING INFO CATEGORY", Float) = 0
+ // Main
+ [HideInInspector] m_mainOptions ("Main", Float) = 0
+ _Color ("Color & Alpha", Color) = (1, 1, 1, 1)
+ _MainTex ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainTextureUV ("UV", Int) = 0
+ _Saturation ("Saturation", Range(-1, 1)) = 0
+ _MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
+ [Normal]_BumpMap ("Normal Map", 2D) = "bump" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _BumpMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_BumpMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ _BumpScale ("Normal Intensity", Range(0, 10)) = 1
+ _AlphaMask ("Alpha Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_AlphaMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AlphaMaskUV ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector] m_start_MainHueShift ("Hue Shift", Float) = 0
+ [HideInInspector][Toggle(COLOR_GRADING_HDR)]_MainHueShiftToggle ("Toggle Hueshift", Float) = 0
+ [ToggleUI]_MainHueShiftReplace ("Replace?", Float) = 1
+ _MainHueShift ("Hue Shift", Range(0, 1)) = 0
+ _MainHueShiftSpeed ("Shift Speed", Float) = 0
+ _MainHueShiftMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainHueShiftMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainHueShiftMaskUV ("UV", Int) = 0
+ [HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
+
+ // RGB Masking
+ [HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
+ [HideInInspector][Toggle(VIGNETTE)]_RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
+ [ToggleUI]_RGBUseVertexColors ("Use Vertex Colors", Float) = 0
+ [ToggleUI]_RGBBlendMultiplicative ("Multiplicative?", Float) = 0
+ _RGBMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBMaskPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBMaskUV ("UV", int) = 0
+ _RedColor ("R Color", Color) = (1, 1, 1, 1)
+ _RedTexure ("R Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBRedPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBRed_UV ("UV", int) = 0
+ _GreenColor ("G Color", Color) = (1, 1, 1, 1)
+ _GreenTexture ("G Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBGreenPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBGreen_UV ("UV", int) = 0
+ _BlueColor ("B Color", Color) = (1, 1, 1, 1)
+ _BlueTexture ("B Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBBluePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBBlue_UV ("UV", int) = 0
+ // RGB MASKED NORMALS
+ [Toggle(GEOM_TYPE_MESH)]_RgbNormalsEnabled ("Enable Normals", Float) = 0
+ [ToggleUI]_RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
+ [Normal]_RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalRPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalRUV ("UV", int) = 0
+ _RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalGPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalGUV ("UV", int) = 0
+ _RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalBPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalBUV ("UV", int) = 0
+ _RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
+
+ // Detail Options
+ [HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(FINALPASS)]_DetailEnabled ("Enable", Float) = 0
+ _DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" { }
+ [HideInInspector][Vector2]_DetailMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailMaskUV ("UV", Int) = 0
+ _DetailTint ("Detail Texture Tint", Color) = (1, 1, 1)
+ _DetailTex ("Detail Texture", 2D) = "gray" { }
+ [HideInInspector][Vector2]_DetailTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailTexUV ("UV", Int) = 0
+ _DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
+ _DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
+ [Normal]_DetailNormalMap ("Detail Normal", 2D) = "bump" { }
+ _DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
+ [HideInInspector][Vector2]_DetailNormalMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailNormalMapUV ("UV", Int) = 0
+ [HideInInspector] m_end_DetailOptions ("Details", Float) = 0
+
+ // Vertex Colors
+ [HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
+ _MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
+ _MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
+
+ //Vertex Manipulations
+ [HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(AUTO_EXPOSURE)]_VertexManipulationsEnabled ("Enabled", Float) = 0
+ [Vector3]_VertexManipulationLocalTranslation ("Local Translation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalRotation ("Local Rotation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalScale ("Local Scale", Vector) = (1, 1, 1, 1)
+ [Vector3]_VertexManipulationWorldTranslation ("World Translation", Vector) = (0, 0, 0, 1)
+ _VertexManipulationHeight ("Vertex Height", Float) = 0
+ _VertexManipulationHeightMask ("Height Map", 2D) = "while" { }
+ [HideInInspector][Vector2]_VertexManipulationHeightPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _VertexManipulationHeightUV ("UV", Int) = 0
+ _VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
+ [ToggleUI]_VertexRoundingEnabled ("Rounding Enabled", Float) = 0
+ _VertexRoundingDivision ("Division Amount", Float) = 500
+ [HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
+
+ // Alpha Options
+ [HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
+ _Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
+ [ToggleUI]_DitheringEnabled ("Enable Dithering", Float) = 0
+ _DitherGradient ("Dither Gradient", Range(0, 1)) = .1
+ [ToggleUI]_ForceOpaque ("Force Opaque", Float) = 0
+ _MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
+ [Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
+ [ToggleUI]_MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
+ _MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
+ [ToggleUI]_AlphaPremultiply ("Alpha Premultiply", Float) = 0
+ _AlphaMod ("Alpha Mod", Range(-1, 1)) = 0.0
+ [HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
+
+ // Decal Texture
+ [HideInInspector] m_start_DecalSection ("Decal", Float) = 0
+ [HideInInspector][Toggle(GEOM_TYPE_BRANCH)]_DecalEnabled ("Enable", Float) = 0
+ _DecalColor ("Color", Color) = (1, 1, 1, 1)
+ _DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _DecalTexture ("Decal", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalTextureUV ("UV", Int) = 0
+ _DecalMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalMaskUV ("UV", Int) = 0
+ [ToggleUI]_DecalTiled ("Tiled?", Float) = 0
+ [Vector2]_DecalScale ("Scale", Vector) = (1, 1, 0, 0)
+ [Vector2]_DecalPosition ("Position", Vector) = (.5, .5, 0, 0)
+ _DecalRotation ("Rotation", Range(0, 360)) = 0
+ _DecalRotationSpeed ("Rotation Speed", Float) = 0
+ _DecalBlendAdd ("Add", Range(0, 1)) = 0
+ _DecalBlendMultiply ("Multiply", Range(0, 1)) = 0
+ _DecalBlendReplace ("Replace", Range(0, 1)) = 0
+ [HideInInspector] m_end_DecalSection ("Decal", Float) = 0
+
+ // Back Face Textures and Emission
+ [HideInInspector] m_start_backFace ("Back Face", Float) = 0
+ [ToggleUI]_BackFaceEnabled ("Enable Back Face Options", Float) = 0
+ _BackFaceColor ("Color", Color) = (1, 1, 1, 1)
+ _BackFaceTexture ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_BackFacePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_BackFaceTextureUV ("UV#", Int) = 0
+ _BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
+ _BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
+ _BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [HideInInspector] m_end_backFace ("Back Face", Float) = 0
+
+ // Lighting
+ [HideInInspector] m_lightingOptions ("Lighting", Float) = 0
+ [HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
+ [Toggle(VIGNETTE_MASKED)]_EnableLighting ("Enable Lighting", Float) = 1
+ [Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Int) = 0
+ _LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
+ [Enum(Ramp Texture, 0, Math Gradient, 1)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Int) = 0
+ [Gradient]_ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" { }
+ _LightingShadowMask ("Ramp Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowMaskUV ("UV", Int) = 0
+ _ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
+ _LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
+ _LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = .5
+ _LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Color) = (1, 1, 1, 1)
+ _ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 1
+ _AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+
+ [HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
+ [Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Int) = 0
+ [ToggleUI]_LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
+ [ToggleUI]_LightingUncapped ("Uncapped Lighting", Float) = 0
+ [ToggleUI]_LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
+ _LightingMonochromatic ("Monochromatic Lighting?", Range(0,1)) = 0
+ _LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
+ _LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
+ [HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
+
+ [HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
+ _LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingDetailShadowsPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingDetailShadowsUV ("UV", Int) = 0
+ _LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
+
+ [HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableAO ("Enable AO", Float) = 0
+ _LightingAOTex ("AO Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingAOTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingAOTexUV ("UV", Int) = 0
+ _AOStrength ("AO Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
+
+ [HideInInspector] m_start_shadowTexture ("Shadow Texture--{reference_property:_UseShadowTexture, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ [HideInInspector][ToggleUI]_UseShadowTexture ("EnableShadowTexture--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ _LightingShadowTexture ("Shadow Texture--{reference_properties:[_LightingShadowTexturePan, _LightingShadowTextureUV], condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_shadowTexture ("Shadow Texture", Float) = 0
+
+ // HSL Lighting
+ [HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
+ _LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
+ _LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
+ _LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
+ _LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
+ [HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
+
+ // point/spot Light Settings
+ [HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
+ [HideInInspector][ToggleUI]_commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
+ [Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Int) = 1
+ _LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
+ _LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = .5
+ _LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = .5
+ _LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
+ [ToggleUI]_LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
+ _LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
+ [Toggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)]_DisableDirectionalInAdd ("No Directional", Float) = 1
+ [HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
+ [HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
+
+ // Subsurface Scattering
+ [HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
+ [Toggle(_TERRAIN_NORMAL_MAP)]_EnableSSS ("Enable Subsurface Scattering", Float) = 0
+ _SSSColor ("Subsurface Color", Color) = (1, 0, 0, 1)
+ _SSSThicknessMap ("Thickness Map", 2D) = "black" { }
+ [HideInInspector][Vector2]_SSSThicknessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SSSThicknessMapUV ("UV", Int) = 0
+ _SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
+ _SSSSCale ("Light Strength", Range(0, 1)) = 0.25
+ _SSSPower ("Light Spread", Range(1, 100)) = 5
+ _SSSDistortion ("Light Distortion", Range(0, 1)) = 1
+ [HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
+
+ // Rim Lighting
+ [HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
+ [Toggle(_GLOSSYREFLECTIONS_OFF)]_EnableRimLighting ("Enable Rim Lighting", Float) = 0
+ [Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Int) = 1
+ [ToggleUI]_RimLightingInvert ("Invert Rim Lighting", Float) = 0
+ _RimLightColor ("Rim Color", Color) = (1, 1, 1, 1)
+ _RimWidth ("Rim Width", Range(0, 1)) = 0.8
+ _RimSharpness ("Rim Sharpness", Range(0, 1)) = .25
+ _RimStrength ("Rim Emission", Range(0, 20)) = 0
+ _RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
+ _RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 0
+ _RimTex ("Rim Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimTexUV ("UV", Int) = 0
+ _RimMask ("Rim Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimMaskUV ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
+ _RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_RimWidthNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimWidthNoiseTextureUV ("UV", Int) = 0
+ _RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
+ [HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
+ _ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
+ _ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = .5
+ _ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = .5
+ [HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
+ [HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
+ [Toggle(_MAPPING_6_FRAMES_LAYOUT)]_EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
+ _RimEnviroMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimEnviroMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimEnviroMaskUV ("UV", Int) = 0
+ _RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
+ _RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
+ _RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
+ _RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
+ _RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
+ [HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
+
+ // Baked Lighting
+ [HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
+ _GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
+ [HideInInspector] DSGI ("DSGI", Float) = 0 //add this property for double sided illumination settings to be shown
+ [HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0 //add this property for lightmap flags settings to be shown
+ [HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
+
+ // Metallics
+ [HideInInspector] m_start_Metallic ("Metallics", Float) = 0
+ [Toggle(_METALLICGLOSSMAP)]_EnableMetallic ("Enable Metallics", Float) = 0
+ _CubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _MetalReflectionTint ("Reflection Tint", Color) = (1, 1, 1)
+ _MetallicTintMap ("Tint Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicTintMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicTintMapUV ("UV", Int) = 0
+ _MetallicMask ("Metallic Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicMaskUV ("UV", Int) = 0
+ _Metallic ("Metallic", Range(0, 1)) = 0
+ _SmoothnessMask ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SmoothnessMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SmoothnessMaskUV ("UV", Int) = 0
+ [ToggleUI]_InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _Smoothness ("Smoothness", Range(0, 1)) = 0
+ [HideInInspector] m_end_Metallic ("Metallics", Float) = 0
+
+ // Clearcoat
+ [HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
+ [Toggle(_COLORCOLOR_ON)]_EnableClearCoat ("Enable Clear Coat", Float) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _ClearCoatNormalToUse ("What Normal?", Int) = 0
+ _ClearCoatCubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_ClearCoatSampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _ClearCoatTint ("Reflection Tint", Color) = (1, 1, 1)
+ _ClearCoatMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatMaskUV ("UV", Int) = 0
+ _ClearCoat ("Clear Coat", Range(0, 1)) = 1
+ _ClearCoatSmoothnessMap ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatSmoothnessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatSmoothnessMapUV ("UV", Int) = 0
+ [ToggleUI]_ClearCoatInvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _ClearCoatSmoothness ("Smoothness", Range(0, 1)) = 0
+ [ToggleUI]_ClearCoatForceLighting ("Force Lighting", Float) = 0
+ [HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
+
+ // First Matcap
+ [HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
+ [Toggle(_COLORADDSUBDIFF_ON)]_MatcapEnable ("Enable Matcap", Float) = 0
+ _MatcapColor ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap ("Matcap", 2D) = "white" { }
+ _MatcapBorder ("Border", Range(0, .5)) = 0.43
+ _MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_MatcapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MatcapMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_MatcapMaskInvert("Invert", Float) = 0
+ _MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _MatcapIntensity ("Intensity", Range(0, 5)) = 1
+ _MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
+ _MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
+ _MatcapAdd ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_matcap ("Matcap", Float) = 0
+
+ // Second Matcap
+ [HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
+ [ToggleUI]_Matcap2Enable ("Enable Matcap 2", Float) = 0
+ _Matcap2Color ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap2 ("Matcap", 2D) = "white" { }
+ _Matcap2Border ("Border", Range(0, .5)) = 0.43
+ _Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_Matcap2MaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _Matcap2MaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_Matcap2MaskInvert("Invert", Float) = 0
+ _Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _Matcap2Intensity ("Intensity", Range(0, 5)) = 1
+ _Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
+ _Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
+ _Matcap2Add ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
+
+ // Specular
+ [HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
+ [Toggle(_SPECGLOSSMAP)]_EnableSpecular ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Int) = 1
+ _SpecularTint ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMapUV ("UV", Int) = 0
+ _SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
+ [Gradient]_SpecularMap ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMapUV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
+ _SpecularMask ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMaskUV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Int) = 1
+ // Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Int) = 0
+ _AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
+ _AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMapUV ("UV", Int) = 0
+ //toon aniso
+ _SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicroUV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacroUV ("UV", Int) = 0
+ // Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
+
+ // Second Specular
+ [HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
+ [ToggleUI]_EnableSpecular1 ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Int) = 1
+ _SpecularTint1 ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMap1UV ("UV", Int) = 0
+ _SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = .75
+ _SpecularMap1 ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMap1UV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
+ _SpecularMask1 ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMask1UV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Int) = 1
+ // Second Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Int) = 0
+ _AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
+ _AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMap1UV ("UV", Int) = 0
+ // Second toon aniso
+ _SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor1 ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicro1UV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacro1UV ("UV", Int) = 0
+ // Second Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
+
+ // First Emission
+ [HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
+ [HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
+ [Toggle(_EMISSION)]_EnableEmission ("Enable Emission", Float) = 0
+ [ToggleUI]_EmissionReplace ("Replace Base Color", Float) = 0
+ [HDR]_EmissionColor ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMapUV ("UV", Int) = 0
+ _EmissionMask ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMaskUV ("UV", Int) = 0
+ _EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
+
+ // Center out emission
+ [HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+
+ // Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor ("VColor as position", float) = 0
+ _EmissiveScroll_Direction ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width ("Width", Float) = 10
+ _EmissiveScroll_Velocity ("Velocity", Float) = 10
+ _EmissiveScroll_Interval ("Interval", Float) = 20
+ _EmissionScrollingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
+
+ // Second Enission
+ [HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
+ [Toggle(EFFECT_HUE_VARIATION)]_EnableEmission1 ("Enable Emission 2", Float) = 0
+ [HDR]_EmissionColor1 ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap1 ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMap1UV ("UV", Int) = 0
+ _EmissionMask1 ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMask1UV ("UV", Int) = 0
+ _EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
+
+ // Second Center Out Enission
+ [HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Second Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve1 ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve1 ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor1 ("VColor as position", float) = 0
+ _EmissiveScroll_Direction1 ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width1 ("Width", Float) = 10
+ _EmissiveScroll_Velocity1 ("Velocity", Float) = 10
+ _EmissiveScroll_Interval1 ("Interval", Float) = 20
+ _EmissionScrollingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
+
+ // Flipbook
+ [HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
+ [Toggle(_SUNDISK_HIGH_QUALITY)]_EnableFlipbook ("Enable Flipbook", Float) = 0
+ [ToggleUI]_FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
+ [TextureArray]_FlipbookTexArray ("Texture Array", 2DArray) = "" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookTexArrayUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookTexArrayPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookMaskUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookColor ("Color & alpha", Color) = (1, 1, 1, 1)
+ _FlipbookTotalFrames ("Total Frames", Int) = 1
+ _FlipbookFPS ("FPS", Float) = 30.0
+ _FlipbookScaleOffset ("Scale | Offset", Vector) = (1, 1, 0, 0)
+ [ToggleUI]_FlipbookTiled ("Tiled?", Float) = 0
+ _FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _FlipbookRotation ("Rotation", Range(0, 360)) = 0
+ _FlipbookRotationSpeed ("Rotation Speed", Float) = 0
+ _FlipbookReplace ("Replace", Range(0, 1)) = 1
+ _FlipbookMultiply ("Multiply", Range(0, 1)) = 0
+ _FlipbookAdd ("Add", Range(0, 1)) = 0
+
+ // Flipbook Manual Control
+ [HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
+ _FlipbookCurrentFrame ("Current Frame", Float) = -1
+ [HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
+ [HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
+
+ // Dissolve
+ [HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
+ [Toggle(DISTORT)]_EnableDissolve ("Enable Dissolve", Float) = 0
+ [Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Int) = 1
+ _DissolveEdgeWidth ("Edge Width", Range(0, .5)) = 0.025
+ _DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
+ _DissolveEdgeColor ("Edge Color", Color) = (1, 1, 1, 1)
+ [Gradient]_DissolveEdgeGradient ("Edge Gradient", 2D) = "white" { }
+ _DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
+ _DissolveTextureColor ("Dissolved Color", Color) = (1, 1, 1, 1)
+ _DissolveToTexture ("Dissolved Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveToTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveToTextureUV ("UV", Int) = 0
+ _DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
+ _DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveNoiseTextureUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertNoise ("Invert?", Float) = 0
+ _DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_DissolveDetailNoisePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveDetailNoiseUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertDetailNoise ("Invert?", Float) = 0
+ _DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
+ _DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
+ _DissolveMask ("Dissolve Mask", 2D) = "white" { }
+ [ToggleUI]_DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
+ [HideInInspector][Vector2]_DissolveMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveMaskInvert ("Invert?", Float) = 0
+ _ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
+ [HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Int) = 2
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Int) = 2
+ [HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
+ [Enum(Local, 0, World, 1)] _DissolveP2PWorldLocal ("World/Local", Int) = 0
+ _DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
+ [Vector3]_DissolveStartPoint ("Start Point", Vector) = (0, -1, 0, 0)
+ [Vector3]_DissolveEndPoint ("End Point", Vector) = (0, 1, 0, 0)
+ [HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
+
+ // Locked in anim sldiers
+ [HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
+ _DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
+ _DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
+ _DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
+ _DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
+ _DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
+ _DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
+ _DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
+ _DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
+ _DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
+ _DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
+ [HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
+ [HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
+
+ // Panosphere
+ [HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+ [Toggle(_DETAIL_MULX2)]_PanoToggle ("Enable Panosphere", Float) = 0
+ [ToggleUI]_PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
+ _PanosphereColor ("Color", Color) = (1, 1, 1, 1)
+ _PanosphereTexture ("Texture", 2D) = "white" { }
+ _PanoMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_PanoMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _PanoMaskUV ("UV", Int) = 0
+ _PanoEmission ("Emission Strength", Range(0, 10)) = 0
+ _PanoBlend ("Alpha", Range(0, 1)) = 0
+ [Vector3]_PanospherePan ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [ToggleUI]_PanoCubeMapToggle ("Use Cubemap", Float) = 0
+ [TextureNoSO]_PanoCubeMap ("CubeMap", Cube) = "" { }
+ [HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+
+ // Glitter
+ [HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
+ [Toggle(_SUNDISK_SIMPLE)]_GlitterEnable ("Enable Glitter?", Float) = 0
+ [Enum(Angle, 0, Linear Emission, 1)]_GlitterMode ("Mode", Int) = 0
+ [Enum(Circle, 0, Square, 1)]_GlitterShape ("Shape", Int) = 0
+ [Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Int) = 0
+ [HDR]_GlitterColor ("Color", Color) = (1, 1, 1)
+ _GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
+ _GlitterColorMap ("Glitter Color Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterColorMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterColorMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_GlitterPan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterMask ("Glitter Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterMaskUV ("UV", Int) = 0
+ _GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterTextureRotation ("Rotation Speed", Float) = 0
+ _GlitterFrequency ("Glitter Density", Float) = 300.0
+ _GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1.0
+ _GlitterSpeed ("Glitter Speed", Float) = 10.0
+ _GlitterSize ("Glitter Size", Range(0, 1)) = .3
+ _GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
+ _GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
+ _GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
+ _GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
+ _GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = .8
+ _GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = .08
+ _glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
+ _GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, .1)) = .0
+
+ // Glitter Random Colors
+ [HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
+ [ToggleUI]_GlitterRandomColors ("Random Colors", Float) = 0
+ [MultiSlider]_GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8, 1, 0, 1)
+ [MultiSlider]_GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8, 1, 0, 1)
+ [ToggleUI]_GlitterRandomSize("Random Size?", Float) = 0
+ [MultiSlider]_GlitterMinMaxSize ("Size Range", Vector) = (0.1, 0.5, 0, 1)
+ [ToggleUI]_GlitterRandomRotation("Random Tex Rotation", Float) = 0
+ [HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
+ [HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
+ _TextGlyphs ("Font Array", 2D) = "black" { }
+ _TextPixelRange ("Pixel Range", Float) = 4.0
+ [Toggle(EFFECT_BUMP)]_TextEnabled ("Text?", Float) = 0
+
+ // FPS
+ [HideInInspector] m_start_TextFPS ("FPS", Float) = 0
+ [ToggleUI]_TextFPSEnabled ("FPS Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Int) = 0
+ _TextFPSColor ("Color", Color) = (1, 1, 1, 1)
+ _TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextFPSOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextFPSRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextFPSScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextFPSPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextFPS ("FPS", Float) = 0
+
+ // POSITION
+ [HideInInspector] m_start_TextPosition ("Position", Float) = 0
+ [ToggleUI]_TextPositionEnabled ("Position Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVertical ("Vertical?", Float) = 0
+ _TextPositionColor ("Color", Color) = (1, 0, 1, 1)
+ _TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextPositionOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextPositionRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextPositionScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextPositionPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextPosition ("Position", Float) = 0
+
+ // INSTANCE TIME
+ [HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
+ [ToggleUI]_TextTimeEnabled ("Time Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Int) = 0
+ _TextTimeColor ("Color", Color) = (1, 0, 1, 1)
+ _TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextTimeOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextTimeRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextTimeScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextTimePadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
+ [HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
+
+ // Mirror Rendering
+ [HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
+ [Toggle(_REQUIRE_UV2)]_EnableMirrorOptions ("Enable Mirror Options", Float) = 0
+ [Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Int) = 0
+ [ToggleUI]_EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
+ _MirrorTexture ("Mirror Tex", 2D) = "white" { }
+ [HideInInspector][Vector2]_MirrorTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MirrorTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
+
+ // Distance Fade
+ [HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
+ _MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
+ _MainFadeTexture ("Fade Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainFadeTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainFadeTextureUV ("UV", Int) = 0
+ [Vector2]_MainDistanceFade ("Distance Fade X to Y", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
+
+ // Angular Fade
+ [HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
+ [Toggle(_SUNDISK_NONE)]_EnableRandom ("Enable Angular Fade", Float) = 0
+ [Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Int) = 0
+ [Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Int) = 0
+ [Vector3]_AngleForwardDirection ("Forward Direction", Vector) = (0, 0, 1, 0)
+ _CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
+ _CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
+ _ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
+ _ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
+ _AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
+
+ // UV Distortion
+ [HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
+ [Toggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
+ _DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_DistortionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _DistortionMaskUV ("UV", Int) = 0
+ _DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" { }
+ _DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" { }
+ _DistortionStrength ("Strength1", Float) = 0.5
+ _DistortionStrength1 ("Strength2", Float) = 0.5
+ [Vector2]_DistortionSpeed ("Speed1", Vector) = (0.5, 0.5, 0, 0)
+ [Vector2]_DistortionSpeed1 ("Speed2", Vector) = (0.5, 0.5, 0, 0)
+ [HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
+
+ // Outline Options
+ [HideInInspector] m_outlineOptions ("Outlines", Float) = 0
+ [ToggleUI]_commentIfZero_EnableOutlinePass ("Enable Outlines", float) = 0
+ [Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)]_OutlineMode ("Mode", Int) = 0
+ _OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
+ _OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
+ _OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1, 0, 0, 0)
+ _OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1, 0, 0, 0)
+ [ToggleUI]_OutlineFixedSize ("Fixed Size?", Float) = 0
+ [Enum(Off, 0, Normals, 1, Mask VC.r, 2)]_OutlineUseVertexColors ("Vertex Color", Float) = 0
+ [ToggleUI]_OutlineLit ("Enable Lighting", Float) = 1
+ _LineWidth ("Width", Float) = 0
+ _LineColor ("Color", Color) = (1, 1, 1, 1)
+ _OutlineEmission ("Outline Emission", Float) = 0
+ _OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineTexturePan ("Outline Texture Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineTextureUV ("UV", Int) = 0
+ _OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineMaskUV ("UV", Int) = 0
+ _OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
+ [HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
+ [Vector2]_OutlineFadeDistance ("Outline distance Fade", Vector) = (0, 0, 0, 0)
+ [Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
+ _OutlineOffsetFactor("Offset Factor", Float) = 0
+ _OutlineOffsetUnits("Offset Units", Float) = 0
+ [HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
+
+ // Parallax Mapping
+ [HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
+ [Toggle(_PARALLAXMAP)]_ParallaxMap ("Enable Parallax FX", Float) = 0
+ [ToggleUI]_ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
+ [ToggleUI]_ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
+ [HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
+ [Vector2]_ParallaxHeightMapPan ("Pan", Vector) = (0, 0, 0, 0)
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Int) = 0
+ _ParallaxHeightMap ("Height Map", 2D) = "black" { }
+ _ParallaxHeightMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxHeightMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxHeightMapMaskUV ("UV", Int) = 0
+ _ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
+ [HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
+ [HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
+ [Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Int) = 0
+ [ToggleUI]_ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
+ _ParallaxInternalMap ("Internal Map", 2D) = "black" { }
+ _ParallaxInternalMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxInternalMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxInternalMapMaskUV ("UV", Int) = 0
+ _ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
+ _ParallaxInternalMinDepth ("Min Depth", Float) = 0
+ _ParallaxInternalMaxDepth ("Max Depth", Float) = 1
+ _ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
+ _ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
+ _ParallaxInternalMinColor ("Min Depth Color", Color) = (1, 1, 1, 1)
+ _ParallaxInternalMaxColor ("Max Depth Color", Color) = (1, 1, 1, 1)
+ [Vector2]_ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [Vector2]_ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
+ [HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
+ _ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
+ [HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
+
+ // Rendering Options
+ [HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
+ [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
+ [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
+ [Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Int) = 1
+ [Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Int) = 15
+ _OffsetFactor ("Offset Factor", Float) = 0.0
+ _OffsetUnits ("Offset Units", Float) = 0.0
+ [ToggleUI]_IgnoreFog ("Ignore Fog", Float) = 0
+ [HideInInspector] Instancing ("Instancing", Float) = 0 //add this property for instancing variants settings to be shown
+
+ // Blending Options
+ [HideInInspector] m_start_blending ("Blending", Float) = 0
+ [Enum(Thry.BlendOp)]_BlendOp ("RGB Blend Op", Int) = 0
+ [Enum(Thry.BlendOp)]_BlendOpAlpha ("Alpha Blend Op", Int) = 0
+ [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Int) = 1
+ [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Int) = 0
+ [HideInInspector] m_end_blending ("Blending", Float) = 0
+
+ // Stencils
+ [HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
+ [IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
+
+ // Outline Stencil
+ [HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
+ [IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
+
+ // Debug Options
+ [HideInInspector] m_start_debugOptions ("Debug", Float) = 0
+ [HideInInspector][Toggle(_COLOROVERLAY_ON)]_DebugEnabled ("Display Debug Info", Float) = 0
+ _VertexUnwrap ("Unwrap", Range(0, 1)) = 0
+ [Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Int) = 0
+ [Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Int) = 0
+ [Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Int) = 0
+ [HideInInspector] m_end_debugOptions ("Debug", Float) = 0
+
+ //[HideInInspector] m_animationToggles ("Animation Support Toggles", Float) = 0
+ //[HelpBox(1)] _AnimationToggleHelp ("You don't need to search through this list. You can enable animation support on any property by right clicking it", Int) = 0
+
+ // Main
+ [HideInInspector]_ColorAnimated ("Color & Alpha", Int) = 0
+ [HideInInspector]_MainTexAnimated ("Texture", Int) = 0
+ [HideInInspector]_MainTex_STAnimated ("Texture Offset/Scale", Int) = 0
+ [HideInInspector]_MainTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_MainVertexColoringAnimated ("Use Vertex Color", Int) = 0
+ [HideInInspector]_MainUseVertexColorAlphaAnimated ("Use Vertex Alpha", Int) = 0
+ [HideInInspector]_MainEmissionStrengthAnimated ("Basic Emission", Int) = 0
+ [HideInInspector]_BumpMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_BumpMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_BumpMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_BumpScaleAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_AlphaMaskAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_AlphaMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AlphaMaskUVAnimated ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector]_MainHueShiftToggleAnimated ("Toggle Hueshift", Int) = 0
+ [HideInInspector]_MainHueShiftReplaceAnimated ("Replace?", Int) = 0
+ [HideInInspector]_MainHueShiftAnimated ("Hue Shift", Int) = 0
+ [HideInInspector]_MainHueShiftSpeedAnimated ("Shift Speed", Int) = 0
+ [HideInInspector]_MainHueShiftMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MainHueShiftMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainHueShiftMaskUVAnimated ("UV", Int) = 0
+
+ // RGB Masking
+ [HideInInspector]_RGBMaskEnabledAnimated ("RGB Mask Enabled", Int) = 0
+ [HideInInspector]_RGBUseVertexColorsAnimated ("Use Vertex Colors", Int) = 0
+ [HideInInspector]_RGBBlendMultiplicativeAnimated ("Multiplicative?", Int) = 0
+ [HideInInspector]_RGBMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RGBMaskPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RedColorAnimated ("R Color", Int) = 0
+ [HideInInspector]_RedTexureAnimated ("R Texture", Int) = 0
+ [HideInInspector]_RGBRedPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBRed_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_GreenColorAnimated ("G Color", Int) = 0
+ [HideInInspector]_GreenTextureAnimated ("G Texture", Int) = 0
+ [HideInInspector]_RGBGreenPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBGreen_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_BlueColorAnimated ("B Color", Int) = 0
+ [HideInInspector]_BlueTextureAnimated ("B Texture", Int) = 0
+ [HideInInspector]_RGBBluePanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBBlue_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_RGBNormalBlendAnimated ("UV", Int) = 0
+
+ // Detail Options
+ [HideInInspector]_DetailMaskAnimated ("Detail Mask (R:Texture, G:Normal)", Int) = 0
+ [HideInInspector]_DetailMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTintAnimated ("Detail Texture Tint", Int) = 0
+ [HideInInspector]_DetailTexAnimated ("Detail Texture", Int) = 0
+ [HideInInspector]_DetailTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTexIntensityAnimated ("Detail Tex Intensity", Int) = 0
+ [HideInInspector]_DetailBrightnessAnimated ("Detail Brightness:", Int) = 0
+ [HideInInspector]_DetailNormalMapAnimated ("Detail Normal", Int) = 0
+ [HideInInspector]_DetailNormalMapScaleAnimated ("Detail Normal Intensity", Int) = 0
+ [HideInInspector]_DetailNormalMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailNormalMapUVAnimated ("UV", Int) = 0
+
+ //Vertex Manipulations
+ [HideInInspector]_VertexManipulationLocalTranslationAnimated ("Local Translation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalRotationAnimated ("Local Rotation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalScaleAnimated ("Local Scale", Int) = 0
+ [HideInInspector]_VertexManipulationWorldTranslationAnimated ("World Translation", Int) = 0
+ [HideInInspector]_VertexManipulationHeightAnimated ("Vertex Height", Int) = 0
+ [HideInInspector]_VertexManipulationHeightMaskAnimated ("Height Map", Int) = 0
+ [HideInInspector]_VertexManipulationHeightPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VertexManipulationHeightUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VertexManipulationHeightBiasAnimated ("Mask Bias", Int) = 0
+ [HideInInspector]_VertexRoundingEnabledAnimated ("Rounding Enabled", Int) = 0
+ [HideInInspector]_VertexRoundingDivisionAnimated ("Division Amount", Int) = 0
+
+ // Alpha Options
+ [HideInInspector]_AlphaModAnimated ("Alpha Mod", Int) = 0
+ [HideInInspector]_CutoffAnimated ("Alpha Cuttoff", Int) = 0
+ [HideInInspector]_DitheringEnabledAnimated ("Enable Dithering", Int) = 0
+ [HideInInspector]_DitherGradientAnimated ("Dither Gradient", Int) = 0
+ [HideInInspector]_ForceOpaqueAnimated ("Force Opaque", Int) = 0
+ [HideInInspector]_MainShadowClipModAnimated ("Shadow Clip Mod", Int) = 0
+ [HideInInspector]_AlphaToMaskAnimated ("Alpha To Coverage", Int) = 0
+ [HideInInspector]_MainAlphaToCoverageAnimated ("Sharpenned A2C", Int) = 0
+ [HideInInspector]_AlphaPremultiplyAnimated ("Alpha Premultiply", Int) = 0
+ [HideInInspector]_MainMipScaleAnimated ("Mip Level Alpha Scale", Int) = 0
+
+ // Decal Texture
+ [HideInInspector]_DecalEnabledAnimated ("Enable", Int) = 0
+ [HideInInspector]_DecalColorAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalEmissionStrengthAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalTextureAnimated ("Decal", Int) = 0
+ [HideInInspector]_DecalTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DecalMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_DecalScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_DecalPositionAnimated ("Position", Int) = 0
+ [HideInInspector]_DecalRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_DecalRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_DecalBlendAddAnimated ("Add", Int) = 0
+ [HideInInspector]_DecalBlendMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_DecalBlendReplaceAnimated ("Replace", Int) = 0
+
+ // Lighting
+ [HideInInspector]_EnableLightingAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LightingModeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingStandardSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_LightingShadingEnabledAnimated ("Enable Shading-",Int) = 0
+ [HideInInspector]_LightingRampTypeAnimated ("Ramp Type", Int) = 0
+ [HideInInspector]_ToonRampAnimated ("Lighting Ramp", Int) = 0
+ [HideInInspector]_LightingShadowMaskAnimated ("Ramp Mask", Int) = 0
+ [HideInInspector]_LightingShadowMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ShadowOffsetAnimated ("Ramp Offset", Int) = 0
+ [HideInInspector]_LightingGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingShadowColorAnimated ("Shadow Tint", Int) = 0
+ [HideInInspector]_ShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_AttenuationMultiplierAnimated ("Unity Shadows", Int) = 0
+ [HideInInspector]_LightingIgnoreAmbientColorAnimated ("Ignore Ambient Color", Int) = 0
+
+ [HideInInspector]_LightingDirectColorModeAnimated ("D Color", Int) = 0
+ [HideInInspector]_LightingIndirectColorModeAnimated ("I Color?", Int) = 0
+ [HideInInspector]_LightingMonochromaticAnimated ("Monochromatic Lighting?", Int) = 0
+ [HideInInspector]_LightingUncappedAnimated ("Uncapped Lighting", Int) = 0
+ [HideInInspector]_LightingOnlyUnityShadowsAnimated ("Only Unity Shadows", Int) = 0
+ [HideInInspector]_LightingMinLightBrightnessAnimated ("Min Brightnes", Int) = 0
+ [HideInInspector]_LightingMinShadowBrightnessRatioAnimated ("Shadow:Light min Ratio", Int) = 0
+
+ [HideInInspector]_LightingDetailShadowsEnabledAnimated ("Enabled Detail Shadows?", Int) = 0
+ [HideInInspector]_LightingDetailShadowsAnimated ("Detail Shadows", Int) = 0
+ [HideInInspector]_LightingDetailShadowsPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingDetailShadowsUVAnimated ("UV", Int) = 0
+ [HideInInspector]_LightingDetailStrengthAnimated ("Detail Strength", Int) = 0
+
+ [HideInInspector]_LightingEnableAOAnimated ("Enable AO", Int) = 0
+ [HideInInspector]_LightingAOTexAnimated ("AO Map", Int) = 0
+ [HideInInspector]_LightingAOTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingAOTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_AOStrengthAnimated ("AO Strength", Range(0, 1)) = 0
+
+ [HideInInspector]_UseShadowTextureAnimated ("EnableShadowTexture", Int) = 0
+ [HideInInspector]_LightingShadowTextureAnimated ("Shadow Texture", Int) = 0
+ [HideInInspector]_LightingShadowTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowTextureUVAnimated ("UV", Int) = 0
+
+ [HideInInspector]_LightingEnableHSLAnimated ("Enabled HSL Lighting", Int) = 0
+ [HideInInspector]_LightingHSLIntensityAnimated ("Shadow HSL Intensity", Int) = 0
+ [HideInInspector]_LightingShadowHueAnimated ("Shadow Hue Change", Int) = 0
+ [HideInInspector]_LightingShadowSaturationAnimated ("Shadow Saturation Change", Int) = 0
+ [HideInInspector]_LightingShadowLightnessAnimated ("Shadow Lightness Change", Int) = 0
+
+ // point/spot Light Settings
+ [HideInInspector]_commentIfZero_LightingAdditiveEnableAnimated ("Enable Additive", Int) = 0
+ [HideInInspector]_LightingAdditiveTypeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingAdditivePassthroughAnimated ("Point Light Passthrough", Int) = 0
+ [HideInInspector]_LightingAdditiveDetailStrengthAnimated ("Detail Shadow Strength", Int) = 0
+ [HideInInspector]_LightingAdditiveLimitIntensityAnimated ("Limit Intensity", Int) = 0
+ [HideInInspector]_LightingAdditiveMaxIntensityAnimated ("Max Intensity", Int) = 0
+
+ // Subsurface Scattering
+ [HideInInspector]_EnableSSSAnimated ("Enable Subsurface Scattering", Int) = 0
+ [HideInInspector]_SSSColorAnimated ("Subsurface Color", Int) = 0
+ [HideInInspector]_SSSThicknessMapAnimated ("Thickness Map", Int) = 0
+ [HideInInspector]_SSSThicknessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SSSThicknessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SSSThicknessModAnimated ("Thickness mod", Int) = 0
+ [HideInInspector]_SSSSCaleAnimated ("Light Strength", Int) = 0
+ [HideInInspector]_SSSPowerAnimated ("Light Spread", Int) = 0
+ [HideInInspector]_SSSDistortionAnimated ("Light Distortion", Int) = 0
+
+ // Rim Lighting
+ [HideInInspector]_EnableRimLightingAnimated ("Enable Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_RimLightingInvertAnimated ("Invert Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightColorAnimated ("Rim Color", Int) = 0
+ [HideInInspector]_RimWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimStrengthAnimated ("Rim Emission", Int) = 0
+ [HideInInspector]_RimBrightenAnimated ("Rim Color Brighten", Int) = 0
+ [HideInInspector]_RimLightColorBiasAnimated ("Rim Color Bias", Int) = 0
+ [HideInInspector]_RimTexAnimated ("Rim Texture", Int) = 0
+ [HideInInspector]_RimTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimMaskAnimated ("Rim Mask", Int) = 0
+ [HideInInspector]_RimMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimMaskUVAnimated ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector]_RimWidthNoiseTextureAnimated ("Rim Width Noise", Int) = 0
+ [HideInInspector]_RimWidthNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimWidthNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimWidthNoiseStrengthAnimated ("Intensity", Int) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector]_ShadowMixAnimated ("Shadow Mix In", Int) = 0
+ [HideInInspector]_ShadowMixThresholdAnimated ("Shadow Mix Threshold", Int) = 0
+ [HideInInspector]_ShadowMixWidthModAnimated ("Shadow Mix Width Mod", Int) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector]_EnableEnvironmentalRimAnimated ("Enable Environmental Rim", Int) = 0
+ [HideInInspector]_RimEnviroMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RimEnviroMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimEnviroMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimEnviroBlurAnimated ("Blur", Int) = 0
+ [HideInInspector]_RimEnviroWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimEnviroSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimEnviroMinBrightnessAnimated ("Min Brightness Threshold", Int) = 0
+ [HideInInspector]_RimEnviroIntensityAnimated ("Intensity", Int) = 0
+
+ // Metallics
+ [HideInInspector]_EnableMetallicAnimated ("Enable Metallics", Int) = 0
+ [HideInInspector]_CubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_SampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_MetalReflectionTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_MetallicTintMapAnimated ("Tint Map", Int) = 0
+ [HideInInspector]_MetallicTintMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicTintMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicMaskAnimated ("Metallic Mask", Int) = 0
+ [HideInInspector]_MetallicMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SmoothnessMaskAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SmoothnessMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_InvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessAnimated ("Smoothness", Int) = 0
+
+ // Clearcoat
+ [HideInInspector]_EnableClearCoatAnimated ("Enable Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatNormalToUseAnimated ("What Normal?", Int) = 0
+ [HideInInspector]_ClearCoatCubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_ClearCoatSampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_ClearCoatTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_ClearCoatMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ClearCoatMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatInvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_ClearCoatForceLightingAnimated ("Force Lighting", Int) = 0
+
+ // First Matcap
+ [HideInInspector]_MatcapEnableAnimated ("Enable Matcap", Int) = 0
+ [HideInInspector]_MatcapColorAnimated ("Color", Int) = 0
+ [HideInInspector]_MatcapAnimated ("Matcap", Int) = 0
+ [HideInInspector]_MatcapBorderAnimated ("Border", Int) = 0
+ [HideInInspector]_MatcapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MatcapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MatcapMaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_MatcapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MatcapEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_MatcapIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_MatcapLightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_MatcapReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_MatcapMultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_MatcapAddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_MatcapNormalAnimated ("Normal to use", Int) = 0
+
+ // Second Matcap
+ [HideInInspector]_Matcap2EnableAnimated ("Enable Matcap 2", Int) = 0
+ [HideInInspector]_Matcap2ColorAnimated ("Color", Int) = 0
+ [HideInInspector]_Matcap2Animated ("Matcap", Int) = 0
+ [HideInInspector]_Matcap2BorderAnimated ("Border", Int) = 0
+ [HideInInspector]_Matcap2MaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_Matcap2MaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_Matcap2MaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_Matcap2MaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_Matcap2EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_Matcap2IntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_Matcap2LightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_Matcap2ReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_Matcap2MultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_Matcap2AddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_Matcap2NormalAnimated ("Normal to use", Int) = 0
+
+ // Specular
+ [HideInInspector]_EnableSpecularAnimated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularTypeAnimated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTintAnimated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMapAnimated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothnessAnimated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMaskAnimated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFromAnimated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangentAnimated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1AlphaAnimated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2AlphaAnimated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1OffsetAnimated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2SmoothnessAnimated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMapAnimated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMapAnimated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStartAnimated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEndAnimated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColorAnimated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirroredAnimated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroAnimated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplierAnimated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroAnimated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplierAnimated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuterAnimated ("Inner/Outer Edge", Int) = 0
+
+ // Second Specular
+ [HideInInspector]_EnableSpecular1Animated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularType1Animated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormal1Animated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTint1Animated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallic1Animated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothness1Animated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMap1Animated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothness1Animated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMask1Animated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFrom1Animated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangent1Animated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1Alpha1Animated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2Alpha1Animated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1Offset1Animated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2Smoothness1Animated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMap1Animated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMap1Animated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStart1Animated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEnd1Animated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColor1Animated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirrored1Animated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1Animated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplier1Animated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1Animated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplier1Animated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuter1Animated ("Inner/Outer Edge", Int) = 0
+
+ // First Emission
+ [HideInInspector]_EnableEmissionAnimated ("Enable Emission", Int) = 0
+ [HideInInspector]_EmissionReplaceAnimated ("Replace Base Color", Int) = 0
+ [HideInInspector]_EmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMapAnimated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMapAnimated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMaskAnimated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabledAnimated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShiftAnimated ("Hue Shift", Int) = 0
+
+ // Center out emission
+ [HideInInspector]_EmissionCenterOutEnabledAnimated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeedAnimated ("Flow Speed", Int) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector]_EnableGITDEmissionAnimated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMeshAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplierAnimated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplierAnimated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLightAnimated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLightAnimated ("Max Lighting", Int) = 0
+
+ // Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_MinAnimated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_MaxAnimated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_VelocityAnimated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffsetAnimated ("Offset", Int) = 0
+
+ // Scrolling Emission
+ [HideInInspector]_ScrollingEmissionAnimated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurveAnimated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurveAnimated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColorAnimated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_DirectionAnimated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_WidthAnimated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_VelocityAnimated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_IntervalAnimated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffsetAnimated ("Offset", Int) = 0
+
+ // Second Enission
+ [HideInInspector]_EnableEmission1Animated ("Enable Emission 2", Int) = 0
+ [HideInInspector]_EmissionColor1Animated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMap1Animated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMap1Animated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMask1Animated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrength1Animated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabled1Animated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShift1Animated ("Hue Shift", Int) = 0
+
+ // Second Center Out Enission
+ [HideInInspector]_EmissionCenterOutEnabled1Animated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeed1Animated ("Flow Speed", Int) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector]_EnableGITDEmission1Animated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMesh1Animated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplier1Animated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplier1Animated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLight1Animated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLight1Animated ("Max Lighting", Int) = 0
+
+ // Second Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_Min1Animated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_Max1Animated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_Velocity1Animated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffset1Animated ("Offset", Int) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector]_ScrollingEmission1Animated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurve1Animated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurve1Animated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColor1Animated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_Direction1Animated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_Width1Animated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_Velocity1Animated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_Interval1Animated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffset1Animated ("Offset", Int) = 0
+
+ // Flipbook
+ [HideInInspector]_EnableFlipbookAnimated ("Enable Flipbook", Int) = 0
+ [HideInInspector]_FlipbookAlphaControlsFinalAlphaAnimated ("Flipbook Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookIntensityControlsAlphaAnimated ("Intensity Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookColorReplacesAnimated ("Color Replaces Flipbook", Int) = 0
+ [HideInInspector]_FlipbookTexArrayAnimated ("Texture Array", Int) = 0
+ [HideInInspector]_FlipbookTexArrayUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookTexArrayPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_FlipbookMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookColorAnimated ("Color & alpha", Int) = 0
+ [HideInInspector]_FlipbookTotalFramesAnimated ("Total Frames", Int) = 0
+ [HideInInspector]_FlipbookFPSAnimated ("FPS", Int) = 0
+ [HideInInspector]_FlipbookScaleOffsetAnimated ("Scale | Offset", Int) = 0
+ [HideInInspector]_FlipbookTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_FlipbookEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_FlipbookRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_FlipbookRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_FlipbookReplaceAnimated ("Replace", Int) = 0
+ [HideInInspector]_FlipbookMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_FlipbookAddAnimated ("Add", Int) = 0
+ [HideInInspector]_FlipbookCurrentFrameAnimated ("Current Frame", Int) = 0
+
+ // Dissolve
+ [HideInInspector]_EnableDissolveAnimated ("Enable Dissolve", Int) = 0
+ [HideInInspector]_DissolveTypeAnimated ("Dissolve Type", Int) = 0
+ [HideInInspector]_DissolveEdgeWidthAnimated ("Edge Width", Int) = 0
+ [HideInInspector]_DissolveEdgeHardnessAnimated ("Edge Hardness", Int) = 0
+ [HideInInspector]_DissolveEdgeColorAnimated ("Edge Color", Int) = 0
+ [HideInInspector]_DissolveEdgeGradientAnimated ("Edge Gradient", Int) = 0
+ [HideInInspector]_DissolveEdgeEmissionAnimated ("Edge Emission", Int) = 0
+ [HideInInspector]_DissolveTextureColorAnimated ("Dissolved Color", Int) = 0
+ [HideInInspector]_DissolveToTextureAnimated ("Dissolved Texture", Int) = 0
+ [HideInInspector]_DissolveToTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveToTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveToEmissionStrengthAnimated ("Dissolved Emission Strength", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureAnimated ("Dissolve Noise", Int) = 0
+ [HideInInspector]_DissolveNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseAnimated ("Dissolve Detail Noise", Int) = 0
+ [HideInInspector]_DissolveDetailNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertDetailNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailStrengthAnimated ("Dissolve Detail Strength", Int) = 0
+ [HideInInspector]_DissolveAlphaAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveUseVertexColorsAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveMaskAnimated ("Dissolve Mask", Int) = 0
+ [HideInInspector]_DissolveMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveMaskInvertAnimated ("Invert?", Int) = 0
+ [HideInInspector]_ContinuousDissolveAnimated ("Continuous Dissolve Speed", Int) = 0
+ [HideInInspector]_DissolveEmissionSideAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_DissolveEmission1SideAnimated ("Emission 2", Int) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector]_DissolveP2PWorldLocalAnimated ("World/Local", Int) = 0
+ [HideInInspector]_DissolveP2PEdgeLengthAnimated ("Edge Length", Int) = 0
+ [HideInInspector]_DissolveStartPointAnimated ("Start Point", Int) = 0
+ [HideInInspector]_DissolveEndPointAnimated ("End Point", Int) = 0
+
+ [HideInInspector]_DissolveAlpha0Animated ("_DissolveAlpha0", Int) = 0
+ [HideInInspector]_DissolveAlpha1Animated ("_DissolveAlpha1", Int) = 0
+ [HideInInspector]_DissolveAlpha2Animated ("_DissolveAlpha2", Int) = 0
+ [HideInInspector]_DissolveAlpha3Animated ("_DissolveAlpha3", Int) = 0
+ [HideInInspector]_DissolveAlpha4Animated ("_DissolveAlpha4", Int) = 0
+ [HideInInspector]_DissolveAlpha5Animated ("_DissolveAlpha5", Int) = 0
+ [HideInInspector]_DissolveAlpha6Animated ("_DissolveAlpha6", Int) = 0
+ [HideInInspector]_DissolveAlpha7Animated ("_DissolveAlpha7", Int) = 0
+ [HideInInspector]_DissolveAlpha8Animated ("_DissolveAlpha8", Int) = 0
+ [HideInInspector]_DissolveAlpha9Animated ("_DissolveAlpha9", Int) = 0
+
+ // Panosphere
+ [HideInInspector]_PanoToggleAnimated ("Enable Panosphere", Int) = 0
+ [HideInInspector]_PanoInfiniteStereoToggleAnimated ("Infinite Stereo", Int) = 0
+ [HideInInspector]_PanosphereColorAnimated ("Color", Int) = 0
+ [HideInInspector]_PanosphereTextureAnimated ("Texture", Int) = 0
+ [HideInInspector]_PanoMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_PanoMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_PanoMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_PanoEmissionAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_PanoBlendAnimated ("Alpha", Int) = 0
+ [HideInInspector]_PanospherePanAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_PanoCubeMapToggleAnimated ("Use Cubemap", Int) = 0
+ [HideInInspector]_PanoCubeMapAnimated ("CubeMap", Int) = 0
+
+ // Glitter
+ [HideInInspector]_GlitterEnableAnimated ("Enable Glitter?", Int) = 0
+ [HideInInspector]_GlitterModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterShapeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterBlendTypeAnimated ("Blend Mode", Int) = 0
+ [HideInInspector]_GlitterColorAnimated ("Color", Int) = 0
+ [HideInInspector]_GlitterUseSurfaceColorAnimated ("Use Surface Color", Int) = 0
+ [HideInInspector]_GlitterColorMapAnimated ("Glitter Color Map", Int) = 0
+ [HideInInspector]_GlitterColorMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterColorMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterTextureAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterRandomRotationAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterFrequencyAnimated ("Glitter Density", Int) = 0
+ [HideInInspector]_GlitterJitterAnimated ("Glitter Jitter", Int) = 0
+ [HideInInspector]_GlitterSpeedAnimated ("Glitter Wobble Speed", Int) = 0
+ [HideInInspector]_GlitterSizeAnimated ("Glitter Size", Int) = 0
+ [HideInInspector]_GlitterContrastAnimated ("Glitter Contrast", Int) = 0
+ [HideInInspector]_GlitterAngleRangeAnimated ("Glitter Angle Range", Int) = 0
+ [HideInInspector]_GlitterMinBrightnessAnimated ("Glitter Min Brightness", Int) = 0
+ [HideInInspector]_GlitterBrightnessAnimated ("Glitter Max Brightness", Int) = 0
+ [HideInInspector]_GlitterBiasAnimated ("Glitter Bias", Int) = 0
+ [HideInInspector]_GlitterCenterSizeAnimated ("center size", Int) = 0
+ [HideInInspector]_GlitterTextureRotationAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_glitterFrequencyLinearEmissiveAnimated ("Frequency", Int) = 0
+ [HideInInspector]_GlitterJaggyFixAnimated ("Jaggy Fix", Int) = 0
+
+ // Glitter Random Colors
+ [HideInInspector]_GlitterRandomColorsAnimated ("Enable", Int) = 0
+ [HideInInspector]_GlitterMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_GlitterMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+ [HideInInspector]_GlitterRandomSizeAnimated ("random Size Toggle", Int) = 0
+ [HideInInspector]_GlitterMinMaxSizeAnimated ("Min Max Random Size", Int) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector]_TextGlyphsAnimated ("Font Array", Int) = 0
+ [HideInInspector]_TextPixelRangeAnimated ("Pixel Range", Int) = 0
+ [HideInInspector]_TextEnabledAnimated ("Text?", Int) = 0
+
+ // FPS
+ [HideInInspector]_TextFPSEnabledAnimated ("FPS Text?", Int) = 0
+ [HideInInspector]_TextFPSUVAnimated ("FPS UV", Int) = 0
+ [HideInInspector]_TextFPSColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextFPSEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextFPSOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextFPSRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextFPSScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextFPSPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // POSITION
+ [HideInInspector]_TextPositionEnabledAnimated ("Position Text?", Int) = 0
+ [HideInInspector]_TextPositionUVAnimated ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVerticalAnimated ("Vertical?", Int) = 0
+ [HideInInspector]_TextPositionColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextPositionEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextPositionOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextPositionRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextPositionScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextPositionPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // INSTANCE TIME
+ [HideInInspector]_TextTimeEnabledAnimated ("Time Text?", Int) = 0
+ [HideInInspector]_TextTimeUVAnimated ("Time UV", Int) = 0
+ [HideInInspector]_TextTimeColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextTimeEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextTimeOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextTimeRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextTimeScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextTimePaddingAnimated ("Padding Reduction", Int) = 0
+
+ // Mirror Rendering
+ [HideInInspector]_EnableMirrorOptionsAnimated ("Enable Mirror Options", Int) = 0
+ [HideInInspector]_MirrorAnimated ("Show in mirror", Int) = 0
+ [HideInInspector]_EnableMirrorTextureAnimated ("Enable Mirror Texture", Int) = 0
+ [HideInInspector]_MirrorTextureAnimated ("Mirror Tex", Int) = 0
+ [HideInInspector]_MirrorTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MirrorTextureUVAnimated ("UV", Int) = 0
+
+ // Distance Fade
+ [HideInInspector]_MainMinAlphaAnimated ("Minimum Alpha", Int) = 0
+ [HideInInspector]_MainFadeTextureAnimated ("Fade Mask", Int) = 0
+ [HideInInspector]_MainFadeTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainFadeTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MainDistanceFadeAnimated ("Distance Fade X to Y", Int) = 0
+
+ // Angular Fade
+ [HideInInspector]_EnableRandomAnimated ("Enable Angular Fade", Int) = 0
+ [HideInInspector]_AngleTypeAnimated ("Angle Type", Int) = 0
+ [HideInInspector]_AngleCompareToAnimated ("Model or Vert Positon", Int) = 0
+ [HideInInspector]_AngleForwardDirectionAnimated ("Forward Direction", Int) = 0
+ [HideInInspector]_CameraAngleMinAnimated ("Camera Angle Min", Int) = 0
+ [HideInInspector]_CameraAngleMaxAnimated ("Camera Angle Max", Int) = 0
+ [HideInInspector]_ModelAngleMinAnimated ("Model Angle Min", Int) = 0
+ [HideInInspector]_ModelAngleMaxAnimated ("Model Angle Max", Int) = 0
+ [HideInInspector]_AngleMinAlphaAnimated ("Min Alpha", Int) = 0
+
+ // UV Distortion
+ [HideInInspector]_EnableDistortionAnimated ("Enabled?", Int) = 0
+ [HideInInspector]_DistortionMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DistortionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DistortionMaskUVAnimated ("Distortion Mask UV", Int) = 0
+ [HideInInspector]_DistortionFlowTextureAnimated ("Distortion Texture 1", Int) = 0
+ [HideInInspector]_DistortionFlowTexture1Animated ("Distortion Texture 2", Int) = 0
+ [HideInInspector]_DistortionStrengthAnimated ("Strength1", Int) = 0
+ [HideInInspector]_DistortionStrength1Animated ("Strength2", Int) = 0
+ [HideInInspector]_DistortionSpeedAnimated ("Speed1", Int) = 0
+ [HideInInspector]_DistortionSpeed1Animated ("Speed2", Int) = 0
+
+ // Video Options
+ [HideInInspector]_EnableVideoAnimated ("Enable Video", Int) = 0
+ [HideInInspector]_VideoUVNumberAnimated ("Screen UV#", Int) = 0
+ [HideInInspector]_VideoTypeAnimated ("Screen Type", Int) = 0
+ [HideInInspector]_VideoBacklightAnimated ("Brightness", Int) = 0
+ [HideInInspector]_VideoPixelTextureAnimated ("Pixel Texture", Int) = 0
+ [HideInInspector]_VideoResolutionAnimated ("Resolution", Int) = 0
+ [HideInInspector]_VideoMaskTextureAnimated ("Mask", Int) = 0
+ [HideInInspector]_VideoMaskPanningAnimated ("Mask Pan Speed", Int) = 0
+ [HideInInspector]_VideoEnableVideoPlayerAnimated ("Enable Video Player", Int) = 0
+ [HideInInspector]_VideoPixelateToResolutionAnimated ("Pixelate To Resolution", Int) = 0
+ [HideInInspector]_VideoRepeatVideoTextureAnimated ("Clamp To UV", Int) = 0
+ [HideInInspector]_VideoPanningAnimated ("Panning Speed", Int) = 0
+ [HideInInspector]_VideoTilingAnimated ("Tiling", Int) = 0
+ [HideInInspector]_VideoOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_VideoSaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_VideoContrastAnimated ("Contrast boost", Int) = 0
+ [HideInInspector]_VideoEnableDebugAnimated ("Enable Debug", Int) = 0
+ [HideInInspector]_VideoDebugTextureAnimated ("Video Debug Tex", Int) = 0
+ [HideInInspector]_VideoCRTRefreshRateAnimated ("Refresh Rate", Int) = 0
+ [HideInInspector]_VideoCRTPixelEnergizedTimeAnimated ("Pixel Fade Time", Int) = 0
+ [HideInInspector]_VideoGameboyRampAnimated ("Color Ramp", Int) = 0
+
+ // TouchFX
+ [HideInInspector]_EnableBulgeAnimated ("Bulge", Int) = 0
+ [HideInInspector]_BulgeMaskAnimated ("Bulge Mask", Int) = 0
+ [HideInInspector]_BuldgeFadeLengthAnimated ("Touch Distance", Int) = 0
+ [HideInInspector]_BuldgeHeightAnimated ("Bulge Height", Int) = 0
+
+ [HideInInspector]_EnableTouchGlowAnimated ("Enable Touch Glow", Int) = 0
+ [HideInInspector]_DepthGradientTextureUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientBlendAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGlowColorAnimated ("Depth Glow Color", Int) = 0
+ [HideInInspector]_DepthGradientAnimated ("Depth Gradient", Int) = 0
+ [HideInInspector]_DepthMaskAnimated ("Depth Mask", Int) = 0
+ [HideInInspector]_DepthGlowEmissionAnimated ("Depth Glow Emission", Int) = 0
+ [HideInInspector]_FadeLengthAnimated ("Fade Length", Int) = 0
+ [HideInInspector]_DepthAlphaMinAnimated ("Alpha Min", Int) = 0
+ [HideInInspector]_DepthAlphaMaxAnimated ("Alpha Max", Int) = 0
+
+ // Hologram
+ [HideInInspector]_EnableHoloAnimated ("Enable Hologram Alpha", Int) = 0
+ [HideInInspector]_HoloAlphaMapAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_HoloCoordinateSpaceAnimated ("Coordinate Space", Int) = 0
+ [HideInInspector]_HoloDirectionAnimated ("Scroll Direction", Int) = 0
+ [HideInInspector]_HoloLineDensityAnimated ("Line Density", Int) = 0
+ [HideInInspector]_HoloScrollSpeedAnimated ("Scroll Speed", Int) = 0
+ [HideInInspector]_HoloFresnelAlphaAnimated ("Intensity", Int) = 0
+ [HideInInspector]_HoloRimSharpnessAnimated ("Sharpness", Int) = 0
+ [HideInInspector]_HoloRimWidthAnimated ("Width", Int) = 0
+
+ // GrabPass
+ [HideInInspector]_GrabPassUseAlphaAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabPassBlendFactorAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabSrcBlendAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabDstBlendAnimated ("Destination Blend", Int) = 0
+ [HideInInspector]_RefractionEnabledAnimated ("Enable Refraction,", Int) = 0
+ [HideInInspector]_RefractionIndexAnimated ("Refraction", Int) = 0
+ [HideInInspector]_RefractionChromaticAberattionAnimated ("Chromatic Aberration", Int) = 0
+ [HideInInspector]_EnableBlurAnimated ("Enable Blur", Int) = 0
+ [HideInInspector]_GrabBlurDistanceAnimated ("Blur Distance", Int) = 0
+ [HideInInspector]_GrabBlurQualityAnimated ("Blur Quality", Int) = 0
+ [HideInInspector]_GrabBlurDirectionsAnimated ("Blur Direction", Int) = 0
+
+ // Iridescence
+ [HideInInspector]_EnableIridescenceAnimated ("Enable Iridescence", Int) = 0
+ [HideInInspector]_IridescenceRampAnimated ("Ramp", Int) = 0
+ [HideInInspector]_IridescenceNormalToggleAnimated ("Custom Normals?", Int) = 0
+ [HideInInspector]_IridescenceNormalMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_IridescenceMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_IridescenceNormalIntensityAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_IridescenceNormalUVAnimated ("Normal UV", Int) = 0
+ [HideInInspector]_IridescenceMaskUVAnimated ("Mask UV", Int) = 0
+ [HideInInspector]_IridescenceNormalSelectionAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_IridescenceIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_IridescenceAddBlendAnimated ("Blend Add", Int) = 0
+ [HideInInspector]_IridescenceReplaceBlendAnimated ("Blend Replace", Int) = 0
+ [HideInInspector]_IridescenceMultiplyBlendAnimated ("Blend Multiply", Int) = 0
+ [HideInInspector]_IridescenceEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_IridescenceTimeAnimated ("When To Run", Int) = 0
+
+ // Vertex Glitching
+ [HideInInspector]_EnableVertexGlitchAnimated ("Enable Vertex Glitching", Int) = 0
+ [HideInInspector]_VertexGlitchFrequencyAnimated ("Glitch Interval", Int) = 0
+ [HideInInspector]_VertexGlitchThresholdAnimated ("Glitch Threshold", Int) = 0
+ [HideInInspector]_VertexGlitchStrengthAnimated ("Glitch Strength", Int) = 0
+
+ // Spawn In Effects
+ [HideInInspector]_EnableScifiSpawnInAnimated ("Enable Sci Fi Spawn", Int) = 0
+ [HideInInspector]_SpawnInNoiseAnimated ("Spawn Noise", Int) = 0
+ [HideInInspector]_SpawnInNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_SpawnInAlphaAnimated ("Spawn Alpha", Int) = 0
+ [HideInInspector]_SpawnInGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_SpawnInGradientFinishAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_SpawnInEmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_SpawnInEmissionOffsetAnimated ("Emission Width", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetAnimated ("Vertex Offset Speed", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetOffsetAnimated ("vert width", Int) = 0
+
+ // Voronoi
+ [HideInInspector]_VoronoiTypeAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiSpaceAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiBlendAnimated ("Blend", Int) = 0
+ [HideInInspector]_EnableVoronoiAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiEffectsMaterialAlphaAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_VoronoiMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseAnimated ("Edge Noise", Int) = 0
+ [HideInInspector]_VoronoiNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_VoronoiColor0Animated ("Color 0", Int) = 0
+ [HideInInspector]_VoronoiEmission0Animated ("Emission 0", Int) = 0
+ [HideInInspector]_VoronoiColor1Animated ("Color 1", Int) = 0
+ [HideInInspector]_VoronoiEmission1Animated ("Emission 1", Int) = 0
+ [HideInInspector]_VoronoiGradientAnimated ("Gradient", Int) = 0
+ [HideInInspector]_VoronoiScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_VoronoiSpeedAnimated ("Speed", Int) = 0
+ [HideInInspector]_VoronoiEnableRandomCellColorAnimated ("Rando Cell Col", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+
+ // Blacklight mask
+ [HideInInspector]_BlackLightMaskEnabledAnimated ("Black Light Mask Enabled", Int) = 0
+ [HideInInspector]_BlackLightMaskKeysAnimated ("Mask Keys", Int) = 0
+ [HideInInspector]_BlackLightMaskStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_BlackLightMaskEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_BlackLightMaskDebugAnimated ("Visualize", Int) = 0
+ [HideInInspector]_BlackLightMaskMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_BlackLightMaskClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcapAnimated ("Matcap 1", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcap2Animated ("Matcap 2", Int) = 0
+ [HideInInspector]_BlackLightMaskEmissionAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_BlackLightMaskEmission2Animated ("Emission 2", Int) = 0
+ [HideInInspector]_BlackLightMaskFlipbookAnimated ("Flipbook", Int) = 0
+ [HideInInspector]_BlackLightMaskDissolveAnimated ("Dissolve", Int) = 0
+ [HideInInspector]_BlackLightMaskPanosphereAnimated ("Panosphere", Int) = 0
+ [HideInInspector]_BlackLightMaskGlitterAnimated ("Glitter", Int) = 0
+ [HideInInspector]_BlackLightMaskIridescenceAnimated ("Iridescence", Int) = 0
+
+ // Outline Options
+ [HideInInspector]_OutlineModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_OutlineFixedSizeAnimated ("Fixed Size?", Int) = 0
+ [HideInInspector]_OutlineUseVertexColorsAnimated ("V Color", Int) = 0
+ [HideInInspector]_OutlineLitAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LineWidthAnimated ("Width", Int) = 0
+ [HideInInspector]_LineColorAnimated ("Color", Int) = 0
+ [HideInInspector]_OutlineTintMixAnimated ("Tint Mix", Int) = 0
+ [HideInInspector]_OutlineEmissionAnimated ("Outline Emission", Int) = 0
+ [HideInInspector]_OutlineTextureAnimated ("Outline Texture", Int) = 0
+ [HideInInspector]_OutlineMaskAnimated ("Outline Mask", Int) = 0
+ [HideInInspector]_OutlineTexturePanAnimated ("Outline Texture Pan", Int) = 0
+ [HideInInspector]_OutlineShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_OutlineRimLightBlendAnimated ("Rim Light Blend", Int) = 0
+ [HideInInspector]_OutlinePersonaDirectionAnimated ("directional Offset XY", Int) = 0
+ [HideInInspector]_OutlineDropShadowOffsetAnimated ("Drop Direction XY", Int) = 0
+ [HideInInspector]_OutlineFadeDistanceAnimated ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetFactor ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetUnits ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineCullAnimated ("Cull", Int) = 0
+
+ // Parallax Mapping
+ [HideInInspector]_ParallaxMapAnimated ("Enable Parallax FX", Int) = 0
+ [HideInInspector]_ParallaxHeightMapEnabledAnimated ("Enable Parallax Height", Int) = 0
+ [HideInInspector]_ParallaxInternalMapEnabledAnimated ("Enable Parallax Internal", Int) = 0
+ [HideInInspector]_ParallaxHeightMapPanAnimated ("Pan", Int) = 0
+ [HideInInspector]_ParallaxUVAnimated ("Parallax UV", Int) = 0
+ [HideInInspector]_ParallaxHeightMapAnimated ("Height Map", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxStrengthAnimated ("Parallax Strength", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightmapModeAnimated ("Parallax Mode", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightFromAlphaAnimated ("HeightFromAlpha", Int) = 0
+ [HideInInspector]_ParallaxInternalMapAnimated ("Internal Map", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxInternalIterationsAnimated ("Parallax Internal Iterations", Int) = 0
+ [HideInInspector]_ParallaxInternalMinDepthAnimated ("Min Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxDepthAnimated ("Max Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMinFadeAnimated ("Min Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxFadeAnimated ("Max Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMinColorAnimated ("Min Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxColorAnimated ("Max Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalPanSpeedAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_ParallaxInternalPanDepthSpeedAnimated ("Per Level Speed Multiplier", Int) = 0
+ [HideInInspector]_ParallaxBiasAnimated ("Parallax Bias (0.42)", Int) = 0
+
+ // Rendering Options
+ [HideInInspector]_CullAnimated ("Cull", Int) = 0
+ [HideInInspector]_ZTestAnimated ("ZTest", Int) = 0
+ [HideInInspector]_ZWriteAnimated ("ZWrite", Int) = 0
+ [HideInInspector]_ColorMaskAnimated ("Color Mask", Int) = 0
+ [HideInInspector]_OffsetFactorAnimated ("Offset Factor", Int) = 0
+ [HideInInspector]_OffsetUnitsAnimated ("Offset Units", Int) = 0
+ [HideInInspector]_IgnoreFogAnimated ("Ignore Fog", Int) = 0
+
+ // Blending Options
+ [HideInInspector]_BlendOpAnimated ("RGB Blend Op", Int) = 0
+ [HideInInspector]_BlendOpAlphaAnimated ("Alpha Blend Op", Int) = 0
+ [HideInInspector]_SrcBlendAnimated ("RGB Source Blend", Int) = 0
+ [HideInInspector]_DstBlendAnimated ("RGB Destination Blend", Int) = 0
+
+ // Stencils
+ [HideInInspector]_StencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_StencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_StencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_StencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_StencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_StencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_StencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Outline Stencil
+ [HideInInspector]_OutlineStencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_OutlineStencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_OutlineStencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_OutlineStencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_OutlineStencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Debug Options
+ [HideInInspector]_VertexUnwrapAnimated ("Unwrap", Range(0, 1)) = 0
+ [HideInInspector]_DebugMeshDataAnimated ("Mesh Data", Int) = 0
+ [HideInInspector]_DebugLightingDataAnimated ("Lighting Data", Int) = 0
+ [HideInInspector]_DebugCameraDataAnimated ("Camera Data", Int) = 0
+ }
+
+
+ //originalEditorCustomEditor "PoiToon"
+ CustomEditor "Thry.ShaderEditor"
+ SubShader
+ {
+ Tags { "RenderType" = "Opaque" "Queue" = "Geometry" }
+
+// //EnableOutlinePass
+// Pass
+// {
+// Name "Outline"
+// Tags { "LightMode" = "ForwardBase" }
+// Stencil
+// {
+// Ref [_OutlineStencilRef]
+// ReadMask [_OutlineStencilReadMask]
+// WriteMask [_OutlineStencilWriteMask]
+// Comp [_OutlineStencilCompareFunction]
+// Pass [_OutlineStencilPassOp]
+// Fail [_OutlineStencilFailOp]
+// ZFail [_OutlineStencilZFailOp]
+// }
+// ZTest [_ZTest]
+// ColorMask [_ColorMask]
+// Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
+// BlendOp [_BlendOp], [_BlendOpAlpha]
+// Blend [_SrcBlend] [_DstBlend]
+// ZWrite [_ZWrite]
+// AlphaToMask [_AlphaToMask]
+// Cull [_OutlineCull]
+// CGPROGRAM
+//
+// #pragma target 5.0
+// #define FORWARD_BASE_PASS
+// #define OUTLINE
+// float _Mode;
+// // patreon Additive
+// // Black Light Mask
+//// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+// // voronoi
+//// #pragma shader_feature CHROMATIC_ABERRATION
+// // UV Distortion
+//// #pragma shader_feature USER_LUT
+// // Vertex Offsets
+//// #pragma shader_feature AUTO_EXPOSURE
+// // Mirror
+//// #pragma shader_feature _REQUIRE_UV2
+// // Random
+//// #pragma shader_feature _SUNDISK_NONE
+// // Dissolve
+//// #pragma shader_feature DISTORT
+// // Lighting
+//// #pragma shader_feature VIGNETTE_MASKED
+// #pragma multi_compile_fwdbase
+// #pragma fragmentoption ARB_precision_hint_fastest
+// #pragma multi_compile_fog
+// #pragma multi_compile_instancing
+// #pragma vertex vert
+// #pragma fragment frag
+// #include "../Includes/CGI_PoiPassOutline.cginc"
+// ENDCG
+//
+// }
+ //EnableOutlinePass
+
+ Pass
+ {
+ Name "MainPass"
+ Tags { "LightMode" = "ForwardBase" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ AlphaToMask [_AlphaToMask]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend [_SrcBlend] [_DstBlend]
+
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_BASE_PASS
+ float _Mode;
+ // Base Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ #pragma multi_compile _ VERTEXLIGHT_ON
+ // patreon Base
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Grab Pass Blur
+// #pragma shader_feature CHROMATIC_ABERRATION_LOW
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Touch Color
+// #pragma shader_feature GRAIN
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdbase
+ #pragma fragmentoption ARB_precision_hint_fastest
+ #pragma multi_compile_fog
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+
+ //LightingAdditiveEnable
+ Pass
+ {
+ Name "ForwardAddPass"
+ Tags { "LightMode" = "ForwardAdd" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ ZWrite Off
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend One One
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_ADD_PASS
+ float _Mode;
+ // Add Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ // patreon Additive
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+// #pragma shader_feature _PARALLAX_MAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Disable Directionals
+// #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdadd_fullshadows
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ //LightingAdditiveEnable
+
+ //LightingCastShadows
+ Pass
+ {
+ Name "ShadowCasterPass"
+ Tags { "LightMode" = "ShadowCaster" }
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ AlphaToMask Off
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_SHADOW
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Dissolve
+// #pragma shader_feature DISTORT
+ #pragma multi_compile_instancing
+ #pragma vertex vertShadowCaster
+ #pragma fragment fragShadowCaster
+ #include "../Includes/CGI_PoiPassShadow.cginc"
+ ENDCG
+
+ }
+ //LightingCastShadows
+
+ Pass
+ {
+ Tags { "LightMode" = "Meta" }
+ Cull Off
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_META_PASS
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
new file mode 100644
index 00000000..488920d2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Body-af5b04c1/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fee1767ee5aa3814384cccc3f1707fa1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521.meta
new file mode 100644
index 00000000..bae34728
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 596e0fc6dc0f35f4b8d70c3baa9a046b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets.meta
new file mode 100644
index 00000000..4c08b1c7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 351fbfaeca5569e4d96a81605ef02073
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders.meta
new file mode 100644
index 00000000..291c4447
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 084bec914f2df44458c946238db2bfdb
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders.meta
new file mode 100644
index 00000000..5008c587
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: c5d3eef0c1428ed429f7c39a005cd8a4
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon.meta
new file mode 100644
index 00000000..c95d76f7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f35488ba7a9df4643adcc0a4a0b875e6
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
new file mode 100644
index 00000000..9370e0b8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 08e5a41e3eeb5e74281b94ff59845b6e
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
new file mode 100644
index 00000000..9f01532c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_ALPHA_TO_COVERAGE
+ #define POI_ALPHA_TO_COVERAGE
+
+ half _MainMipScale;
+ float _MainAlphaToCoverage;
+
+ float CalcMipLevel(float2 texture_coord)
+ {
+ float2 dx = ddx(texture_coord);
+ float2 dy = ddy(texture_coord);
+ float delta_max_sqr = max(dot(dx, dx), dot(dy, dy));
+
+ return 0.5 * log2(delta_max_sqr);
+ }
+
+ void ApplyAlphaToCoverage(inout float4 finalColor)
+ {
+ // Force Model Opacity to 1 if desired
+
+ if (float(0) == 1)
+ {
+
+ if(float(0))
+ {
+ // rescale alpha by mip level
+ finalColor.a *= 1 + max(0, CalcMipLevel(poiMesh.uv[0] * float4(0.0004882813,0.0004882813,2048,2048).zw)) * float(0.25);
+ // rescale alpha by partial derivative
+ finalColor.a = (finalColor.a - float(0.5)) / max(fwidth(finalColor.a), 0.0001) + float(0.5);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
new file mode 100644
index 00000000..a9518c8b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1e4ef50efa1caa4478871e672f4254d6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
new file mode 100644
index 00000000..e529136f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_BACKFACE
+ #define POI_BACKFACE
+
+ float _BackFaceEnabled;
+ float _BackFaceTextureUV;
+ float _BackFaceDetailIntensity;
+ float _BackFaceEmissionStrength;
+ float2 _BackFacePanning;
+ float _BackFaceHueShift;
+ float4 _BackFaceColor;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
+
+ float3 BackFaceColor;
+ void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
+ {
+ backFaceEmission = 0;
+ BackFaceColor = 0;
+
+ if (float(0))
+ {
+ if(!poiMesh.isFrontFace)
+ {
+ albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ backFaceDetailIntensity = float(1);
+ BackFaceColor = albedo.rgb;
+ mixedHueShift = float(0);
+ backFaceEmission = BackFaceColor * float(0);
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
new file mode 100644
index 00000000..4f3a4410
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: df9962f286842824a865b2df29e4a070
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
new file mode 100644
index 00000000..750364ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
@@ -0,0 +1,54 @@
+#ifndef POI_BLACKLIGHT
+ #define POI_BLACKLIGHT
+
+ float4 _BlackLightMaskStart;
+ float4 _BlackLightMaskEnd;
+ float4 _BlackLightMaskKeys;
+ float _BlackLightMaskDebug;
+ float _BlackLightMaskDissolve;
+ float _BlackLightMaskMetallic;
+ float _BlackLightMaskClearCoat;
+ float _BlackLightMaskMatcap;
+ float _BlackLightMaskMatcap2;
+ float _BlackLightMaskEmission;
+ float _BlackLightMaskEmission2;
+ float _BlackLightMaskFlipbook;
+ float _BlackLightMaskPanosphere;
+ float _BlackLightMaskIridescence;
+
+ half _BlackLightMaskGlitter;
+
+ half4 blackLightMask;
+
+ void createBlackLightMask()
+ {
+ blackLightMask = 0;
+ #ifdef VERTEXLIGHT_ON
+
+ for (int lightIndex = 0; lightIndex < 4; lightIndex ++)
+ {
+ float3 lightPos = float3(unity_4LightPosX0[lightIndex], unity_4LightPosY0[lightIndex], unity_4LightPosZ0[lightIndex]);
+ if (!distance(unity_LightColor[lightIndex].rgb, float3(0, 0, 0)))
+ {
+ for (int maskIndex = 0; maskIndex < 4; maskIndex ++)
+ {
+ float4 comparison = _BlackLightMaskKeys;
+ if(unity_LightColor[lightIndex].a == comparison[maskIndex])
+ {
+ blackLightMask[maskIndex] = max(blackLightMask[maskIndex], smoothstep(_BlackLightMaskEnd[maskIndex], _BlackLightMaskStart[maskIndex], distance(poiMesh.worldPos, lightPos)));
+ }
+ }
+ }
+ }
+ #endif
+ }
+#endif
+
+/*
+#ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskDissolve != 4)
+ {
+ blackLightMask[mask];
+ }
+#endif
+*/
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
new file mode 100644
index 00000000..d18eabbd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b9dc1ea95d5dc1443a289222e8dc7533
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
new file mode 100644
index 00000000..f87ae6dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
@@ -0,0 +1,39 @@
+#ifndef POI_BLENDING
+ #define POI_BLENDING
+
+ /*
+ 0: Zero float4(0.0, 0.0, 0.0, 0.0),
+ 1: One float4(1.0, 1.0, 1.0, 1.0),
+ 2: DstColor destinationColor,
+ 3: SrcColor sourceColor,
+ 4: OneMinusDstColor float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ 5: SrcAlpha sourceColor.aaaa,
+ 6: OneMinusSrcColor float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ 7: DstAlpha destinationColor.aaaa,
+ 8: OneMinusDstAlpha float4(1.0, 1.0, 1.0, 1.0) - destinationColor.,
+ 9: SrcAlphaSaturate saturate(sourceColor.aaaa),
+ 10: OneMinusSrcAlpha float4(1.0, 1.0, 1.0, 1.0) - sourceColor.aaaa,
+ */
+
+ float4 poiBlend(const float sourceFactor, const float4 sourceColor, const float destinationFactor, const float4 destinationColor, const float4 blendFactor)
+ {
+ float4 sA = 1-blendFactor;
+ const float4 blendData[11] = {
+ float4(0.0, 0.0, 0.0, 0.0),
+ float4(1.0, 1.0, 1.0, 1.0),
+ destinationColor,
+ sourceColor,
+ float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sA,
+ saturate(sourceColor.aaaa),
+ 1 - sA,
+ };
+
+ return lerp(blendData[sourceFactor] * sourceColor + blendData[destinationFactor] * destinationColor,sourceColor, sA);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
new file mode 100644
index 00000000..9aee748b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 571042a55fa6e444ea53ec7e06936dfe
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
new file mode 100644
index 00000000..6e4db3fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_BULGE
+ #define POI_BULGE
+
+
+ sampler2D _BulgeMask;
+ float _BuldgeFadeLength;
+ float _BuldgeHeight;
+
+ void bulgyWolgy(inout v2f o)
+ {
+ float depth = DecodeFloatRG(tex2Dlod(_CameraDepthTexture, float4(o.grabPos.xy / o.grabPos.w, 0, 0)));
+ float bulgeMask = tex2Dlod(_BulgeMask, float4(o.uv0.xy, 0, 0));
+ depth = Linear01Depth(depth);
+
+ float intersect = 0;
+ if (depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(o.pos.z / o.pos.w));
+ if(diff > 0)
+ {
+ intersect = 1 - smoothstep(0, _ProjectionParams.w * _BuldgeFadeLength, diff);
+ }
+ }
+ float4 offset = intersect * _BuldgeHeight * float4(o.normal, 0);
+
+ offset = IsInMirror() ? 0: offset;
+ offset *= bulgeMask;
+
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos) + offset;
+ o.localPos = mul(unity_WorldToObject, o.worldPos);
+ o.pos = UnityObjectToClipPos(o.localPos);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
new file mode 100644
index 00000000..b7e381fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 799d6d4709a294648bef350cdebc9607
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
new file mode 100644
index 00000000..5adf7340
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
@@ -0,0 +1,108 @@
+#ifndef POI_CLEARCOAT
+ #define POI_CLEARCOAT
+
+ samplerCUBE _ClearCoatCubeMap;
+ float _ClearCoatSampleWorld;
+ POI_TEXTURE_NOSAMPLER(_ClearCoatMask);
+ POI_TEXTURE_NOSAMPLER(_ClearCoatSmoothnessMap);
+ float _ClearCoatInvertSmoothness;
+ float _ClearCoat;
+ float _ClearCoatSmoothness;
+ float3 _ClearCoatTint;
+ float _ClearCoatNormalToUse;
+ float _ClearCoatForceLighting;
+ float lighty_clear_boy_uwu_var;
+
+
+ float3 CalculateClearCoatEnvironmentalReflections()
+ {
+ float3 reflectionColor;
+
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_ClearCoatSmoothnessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+ if (float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ float roughness = 1 - smoothnessMap;
+
+ lighty_clear_boy_uwu_var = 0;
+
+ float3 reflectedDir = float(0) == 0 ? poiCam.vertexReflectionDir: poiCam.reflectionDir;
+
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool no_probe = unity_SpecCube0_HDR.a == 0 && envSample.a == 0;
+
+
+ if(float(0) == 0 && no_probe == 0)
+ {
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflectionColor = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflectionColor = probe0;
+ }
+ }
+ else
+ {
+ lighty_clear_boy_uwu_var = 1;
+ reflectionColor = texCUBElod(_ClearCoatCubeMap, float4(reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+ }
+
+ if(float(0))
+ {
+ lighty_clear_boy_uwu_var = 1;
+ }
+
+ return reflectionColor * float4(1,1,1,1);
+ }
+
+ void calculateAndApplyClearCoat(inout float4 finalColor)
+ {
+ half clearCoatMap = POI2D_SAMPLER_PAN(_ClearCoatMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskClearCoat != 4)
+ {
+ clearCoatMap *= blackLightMask[_BlackLightMaskClearCoat];
+ }
+ #endif
+
+ half3 reflectionColor = CalculateClearCoatEnvironmentalReflections();
+
+ float NormalDotView = abs(dot(float(1), float(0) == 0 ? poiLight.N0DotV: poiLight.nDotV).r);
+ #ifdef POI_LIGHTING
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var), clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ //finalColor.rgb += reflectionColor;
+ //finalColor.rgb = finalColor.rgb * (1- (reflectionColor.r + reflectionColor.g + reflectionColor.b)/3) + reflectionColor * clearCoatMap * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var);
+ #else
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor, clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
new file mode 100644
index 00000000..f7faeeae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e77129ec2290c4d43b018273145e5fa8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
new file mode 100644
index 00000000..687dc443
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
@@ -0,0 +1,262 @@
+#ifndef POI_COLOR
+ #define POI_COLOR
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ static const float Epsilon = 1e-10;
+ // The weights of RGB contributions to luminance.
+ // Should sum to unity.
+ static const float3 HCYwts = float3(0.299, 0.587, 0.114);
+ static const float HCLgamma = 3;
+ static const float HCLy0 = 100;
+ static const float HCLmaxL = 0.530454533953517; // == exp(HCLgamma / HCLy0) - 0.5
+ static const float3 wref = float3(1.0, 1.0, 1.0);
+ #define TAU 6.28318531
+
+ float3 HUEtoRGB(in float H)
+ {
+ float R = abs(H * 6 - 3) - 1;
+ float G = 2 - abs(H * 6 - 2);
+ float B = 2 - abs(H * 6 - 4);
+ return saturate(float3(R, G, B));
+ }
+
+ float3 RGBtoHCV(in float3 RGB)
+ {
+ // Based on work by Sam Hocevar and Emil Persson
+ float4 P = (RGB.g < RGB.b) ? float4(RGB.bg, -1.0, 2.0 / 3.0): float4(RGB.gb, 0.0, -1.0 / 3.0);
+ float4 Q = (RGB.r < P.x) ? float4(P.xyw, RGB.r): float4(RGB.r, P.yzx);
+ float C = Q.x - min(Q.w, Q.y);
+ float H = abs((Q.w - Q.y) / (6 * C + Epsilon) + Q.z);
+ return float3(H, C, Q.x);
+ }
+
+ float3 HSVtoRGB(in float3 HSV)
+ {
+ float3 RGB = HUEtoRGB(HSV.x);
+ return((RGB - 1) * HSV.y + 1) * HSV.z;
+ }
+
+ float3 RGBtoHSV(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float S = HCV.y / (HCV.z + Epsilon);
+ return float3(HCV.x, S, HCV.z);
+ }
+
+ float3 HSLtoRGB(in float3 HSL)
+ {
+ float3 RGB = HUEtoRGB(HSL.x);
+ float C = (1 - abs(2 * HSL.z - 1)) * HSL.y;
+ return(RGB - 0.5) * C + HSL.z;
+ }
+
+ float3 RGBtoHSL(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float L = HCV.z - HCV.y * 0.5;
+ float S = HCV.y / (1 - abs(L * 2 - 1) + Epsilon);
+ return float3(HCV.x, S, L);
+ }
+
+ float3 HCYtoRGB(in float3 HCY)
+ {
+
+
+ float3 RGB = HUEtoRGB(HCY.x);
+ float Z = dot(RGB, HCYwts);
+ if (HCY.z < Z)
+ {
+ HCY.y *= HCY.z / Z;
+ }
+ else if(Z < 1)
+ {
+ HCY.y *= (1 - HCY.z) / (1 - Z);
+ }
+ return(RGB - Z) * HCY.y + HCY.z;
+ }
+
+ float3 RGBtoHCY(in float3 RGB)
+ {
+ // Corrected by David Schaeffer
+ float3 HCV = RGBtoHCV(RGB);
+ float Y = dot(RGB, HCYwts);
+ float Z = dot(HUEtoRGB(HCV.x), HCYwts);
+ if (Y < Z)
+ {
+ HCV.y *= Z / (Epsilon + Y);
+ }
+ else
+ {
+ HCV.y *= (1 - Z) / (Epsilon + 1 - Y);
+ }
+ return float3(HCV.x, HCV.y, Y);
+ }
+
+ float3 HCLtoRGB(in float3 HCL)
+ {
+ float3 RGB = 0;
+ if(HCL.z != 0)
+ {
+ float H = HCL.x;
+ float C = HCL.y;
+ float L = HCL.z * HCLmaxL;
+ float Q = exp((1 - C / (2 * L)) * (HCLgamma / HCLy0));
+ float U = (2 * L - C) / (2 * Q - 1);
+ float V = C / Q;
+ float A = (H + min(frac(2 * H) / 4, frac(-2 * H) / 8)) * pi * 2;
+ float T;
+ H *= 6;
+ if(H <= 0.999)
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.g = T / (1 + T);
+ }
+ else if(H <= 1.001)
+ {
+ RGB.r = 1;
+ RGB.g = 1;
+ }
+ else if(H <= 2)
+ {
+ T = tan(A);
+ RGB.r = (1 + T) / T;
+ RGB.g = 1;
+ }
+ else if(H <= 3)
+ {
+ T = tan(A);
+ RGB.g = 1;
+ RGB.b = 1 + T;
+ }
+ else if(H <= 3.999)
+ {
+ T = tan(A);
+ RGB.g = 1 / (1 + T);
+ RGB.b = 1;
+ }
+ else if(H <= 4.001)
+ {
+ RGB.g = 0;
+ RGB.b = 1;
+ }
+ else if(H <= 5)
+ {
+ T = tan(A);
+ RGB.r = -1 / T;
+ RGB.b = 1;
+ }
+ else
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.b = -T;
+ }
+ RGB = RGB * V + U;
+ }
+ return RGB;
+ }
+
+ float3 RGBtoHCL(in float3 RGB)
+ {
+ float3 HCL;
+ float H = 0;
+ float U = min(RGB.r, min(RGB.g, RGB.b));
+ float V = max(RGB.r, max(RGB.g, RGB.b));
+ float Q = HCLgamma / HCLy0;
+ HCL.y = V - U;
+ if(HCL.y != 0)
+ {
+ H = atan2(RGB.g - RGB.b, RGB.r - RGB.g) / pi;
+ Q *= U / V;
+ }
+ Q = exp(Q);
+ HCL.x = frac(H / 2 - min(frac(H), frac(-H)) / 6);
+ HCL.y *= Q;
+ HCL.z = lerp(-U, V, Q) / (HCLmaxL * 2);
+ return HCL;
+ }
+
+ //HSL MODIFT
+ float3 ModifyViaHSL(float3 color, float3 HSLMod)
+ {
+ float3 colorHSL = RGBtoHSL(color);
+ colorHSL.r = frac(colorHSL.r + HSLMod.r);
+ colorHSL.g = saturate(colorHSL.g + HSLMod.g);
+ colorHSL.b = saturate(colorHSL.b + HSLMod.b);
+ return HSLtoRGB(colorHSL);
+ }
+
+ float3 hueShift(float3 col, float hueAdjust)
+ {
+ hueAdjust *= 2 * pi;
+ const float3 k = float3(0.57735, 0.57735, 0.57735);
+ half cosAngle = cos(hueAdjust);
+ return col * cosAngle + cross(k, col) * sin(hueAdjust) + k * dot(k, col) * (1.0 - cosAngle);
+ }
+
+ float3 poiSaturation(float3 In, float Saturation)
+ {
+ float luma = dot(In, float3(0.2126729, 0.7151522, 0.0721750));
+ return luma.xxx + Saturation.xxx * (In - luma.xxx);
+ }
+ // LCH
+ float xyzF(float t)
+ {
+ return lerp(pow(t, 1. / 3.), 7.787037 * t + 0.139731, step(t, 0.00885645));
+ }
+ float xyzR(float t)
+ {
+ return lerp(t * t * t, 0.1284185 * (t - 0.139731), step(t, 0.20689655));
+ }
+ float3 rgb2lch(in float3 c)
+ {
+ c = mul(float3x3(0.4124, 0.3576, 0.1805,
+ 0.2126, 0.7152, 0.0722,
+ 0.0193, 0.1192, 0.9505), c);
+ c.x = xyzF(c.x / wref.x);
+ c.y = xyzF(c.y / wref.y);
+ c.z = xyzF(c.z / wref.z);
+ float3 lab = float3(max(0., 116.0 * c.y - 16.0), 500.0 * (c.x - c.y), 200.0 * (c.y - c.z));
+ return float3(lab.x, length(float2(lab.y, lab.z)), atan2(lab.z, lab.y));
+ }
+
+ float3 lch2rgb(in float3 c)
+ {
+ c = float3(c.x, cos(c.z) * c.y, sin(c.z) * c.y);
+
+ float lg = 1. / 116. * (c.x + 16.);
+ float3 xyz = float3(wref.x * xyzR(lg + 0.002 * c.y),
+ wref.y * xyzR(lg),
+ wref.z * xyzR(lg - 0.005 * c.z));
+
+ float3 rgb = mul(float3x3(3.2406, -1.5372, -0.4986,
+ - 0.9689, 1.8758, 0.0415,
+ 0.0557, -0.2040, 1.0570), xyz);
+
+ return rgb;
+ }
+
+ //cheaply lerp around a circle
+ float lerpAng(in float a, in float b, in float x)
+ {
+ float ang = fmod(fmod((a - b), TAU) + pi * 3., TAU) - pi;
+ return ang * x + b;
+ }
+
+ //Linear interpolation between two colors in Lch space
+ float3 lerpLch(in float3 a, in float3 b, in float x)
+ {
+ float hue = lerpAng(a.z, b.z, x);
+ return float3(lerp(b.xy, a.xy, x), hue);
+ }
+
+ float3 poiExpensiveColorBlend(float3 col1, float3 col2, float alpha)
+ {
+ return lch2rgb(lerpLch(rgb2lch(col1), rgb2lch(col2), alpha));
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
new file mode 100644
index 00000000..b31faef5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6d724688656c29c4e894641b66f3cb79
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
new file mode 100644
index 00000000..cd354f85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
@@ -0,0 +1,249 @@
+#ifndef POI_DATA
+ #define POI_DATA
+
+ float _ParallaxBias;
+ float _LightingAdditiveLimitIntensity;
+ float _LightingAdditiveMaxIntensity;
+ POI_TEXTURE_NOSAMPLER(_BumpMap);
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailMask);
+ POI_TEXTURE_NOSAMPLER(_DetailNormalMap);
+ float _DetailNormalMapScale;
+ #endif
+ float _BumpScale;
+
+ void calculateAttenuation(v2f i)
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if defined(POINT) || defined(SPOT)
+ POI_LIGHT_ATTENUATION(attenuation, shadow, i, i.worldPos.xyz)
+ poiLight.additiveShadow = shadow;
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ poiLight.additiveShadow == 0;
+ #endif
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ // fix for rare bug where light atten is 0 when there is no directional light in the scene
+ #ifdef FORWARD_BASE_PASS
+ if (all(_LightColor0.rgb == 0.0))
+ {
+ attenuation = 1.0;
+ }
+ #endif
+ #endif
+ poiLight.attenuation = attenuation;
+ }
+
+ void calculateVertexLightingData(in v2f i)
+ {
+ #ifdef VERTEXLIGHT_ON
+ float4 toLightX = unity_4LightPosX0 - i.worldPos.x;
+ float4 toLightY = unity_4LightPosY0 - i.worldPos.y;
+ float4 toLightZ = unity_4LightPosZ0 - i.worldPos.z;
+ float4 lengthSq = 0;
+ lengthSq += toLightX * toLightX;
+ lengthSq += toLightY * toLightY;
+ lengthSq += toLightZ * toLightZ;
+
+ float4 lightAttenSq = unity_4LightAtten0;
+ float4 atten = 1.0 / (1.0 + lengthSq * lightAttenSq);
+ float4 vLightWeight = saturate(1 - (lengthSq * lightAttenSq / 25));
+ poiLight.vAttenuation = min(atten, vLightWeight * vLightWeight);
+
+ poiLight.vDotNL = 0;
+ poiLight.vDotNL += toLightX * poiMesh.normals[1].x;
+ poiLight.vDotNL += toLightY * poiMesh.normals[1].y;
+ poiLight.vDotNL += toLightZ * poiMesh.normals[1].z;
+
+ float4 corr = rsqrt(lengthSq);
+ poiLight.vDotNL = max(0, poiLight.vDotNL * corr);
+ poiLight.vAttenuationDotNL = poiLight.vAttenuation * poiLight.vDotNL;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vPosition[index] = float3(unity_4LightPosX0[index], unity_4LightPosY0[index], unity_4LightPosZ0[index]);
+
+ float3 vertexToLightSource = poiLight.vPosition[index] - poiMesh.worldPos;
+ poiLight.vDirection[index] = normalize(vertexToLightSource);
+ //poiLight.vAttenuationDotNL[index] = 1.0 / (1.0 + unity_4LightAtten0[index] * poiLight.vDotNL[index]);
+ poiLight.vColor[index] = unity_LightColor[index].rgb;
+
+ if (float(0) == 1)
+ {
+ float intensity = max(0.001, (0.299 * poiLight.vColor[index].r + 0.587 * poiLight.vColor[index].g + 0.114 * poiLight.vColor[index].b));
+ poiLight.vColor[index] = min(poiLight.vColor[index], poiLight.vColor[index] / (intensity / float(1)));
+ }
+ poiLight.vHalfDir[index] = Unity_SafeNormalize(poiLight.vDirection[index] + poiCam.viewDir);
+ poiLight.vDotNL[index] = dot(poiMesh.normals[1], -poiLight.vDirection[index]);
+ poiLight.vCorrectedDotNL[index] = .5 * (poiLight.vDotNL[index] + 1);
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.vDotLH[index] = saturate(dot(poiLight.vDirection[index], poiLight.vHalfDir[index]));
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.vDotNH[index] = saturate(dot(poiMesh.normals[1], poiLight.vHalfDir[index]));
+ #endif
+ }
+ #endif
+ }
+
+ void calculateLightingData(in v2f i)
+ {
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ float3 magic = max(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb;
+ poiLight.color = magic + normalLight;
+ #else
+ #ifdef FORWARD_ADD_PASS
+ poiLight.color = _LightColor0.rgb;
+
+
+ if (float(0) == 1)
+ {
+ float additiveLightIntensity = max(0.001, (0.299 * poiLight.color.r + 0.587 * poiLight.color.g + 0.114 * poiLight.color.b));
+ poiLight.color = min(poiLight.color, poiLight.color / (additiveLightIntensity / float(1)));
+ }
+ #endif
+ #endif
+
+ #ifdef FORWARD_BASE_PASS
+ poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ #else
+ #if defined(POINT) || defined(SPOT)
+ poiLight.direction = normalize(_WorldSpaceLightPos0.xyz - i.worldPos);
+ #else
+ poiLight.direction = _WorldSpaceLightPos0;
+ #endif
+ #endif
+
+ poiLight.halfDir = normalize(poiLight.direction + poiCam.viewDir);
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.dotNH = saturate(dot(poiMesh.normals[1], poiLight.halfDir));
+ #endif
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.dotLH = saturate(dot(poiLight.direction, poiLight.halfDir));
+ #endif
+
+ poiLight.nDotV = dot(poiMesh.normals[1], poiCam.viewDir);
+ poiLight.N0DotV = dot(poiMesh.normals[0], poiCam.viewDir);
+ poiLight.nDotL = dot(poiMesh.normals[1], poiLight.direction);
+ poiLight.nDotH = dot(poiMesh.normals[1], poiLight.halfDir);
+ poiLight.lDotv = dot(poiLight.direction, poiCam.viewDir);
+ poiLight.lDotH = dot(poiLight.direction, poiLight.halfDir);
+ }
+
+ float3 CreateBinormal(float3 normal, float3 tangent, float binormalSign)
+ {
+ return cross(normal, tangent.xyz) * (binormalSign * unity_WorldTransformParams.w);
+ }
+
+ void InitializeMeshData(inout v2f i, uint facing)
+ {
+ poiMesh.isFrontFace = facing;
+ poiMesh.normals[0] = normalize(i.normal);
+ poiMesh.binormal = CreateBinormal(i.normal, i.tangent.xyz, i.tangent.w);
+ poiMesh.tangent = i.tangent.xyz;
+
+ #ifndef OUTLINE
+ if(!poiMesh.isFrontFace)
+ {
+ poiMesh.normals[0] *= -1;
+ poiMesh.tangent *= -1;
+ poiMesh.binormal *= -1;
+ }
+ #endif
+
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+ poiMesh.barycentricCoordinates = i.barycentricCoordinates;
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ #ifdef POI_UV_DISTORTION
+ poiMesh.uv[4] = calculateDistortionUV(i.uv0.xy);
+ #else
+ poiMesh.uv[4] = poiMesh.uv[0];
+ #endif
+
+ poiMesh.vertexColor = i.vertexColor;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ poiMesh.lightmapUV = i.lightmapUV;
+ #endif
+ poiMesh.modelPos = i.modelPos;
+
+ #ifdef FUR
+ poiMesh.furAlpha = i.furAlpha;
+ #endif
+ }
+
+ void initializeCamera(v2f i)
+ {
+ poiCam.viewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
+ poiCam.forwardDir = getCameraForward();
+ poiCam.worldPos = _WorldSpaceCameraPos;
+ poiCam.distanceToModel = distance(poiMesh.modelPos, poiCam.worldPos);
+ poiCam.distanceToVert = distance(poiMesh.worldPos, poiCam.worldPos);
+ poiCam.grabPos = i.grabPos;
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ poiCam.clipPos = i.pos;
+ #if defined(GRAIN)
+ poiCam.worldDirection = i.worldDirection;
+ #endif
+
+ poiCam.tangentViewDir = normalize(i.tangentViewDir);
+ poiCam.tangentViewDir.xy /= (poiCam.tangentViewDir.z + float(0.42));
+ }
+
+ void calculateTangentData()
+ {
+ poiTData.tangentTransform = float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]);
+ poiTData.tangentToWorld = transpose(float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]));
+ }
+
+ void CalculateReflectionData()
+ {
+ #if defined(_METALLICGLOSSMAP) || defined(_COLORCOLOR_ON)
+ poiCam.reflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[1]);
+ poiCam.vertexReflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[0]);
+ #endif
+ }
+
+ void calculateNormals(inout half3 detailMask)
+ {
+ half3 mainNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_BumpMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ #ifdef FINALPASS
+ detailMask = POI2D_SAMPLER_PAN(_DetailMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(1) > 0)
+ {
+ half3 detailNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_DetailNormalMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1) * detailMask.g);
+ poiMesh.tangentSpaceNormal = BlendNormals(mainNormal, detailNormal);
+ }
+ else
+ {
+ poiMesh.tangentSpaceNormal = mainNormal;
+ }
+ #else
+ poiMesh.tangentSpaceNormal = mainNormal;
+ #endif
+
+ #ifdef POI_RGBMASK
+ calculateRGBNormals(poiMesh.tangentSpaceNormal);
+ #endif
+
+ poiMesh.normals[1] = normalize(
+ poiMesh.tangentSpaceNormal.x * poiMesh.tangent +
+ poiMesh.tangentSpaceNormal.y * poiMesh.binormal +
+ poiMesh.tangentSpaceNormal.z * poiMesh.normals[0]
+ );
+
+ poiCam.viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[1]));
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
new file mode 100644
index 00000000..b7787ef1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d59d410a383dcec4eaceb671cf6650e7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
new file mode 100644
index 00000000..125d2cd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
@@ -0,0 +1,107 @@
+#ifndef POI_DEBUG
+ #define POI_DEBUG
+
+ float _DebugEnabled;
+ float _DebugMeshData;
+ float _DebugLightingData;
+ float _DebugCameraData;
+
+ void displayDebugInfo(inout float4 finalColor)
+ {
+
+ if (float(0) != 0)
+ {
+ //Mesh Data
+ if (float(0) == 1)
+ {
+ finalColor.rgb = poiMesh.normals[0];
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiMesh.normals[1];
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiMesh.tangent;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiMesh.binormal;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiMesh.localPos;
+ return;
+ }
+
+ #ifdef POI_LIGHTING
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiLight.attenuation;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiLight.directLighting;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiLight.indirectLighting;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiLight.lightMap;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiLight.rampedLightMap;
+ return;
+ }
+ else if(float(0) == 6)
+ {
+ finalColor.rgb = poiLight.finalLighting;
+ return;
+ }
+ else if(float(0) == 7)
+ {
+ finalColor.rgb = poiLight.nDotL;
+ return;
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiCam.viewDir;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiCam.tangentViewDir;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiCam.forwardDir;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiCam.worldPos;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiCam.viewDotNormal;
+ return;
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
new file mode 100644
index 00000000..2dd9f90c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f2eee66c030e7ab46984a8638d6a432c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
new file mode 100644
index 00000000..280fcbc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_DECAL
+ #define POI_DECAL
+
+ POI_TEXTURE_NOSAMPLER(_DecalTexture);
+ POI_TEXTURE_NOSAMPLER(_DecalMask);
+ float4 _DecalColor;
+ fixed _DecalTiled;
+ fixed _DecalBlendAdd;
+ fixed _DecalBlendMultiply;
+ fixed _DecalBlendReplace;
+ half _DecalRotation;
+ half2 _DecalScale;
+ half2 _DecalPosition;
+ half _DecalRotationSpeed;
+ float _DecalEmissionStrength;
+
+ void applyDecal(inout float4 albedo, inout float3 decalEmission)
+ {
+ float2 uv = poiMesh.uv[float(0)];
+ float2 decalCenter = float4(0.5,0.5,0,0);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - decalCenter.x) * cs - (uv.y - decalCenter.y) * sn + decalCenter.x, (uv.x - decalCenter.x) * sn + (uv.y - decalCenter.y) * cs + decalCenter.y);
+ uv = remap(uv, float2(0, 0) - float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float2(0, 0), float2(1, 1));
+
+ half decalAlpha = 1;
+ //float2 uv = TRANSFORM_TEX(poiMesh.uv[float(0)], _DecalTexture) + _Time.x * float4(0,0,0,0);
+ float4 decalColor = POI2D_SAMPLER_PAN(_DecalTexture, _MainTex, uv, float4(0,0,0,0)) * float4(1,1,1,1);
+ decalAlpha *= POI2D_SAMPLER_PAN(_DecalMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if (!float(0))
+ {
+ if(uv.x > 1 || uv.y > 1 || uv.x < 0 || uv.y < 0)
+ {
+ decalAlpha = 0;
+ }
+ }
+
+ if(float(0))
+ {
+ albedo.rgb = lerp(albedo.rgb, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb *= lerp(1, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb += decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+ albedo = saturate(albedo);
+ decalEmission = decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
new file mode 100644
index 00000000..a36ffcbd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 78911daf20ff92d49a4aea4ddb8764ef
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
new file mode 100644
index 00000000..9b70067a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
@@ -0,0 +1,21 @@
+#ifndef POI_DEFINES
+ #define POI_DEFINES
+
+ #define DielectricSpec float4(0.04, 0.04, 0.04, 1.0 - 0.04)
+
+ #ifdef _SPECGLOSSMAP // Specular
+ #ifndef POI_VAR_DOTNH
+ #define POI_VAR_DOTNH
+ #endif
+ #ifndef POI_VAR_DOTLH
+ #define POI_VAR_DOTLH
+ #endif
+ #endif
+
+ #ifdef VIGNETTE_MASKED // Lighting
+ #ifndef POI_VAR_DOTNL
+ #define POI_VAR_DOTNL
+ #endif
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
new file mode 100644
index 00000000..5bb2a267
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cd94cbd961d52f74781a37abdf8e98d1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
new file mode 100644
index 00000000..828460bc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
@@ -0,0 +1,112 @@
+#ifndef POI_DEPTH_COLOR
+ #define POI_DEPTH_COLOR
+
+ float4 _DepthGlowColor;
+ float _DepthGlowEmission;
+ float _FadeLength;
+ float _DepthAlphaMin;
+ float _DepthAlphaMax;
+ POI_TEXTURE_NOSAMPLER(_DepthGradient);
+ POI_TEXTURE_NOSAMPLER(_DepthMask);
+ float _DepthGradientTextureUV;
+ float _DepthGradientBlend;
+
+ /*
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, float4 worldDirection, float4 clipPos)
+ {
+ float3 touchEmission = 0;
+ if (!IsInMirror())
+ {
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+ float depth = DecodeFloatRG(tex2Dproj(_CameraDepthTexture, worldDirection));
+ depth = Linear01Depth(depth);
+ if(depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(clipPos.z));
+ float intersect = 0;
+ if(diff > 0)
+ {
+ intersect = clamp(1 - smoothstep(0, _ProjectionParams.w * fadeLength, diff), 0, 1);
+ }
+ half4 depthGradient = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthGradient, _MainTex, intersect);
+ half3 depthMask = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthMask, _MainTex, poiMesh.uv[0]);
+ half3 depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+ }
+ }
+ depthTouchEmission = touchEmission;
+ }
+ */
+
+ inline float CorrectedLinearEyeDepth(float z, float B)
+ {
+ return 1.0 / (z / PM._34 + B);
+ }
+
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, in float4 worldDirection)
+ {
+ float3 touchEmission = 0;
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+
+ float perspectiveDivide = 1.0f / poiCam.clipPos.w;
+ float4 direction = worldDirection * perspectiveDivide;
+ float2 screenPos = poiCam.grabPos.xy * perspectiveDivide;
+ float z = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, screenPos);
+
+ #if UNITY_REVERSED_Z
+ if (z == 0)
+ #else
+ if(z == 1)
+ #endif
+ return;
+
+ float depth = CorrectedLinearEyeDepth(z, direction.w);
+ float3 worldpos = direction * depth + _WorldSpaceCameraPos.xyz;
+ /*
+ finalColor.rgb = frac(worldpos);
+ return;
+ */
+
+ float diff = distance(worldpos, poiMesh.worldPos);
+ float intersect = 0;
+ intersect = clamp(1 - smoothstep(0, fadeLength, diff), 0, 1);
+ half3 depthMask = POI2D_SAMPLER_PAN(_DepthMask, _MainTex, poiMesh.uv[_DepthMaskUV], _DepthMaskPan);
+
+ half4 depthGradient = 0;
+ half3 depthColor = 0;
+
+
+ if (_DepthGradientTextureUV == 0)
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, float2(intersect, intersect), _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ }
+ else
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, poiMesh.uv[_DepthGradientUV], _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb * intersect;
+ }
+
+
+ if(_DepthGradientBlend == 0) // rpelace
+ {
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ }
+ else if(_DepthGradientBlend == 1) // add
+ {
+ finalColor.rgb += depthColor * intersect * depthMask;
+ }
+ else if(_DepthGradientBlend == 2) // multiply
+ {
+ finalColor.rgb *= lerp(1, depthColor, intersect * depthMask);
+ }
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect * depthMask);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+
+ depthTouchEmission = touchEmission;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
new file mode 100644
index 00000000..6e373515
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d65fc177484cc4f4bb60dd7dac33423c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
new file mode 100644
index 00000000..13175f00
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
@@ -0,0 +1,171 @@
+#ifndef POI_DISSOLVE
+ #define POI_DISSOLVE
+
+ float _DissolveType;
+ float _DissolveEdgeWidth;
+ float4 _DissolveEdgeColor;
+ sampler2D _DissolveEdgeGradient; float4 _DissolveEdgeGradient_ST;
+ float _DissolveEdgeEmission;
+ float4 _DissolveTextureColor;
+
+ POI_TEXTURE_NOSAMPLER(_DissolveToTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveNoiseTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveDetailNoise);
+ POI_TEXTURE_NOSAMPLER(_DissolveMask);
+
+ float _DissolveMaskInvert;
+ float _DissolveAlpha;
+ float _ContinuousDissolve;
+ float _DissolveDetailStrength;
+ float _DissolveEdgeHardness;
+ float _DissolveInvertNoise;
+ float _DissolveInvertDetailNoise;
+ float _DissolveToEmissionStrength;
+
+ // Point to Point
+ float _DissolveP2PWorldLocal;
+ float _DissolveP2PEdgeLength;
+ float4 _DissolveStartPoint;
+ float4 _DissolveEndPoint;
+
+ // World Dissolve
+ float _DissolveWorldShape;
+ float4 _DissolveShapePosition;
+ float4 _DissolveShapeRotation;
+ float _DissolveShapeScale;
+ float _DissolveInvertShape;
+ float _DissolveShapeEdgeLength;
+
+ float _DissolveAlpha0;
+ float _DissolveAlpha1;
+ float _DissolveAlpha2;
+ float _DissolveAlpha3;
+ float _DissolveAlpha4;
+ float _DissolveAlpha5;
+ float _DissolveAlpha6;
+ float _DissolveAlpha7;
+ float _DissolveAlpha8;
+ float _DissolveAlpha9;
+
+ // Masking
+ float _DissolveEmissionSide;
+ float _DissolveEmission1Side;
+ float _DissolveUseVertexColors;
+
+ float4 edgeColor;
+ float edgeAlpha;
+ float dissolveAlpha;
+ float4 dissolveToTexture;
+ //Globals
+
+
+ void calculateDissolve(inout float4 albedo, inout float3 dissolveEmission)
+ {
+
+ float dissolveMask = POI2D_SAMPLER_PAN(_DissolveMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+
+ if (float(0))
+ {
+ // Vertex Color Imprecision hype
+ dissolveMask = ceil(poiMesh.vertexColor.g * 100000) / 100000;
+ }
+
+ dissolveToTexture = POI2D_SAMPLER_PAN(_DissolveToTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ float dissolveNoiseTexture = POI2D_SAMPLER_PAN(_DissolveNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ float da = float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0);
+ da = saturate(da);
+
+ float dds = float(0.1);
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskDissolve != 4)
+ {
+ dissolveMask *= blackLightMask[_BlackLightMaskDissolve];
+ }
+ #endif
+
+ if(float(0))
+ {
+ dissolveMask = 1 - dissolveMask;
+ }
+
+ float dissolveDetailNoise = POI2D_SAMPLER_PAN(_DissolveDetailNoise, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(0))
+ {
+ dissolveNoiseTexture = 1 - dissolveNoiseTexture;
+ }
+ if(float(0))
+ {
+ dissolveDetailNoise = 1 - dissolveDetailNoise;
+ }
+ if(float(0) != 0)
+ {
+ da = sin(_Time.y * float(0)) * .5 + .5;
+ }
+ da *= dissolveMask;
+ dissolveAlpha = da;
+ edgeAlpha = 0;
+
+
+ if(float(1) == 1) // Basic
+ {
+ da = remap(da, 0, 1, -float(0.025), 1);
+ dissolveAlpha = da;
+ //Adjust detail strength to avoid artifacts
+ dds *= smoothstep(1, .99, da);
+ float noise = saturate(dissolveNoiseTexture - dissolveDetailNoise * dds);
+
+ noise = saturate(noise + 0.001);
+ //noise = remap(noise, 0, 1, float(0.025), 1 - float(0.025));
+ dissolveAlpha = dissolveAlpha >= noise;
+ edgeAlpha = remapClamped(noise, da + float(0.025), da, 0, 1) * (1 - dissolveAlpha);
+ }
+ else if (float(1) == 2) // Point to Point
+ {
+ float3 direction;
+ float3 currentPos;
+ float distanceTo = 0;
+ direction = normalize(float4(0,1,0,0) - float4(0,-1,0,0));
+ currentPos = lerp(float4(0,-1,0,0), float4(0,1,0,0), dissolveAlpha);
+ if (float(0) == 0)
+ {
+ distanceTo = dot(poiMesh.localPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ else
+ {
+ distanceTo = dot(poiMesh.worldPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ }
+
+ albedo = lerp(albedo, dissolveToTexture, dissolveAlpha);
+
+
+ if(float(0.025))
+ {
+ edgeColor = tex2D(_DissolveEdgeGradient, TRANSFORM_TEX(float2(edgeAlpha, edgeAlpha), _DissolveEdgeGradient)) * float4(1,1,1,1);
+ albedo.rgb = lerp(albedo.rgb, edgeColor.rgb, smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+ dissolveEmission = lerp(0, dissolveToTexture * float(0), dissolveAlpha) + lerp(0, edgeColor.rgb * float(0), smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
new file mode 100644
index 00000000..4e35766a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: edba4e5775600574e8ed912b5fe7fed6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
new file mode 100644
index 00000000..91efad39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_DITHERING
+ #define POI_DITHERING
+ fixed _DitheringEnabled;
+ fixed _DitherGradient;
+
+ half calcDither(half2 grabPos)
+ {
+ half dither = Dither8x8Bayer(fmod(grabPos.x, 8), fmod(grabPos.y, 8));
+ return dither;
+ }
+
+ #ifndef POI_SHADOW
+ void applyDithering(inout float4 finalColor)
+ {
+
+ if (float(0))
+ {
+ half dither = calcDither(poiCam.screenUV.xy);
+ finalColor.a = finalColor.a - (dither * (1 - finalColor.a) * float(0.1));
+ }
+ }
+ #else
+ void applyShadowDithering(inout float alpha, float2 screenUV)
+ {
+
+ if(float(0))
+ {
+ half dither = calcDither(screenUV);
+ alpha = alpha - (dither * (1 - alpha) * float(0.1));
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
new file mode 100644
index 00000000..4ef482d5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a2958f13d78364241926d777db159306
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
new file mode 100644
index 00000000..4888c2ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
@@ -0,0 +1,240 @@
+#ifndef POI_EMISSION
+ #define POI_EMISSION
+
+ float4 _EmissionColor;
+ POI_TEXTURE_NOSAMPLER(_EmissionMap);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve); float4 _EmissionScrollingCurve_ST;
+ float _EmissionBaseColorAsMap;
+ float _EmissionStrength;
+ float _EnableEmission;
+ float _EmissionHueShift;
+ float4 _EmissiveScroll_Direction;
+ float _EmissiveScroll_Width;
+ float _EmissiveScroll_Velocity;
+ float _EmissiveScroll_Interval;
+ float _EmissionBlinkingEnabled;
+ float _EmissiveBlink_Min;
+ float _EmissiveBlink_Max;
+ float _EmissiveBlink_Velocity;
+ float _ScrollingEmission;
+ float _EnableGITDEmission;
+ float _GITDEMinEmissionMultiplier;
+ float _GITDEMaxEmissionMultiplier;
+ float _GITDEMinLight;
+ float _GITDEMaxLight;
+ float _GITDEWorldOrMesh;
+ float _EmissionCenterOutEnabled;
+ float _EmissionCenterOutSpeed;
+ float _EmissionHueShiftEnabled;
+ float _EmissionBlinkingOffset;
+ float _EmissionScrollingOffset;
+
+ float4 _EmissionColor1;
+ #ifdef EFFECT_HUE_VARIATION
+ POI_TEXTURE_NOSAMPLER(_EmissionMap1);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask1);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve1); float4 _EmissionScrollingCurve1_ST;
+ #endif
+ float _EmissionBaseColorAsMap1;
+ float _EmissionStrength1;
+ float _EnableEmission1;
+ float _EmissionHueShift1;
+ float4 _EmissiveScroll_Direction1;
+ float _EmissiveScroll_Width1;
+ float _EmissiveScroll_Velocity1;
+ float _EmissiveScroll_Interval1;
+ float _EmissionBlinkingEnabled1;
+ float _EmissiveBlink_Min1;
+ float _EmissiveBlink_Max1;
+ float _EmissiveBlink_Velocity1;
+ float _ScrollingEmission1;
+ float _EnableGITDEmission1;
+ float _GITDEMinEmissionMultiplier1;
+ float _GITDEMaxEmissionMultiplier1;
+ float _GITDEMinLight1;
+ float _GITDEMaxLight1;
+ float _GITDEWorldOrMesh1;
+ float _EmissionCenterOutEnabled1;
+ float _EmissionCenterOutSpeed1;
+ float _EmissionHueShiftEnabled1;
+ float _EmissionBlinkingOffset1;
+ float _EmissionScrollingOffset1;
+
+ float _EmissionReplace;
+
+ float _EmissionScrollingVertexColor;
+ float _EmissionScrollingVertexColor1;
+
+ float _EmissionScrollingUseCurve;
+ float _EmissionScrollingUseCurve1;
+
+ float calculateGlowInTheDark(in float minLight, in float maxLight, in float minEmissionMultiplier, in float maxEmissionMultiplier, in float enabled)
+ {
+ float glowInTheDarkMultiplier = 1;
+
+ if (enabled)
+ {
+ #ifdef POI_LIGHTING
+ float3 lightValue = float(0) ? poiLight.finalLighting.rgb: poiLight.directLighting.rgb;
+ float gitdeAlpha = (clamp(poiMax(lightValue), minLight, maxLight) - minLight) / (maxLight - minLight);
+ glowInTheDarkMultiplier = lerp(minEmissionMultiplier, maxEmissionMultiplier, gitdeAlpha);
+ #endif
+ }
+ return glowInTheDarkMultiplier;
+ }
+
+ float calculateScrollingEmission(in float3 direction, in float velocity, in float interval, in float scrollWidth, float offset, float3 position)
+ {
+ float phase = 0;
+ phase = dot(position, direction);
+ phase -= (_Time.y + offset) * velocity;
+ phase /= interval;
+ phase -= floor(phase);
+ phase = saturate(phase);
+ return(pow(phase, scrollWidth) + pow(1 - phase, scrollWidth * 4)) * 0.5;
+ }
+
+ float calculateBlinkingEmission(in float blinkMin, in float blinkMax, in float blinkVelocity, float offset)
+ {
+ float amplitude = (blinkMax - blinkMin) * 0.5f;
+ float base = blinkMin + amplitude;
+ return sin((_Time.y + offset) * blinkVelocity) * amplitude + base;
+ }
+
+ float3 calculateEmissionNew(in float4 baseColor, inout float4 finalColor)
+ {
+ // First Emission
+ float3 emission0 = 0;
+ float emissionStrength0 = float(0);
+ float3 emissionColor0 = 0;
+
+ float glowInTheDarkMultiplier0 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor0 = POI2D_SAMPLER_PAN(_EmissionMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+ else
+ {
+ emissionColor0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve) + (dot(pos, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength0 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos);
+ }
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor0 = hueShift(emissionColor0, float(0) * float(0));
+ float emissionMask0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask) + _Time.x * float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission != 4)
+ {
+ emissionMask0 *= blackLightMask[_BlackLightMaskEmission];
+ }
+ #endif
+
+ emissionStrength0 *= glowInTheDarkMultiplier0 * emissionMask0;
+ emission0 = emissionStrength0 * emissionColor0;
+
+ #ifdef POI_DISSOLVE
+
+ if(float(2) != 2)
+ {
+ emission0 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+
+ // Second Emission
+ float3 emission1 = 0;
+ float emissionStrength1 = 0;
+ float3 emissionColor1 = 0;
+
+ #ifdef EFFECT_HUE_VARIATION
+ emissionStrength1 = float(0);
+ float glowInTheDarkMultiplier1 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor1 = POI2D_SAMPLER_PAN(_EmissionMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ emissionColor1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap1, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)).rgb * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos1 = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos1 = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength1 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve1) + (dot(pos1, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength1 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos1);
+ }
+ }
+
+ if(float(0))
+ {
+ emissionStrength1 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor1 = hueShift(emissionColor1, float(0) * float(0));
+ float emissionMask1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask1) + _Time.x * float4(0,0,0,0));
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission2 != 4)
+ {
+ emissionMask1 *= blackLightMask[_BlackLightMaskEmission2];
+ }
+ #endif
+ emissionStrength1 *= glowInTheDarkMultiplier1 * emissionMask1;
+ emission1 = emissionStrength1 * emissionColor1;
+
+ #ifdef POI_DISSOLVE
+ if(float(2) != 2)
+ {
+ emission1 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+ #endif
+ finalColor.rgb = lerp(finalColor.rgb, saturate(emissionColor0 + emissionColor1), saturate(emissionStrength0 + emissionStrength1) * float(0) * poiMax(emission0 + emission1));
+
+ return emission0 + emission1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
new file mode 100644
index 00000000..63aa585f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3bb78ef69a5b2654993dedd51f56137a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
new file mode 100644
index 00000000..1e9188ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
@@ -0,0 +1,43 @@
+#ifndef POI_ENVIRONMENTAL_RIM
+ #define POI_ENVIRONMENTAL_RIM
+
+ //enviro rim
+ float _EnableEnvironmentalRim;
+ POI_TEXTURE_NOSAMPLER(_RimEnviroMask);
+ float _RimEnviroBlur;
+ float _RimEnviroMinBrightness;
+ float _RimEnviroWidth;
+ float _RimEnviroSharpness;
+ float _RimEnviroIntensity;
+
+ float3 calculateEnvironmentalRimLighting(in float4 albedo)
+ {
+ float enviroRimAlpha = saturate(1 - smoothstep(min(float(0), float(0.45)), float(0.45), poiCam.viewDotNormal));
+ float(0.7) *= 1.7 - 0.7 * float(0.7);
+
+ float3 enviroRimColor = 0;
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if (interpolator < 0.99999)
+ {
+ //Probe 1
+ float4 reflectionData0 = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor0 = DecodeHDR(reflectionData0, unity_SpecCube0_HDR);
+
+ //Probe 2
+ float4 reflectionData1 = UNITY_SAMPLE_TEXCUBE_SAMPLER_LOD(unity_SpecCube1, unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor1 = DecodeHDR(reflectionData1, unity_SpecCube1_HDR);
+
+ enviroRimColor = lerp(reflectionColor1, reflectionColor0, interpolator);
+ }
+ else
+ {
+ float4 reflectionData = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ enviroRimColor = DecodeHDR(reflectionData, unity_SpecCube0_HDR);
+ }
+
+ half enviroMask = poiMax(POI2D_SAMPLER_PAN(_RimEnviroMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb);
+ return lerp(0, max(0, (enviroRimColor - float(0)) * albedo.rgb), enviroRimAlpha).rgb * enviroMask * float(1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
new file mode 100644
index 00000000..4f9fdb9f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9ae993efc9f3304469af6098726a9126
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
new file mode 100644
index 00000000..0ed89b59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
@@ -0,0 +1,153 @@
+#ifndef POI_FLIPBOOK
+ #define POI_FLIPBOOK
+
+ UNITY_DECLARE_TEX2DARRAY(_FlipbookTexArray); float4 _FlipbookTexArray_ST;
+ float4 _FlipbookColor;
+ float _FlipbookFPS;
+ float _FlipbookTotalFrames;
+ float4 _FlipbookScaleOffset;
+ float _FlipbookTiled;
+ float _FlipbookCurrentFrame;
+ float _FlipbookEmissionStrength;
+ float _FlipbookRotation;
+ float _EnableFlipbook;
+ float _FlipbookTexArrayUV;
+ float _FlipbookAlphaControlsFinalAlpha;
+ float _FlipbookRotationSpeed;
+ float _FlipbookIntensityControlsAlpha;
+ float _FlipbookColorReplaces;
+ float2 _FlipbookTexArrayPan;
+
+ // blending
+ float _FlipbookReplace;
+ float _FlipbookMultiply;
+ float _FlipbookAdd;
+ POI_TEXTURE_NOSAMPLER(_FlipbookMask);
+
+ // anim
+ float _FlipbookMovementType;
+ float4 _FlipbookStartEndOffset;
+ float _FlipbookMovementSpeed;
+
+ // Global
+ float4 flipBookPixel;
+ float4 flipBookPixelMultiply;
+ float flipBookMask;
+
+ #ifndef POI_SHADOW
+
+ void applyFlipbook(inout float4 finalColor, inout float3 flipbookEmission)
+ {
+ flipBookMask = POI2D_SAMPLER_PAN(_FlipbookMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float2 uv = frac(poiMesh.uv[float(0)]);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ // 2d rotation
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ if (float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipBookPixel = 0;
+ return;
+ }
+ }
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ flipBookPixel = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipBookPixel.a = poiMax(flipBookPixel.rgb);
+ }
+
+ if(float(0))
+ {
+ flipBookPixel.rgb = float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ flipBookPixel.rgb *= float4(1,1,1,1).rgb;
+ }
+
+ #ifdef POI_BLACKLIGHT
+
+ if(_BlackLightMaskFlipbook != 4)
+ {
+ flipBookMask *= blackLightMask[_BlackLightMaskFlipbook];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * float(1) * flipBookMask);
+ finalColor.rgb = finalColor + flipBookPixel.rgb * float(0) * flipBookMask;
+ finalColor.rgb = finalColor * lerp(1, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * flipBookMask * float(0));
+
+
+ if(float(0))
+ {
+ finalColor.a = lerp(finalColor.a, flipBookPixel.a * float4(1,1,1,1).a, flipBookMask);
+ }
+ flipbookEmission = lerp(0, flipBookPixel.rgb * float(0), flipBookPixel.a * float4(1,1,1,1).a * flipBookMask);
+ }
+
+ #else
+
+ float applyFlipbookAlphaToShadow(float2 uv)
+ {
+
+ if(float(0))
+ {
+ float flipbookShadowAlpha = 0;
+
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float theta = radians(float(0));
+
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ half4 flipbookColor = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipbookColor.a = poiMax(flipbookColor.rgb);
+ }
+
+
+ if(float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipbookColor.a = 0;
+ }
+ }
+ return flipbookColor.a * float4(1,1,1,1).a;
+ }
+ return 1;
+ }
+
+ #endif
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
new file mode 100644
index 00000000..66a5f6cf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fa48678be211290468c54010d8575527
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
new file mode 100644
index 00000000..aa950e7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
@@ -0,0 +1,376 @@
+#ifndef POIFRAG
+ #define POIFRAG
+
+ float _MainEmissionStrength;
+ float _IgnoreFog;
+ half _GIEmissionMultiplier;
+ float _IridescenceTime;
+ float _AlphaToMask;
+ float _ForceOpaque;
+ float _commentIfZero_EnableGrabpass;
+ float _AlphaPremultiply;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+ float _commentIfZero_LightingAdditiveEnable;
+
+ float4 frag(v2f i, uint facing: SV_IsFrontFace): SV_Target
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if !defined(POI_LIGHTING)
+ return 0;
+ #endif
+ #if defined(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A) && defined(DIRECTIONAL)
+ return 0;
+ #endif
+ #endif
+ #ifdef FORWARD_ADD_PASS
+
+ if (float(1) == 0)
+ {
+ return 0;
+ }
+ #endif
+ UNITY_SETUP_INSTANCE_ID(i);
+ // Color
+ float4 albedo = 1;
+ float4 finalColor = 1;
+
+ // Lighting
+ float bakedCubemap = 0; // Whether or not metallic should run before or after lighting multiplication
+ float3 finalSpecular0 = 0;
+ float3 finalSpecular1 = 0;
+ float3 finalSSS = 0;
+ fixed lightingAlpha = 1;
+ float3 finalEnvironmentalRim = 0;
+
+ // Emissions
+ float3 finalEmission = 0;
+ float3 finalLighting = 1;
+ float3 IridescenceEmission = 0;
+ float3 spawnInEmission = 0;
+ float3 voronoiEmission = 0;
+ float3 matcapEmission = 0;
+ float3 depthTouchEmission = 0;
+ float3 decalEmission = 0;
+ float3 glitterEmission = 0;
+ float3 panosphereEmission = 0;
+ float3 backFaceEmission = 0;
+ float3 dissolveEmission = 0;
+ float3 rimLightEmission = 0;
+ float3 flipbookEmission = 0;
+ float3 textOverlayEmission = 0;
+ float3 videoEmission = 0;
+ /**********************************************************************
+ Initialize the base data that's needed everywhere else in the shader
+ **********************************************************************/
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+
+ #ifdef POI_BLACKLIGHT
+ createBlackLightMask();
+
+ if (_BlackLightMaskDebug)
+ {
+ return float4(blackLightMask.rgb, 1);
+ }
+ #endif
+
+ // This has to happen in the initializbecause it alters UV data globally
+ #ifdef POI_PARALLAX
+ calculateandApplyParallax();
+ #endif
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+ calculateVertexLightingData(i);
+ /**********************************************************************
+ Calculate Light Maps
+ **********************************************************************/
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ /**********************************************************************
+ Calculate Color Data
+ **********************************************************************/
+
+ initTextureData(albedo, mainTexture, backFaceEmission, dissolveEmission, detailMask);
+
+ #ifdef POI_DECAL
+ applyDecal(albedo, decalEmission);
+ #endif
+
+
+ #ifdef POI_IRIDESCENCE
+
+ if (_IridescenceTime == 0)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VORONOI
+ applyVoronoi(albedo, voronoiEmission);
+ #endif
+
+ #ifdef POI_MSDF
+ ApplyTextOverlayColor(albedo, textOverlayEmission);
+ #endif
+
+ #ifdef POI_ENVIRONMENTAL_RIM
+ finalEnvironmentalRim = calculateEnvironmentalRimLighting(albedo);
+ #endif
+
+ #if defined(POI_METAL) || defined(POI_CLEARCOAT)
+ CalculateReflectionData();
+ #endif
+
+ #ifdef POI_DATA
+ distanceFade(albedo);
+ #endif
+
+ #ifdef POI_RANDOM
+ albedo.a *= i.angleAlpha;
+ #endif
+
+ #ifdef MATCAP
+ applyMatcap(albedo, matcapEmission);
+ #endif
+
+ #ifdef PANOSPHERE
+ applyPanosphereColor(albedo, panosphereEmission);
+ #endif
+
+ #ifdef POI_FLIPBOOK
+ applyFlipbook(albedo, flipbookEmission);
+ #endif
+
+ #ifdef POI_GLITTER
+ applyGlitter(albedo, glitterEmission);
+ #endif
+
+ #ifdef POI_RIM
+ applyRimLighting(albedo, rimLightEmission);
+ #endif
+
+ #ifdef POI_DEPTH_COLOR
+ applyDepthColor(albedo, depthTouchEmission, finalEmission, i.worldDirection);
+ #endif
+
+ #ifdef POI_IRIDESCENCE
+
+ if(_IridescenceTime == 1)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VIDEO
+ applyScreenEffect(albedo, videoEmission);
+ #endif
+
+ applySpawnIn(albedo, spawnInEmission, poiMesh.uv[0], poiMesh.localPos);
+
+ /**********************************************************************
+ Handle a few alpha options
+ **********************************************************************/
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 0)
+ {
+ applyDithering(albedo);
+ }
+ }
+
+ albedo.a = max(float(0), albedo.a);
+
+
+ if(float(0) >= 1)
+ {
+ clip(albedo.a - float(0.5));
+ }
+
+
+ if(float(0))
+ {
+ albedo.rgb *= saturate(albedo.a + 0.0000000001);
+ }
+
+ /**********************************************************************
+ Lighting Time :)
+ **********************************************************************/
+
+ #ifdef POI_LIGHTING
+ finalLighting = calculateFinalLighting(albedo.rgb, finalColor);
+
+ #ifdef SUBSURFACE
+ finalSSS = calculateSubsurfaceScattering();
+ #endif
+ #endif
+
+ float4 finalColorBeforeLighting = albedo;
+ finalColor = finalColorBeforeLighting;
+
+ #ifdef POI_SPECULAR
+ finalSpecular0 = calculateSpecular(finalColorBeforeLighting);
+ #endif
+ #ifdef POI_PARALLAX
+ calculateAndApplyInternalParallax(finalColor);
+ #endif
+
+ #ifdef POI_ALPHA_TO_COVERAGE
+ ApplyAlphaToCoverage(finalColor);
+ #endif
+
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 1)
+ {
+ applyDithering(finalColor);
+ }
+ }
+
+ #ifdef POI_METAL
+ calculateMetallicness();
+ bool probeExists = shouldMetalHappenBeforeLighting();
+
+ if(!probeExists)
+ {
+ ApplyMetallicsFake(finalColor, albedo);
+ }
+ #endif
+
+ #ifdef POI_LIGHTING
+ #if defined(FORWARD_ADD_PASS) && defined(POI_METAL)
+ finalLighting *= 1 - metalicMap;
+ #endif
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ finalColor.rgb *= finalLighting + poiLight.vFinalLighting;
+ #else
+ finalColor.rgb *= finalLighting;
+ #endif
+
+ #ifdef POI_METAL
+
+ if(probeExists)
+ {
+ ApplyMetallics(finalColor, albedo);
+ }
+ #endif
+
+ finalColor.rgb += finalSpecular0 + finalEnvironmentalRim + finalSSS;
+
+ #ifdef FORWARD_BASE_PASS
+ #ifdef POI_CLEARCOAT
+ calculateAndApplyClearCoat(finalColor);
+ #endif
+ #endif
+
+ finalColor.a = saturate(finalColor.a);
+
+ /**********************************************************************
+ Add Up all the emission values :D
+ **********************************************************************/
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ finalEmission += finalColorBeforeLighting.rgb * float(0) * albedo.a;
+ finalEmission += wireframeEmission;
+ finalEmission += IridescenceEmission;
+ finalEmission += spawnInEmission;
+ finalEmission += voronoiEmission;
+ finalEmission += matcapEmission;
+ finalEmission += depthTouchEmission;
+ finalEmission += decalEmission;
+ finalEmission += glitterEmission;
+ finalEmission += panosphereEmission;
+ finalEmission += backFaceEmission;
+ finalEmission += rimLightEmission;
+ finalEmission += flipbookEmission;
+ finalEmission += videoEmission;
+ finalEmission += textOverlayEmission;
+ finalEmission += dissolveEmission;
+ #ifdef POI_EMISSION
+ finalEmission += calculateEmissionNew(finalColorBeforeLighting, finalColor);
+ #endif
+ #endif
+
+ /**********************************************************************
+ Meta Pass Hype :D
+ **********************************************************************/
+ #ifdef POI_META_PASS
+ UnityMetaInput meta;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, meta);
+ meta.Emission = finalEmission * float(1);
+ meta.Albedo = saturate(finalColor.rgb);
+ #ifdef POI_SPECULAR
+ meta.SpecularColor = poiLight.color.rgb * float4(1,1,1,1).rgb * lerp(1, albedo.rgb, float(0)) * float4(1,1,1,1).a;
+ #else
+ meta.SpecularColor = poiLight.color.rgb * albedo.rgb;
+ #endif
+ return UnityMetaFragment(meta);
+ #endif
+
+ /**********************************************************************
+ Apply Emission to finalColor
+ **********************************************************************/
+ finalColor.rgb += finalEmission;
+
+ /**********************************************************************
+ Grabpass features
+ **********************************************************************/
+
+
+ if (_commentIfZero_EnableGrabpass)
+ {
+ applyGrabEffects(finalColor);
+ }
+
+ /**********************************************************************
+ Unity Fog
+ **********************************************************************/
+ #ifdef FORWARD_BASE_PASS
+
+ if (float(0) == 0)
+ {
+ UNITY_APPLY_FOG(i.fogCoord, finalColor);
+ }
+ #endif
+
+ #ifdef FORWARD_ADD_PASS
+ if(float(0) > 0)
+ {
+ finalColor.rgb *= finalColor.a;
+ }
+ #endif
+
+
+ if(float(0) == 0)
+ {
+ finalColor.a = 1;
+ }
+
+ #ifdef FORWARD_ADD_PASS
+ //finalColor.rgb = smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5));
+ #endif
+
+ #ifdef POI_DEBUG
+ displayDebugInfo(finalColor);
+ #endif
+
+ //finalColor.rgb = frac(finalColor.rgb);
+ return finalColor;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
new file mode 100644
index 00000000..fc22b8c7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cc9987550ac011d4d81963f8744f40fd
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
new file mode 100644
index 00000000..8d260cdf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_FUR
+ #define POI_FUR
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurTexture); float4 _FurTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurHeightMap); float4 _FurHeightMap_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurMask); float4 _FurMask_ST;
+ float _FurAO;
+ float4 _FurColor;
+ float _FurLayers;
+ float _FurMinDistance;
+ float _FurMaxDistance;
+ float _FurHeightMapMin;
+ float _FurHeightMapMax;
+ float _FurDebug;
+ float _AoRampMin;
+ float _AoRampMax;
+ float _FurTipAlpha;
+ float _FurFadeStart;
+
+ //globals
+ half furHeightMap;
+ half furMask;
+
+ void calculateFur()
+ {
+
+ furHeightMap = UNITY_SAMPLE_TEX2D_SAMPLER(_FurHeightMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurHeightMap)).x;
+ furHeightMap = remap(furHeightMap, 0, _FurHeightMapMax, _FurHeightMapMin, 1);
+ furMask = poiMax(UNITY_SAMPLE_TEX2D_SAMPLER(_FurMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurMask)).xyz);
+ half3 furTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_FurTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurTexture));
+ clip(furHeightMap - poiMesh.furAlpha);
+ clip(furMask - poiMesh.furAlpha);
+
+ albedo.rgb = lerp(mainTexture.rgb, furTexture.rgb * _FurColor.rgb, ceil(poiMesh.furAlpha));
+ float aoRampMax = _AoRampMax - (1 - furMask);
+ albedo.rgb *= lerp(1, smoothstep(_AoRampMin, aoRampMax, furHeightMap), _FurAO);
+
+ albedo.a *= smoothstep(1.01, _FurTipAlpha, remapClamped(poiMesh.furAlpha, _FurFadeStart, 1, 0, 1)) + float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
new file mode 100644
index 00000000..e481cc6e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3eb1e88ab427f9e408a919abb13d1f5b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
new file mode 100644
index 00000000..032f3b08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
@@ -0,0 +1,37 @@
+float _FurLength;
+float _FurGravityStrength;
+
+[instance(4)]
+[maxvertexcount(20)]
+void geomFur(triangle v2f IN[3], inout TriangleStream < v2f > tristream, uint InstanceID : SV_GSInstanceID)
+{
+ float4 fur_worldPos[3];
+ v2f o_fur[3];
+ float3 offset = (float3(0, -1, 0) * (_FurLength*.9) *_FurGravityStrength);
+
+ for (int i = 0; i < 3; i++)
+ {
+ if (InstanceID == 0) {
+ IN[i].furAlpha = 0;
+ tristream.Append(IN[i]);
+ }
+ o_fur[i] = IN[i];
+ fur_worldPos[i] = float4(IN[i].worldPos + IN[i].normal * _FurLength, 1);
+ }
+ if (InstanceID == 0) {
+ tristream.RestartStrip();
+ }
+ int Total_FurLayers = clamp(floor(_FurLayers * (1 - smoothstep(_FurMinDistance, _FurMaxDistance, distance(IN[0].worldPos, getCameraPosition())))), min(1, _FurLayers), _FurLayers);
+
+ int startLayer = max(int(InstanceID) * 6 - 1, 0);
+ for (int layer = startLayer; layer < Total_FurLayers; layer++) {
+ for (int i = 0; i < 3; i++) {
+ o_fur[i].furAlpha = float(layer) / Total_FurLayers;
+ o_fur[i].worldPos = float4(lerp(IN[i].worldPos, fur_worldPos[i] + offset * o_fur[i].furAlpha, o_fur[i].furAlpha),1);
+ o_fur[i].pos = UnityWorldToClipPos(o_fur[i].worldPos);
+ o_fur[i].furAlpha += .01;
+ tristream.Append(o_fur[i]);
+ }
+ tristream.RestartStrip();
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
new file mode 100644
index 00000000..6eb17881
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2a20bfb94dc0bd04f8af02b4d2013288
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
new file mode 100644
index 00000000..e31b6498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
@@ -0,0 +1,232 @@
+#ifndef POI_GLITTER
+ #define POI_GLITTER
+
+ half3 _GlitterColor;
+ POI_TEXTURE_NOSAMPLER(_GlitterMask);
+ float2 _GlitterPan;
+ POI_TEXTURE_NOSAMPLER(_GlitterColorMap);
+ POI_TEXTURE_NOSAMPLER(_GlitterTexture);
+ half _GlitterSpeed;
+ half _GlitterBrightness;
+ float _GlitterFrequency;
+ float _GlitterJitter;
+ half _GlitterSize;
+ half _GlitterContrast;
+ half _GlitterAngleRange;
+ half _GlitterMinBrightness;
+ half _GlitterBias;
+ float _GlitterRandomColors;
+ float2 _GlitterMinMaxSaturation;
+ float2 _GlitterMinMaxBrightness;
+ fixed _GlitterUseSurfaceColor;
+ float _GlitterBlendType;
+ float _GlitterMode;
+ float _GlitterShape;
+ float _GlitterCenterSize;
+ float _glitterFrequencyLinearEmissive;
+ float _GlitterJaggyFix;
+ float _GlitterRandomRotation;
+ float _GlitterTextureRotation;
+ float4 _GlitterMinMaxSize;
+ float _GlitterRandomSize;
+
+
+ float3 randomFloat3(float2 Seed, float maximum)
+ {
+ return(.5 + float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed), float2(12.9898, 78.233))) * 43758.5453)
+ ) * .5) * (maximum);
+ }
+
+ float3 randomFloat3Range(float2 Seed, float Range)
+ {
+ return(float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1) * Range;
+ }
+
+ float3 randomFloat3WiggleRange(float2 Seed, float Range)
+ {
+ float3 rando = (float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1);
+ float speed = 1 + float(10);
+ return float3(sin((_Time.x + rando.x * pi) * speed), sin((_Time.x + rando.y * pi) * speed), sin((_Time.x + rando.z * pi) * speed)) * Range;
+ }
+
+ void Unity_RandomRange_float(float2 Seed, float Min, float Max, out float Out)
+ {
+ float randomno = frac(sin(dot(Seed, float2(12.9898, 78.233))) * 43758.5453);
+ Out = lerp(Min, Max, randomno);
+ }
+
+ float3 RandomColorFromPoint(float2 rando)
+ {
+ fixed hue = random2(rando.x + rando.y).x;
+ fixed saturation = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.x);
+ fixed value = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.y);
+ float3 hsv = float3(hue, saturation, value);
+ return HSVtoRGB(hsv);
+ }
+
+ void applyGlitter(inout float4 albedo, inout float3 glitterEmission)
+ {
+
+
+ // Scale
+ float2 st = poiMesh.uv[0] * float(300);
+
+ // Tile the space
+ float2 i_st = floor(st);
+ float2 f_st = frac(st);
+
+ float m_dist = 10.; // minimun distance
+ float2 m_point = 0; // minimum point
+ float2 randoPoint = 0;
+ float2 dank;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 neighbor = float2(i, j);
+ float2 pos = random2(i_st + neighbor);
+ float2 rando = pos;
+ pos = 0.5 + 0.5 * sin(float(1) * 6.2831 * pos);
+ float2 diff = neighbor + pos - f_st;
+ float dist = length(diff);
+
+ if (dist < m_dist)
+ {
+ dank = diff;
+ m_dist = dist;
+ m_point = pos;
+ randoPoint = rando;
+ }
+ }
+ }
+
+ float randomFromPoint = random(randoPoint);
+
+ float size = float(0.3);
+
+ if(float(0))
+ {
+ size = remapClamped(randomFromPoint, 0, 1, float4(0.1,0.5,0,1).x, float4(0.1,0.5,0,1).y);
+ }
+
+
+ // Assign a color using the closest point position
+ //color += dot(m_point, float2(.3, .6));
+
+ // Add distance field to closest point center
+ // color.g = m_dist;
+
+ // Show isolines
+ //color -= abs(sin(40.0 * m_dist)) * 0.07;
+
+ // Draw cell center
+ half glitterAlpha = 1;
+ switch(float(0))
+ {
+ case 0: //circle
+ glitterAlpha = (1. - step(size, m_dist));
+ break;
+ case 1: //sqaure
+ float jaggyFix = pow(poiCam.distanceToVert, 2) * float(0);
+
+
+ if (float(0))
+ {
+ float2 center = float2(0, 0);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ dank = float2((dank.x - center.x) * cs - (dank.y - center.y) * sn + center.x, (dank.x - center.x) * sn + (dank.y - center.y) * cs + center.y);
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ else
+ {
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ break;
+ }
+
+ float3 finalGlitter = 0;
+
+ switch(float(0))
+ {
+ case 0:
+ float3 randomRotation = 0;
+
+ if(float(10) > 0)
+ {
+ randomRotation = randomFloat3WiggleRange(randoPoint, float(90));
+ }
+ else
+ {
+ randomRotation = randomFloat3Range(randoPoint, float(90));
+ }
+ float3 norm = poiMesh.normals[0];
+
+ float3 glitterReflectionDirection = normalize(mul(poiRotationMatrixFromAngles(randomRotation), norm));
+ finalGlitter = lerp(0, float(0) * glitterAlpha, glitterAlpha) + max(pow(saturate(dot(lerp(glitterReflectionDirection, poiCam.viewDir, float(0.8)), poiCam.viewDir)), float(300)), 0);
+ finalGlitter *= glitterAlpha;
+ break;
+ case 1:
+ float offset = random(randoPoint);
+ float brightness = sin((_Time.x + offset) * float(10)) * float(20) - (float(20) - 1);
+ finalGlitter = max(float(0) * glitterAlpha, brightness * glitterAlpha * smoothstep(0, 1, 1 - m_dist * float(0.08) * 10));
+ break;
+ }
+
+
+ half3 glitterColor = float4(1,1,1,1);
+ glitterColor *= lerp(1, albedo, float(0));
+ glitterColor *= POI2D_SAMPLER_PAN(_GlitterColorMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+
+ float2 uv = remapClamped(dank, -size, size, 0, 1);
+
+ if(float(0) && !float(0))
+ {
+ float2 fakeUVCenter = float2(.5, .5);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - fakeUVCenter.x) * cs - (uv.y - fakeUVCenter.y) * sn + fakeUVCenter.x, (uv.x - fakeUVCenter.x) * sn + (uv.y - fakeUVCenter.y) * cs + fakeUVCenter.y);
+ }
+ float4 glitterTexture = POI2D_SAMPLER_PAN(_GlitterTexture, _MainTex, uv, float4(0,0,0,0));
+ //float4 glitterTexture = _GlitterTexture.SampleGrad(sampler_MainTex, frac(uv), ddx(uv), ddy(uv));
+ glitterColor *= glitterTexture.rgb;
+ float glitterMask = POI2D_SAMPLER_PAN(_GlitterMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskGlitter != 4)
+ {
+ glitterMask *= blackLightMask[_BlackLightMaskGlitter];
+ }
+ #endif
+
+ if(float(0))
+ {
+ glitterColor *= RandomColorFromPoint(random2(randoPoint.x + randoPoint.y));
+ }
+
+
+ if(float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, finalGlitter * glitterColor * float(3), finalGlitter * glitterTexture.a * glitterMask);
+ glitterEmission = finalGlitter * glitterColor * max(0, (float(3) - 1) * glitterTexture.a) * glitterMask;
+ }
+ else
+ {
+ glitterEmission = finalGlitter * glitterColor * float(3) * glitterTexture.a * glitterMask;
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
new file mode 100644
index 00000000..3765f1b7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 489d5680f040eb748be2deb8e578b651
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
new file mode 100644
index 00000000..060cb720
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
@@ -0,0 +1,127 @@
+#ifndef POI_GRAB
+ #define POI_GRAB
+
+ float _RefractionIndex;
+ float _RefractionOpacity;
+ float _RefractionChromaticAberattion;
+ float _RefractionEnabled;
+ float _GrabSrcBlend;
+ float _GrabDstBlend;
+ float _GrabPassUseAlpha;
+ float _GrabPassBlendFactor;
+ float _GrabBlurDistance;
+ float _GrabBlurQuality;
+ float _GrabBlurDirections;
+ POI_TEXTURE_NOSAMPLER(_GrabPassBlendMap);
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RefractionOpacityMask); float4 _RefractionOpacityMask_ST;
+
+ float4 blur(float2 uv)
+ {
+ float two_pi = 6.28318530718;
+
+ float2 radius = _GrabBlurDistance / _ScreenParams.xy * 100; // Arbitrary constant to match old blur
+ float quality = floor(_GrabBlurQuality);
+ float directions = floor(_GrabBlurDirections);
+
+ // Pixel colour
+ float4 color = tex2D(_PoiGrab, uv);
+
+ float deltaAngle = two_pi / directions;
+ float deltaQuality = 1.0 / quality;
+ for (int i = 0; i < directions; i ++)
+ {
+ for (int j = 0; j < quality; j ++)
+ {
+ float angle = deltaAngle * i + j;
+ float offset = deltaQuality * (j + 1);
+ color += tex2D(_PoiGrab, uv + float2(cos(angle), sin(angle)) * radius * offset);
+ }
+ }
+
+ // Output to screen
+ color /= quality * directions + 1;
+ return color;
+ }
+
+ inline float4 Refraction(float indexOfRefraction, float chromaticAberration, float2 projectedGrabPos)
+ {
+ float4 refractionColor;
+ float3 worldViewDir = normalize(UnityWorldSpaceViewDir(poiMesh.worldPos));
+ float3 refractionOffset = ((((indexOfRefraction - 1.0) * mul(UNITY_MATRIX_V, float4(poiMesh.normals[1], 0.0))) * (1.0 / (poiCam.grabPos.z + 1.0))) * (1.0 - dot(poiMesh.normals[1], worldViewDir)));
+ float2 cameraRefraction = float2(refractionOffset.x, - (refractionOffset.y * _ProjectionParams.x));
+
+
+ if (_RefractionChromaticAberattion > 0)
+ {
+ float4 redAlpha = tex2D(_PoiGrab, (projectedGrabPos + cameraRefraction));
+ float green = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 - chromaticAberration)))).g;
+ float blue = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 + chromaticAberration)))).b;
+ refractionColor = float4(redAlpha.r, green, blue, redAlpha.a);
+ }
+ else
+ {
+ float2 refractedGrab = projectedGrabPos + cameraRefraction;
+
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refractionColor = blur(refractedGrab);
+ #else
+ refractionColor = tex2D(_PoiGrab, (refractedGrab));
+ #endif
+ }
+ return refractionColor;
+ }
+
+ void calculateRefraction(float2 projectedGrabPos, inout float4 finalColor)
+ {
+ float3 refraction = 1;
+
+ if(_RefractionEnabled == 1)
+ {
+ refraction = Refraction(_RefractionIndex, _RefractionChromaticAberattion, projectedGrabPos).rgb;
+ }
+ else
+ {
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refraction = blur(projectedGrabPos);
+ #else
+ refraction = tex2Dproj(_PoiGrab, poiCam.grabPos);
+ #endif
+ }
+
+ float blendFactor = _GrabPassBlendFactor * POI2D_SAMPLER_PAN(_GrabPassBlendMap, _MainTex, poiMesh.uv[_GrabPassBlendMapUV], _GrabPassBlendMapPan).r;
+
+ if(_GrabPassUseAlpha)
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor * (1 - finalColor.a));
+ finalColor.a = 1;
+ }
+ else
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor);
+ }
+ }
+
+ float2 calculateGrabPosition()
+ {
+ float4 grabPos = poiCam.grabPos;
+ #if UNITY_UV_STARTS_AT_TOP
+ float scale = -1.0;
+ #else
+ float scale = 1.0;
+ #endif
+ float halfPosW = grabPos.w * 0.5;
+ grabPos.y = (grabPos.y - halfPosW) * _ProjectionParams.x * scale + halfPosW;
+ #if SHADER_API_D3D9 || SHADER_API_D3D11
+ grabPos.w += 0.00000000001;
+ #endif
+ return(grabPos / grabPos.w).xy;
+ }
+
+ void applyGrabEffects(inout float4 finalColor)
+ {
+ float2 projectedGrabPos = calculateGrabPosition();
+ calculateRefraction(projectedGrabPos, finalColor);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
new file mode 100644
index 00000000..a2f0d4fd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 55d93447539f7944f9be66c242c923db
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
new file mode 100644
index 00000000..9ae9e754
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
@@ -0,0 +1,338 @@
+#ifndef POI_HELPER
+ #define POI_HELPER
+
+ #include "CGI_PoiColors.cginc"
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float linearSin(float x)
+ {
+ return pow(min(cos(pi * x / 2.0), 1.0 - abs(x)), 1.0);
+ }
+
+ float random(float2 p)
+ {
+ return frac(sin(dot(p, float2(12.9898, 78.2383))) * 43758.5453123);
+ }
+
+ float2 random2(float2 p)
+ {
+ return frac(sin(float2(dot(p, float2(127.1, 311.7)), dot(p, float2(269.5, 183.3)))) * 43758.5453);
+ }
+
+ float3 random3(float3 p)
+ {
+ return frac(sin(float3(dot(p, float3(127.1, 311.7, 248.6)), dot(p, float3(269.5, 183.3, 423.3)), dot(p, float3(248.3, 315.9, 184.2)))) * 43758.5453);
+ }
+
+ float3 mod(float3 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+ float2 mod(float2 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+
+ //1/7
+ #define K 0.142857142857
+ //3/7
+ #define Ko 0.428571428571
+
+ // Permutation polynomial: (34x^2 + x) mod 289
+ float3 Permutation(float3 x)
+ {
+ return mod((34.0 * x + 1.0) * x, 289.0);
+ }
+
+ bool IsInMirror()
+ {
+ return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f;
+ }
+
+ float3 BoxProjection(float3 direction, float3 position, float4 cubemapPosition, float3 boxMin, float3 boxMax)
+ {
+ #if UNITY_SPECCUBE_BOX_PROJECTION
+
+ if (cubemapPosition.w > 0)
+ {
+ float3 factors = ((direction > 0 ? boxMax: boxMin) - position) / direction;
+ float scalar = min(min(factors.x, factors.y), factors.z);
+ direction = direction * scalar + (position - cubemapPosition);
+ }
+ #endif
+ return direction;
+ }
+
+ // Camera
+ float3 getCameraPosition()
+ {
+ #ifdef USING_STEREO_MATRICES
+ return lerp(unity_StereoWorldSpaceCameraPos[0], unity_StereoWorldSpaceCameraPos[1], 0.5);
+ #endif
+ return _WorldSpaceCameraPos;
+ }
+
+ float3 getCameraForward()
+ {
+ #if UNITY_SINGLE_PASS_STEREO
+ float3 p1 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 0, 1));
+ #else
+ float3 p1 = mul(unity_CameraToWorld, float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_CameraToWorld, float4(0, 0, 0, 1));
+ #endif
+ return normalize(p2 - p1);
+ }
+
+ float3 grayscale_vector_node()
+ {
+ return float3(0, 0.3823529, 0.01845836);
+ }
+
+ float3 grayscale_for_light()
+ {
+ return float3(0.298912, 0.586611, 0.114478);
+ }
+
+ //Math Operators
+
+ float remap(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float2 remap(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float3 remap(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float4 remap(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float remapClamped(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float2 remapClamped(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float3 remapClamped(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float4 remapClamped(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float poiMax(float2 i)
+ {
+ return max(i.x, i.y);
+ }
+
+ float poiMax(float3 i)
+ {
+ return max(max(i.x, i.y), i.z);
+ }
+
+ float poiMax(float4 i)
+ {
+ return max(max(max(i.x, i.y), i.z), i.w);
+ }
+
+ float4x4 poiAngleAxisRotationMatrix(float angle, float3 axis)
+ {
+ axis = normalize(axis);
+ float s = sin(angle);
+ float c = cos(angle);
+ float oc = 1.0 - c;
+
+ return float4x4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
+ oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
+ oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
+ 0.0, 0.0, 0.0, 1.0);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float x, float y, float z)
+ {
+ float angleX = radians(x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float3 angles)
+ {
+ float angleX = radians(angles.x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(angles.y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(angles.z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+#endif
+
+half2 calcScreenUVs(half4 grabPos)
+{
+ half2 uv = grabPos / (grabPos.w + 0.0000000001);
+ #if UNITY_SINGLE_PASS_STEREO
+ uv.xy *= half2(_ScreenParams.x * 2, _ScreenParams.y);
+ #else
+ uv.xy *= _ScreenParams.xy;
+ #endif
+
+ return uv;
+}
+
+float inverseLerp(float A, float B, float T)
+{
+ return(T - A) / (B - A);
+}
+
+float inverseLerp2(float2 a, float2 b, float2 value)
+{
+ float2 AB = b - a;
+ float2 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp3(float3 a, float3 b, float3 value)
+{
+ float3 AB = b - a;
+ float3 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp4(float4 a, float4 b, float4 value)
+{
+ float4 AB = b - a;
+ float4 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+// Dithering
+inline half Dither8x8Bayer(int x, int y)
+{
+ const half dither[ 64 ] = {
+ 1, 49, 13, 61, 4, 52, 16, 64,
+ 33, 17, 45, 29, 36, 20, 48, 32,
+ 9, 57, 5, 53, 12, 60, 8, 56,
+ 41, 25, 37, 21, 44, 28, 40, 24,
+ 3, 51, 15, 63, 2, 50, 14, 62,
+ 35, 19, 47, 31, 34, 18, 46, 30,
+ 11, 59, 7, 55, 10, 58, 6, 54,
+ 43, 27, 39, 23, 42, 26, 38, 22
+ };
+ int r = y * 8 + x;
+ return dither[r] / 64;
+}
+
+// UV Manipulation
+float2 TransformUV(half2 offset, half rotation, half2 scale, float2 uv)
+{
+ float theta = radians(rotation);
+ scale = 1 - scale;
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 centerPoint = offset + .5;
+ uv = float2((uv.x - centerPoint.x) * cs - (uv.y - centerPoint.y) * sn + centerPoint.x, (uv.x - centerPoint.x) * sn + (uv.y - centerPoint.y) * cs + centerPoint.y);
+
+ return remap(uv, float2(0, 0) + offset + (scale * .5), float2(1, 1) + offset - (scale * .5), float2(0, 0), float2(1, 1));
+}
+
+bool isVR()
+{
+ // USING_STEREO_MATRICES
+ #if UNITY_SINGLE_PASS_STEREO
+ return true;
+ #else
+ return false;
+ #endif
+}
+
+bool isVRHandCamera()
+{
+ return !isVR() && abs(UNITY_MATRIX_V[0].y) > 0.0000005;
+}
+
+bool isDesktop()
+{
+ return !isVRHandCamera();
+}
+
+bool isVRHandCameraPreview()
+{
+ return isVRHandCamera() && _ScreenParams.y == 720;
+}
+
+bool isVRHandCameraPicture()
+{
+ return isVRHandCamera() && _ScreenParams.y == 1080;
+}
+
+bool isPanorama()
+{
+ // Crude method
+ // FOV=90=camproj=[1][1]
+ return unity_CameraProjection[1][1] == 1 && _ScreenParams.x == 1075 && _ScreenParams.y == 1025;
+}
+
+float3 calculateluminance(float3 color)
+{
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
new file mode 100644
index 00000000..a626c60d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3b6e363c867bf0b45b11d78723421516
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
new file mode 100644
index 00000000..6ee66d3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
@@ -0,0 +1,36 @@
+#ifndef POI_HOLOGRAM
+ #define POI_HOLOGRAM
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_HoloAlphaMap); float4 _HoloAlphaMap_ST;
+ float _HoloCoordinateSpace; // 0 World, 1 Local, 2 UV
+ float3 _HoloDirection;
+ float _HoloScrollSpeed;
+ float _HoloLineDensity;
+
+ fixed _HoloFresnelAlpha;
+ fixed _HoloRimSharpness;
+ fixed _HoloRimWidth;
+ void ApplyHoloAlpha(inout float4 color)
+ {
+ float uv = 0;
+
+ if (_HoloCoordinateSpace == 0)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.worldPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 1)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.localPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 2)
+ {
+ uv = dot(_HoloDirection, poiMesh.uv[0] * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+ float holoRim = saturate(1 - smoothstep(min(_HoloRimSharpness, _HoloRimWidth), _HoloRimWidth, poiCam.viewDotNormal));
+ holoRim = abs(lerp(1, holoRim, _HoloFresnelAlpha));
+ color.a *= UNITY_SAMPLE_TEX2D_SAMPLER(_HoloAlphaMap, _MainTex, uv).r * holoRim;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
new file mode 100644
index 00000000..fcda87a4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 38b72415cd2551140ab126605161f64b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
new file mode 100644
index 00000000..bcea8ccc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
@@ -0,0 +1,61 @@
+#ifndef POI_IRIDESCENCE
+ #define POI_IRIDESCENCE
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceRamp); float4 _IridescenceRamp_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceMask); float4 _IridescenceMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceNormalMap); float4 _IridescenceNormalMap_ST;
+ float _IridescenceNormalUV;
+ float _IridescenceMaskUV;
+ float _IridescenceNormalSelection;
+ float _IridescenceNormalIntensity;
+ float _IridescenceNormalToggle;
+ float _IridescenceIntensity;
+ fixed _IridescenceAddBlend;
+ fixed _IridescenceReplaceBlend;
+ fixed _IridescenceMultiplyBlend;
+ float _IridescenceEmissionStrength;
+
+ //global
+
+ float3 calculateNormal(float3 baseNormal)
+ {
+ float3 normal = UnpackScaleNormal(UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceNormalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceNormalUV], _IridescenceNormalMap)), _IridescenceNormalIntensity);
+ return normalize(
+ normal.x * poiMesh.tangent +
+ normal.y * poiMesh.binormal +
+ normal.z * baseNormal
+ );
+ }
+
+ void applyIridescence(inout float4 albedo, inout float3 IridescenceEmission)
+ {
+ float3 normal = poiMesh.normals[_IridescenceNormalSelection];
+
+ // Use custom normal map
+
+ if (_IridescenceNormalToggle)
+ {
+ normal = calculateNormal(normal);
+ }
+
+ float ndotv = dot(normal, poiCam.viewDir);
+
+ float4 iridescenceColor = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceRamp, _MainTex, 1 - abs(ndotv));
+ float4 iridescenceMask = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceMaskUV], _IridescenceMask));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskIridescence != 4)
+ {
+ iridescenceMask *= blackLightMask[_BlackLightMaskIridescence];
+ }
+ #endif
+
+
+ albedo.rgb = lerp(albedo.rgb, saturate(iridescenceColor.rgb * _IridescenceIntensity), iridescenceColor.a * _IridescenceReplaceBlend * iridescenceMask);
+ albedo.rgb += saturate(iridescenceColor.rgb * _IridescenceIntensity * iridescenceColor.a * _IridescenceAddBlend * iridescenceMask);
+ albedo.rgb *= saturate(lerp(1, iridescenceColor.rgb * _IridescenceIntensity, iridescenceColor.a * _IridescenceMultiplyBlend * iridescenceMask));
+
+ IridescenceEmission = saturate(iridescenceColor.rgb * _IridescenceIntensity) * iridescenceColor.a * iridescenceMask * _IridescenceEmissionStrength;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
new file mode 100644
index 00000000..5f8ff6da
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 39b927ec5f321224aae95e7a3e47c99b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
new file mode 100644
index 00000000..8f35cb62
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
@@ -0,0 +1,668 @@
+
+#ifndef POI_LIGHTING
+ #define POI_LIGHTING
+
+ float _LightingShadingEnabled;
+ float _LightingRampType;
+ float _LightingIgnoreAmbientColor;
+ float _UseShadowTexture;
+ float _LightingEnableAO;
+ float _LightingDetailShadowsEnabled;
+
+ float _LightingOnlyUnityShadows;
+ float _LightingMode;
+ float _ForceLightDirection;
+ float _ShadowStrength;
+ float _OutlineShadowStrength;
+ float _ShadowOffset;
+ float3 _LightDirection;
+ float _ForceShadowStrength;
+ float _CastedShadowSmoothing;
+ float _AttenuationMultiplier;
+ float _EnableLighting;
+ float _LightingControlledUseLightColor;
+ fixed _LightingStandardSmoothness;
+ fixed _LightingStandardControlsToon;
+ fixed _LightingMinLightBrightness;
+ float _LightingUseShadowRamp;
+ float _LightingMinShadowBrightnessRatio;
+ UNITY_DECLARE_TEX2D(_ToonRamp);
+ fixed _LightingMonochromatic;
+
+ fixed _LightingGradientStart;
+ fixed _LightingGradientEnd;
+ float3 _LightingShadowColor;
+ POI_TEXTURE_NOSAMPLER(_LightingShadowTexture);
+ float _AOStrength;
+ fixed _LightingDetailStrength;
+ fixed _LightingAdditiveDetailStrength;
+ fixed _LightingNoIndirectMultiplier;
+ fixed _LightingNoIndirectThreshold;
+ float _LightingUncapped;
+
+ float _LightingDirectColorMode;
+ float _LightingIndirectColorMode;
+ float _LightingAdditiveType;
+ fixed _LightingAdditiveGradientStart;
+ fixed _LightingAdditiveGradientEnd;
+ fixed _LightingAdditivePassthrough;
+ float _LightingDirectAdjustment;
+ float _LightingIndirect;
+ // HSL JUNK
+ float _LightingEnableHSL;
+ float _LightingShadowHue;
+ float _LightingShadowSaturation;
+ float _LightingShadowLightness;
+ float _LightingHSLIntensity;
+ /*
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ToonRamp3);
+ half _LightingShadowStrength3;
+ half _ShadowOffset3;
+ */
+
+ half4 shadowStrength;
+
+ POI_TEXTURE_NOSAMPLER(_LightingDetailShadows);
+ POI_TEXTURE_NOSAMPLER(_LightingAOTex);
+ POI_TEXTURE_NOSAMPLER(_LightingShadowMask);
+
+ /*
+ * MIT License
+ *
+ * Copyright (c) 2018 s-ilent
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+ /*
+ * Silent's code starts here
+ */
+
+ float shEvaluateDiffuseL1Geomerics_local(float L0, float3 L1, float3 n)
+ {
+ // average energy
+ float R0 = max(0, L0);
+
+ // avg direction of incoming light
+ float3 R1 = 0.5f * L1;
+
+ // directional brightness
+ float lenR1 = length(R1);
+
+ // linear angle between normal and direction 0-1
+ //float q = 0.5f * (1.0f + dot(R1 / lenR1, n));
+ //float q = dot(R1 / lenR1, n) * 0.5 + 0.5;
+ float q = dot(normalize(R1), n) * 0.5 + 0.5;
+ q = saturate(q); // Thanks to ScruffyRuffles for the bug identity.
+
+ // power for q
+ // lerps from 1 (linear) to 3 (cubic) based on directionality
+ float p = 1.0f + 2.0f * lenR1 / R0;
+
+ // dynamic range constant
+ // should vary between 4 (highly directional) and 0 (ambient)
+ float a = (1.0f - lenR1 / R0) / (1.0f + lenR1 / R0);
+
+ return R0 * (a + (1.0f - a) * (p + 1.0f) * pow(q, p));
+ }
+
+ half3 BetterSH9(half4 normal)
+ {
+ float3 indirect;
+ float3 L0 = float3(unity_SHAr.w, unity_SHAg.w, unity_SHAb.w) + float3(unity_SHBr.z, unity_SHBg.z, unity_SHBb.z) / 3.0;
+ indirect.r = shEvaluateDiffuseL1Geomerics_local(L0.r, unity_SHAr.xyz, normal);
+ indirect.g = shEvaluateDiffuseL1Geomerics_local(L0.g, unity_SHAg.xyz, normal);
+ indirect.b = shEvaluateDiffuseL1Geomerics_local(L0.b, unity_SHAb.xyz, normal);
+ indirect = max(0, indirect);
+ indirect += SHEvalLinearL2(normal);
+ return indirect;
+ }
+
+ float3 BetterSH9(float3 normal)
+ {
+ return BetterSH9(float4(normal, 1));
+ }
+
+ /*
+ * Standard stuff starts here
+ */
+ UnityLight CreateLight(float3 normal, fixed detailShadowMap)
+ {
+ UnityLight light;
+ light.dir = poiLight.direction;
+ light.color = saturate(_LightColor0.rgb * lerp(1, poiLight.attenuation, float(0)) * detailShadowMap);
+ light.ndotl = DotClamped(normal, poiLight.direction);
+ return light;
+ }
+
+ float FadeShadows(float attenuation)
+ {
+ #if HANDLE_SHADOWS_BLENDING_IN_GI || ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ // UNITY_LIGHT_ATTENUATION doesn't fade shadows for us.
+
+ #if ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ attenuation = lerp(1, poiLight.attenuation, float(0));
+ #endif
+
+ float viewZ = dot(_WorldSpaceCameraPos - poiMesh.worldPos, UNITY_MATRIX_V[2].xyz);
+ float shadowFadeDistance = UnityComputeShadowFadeDistance(poiMesh.worldPos, viewZ);
+ float shadowFade = UnityComputeShadowFade(shadowFadeDistance);
+ float bakedAttenuation = UnitySampleBakedOcclusion(poiMesh.lightmapUV.xy, poiMesh.worldPos);
+ attenuation = UnityMixRealtimeAndBakedShadows(
+ attenuation, bakedAttenuation, shadowFade
+ );
+ #endif
+
+ return attenuation;
+ }
+
+ void ApplySubtractiveLighting(inout UnityIndirect indirectLight)
+ {
+ #if SUBTRACTIVE_LIGHTING
+ poiLight.attenuation = FadeShadows(lerp(1, poiLight.attenuation, float(0)));
+
+ float ndotl = saturate(dot(i.normal, _WorldSpaceLightPos0.xyz));
+ float3 shadowedLightEstimate = ndotl * (1 - poiLight.attenuation) * _LightColor0.rgb;
+ float3 subtractedLight = indirectLight.diffuse - shadowedLightEstimate;
+ subtractedLight = max(subtractedLight, unity_ShadowColor.rgb);
+ subtractedLight = lerp(subtractedLight, indirectLight.diffuse, _LightShadowData.x);
+ indirectLight.diffuse = min(subtractedLight, indirectLight.diffuse);
+ #endif
+ }
+
+ float3 weightedBlend(float3 layer1, float3 layer2, float2 weights)
+ {
+ return(weights.x * layer1 + weights.y * layer2) / (weights.x + weights.y);
+ }
+
+ UnityIndirect CreateIndirectLight(float3 normal)
+ {
+ UnityIndirect indirectLight;
+ indirectLight.diffuse = 0;
+ indirectLight.specular = 0;
+
+ #if defined(FORWARD_BASE_PASS)
+ #if defined(LIGHTMAP_ON)
+ indirectLight.diffuse = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap, poiMesh.lightmapUV.xy));
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 lightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_LightmapInd, unity_Lightmap, poiMesh.lightmapUV.xy
+ );
+ indirectLight.diffuse = DecodeDirectionalLightmap(
+ indirectLight.diffuse, lightmapDirection, normal
+ );
+ #endif
+ ApplySubtractiveLighting(indirectLight);
+ #endif
+
+ #if defined(DYNAMICLIGHTMAP_ON)
+ float3 dynamicLightDiffuse = DecodeRealtimeLightmap(
+ UNITY_SAMPLE_TEX2D(unity_DynamicLightmap, poiMesh.lightmapUV.zw)
+ );
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 dynamicLightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_DynamicDirectionality, unity_DynamicLightmap,
+ poiMesh.lightmapUV.zw
+ );
+ indirectLight.diffuse += DecodeDirectionalLightmap(
+ dynamicLightDiffuse, dynamicLightmapDirection, normal
+ );
+ #else
+ indirectLight.diffuse += dynamicLightDiffuse;
+ #endif
+ #endif
+
+ #if !defined(LIGHTMAP_ON) && !defined(DYNAMICLIGHTMAP_ON)
+ #if UNITY_LIGHT_PROBE_PROXY_VOLUME
+ if (unity_ProbeVolumeParams.x == 1)
+ {
+ indirectLight.diffuse = SHEvalLinearL0L1_SampleProbeVolume(
+ float4(normal, 1), poiMesh.worldPos
+ );
+ indirectLight.diffuse = max(0, indirectLight.diffuse);
+ #if defined(UNITY_COLORSPACE_GAMMA)
+ indirectLight.diffuse = LinearToGammaSpace(indirectLight.diffuse);
+ #endif
+ }
+ else
+ {
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ }
+ #else
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ #endif
+ #endif
+
+ float3 reflectionDir = reflect(-poiCam.viewDir, normal);
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = 1 - float(0);
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+ #if UNITY_SPECCUBE_BLENDING
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ indirectLight.specular = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ indirectLight.specular = probe0;
+ }
+ #else
+ indirectLight.specular = probe0;
+ #endif
+ float occlusion = 1;
+
+ if(float(0))
+ {
+ occlusion = lerp(1, POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ }
+
+ indirectLight.diffuse *= occlusion;
+ indirectLight.diffuse = max(indirectLight.diffuse, float(0));
+ indirectLight.specular *= occlusion;
+ #endif
+
+ return indirectLight;
+ }
+
+ /*
+ * Poiyomi's cool as heck code starts here :smug:
+ */
+
+ half PoiDiffuse(half NdotV, half NdotL, half LdotH)
+ {
+ half fd90 = 0.5 + 2 * LdotH * LdotH * SmoothnessToPerceptualRoughness(.5);
+ // Two schlick fresnel term
+ half lightScatter = (1 + (fd90 - 1) * Pow5(1 - NdotL));
+ half viewScatter = (1 + (fd90 - 1) * Pow5(1 - NdotV));
+
+ return lightScatter * viewScatter;
+ }
+
+ float3 ShadeSH9Indirect()
+ {
+ return ShadeSH9(half4(0.0, -1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Direct()
+ {
+ return ShadeSH9(half4(0.0, 1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Normal(float3 normalDirection)
+ {
+ return ShadeSH9(half4(normalDirection, 1.0));
+ }
+
+ half3 GetSHLength()
+ {
+ half3 x, x1;
+ x.r = length(unity_SHAr);
+ x.g = length(unity_SHAg);
+ x.b = length(unity_SHAb);
+ x1.r = length(unity_SHBr);
+ x1.g = length(unity_SHBg);
+ x1.b = length(unity_SHBb);
+ return x + x1;
+ }
+
+ float3 calculateRealisticLighting(float4 colorToLight, fixed detailShadowMap)
+ {
+ return UNITY_BRDF_PBS(1, 0, 0, float(0), poiMesh.normals[1], poiCam.viewDir, CreateLight(poiMesh.normals[1], detailShadowMap), CreateIndirectLight(poiMesh.normals[1]));
+ }
+
+ void calculateBasePassLightMaps()
+ {
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ float AOMap = 1;
+ float AOStrength = 1;
+ float3 lightColor = poiLight.color;
+ /*
+ * Generate Basic Light Maps
+ */
+
+ bool lightExists = false;
+ if (all(_LightColor0.rgb >= 0.002))
+ {
+ lightExists = true;
+ }
+ #ifndef OUTLINE
+
+ if(float(0))
+ {
+ AOMap = POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ AOStrength = float(1);
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ if (lightExists)
+ {
+ lightColor = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+ }
+ else
+ {
+ lightColor = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ }
+
+ //lightColor = magic * magiratio + normalLight * normaRatio;
+ //lightColor = magic + normalLight;
+ #endif
+ #endif
+
+ float3 grayscale_vector = float3(.33333, .33333, .33333);
+ float3 ShadeSH9Plus = GetSHLength();
+ float3 ShadeSH9Minus = BetterSH9(float4(0, 0, 0, 1));
+
+ shadowStrength = 1;
+ #ifndef OUTLINE
+ shadowStrength = POI2D_SAMPLER_PAN(_LightingShadowMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(1);
+ #else
+ shadowStrength = float(1);
+ #endif
+
+ float bw_lightColor = dot(lightColor, grayscale_vector);
+ float bw_directLighting = (((poiLight.nDotL * 0.5 + 0.5) * bw_lightColor * lerp(1, poiLight.attenuation, float(0))) + dot(ShadeSH9Normal(poiMesh.normals[1]), grayscale_vector));
+ float bw_bottomIndirectLighting = dot(ShadeSH9Minus, grayscale_vector);
+ float bw_topIndirectLighting = dot(ShadeSH9Plus, grayscale_vector);
+ float lightDifference = ((bw_topIndirectLighting + bw_lightColor) - bw_bottomIndirectLighting);
+
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(0))
+ {
+ poiLight.lightMap = poiLight.attenuation;
+ }
+ else
+ {
+ poiLight.lightMap = smoothstep(0, lightDifference, bw_directLighting - bw_bottomIndirectLighting);
+ }
+ poiLight.lightMap *= detailShadow;
+
+ /*
+ * Decide on light colors
+ */
+
+ float3 indirectLighting = 0;
+ float3 directLighting = 0;
+
+
+
+
+ if (float(0) == 1)
+ {
+ indirectLighting = BetterSH9(float4(poiMesh.normals[0], 1));
+ }
+ else
+ {
+ indirectLighting = ShadeSH9Minus;
+ }
+
+ poiLight.directLighting = lightColor;
+ poiLight.indirectLighting = indirectLighting;
+
+
+ if(float(0) == 0)
+ {
+ float3 magic = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+
+ float magiLumi = calculateluminance(magic);
+ float normaLumi = calculateluminance(normalLight);
+ float maginormalumi = magiLumi + normaLumi;
+
+ float magiratio = magiLumi / maginormalumi;
+ float normaRatio = normaLumi / maginormalumi;
+
+ float target = calculateluminance(magic * magiratio + normalLight * normaRatio);
+ float3 properLightColor = magic + normalLight;
+ float properLuminance = calculateluminance(magic + normalLight);
+ directLighting = properLightColor * max(0.0001, (target / properLuminance));
+ }
+ else
+ {
+ directLighting = lightColor;
+ }
+
+
+ if(!float(0))
+ {
+ float directluminance = calculateluminance(directLighting);
+ float indirectluminance = calculateluminance(indirectLighting);
+ directLighting = min(directLighting, directLighting / max(0.0001, (directluminance / 1)));
+ indirectLighting = min(indirectLighting, indirectLighting / max(0.0001, (indirectluminance / 1)));
+ }
+
+ directLighting = lerp(directLighting, dot(directLighting, float3(0.299, 0.587, 0.114)), float(0));
+ indirectLighting = lerp(indirectLighting, dot(indirectLighting, float3(0.299, 0.587, 0.114)), float(0));
+
+ if(max(max(indirectLighting.x, indirectLighting.y), indirectLighting.z) <= _LightingNoIndirectThreshold && max(max(directLighting.x, directLighting.y), directLighting.z) >= 0)
+ {
+ indirectLighting = directLighting * _LightingNoIndirectMultiplier;
+ }
+
+
+ if(float(0))
+ {
+ float directluminance = clamp(directLighting.r * 0.299 + directLighting.g * 0.587 + directLighting.b * 0.114, 0, 1);
+ if(directluminance > 0)
+ {
+ indirectLighting = max(0.001, indirectLighting);
+ }
+ float indirectluminance = clamp(indirectLighting.r * 0.299 + indirectLighting.g * 0.587 + indirectLighting.b * 0.114, 0, 1);
+ float targetluminance = directluminance * float(0);
+ if(indirectluminance < targetluminance)
+ {
+ indirectLighting = indirectLighting / max(0.0001, indirectluminance / targetluminance);
+ }
+ }
+
+ /*
+ * Create Shade Maps
+ */
+
+ if (float(0))
+ {
+ switch(float(0))
+ {
+ case 0: // Ramp Texture
+ {
+ poiLight.rampedLightMap = lerp(1, UNITY_SAMPLE_TEX2D(_ToonRamp, poiLight.lightMap + float(0)), shadowStrength.r);
+
+ if (float(0))
+ {
+ poiLight.finalLighting = lerp(poiLight.rampedLightMap * directLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ else
+ {
+ poiLight.finalLighting = lerp(indirectLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ }
+ break;
+ case 1: // Math Gradient
+ {
+ poiLight.rampedLightMap = saturate(1 - smoothstep(float(0) - .000001, float(0.5), 1 - poiLight.lightMap));
+ float3 shadowColor = float4(1,1,1,1);
+
+ if (float(0))
+ {
+ shadowColor = 1;
+ }
+
+ if(float(0))
+ {
+ poiLight.finalLighting = lerp((directLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ else
+ {
+ poiLight.finalLighting = lerp((indirectLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ }
+ break;
+ }
+ }
+ else
+ {
+ poiLight.rampedLightMap = 1 - smoothstep(0, .5, 1 - poiLight.lightMap);
+ poiLight.finalLighting = directLighting;
+ }
+
+ if(!float(0))
+ {
+ poiLight.finalLighting = saturate(poiLight.finalLighting);
+ }
+ //poiLight.finalLighting *= .8;
+ #endif
+ }
+
+ void applyShadowTexture(inout float4 albedo)
+ {
+
+ if (float(0) && float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, POI2D_SAMPLER_PAN(_LightingShadowTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1), (1 - poiLight.rampedLightMap) * shadowStrength);
+ }
+ }
+
+ float3 calculateNonImportantLighting(float attenuation, float attenuationDotNL, float3 albedo, float3 lightColor, half dotNL)
+ {
+ fixed detailShadow = 1;
+
+ if(float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ return lightColor * attenuationDotNL * detailShadow;
+ }
+ else
+ {
+ return lerp(lightColor * attenuation, lightColor * float(0.5) * attenuation, smoothstep(float(0), float(0.5), dotNL)) * detailShadow;
+ }
+ }
+
+
+ float3 calculateFinalLighting(inout float3 albedo, float4 finalColor)
+ {
+ float3 finalLighting = 1;
+ // Additive Lighting
+ #ifdef FORWARD_ADD_PASS
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ finalLighting = poiLight.color * poiLight.attenuation * max(0, poiLight.nDotL) * detailShadow;
+ }
+ else
+ {
+ #if defined(POINT) || defined(SPOT)
+ finalLighting = lerp(poiLight.color * max(poiLight.additiveShadow, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * poiLight.attenuation * detailShadow;
+ #else
+ finalLighting = lerp(poiLight.color * max(poiLight.attenuation, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * detailShadow;
+ #endif
+ }
+ #endif
+
+ // Base and Meta Lighting
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ #ifdef VERTEXLIGHT_ON
+ poiLight.vFinalLighting = 0;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vFinalLighting += calculateNonImportantLighting(poiLight.vAttenuation[index], poiLight.vAttenuationDotNL[index], albedo, poiLight.vColor[index], poiLight.vCorrectedDotNL[index]);
+ }
+ #endif
+
+ switch(float(0))
+ {
+ case 0: // Toon Lighting
+ {
+ // HSL Shading
+
+ if (float(0))
+ {
+ float3 HSLMod = float3(float(0.5) * 2 - 1, float(0.5) * 2 - 1, float(0.5) * 2 - 1) * (1 - poiLight.rampedLightMap);
+ albedo = lerp(albedo.rgb, ModifyViaHSL(albedo.rgb, HSLMod), float(1));
+ }
+
+ // Normal Shading
+
+ if (float(0) > 0)
+ {
+ poiLight.finalLighting = max(0.001, poiLight.finalLighting);
+ float finalluminance = calculateluminance(poiLight.finalLighting);
+ finalLighting = max(poiLight.finalLighting, poiLight.finalLighting / max(0.0001, (finalluminance / float(0))));
+ }
+ else
+ {
+ finalLighting = poiLight.finalLighting;
+ }
+ }
+ break;
+ case 1: // realistic
+ {
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ float3 realisticLighting = calculateRealisticLighting(finalColor, detailShadow).rgb;
+ finalLighting = lerp(realisticLighting, dot(realisticLighting, float3(0.299, 0.587, 0.114)), float(0));
+ }
+ break;
+ }
+ #endif
+ return finalLighting;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
new file mode 100644
index 00000000..b57a8f76
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 62934b73d12d08d4a925f4323a44c646
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
new file mode 100644
index 00000000..c23736df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
@@ -0,0 +1,243 @@
+#ifndef POI_MSDF
+ #define POI_MSDF
+
+ sampler2D _TextGlyphs;
+ float4 _TextGlyphs_ST;
+ float4 _TextGlyphs_TexelSize;
+ float _TextFPSUV;
+ float _TextTimeUV;
+ float _TextPositionUV;
+ float _TextPixelRange;
+
+ float _TextFPSEnabled;
+ float _TextPositionEnabled;
+ float _TextTimeEnabled;
+
+
+ float4 _TextFPSColor;
+ half _TextFPSEmissionStrength;
+ fixed4 _TextFPSPadding;
+ half2 _TextFPSOffset;
+ half2 _TextFPSScale;
+ half _TextFPSRotation;
+
+ fixed _TextPositionVertical;
+ float4 _TextPositionColor;
+ half _TextPositionEmissionStrength;
+ fixed4 _TextPositionPadding;
+ half2 _TextPositionOffset;
+ half2 _TextPositionScale;
+ half _TextPositionRotation;
+
+ float4 _TextTimeColor;
+ half _TextTimeEmissionStrength;
+ fixed4 _TextTimePadding;
+ half2 _TextTimeOffset;
+ half2 _TextTimeScale;
+ half _TextTimeRotation;
+
+ #define glyphWidth 0.0625
+
+ #define ASCII_LEFT_PARENTHESIS 40
+ #define ASCII_RIGHT_PARENTHESIS 41
+ #define ASCII_POSITIVE 43
+ #define ASCII_PERIOD 46
+ #define ASCII_NEGATIVE 45
+ #define ASCII_COMMA 44
+ #define ASCII_E 69
+ #define ASCII_F 70
+ #define ASCII_I 73
+ #define ASCII_M 77
+ #define ASCII_O 79
+ #define ASCII_P 80
+ #define ASCII_S 83
+ #define ASCII_T 54
+ #define ASCII_SEMICOLON 58
+
+ float3 globalTextEmission;
+
+ half2 getAsciiCoordinate(float index)
+ {
+ return half2((index - 1) / 16, 1 - ((floor(index / 16 - glyphWidth)) / 16));
+ }
+
+ float median(float r, float g, float b)
+ {
+ return max(min(r, g), min(max(r, g), b));
+ }
+
+ void ApplyPositionText(inout float4 albedo, float2 uv)
+ {
+ float3 cameraPos = clamp(getCameraPosition(), -999, 999);
+ float3 absCameraPos = abs(cameraPos);
+ float totalCharacters = 20;
+ float positionArray[20];
+ positionArray[0] = cameraPos.x >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[1] = floor((absCameraPos.x * .01) % 10) + 48;
+ positionArray[2] = floor((absCameraPos.x * .1) % 10) + 48;
+ positionArray[3] = floor(absCameraPos.x % 10) + 48;
+ positionArray[4] = ASCII_PERIOD;
+ positionArray[5] = floor((absCameraPos.x * 10) % 10) + 48;
+ positionArray[6] = ASCII_COMMA;
+ positionArray[7] = cameraPos.y >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[8] = floor((absCameraPos.y * .01) % 10) + 48;
+ positionArray[9] = floor((absCameraPos.y * .1) % 10) + 48;
+ positionArray[10] = floor(absCameraPos.y % 10) + 48;
+ positionArray[11] = ASCII_PERIOD;
+ positionArray[12] = floor((absCameraPos.y * 10) % 10) + 48;
+ positionArray[13] = ASCII_COMMA;
+ positionArray[14] = cameraPos.z >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[15] = floor((absCameraPos.z * .01) % 10) + 48;
+ positionArray[16] = floor((absCameraPos.z * .1) % 10) + 48;
+ positionArray[17] = floor(absCameraPos.z % 10) + 48;
+ positionArray[18] = ASCII_PERIOD;
+ positionArray[19] = floor((absCameraPos.z * 10) % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if (uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(positionArray[currentCharacter]);
+
+ float2 startUV = float2(1 / totalCharacters * currentCharacter, 0);
+ float2 endUV = float2(1 / totalCharacters * (currentCharacter + 1), 1);
+
+ fixed4 textPositionPadding = float4(0,0,0,0);
+ textPositionPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, startUV, endUV, float2(glyphPos.x + textPositionPadding.x, glyphPos.y - glyphWidth + textPositionPadding.y), float2(glyphPos.x + glyphWidth - textPositionPadding.z, glyphPos.y - textPositionPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textPositionPadding.z - .001 || uv.x < glyphPos.x + textPositionPadding.x + .001 || uv.y > glyphPos.y - textPositionPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textPositionPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTimeText(inout float4 albedo, float2 uv)
+ {
+ float instanceTime = _Time.y;
+ float hours = instanceTime / 3600;
+ float minutes = (instanceTime / 60) % 60;
+ float seconds = instanceTime % 60;
+ float totalCharacters = 8;
+ float timeArray[8];
+ timeArray[0] = floor((hours * .1) % 10) + 48;
+ timeArray[1] = floor(hours % 10) + 48;
+ timeArray[2] = ASCII_SEMICOLON;
+ timeArray[3] = floor((minutes * .1) % 10) + 48;
+ timeArray[4] = floor(minutes % 10) + 48;
+ timeArray[5] = ASCII_SEMICOLON;
+ timeArray[6] = floor((seconds * .1) % 10) + 48;
+ timeArray[7] = floor(seconds % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(timeArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+ fixed4 textTimePadding = float4(0,0,0,0);
+ textTimePadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textTimePadding.x, glyphPos.y - glyphWidth + textTimePadding.y), float2(glyphPos.x + glyphWidth - textTimePadding.z, glyphPos.y - textTimePadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textTimePadding.z - .001 || uv.x < glyphPos.x + textTimePadding.x + .001 || uv.y > glyphPos.y - textTimePadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textTimePadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyFPSText(inout float4 albedo, float2 uv)
+ {
+ float smoothDeltaTime = clamp(unity_DeltaTime.w, 0, 999);
+ float totalCharacters = 7;
+ float fpsArray[7];
+ fpsArray[0] = ASCII_F;
+ fpsArray[1] = ASCII_P;
+ fpsArray[2] = ASCII_S;
+ fpsArray[3] = ASCII_SEMICOLON;
+ fpsArray[4] = floor((smoothDeltaTime * .01) % 10) + 48;
+ fpsArray[5] = floor((smoothDeltaTime * .1) % 10) + 48;
+ fpsArray[6] = floor(smoothDeltaTime % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(fpsArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+
+ fixed4 textFPSPadding = float4(0,0,0,0);
+ textFPSPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textFPSPadding.x, glyphPos.y - glyphWidth + textFPSPadding.y), float2(glyphPos.x + glyphWidth - textFPSPadding.z, glyphPos.y - textFPSPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textFPSPadding.z - .001 || uv.x < glyphPos.x + textFPSPadding.x + .001 || uv.y > glyphPos.y - textFPSPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textFPSPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,1,1,1).rgb, opacity * float4(1,1,1,1).a);
+ globalTextEmission += float4(1,1,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTextOverlayColor(inout float4 albedo, inout float3 textOverlayEmission)
+ {
+ globalTextEmission = 0;
+ half positionalOpacity = 0;
+ #ifdef EFFECT_BUMP
+
+ if(float(0))
+ {
+ ApplyFPSText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyPositionText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyTimeText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ textOverlayEmission = globalTextEmission;
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
new file mode 100644
index 00000000..af8504a6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b602922c2b533fb42b2678a60067c006
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
new file mode 100644
index 00000000..ecac0805
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
@@ -0,0 +1,33 @@
+#ifndef POI_MACROS
+ #define POI_MACROS
+
+ #define POI_TEXTURE_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_TEXTURE(tex) UNITY_DECLARE_TEX2D(tex##); float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_NORMAL_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV; float tex##Scale
+
+ #define POI2D_SAMPLER_PAN(tex, texSampler, uv, pan) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D_SAMPLER(tex, texSampler, uv) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex)))
+ #define POI2D_PAN(tex, uv, pan) (tex2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D(tex, uv) (tex2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D(tex, uv) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D_PAN(tex, uv, pan) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+
+ #ifdef POINT
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ unityShadowCoord3 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1)).xyz; \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = tex2D(_LightTexture0, dot(lightCoord, lightCoord).rr).r;
+ #endif
+
+ #ifdef SPOT
+ #if !defined(UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS)
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1))
+ #else
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = input._LightCoord
+ #endif
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ DECLARE_LIGHT_COORD(input, worldPos); \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = (lightCoord.z > 0) * UnitySpotCookie(lightCoord) * UnitySpotAttenuate(lightCoord.xyz);
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
new file mode 100644
index 00000000..72f1e302
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8ef28470d648e814281b52c72d5c5fdc
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
new file mode 100644
index 00000000..270384af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
@@ -0,0 +1,147 @@
+#ifndef POI_MAINTEXTURE
+ #define POI_MAINTEXTURE
+
+
+
+ POI_TEXTURE_NOSAMPLER(_AlphaMask);
+ POI_TEXTURE_NOSAMPLER(_MainFadeTexture);
+ float4 _Color;
+ float _MainVertexColoring;
+ float _MainUseVertexColorAlpha;
+ float _Saturation;
+ float2 _MainDistanceFade;
+ half _MainMinAlpha;
+ float _MainHueShift;
+ #ifdef COLOR_GRADING_HDR
+ POI_TEXTURE_NOSAMPLER(_MainHueShiftMask);
+ float _MainHueShiftToggle;
+ float _MainHueShiftSpeed;
+ float _MainHueShiftReplace;
+ #endif
+
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailTex);
+ half _DetailTexIntensity;
+ half3 _DetailTint;
+ float _DetailBrightness;
+ #endif
+ //globals
+ float alphaMask;
+ half3 diffColor;
+
+ #include "CGI_PoiBackFace.cginc"
+
+ float3 wireframeEmission;
+
+ inline FragmentCommonData SpecularSetup(float4 i_tex, inout float4 albedo)
+ {
+ half4 specGloss = 0;
+ half3 specColor = specGloss.rgb;
+ half smoothness = specGloss.a;
+
+ half oneMinusReflectivity;
+ diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specColor, /*out*/ oneMinusReflectivity);
+
+ FragmentCommonData o = (FragmentCommonData)0;
+ o.diffColor = diffColor;
+ o.specColor = specColor;
+ o.oneMinusReflectivity = oneMinusReflectivity;
+ o.smoothness = smoothness;
+ return o;
+ }
+
+ inline FragmentCommonData FragmentSetup(float4 i_tex, half3 i_viewDirForParallax, float3 i_posWorld, inout float4 albedo)
+ {
+ i_tex = i_tex;
+
+ FragmentCommonData o = SpecularSetup(i_tex, albedo);
+ o.normalWorld = float4(0, 0, 0, 1);
+ o.eyeVec = poiCam.viewDir;
+ o.posWorld = i_posWorld;
+
+ // NOTE: shader relies on pre-multiply alpha-blend (float(1) = One, float(0) = OneMinusSrcAlpha)
+ o.diffColor = PreMultiplyAlpha(o.diffColor, 1, o.oneMinusReflectivity, /*out*/ o.alpha);
+ return o;
+ }
+
+ void initTextureData(inout float4 albedo, inout float4 mainTexture, inout float3 backFaceEmission, inout float3 dissolveEmission, in half3 detailMask)
+ {
+ dissolveEmission = 0;
+
+ #if (defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ #endif
+
+ alphaMask = POI2D_SAMPLER_PAN(_AlphaMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ mainTexture.a *= alphaMask;
+
+ #ifndef POI_SHADOW
+ albedo = float4(lerp(mainTexture.rgb, dot(mainTexture.rgb, float3(0.3, 0.59, 0.11)), -float(0)) * max(float4(1,1,1,1).rgb, float3(0.000000001, 0.000000001, 0.000000001)) * lerp(1, GammaToLinearSpace(poiMesh.vertexColor.rgb), float(0)), mainTexture.a * max(float4(1,1,1,1).a, 0.0000001));
+
+ #ifdef POI_LIGHTING
+ applyShadowTexture(albedo);
+ #endif
+
+ albedo *= lerp(1, poiMesh.vertexColor.a, float(0));
+ #ifdef POI_RGBMASK
+ albedo.rgb = calculateRGBMask(albedo.rgb);
+ #endif
+
+ albedo.a = saturate(float(0) + albedo.a);
+
+ wireframeEmission = 0;
+ #ifdef POI_WIREFRAME
+ applyWireframe(wireframeEmission, albedo);
+ #endif
+ float backFaceDetailIntensity = 1;
+
+ float mixedHueShift = float(0);
+ applyBackFaceTexture(backFaceDetailIntensity, mixedHueShift, albedo, backFaceEmission);
+
+ #ifdef POI_FUR
+ calculateFur();
+ #endif
+
+ #ifdef COLOR_GRADING_HDR
+ float hueShiftAlpha = POI2D_SAMPLER_PAN(_MainHueShiftMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if(float(1))
+ {
+ albedo.rgb = lerp(albedo.rgb, hueShift(albedo.rgb, mixedHueShift + float(0) * _Time.x), hueShiftAlpha);
+ }
+ else
+ {
+ albedo.rgb = hueShift(albedo.rgb, frac((mixedHueShift - (1 - hueShiftAlpha) + float(0) * _Time.x)));
+ }
+ #endif
+ #ifdef FINALPASS
+ half3 detailTexture = POI2D_SAMPLER_PAN(_DetailTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb * float4(1,1,1,1).rgb;
+ albedo.rgb *= LerpWhiteTo(detailTexture * float(1) * unity_ColorSpaceDouble.rgb, detailMask.r * float(1) * backFaceDetailIntensity);
+ #endif
+ albedo.rgb = saturate(albedo.rgb);
+
+ #ifdef POI_HOLOGRAM
+ ApplyHoloAlpha(albedo);
+ #endif
+
+ s = FragmentSetup(float4(poiMesh.uv[0], 1, 1), poiCam.viewDir, poiMesh.worldPos, albedo);
+ #endif
+
+ #ifdef DISTORT
+ calculateDissolve(albedo, dissolveEmission);
+ #endif
+ }
+
+ void distanceFade(inout float4 albedo)
+ {
+ half fadeMap = POI2D_SAMPLER_PAN(_MainFadeTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(fadeMap)
+ {
+ half fadeValue = max(smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, poiCam.distanceToVert), float(0));
+ albedo.a *= fadeValue;
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
new file mode 100644
index 00000000..f609c29c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 949ed6e981b33b54e9f22e3c08782899
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
new file mode 100644
index 00000000..3aa6d6b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
@@ -0,0 +1,115 @@
+#ifndef MATCAP
+ #define MATCAP
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap); float4 _Matcap_ST;
+ POI_TEXTURE_NOSAMPLER(_MatcapMask);
+ float _MatcapMaskInvert;
+ float _MatcapBorder;
+ float4 _MatcapColor;
+ float _MatcapIntensity;
+ float _MatcapReplace;
+ float _MatcapMultiply;
+ float _MatcapAdd;
+ float _MatcapEnable;
+ float _MatcapLightMask;
+ float _MatcapEmissionStrength;
+ float _MatcapNormal;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap2);float4 _Matcap2_ST;
+ POI_TEXTURE_NOSAMPLER(_Matcap2Mask);
+ float _Matcap2MaskInvert;
+ float _Matcap2Border;
+ float4 _Matcap2Color;
+ float _Matcap2Intensity;
+ float _Matcap2Replace;
+ float _Matcap2Multiply;
+ float _Matcap2Add;
+ float _Matcap2Enable;
+ float _Matcap2LightMask;
+ float _Matcap2EmissionStrength;
+ float _Matcap2Normal;
+
+ void blendMatcap(inout float4 finalColor, float add, float multiply, float replace, float4 matcapColor, float matcapMask, inout float3 matcapEmission, float emissionStrength
+ #ifdef POI_LIGHTING
+ , float matcapLightMask
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , uint blackLightMaskIndex
+ #endif
+ )
+ {
+ #ifdef POI_LIGHTING
+ if (matcapLightMask)
+ {
+ matcapMask *= lerp(1, poiLight.rampedLightMap, matcapLightMask);
+ }
+ #endif
+ #ifdef POI_BLACKLIGHT
+ if(blackLightMaskIndex != 4)
+ {
+ matcapMask *= blackLightMask[blackLightMaskIndex];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor.rgb, matcapColor.rgb, replace * matcapMask * matcapColor.a);
+ finalColor.rgb *= lerp(1, matcapColor.rgb, multiply * matcapMask * matcapColor.a);
+ finalColor.rgb += matcapColor.rgb * add * matcapMask * matcapColor.a;
+ matcapEmission += matcapColor.rgb * emissionStrength * matcapMask * matcapColor.a;
+ }
+
+ void applyMatcap(inout float4 finalColor, inout float3 matcapEmission)
+ {
+ float4 matcap = 0;
+ float matcapMask = 0;
+ float4 matcap2 = 0;
+ float matcap2Mask = 0;
+
+ // Both matcaps use the same coordinates
+ half3 worldViewUp = normalize(half3(0, 1, 0) - poiCam.viewDir * dot(poiCam.viewDir, half3(0, 1, 0)));
+ half3 worldViewRight = normalize(cross(poiCam.viewDir, worldViewUp));
+
+ // Matcap 1
+ half2 matcapUV = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+
+ matcap = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap, _MainTex, TRANSFORM_TEX(matcapUV, _Matcap)) * float4(1,1,1,1);
+ matcap.rgb *= float(1);
+ matcapMask = POI2D_SAMPLER_PAN(_MatcapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if (float(0))
+ {
+ matcapMask = 1 - matcapMask;
+ }
+
+ blendMatcap(finalColor, float(0), float(0), float(1), matcap, matcapMask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap
+ #endif
+ );
+
+ // Matcap 2
+
+ if (float(0))
+ {
+ half2 matcapUV2 = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+ matcap2 = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap2, _MainTex, TRANSFORM_TEX(matcapUV2, _Matcap2)) * float4(1,1,1,1);
+ matcap2.rgb *= float(1);
+ matcap2Mask = POI2D_SAMPLER_PAN(_Matcap2Mask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(float(0))
+ {
+ matcap2Mask = 1 - matcap2Mask;
+ }
+ blendMatcap(finalColor, float(0), float(0), float(0), matcap2, matcap2Mask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap2
+ #endif
+ );
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
new file mode 100644
index 00000000..c61f4fae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: af5bbd8549b5f534eb66142ae4c55d7b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
new file mode 100644
index 00000000..b2d07a38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
@@ -0,0 +1,104 @@
+/*
+MIT License
+
+Copyright (c) 2019 wraikny
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+VertexTransformShader is dependent on:
+*/
+
+#ifndef POI_MATH
+ #define POI_MATH
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float4 quaternion_conjugate(float4 v)
+ {
+ return float4(
+ v.x, -v.yzw
+ );
+ }
+
+ float4 quaternion_mul(float4 v1, float4 v2)
+ {
+ float4 result1 = (v1.x * v2 + v1 * v2.x);
+
+ float4 result2 = float4(
+ - dot(v1.yzw, v2.yzw),
+ cross(v1.yzw, v2.yzw)
+ );
+
+ return float4(result1 + result2);
+ }
+
+ // angle : radians
+ float4 get_quaternion_from_angle(float3 axis, float angle)
+ {
+ return float4(
+ cos(angle / 2.0),
+ normalize(axis) * sin(angle / 2.0)
+ );
+ }
+
+ float4 quaternion_from_vector(float3 inVec)
+ {
+ return float4(0.0, inVec);
+ }
+
+ float degree_to_radius(float degree)
+ {
+ return(
+ degree / 180.0 * pi
+ );
+ }
+
+ float3 rotate_with_quaternion(float3 inVec, float3 rotation)
+ {
+ float4 qx = get_quaternion_from_angle(float3(1, 0, 0), degree_to_radius(rotation.x));
+ float4 qy = get_quaternion_from_angle(float3(0, 1, 0), degree_to_radius(rotation.y));
+ float4 qz = get_quaternion_from_angle(float3(0, 0, 1), degree_to_radius(rotation.z));
+
+ #define MUL3(A, B, C) quaternion_mul(quaternion_mul((A), (B)), (C))
+ float4 quaternion = normalize(MUL3(qx, qy, qz));
+ float4 conjugate = quaternion_conjugate(quaternion);
+
+ float4 inVecQ = quaternion_from_vector(inVec);
+
+ float3 rotated = (
+ MUL3(quaternion, inVecQ, conjugate)
+ ).yzw;
+
+ return rotated;
+ }
+
+ float4 transform(float4 input, float4 pos, float4 rotation, float4 scale)
+ {
+ input.rgb *= (scale.xyz * scale.w);
+ input = float4(
+ rotate_with_quaternion(input.xyz, rotation.xyz * rotation.w)
+ + (pos.xyz * pos.w),
+ input.w
+ );
+ return input;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
new file mode 100644
index 00000000..7b03eb76
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ee284204246b8724283e2dbe8eea05f0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
new file mode 100644
index 00000000..916f65eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
@@ -0,0 +1,130 @@
+#ifndef POI_METAL
+ #define POI_METAL
+
+ samplerCUBE _CubeMap;
+ float _SampleWorld;
+ POI_TEXTURE_NOSAMPLER(_MetallicMask);
+ POI_TEXTURE_NOSAMPLER(_SmoothnessMask);
+ float _Metallic;
+ float _InvertSmoothness;
+ float _Smoothness;
+ float _EnableMetallic;
+ float3 _MetalReflectionTint;
+ POI_TEXTURE_NOSAMPLER(_MetallicTintMap);
+
+ float3 finalreflections;
+ float metalicMap;
+ float3 reflection;
+ float roughness;
+ float lighty_boy_uwu_var;
+
+ bool shouldMetalHappenBeforeLighting()
+ {
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool probeExists = !(unity_SpecCube0_HDR.a == 0 && envSample.a == 0);
+ return probeExists && !float(0);
+ }
+
+ float3 fresnelRelflection(in float4 albedo)
+ {
+ half3 dotNV = 1 - abs(poiLight.nDotV);
+ half f = dotNV * dotNV * dotNV * dotNV;
+ //f *= i_sold.fresnel;
+ return lerp(lerp(DielectricSpec.rgb, albedo.rgb, metalicMap), saturate(1 - roughness + metalicMap), f);
+ }
+
+ void calculateMetallicness()
+ {
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ }
+
+ void ApplyMetallics(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflection = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflection = probe0;
+ }
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+
+ void ApplyMetallicsFake(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+ reflection = texCUBElod(_CubeMap, float4(poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
new file mode 100644
index 00000000..95191bfa
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 52671c99d98161844b4ee6485de6b3df
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
new file mode 100644
index 00000000..8bb16398
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
@@ -0,0 +1,77 @@
+#ifndef POI_MIRROR
+ #define POI_MIRROR
+
+ float _Mirror;
+ float _EnableMirrorTexture;
+ POI_TEXTURE_NOSAMPLER(_MirrorTexture);
+
+
+ void applyMirrorRenderVert(inout float4 vertex)
+ {
+
+ if (float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ void applyMirrorRenderFrag()
+ {
+
+ if(float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ #if(defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ void applyMirrorTexture(inout float4 mainTexture)
+ {
+
+ if(float(0))
+ {
+ if(IsInMirror())
+ {
+ mainTexture = POI2D_SAMPLER_PAN(_MirrorTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ }
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
new file mode 100644
index 00000000..0818f619
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 656e6432f66eb0e4e9d4e01e7bb3bdf5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
new file mode 100644
index 00000000..62e63c91
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
@@ -0,0 +1,107 @@
+float _OutlineRimLightBlend;
+float _OutlineLit;
+float _OutlineTintMix;
+float2 _MainTexPan;
+float _MainTextureUV;
+
+float4 frag(v2f i, uint facing: SV_IsFrontFace): COLOR
+{
+ float4 finalColor = 1;
+
+ if (float(0))
+ {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ float3 finalEmission = 0;
+ float4 albedo = 1;
+
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ float3 uselessData0;
+ float3 uselessData1;
+ initTextureData(albedo, mainTexture, uselessData0, uselessData1, detailMask);
+
+
+ fixed4 col = mainTexture;
+ float alphaMultiplier = smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(getCameraPosition(), i.worldPos));
+ float OutlineMask = tex2D(_OutlineMask, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0)).r;
+ clip(OutlineMask * float(0) - 0.001);
+
+ col = col * 0.00000000001 + tex2D(_OutlineTexture, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineTexture) + _Time.x * float4(0,0,0,0) );
+ col.a *= albedo.a;
+ col.a *= alphaMultiplier;
+
+ #ifdef POI_RANDOM
+ col.a *= i.angleAlpha;
+ #endif
+
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ col.a *= float4(1,1,1,1).a;
+
+
+ if(float(0) == 1)
+ {
+ applyDithering(col);
+ }
+
+ clip(col.a - float(0.5));
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+
+ if(float(0) == 1)
+ {
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ col.rgb = mainTexture.rgb;
+ }
+ else if(float(0) == 2)
+ {
+ col.rgb = lerp(col.rgb, poiLight.color, float(0));
+ }
+ col.rgb *= float4(1,1,1,1).rgb;
+
+ if(float(0) == 1)
+ {
+ col.rgb = lerp(col.rgb, mainTexture.rgb, float(0));
+ }
+
+ finalColor = col;
+
+ #ifdef POI_LIGHTING
+
+ if(float(1))
+ {
+ finalColor.rgb *= calculateFinalLighting(finalColor.rgb, finalColor);
+ }
+ #endif
+ finalColor.rgb += (col.rgb * float(0));
+ }
+ else
+ {
+ clip(-1);
+ }
+ return finalColor;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
new file mode 100644
index 00000000..28147b8e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2c317b6434244054f8ad76abbc99914f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
new file mode 100644
index 00000000..900e9e43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
@@ -0,0 +1,105 @@
+#ifndef OutlineVert
+ #define OutlineVert
+
+ #include "CGI_PoiV2F.cginc"
+
+ float _OutlineMode;
+ float4 _OutlinePersonaDirection;
+ float4 _OutlineDropShadowOffset;
+ float _OutlineUseVertexColors;
+ float _OutlineFixedSize;
+ float _commentIfZero_EnableOutlinePass;
+
+ sampler2D _OutlineMask; float4 _OutlineMask_ST; float2 _OutlineMaskPan; float _OutlineMaskUV;
+ v2f vert(appdata v)
+ {
+
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+
+ float2 uvArray[4];
+ uvArray[0] = o.uv0.xy;
+ uvArray[1] = o.uv0.zw;
+ uvArray[2] = o.uv1.xy;
+ uvArray[3] = o.uv1.zw;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ o.uv0.xy = v.uv0 + _OutlineGlobalPan.xy * _Time.y;
+ float outlineMask = 1;
+
+ outlineMask = poiMax(tex2Dlod(_OutlineMask, float4(TRANSFORM_TEX(uvArray[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0), 0, 0)).rgb);
+
+ if (float(0) == 2)
+ {
+ outlineMask *= v.color.r;
+ }
+
+
+ if(float(0) != 1)
+ {
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ }
+ else
+ {
+ o.normal = UnityObjectToWorldNormal(v.color);
+ }
+
+
+ half offsetMultiplier = 1;
+ half distanceOffset = 1;
+
+ if(float(0))
+ {
+ distanceOffset *= distance(_WorldSpaceCameraPos, mul(unity_ObjectToWorld, v.vertex).xyz);
+ }
+
+ float3 offset = o.normal * (float(0) * float(0) / 100) * outlineMask * distanceOffset;
+
+
+ if(float(0) == 2)
+ {
+ float3 lightDirection = poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ offsetMultiplier = saturate(dot(lightDirection, o.normal));
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 3)
+ {
+ half3 viewNormal = mul((float3x3)UNITY_MATRIX_V, o.normal);
+ offsetMultiplier = saturate(dot(viewNormal.xy, normalize(float4(1,0,0,0).xy)));
+
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 4)
+ {
+ offset = mul((float3x3)transpose(UNITY_MATRIX_V), float4(1,0,0,0));
+ offset *= distanceOffset;
+ }
+
+ o.worldPos = mul(unity_ObjectToWorld, v.vertex) + float4(offset, 0);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.pos = UnityWorldToClipPos(o.worldPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0);
+ UNITY_TRANSFER_FOG(o, o.pos);
+ return o;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
new file mode 100644
index 00000000..85a9ffd0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 87d859da1eb546243a27396745963f29
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
new file mode 100644
index 00000000..da64a89d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
@@ -0,0 +1,63 @@
+#ifndef PANOSPHERE
+ #define PANOSPHERE
+
+ sampler2D _PanosphereTexture; float4 _PanosphereTexture_ST;
+ POI_TEXTURE_NOSAMPLER(_PanoMask);
+ float _PanoEmission;
+ float _PanoBlend;
+ float4 _PanosphereColor;
+ float3 _PanospherePan;
+ float _PanoToggle;
+ float _PanoCubeMapToggle;
+ float _PanoInfiniteStereoToggle;
+ samplerCUBE _PanoCubeMap; half4 _PanoCubeMap_HDR;
+
+ float3 panoColor;
+ float panoMask;
+
+ float2 projectIt(float3 coords)
+ {
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude + _Time.y * float4(0,0,0,0).x, latitude + _Time.y * float4(0,0,0,0).y) * float2(1.0 / UNITY_PI, 1.0 / UNITY_PI);
+ sphereCoords = float2(1.0, 1.0) - sphereCoords;
+ return(sphereCoords + float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).xy) * float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).zw;
+ }
+
+ void applyPanosphereColor(inout float4 albedo, inout float3 panosphereEmission)
+ {
+ panoMask = POI2D_SAMPLER_PAN(_PanoMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskPanosphere != 4)
+ {
+ panoMask *= blackLightMask[_BlackLightMaskPanosphere];
+ }
+ #endif
+
+
+ if(float(0))
+ {
+ float3 cubeUV = mul(poiRotationMatrixFromAngles(float4(0,0,0,0).xyz * _Time.y), float4(-poiCam.viewDir, 1));
+ half4 cubemap = texCUBE(_PanoCubeMap, cubeUV);
+ panoColor = DecodeHDR(cubemap, _PanoCubeMap_HDR);
+ }
+ else
+ {
+ float2 uv = projectIt(normalize(lerp(getCameraPosition().xyz, poiCam.worldPos.xyz, float(0)) - poiMesh.worldPos.xyz) * - 1);
+
+ float2 ddxuv = ddx(uv);
+ float2 ddyuv = ddy(uv);
+ if(any(fwidth(uv) > .5))
+ {
+ ddxuv = ddyuv = 0.001;
+ }
+ panoColor = tex2D(_PanosphereTexture, TRANSFORM_TEX(uv, _PanosphereTexture), ddxuv, ddyuv).rgb * float4(1,1,1,1).rgb;
+ }
+ panosphereEmission = panoColor * float(0) * panoMask * float(0);
+ albedo.rgb = lerp(albedo.rgb, panoColor, float(0) * panoMask);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
new file mode 100644
index 00000000..f4a1fc17
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 191591e351d22f240abe50e5c7112bcb
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
new file mode 100644
index 00000000..6cd94900
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
@@ -0,0 +1,143 @@
+#ifndef POI_PARALLAX
+ #define POI_PARALLAX
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxHeightMap); float4 _ParallaxHeightMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxHeightMapMask);
+ float2 _ParallaxHeightMapPan;
+ float _ParallaxStrength;
+ float _ParallaxHeightMapEnabled;
+ float _ParallaxUV;
+
+ //Internal
+ float _ParallaxInternalMapEnabled;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxInternalMap); float4 _ParallaxInternalMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxInternalMapMask);
+ float _ParallaxInternalIterations;
+ float _ParallaxInternalMinDepth;
+ float _ParallaxInternalMaxDepth;
+ float _ParallaxInternalMinFade;
+ float _ParallaxInternalMaxFade;
+ float4 _ParallaxInternalMinColor;
+ float4 _ParallaxInternalMaxColor;
+ float4 _ParallaxInternalPanSpeed;
+ float4 _ParallaxInternalPanDepthSpeed;
+ float _ParallaxInternalHeightmapMode;
+ float _ParallaxInternalHeightFromAlpha;
+
+ float GetParallaxHeight(float2 uv)
+ {
+ return clamp(UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxHeightMap, _MainTex, TRANSFORM_TEX(uv, _ParallaxHeightMap) + _Time.x * float4(0,0,0,0)).g, 0, .99999);
+ }
+ /*
+ float2 ParallaxOffset(float2 viewDir)
+ {
+ float height = GetParallaxHeight();
+ height -= 0.5;
+ height *= float(0);
+ return viewDir * height;
+ }
+ */
+ float2 ParallaxRaymarching(float2 viewDir)
+ {
+ float2 uvOffset = 0;
+ float stepSize = 0.1;
+ float2 uvDelta = viewDir * (stepSize * float(0));
+
+ float stepHeight = 1;
+ float surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)]);
+
+
+ float2 prevUVOffset = uvOffset;
+ float prevStepHeight = stepHeight;
+ float prevSurfaceHeight = surfaceHeight;
+
+ for (int i = 1; i < 10 && stepHeight > surfaceHeight; i ++)
+ {
+ prevUVOffset = uvOffset;
+ prevStepHeight = stepHeight;
+ prevSurfaceHeight = surfaceHeight;
+
+ uvOffset -= uvDelta;
+ stepHeight -= stepSize;
+ surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)] + uvOffset);
+ }
+
+ float prevDifference = prevStepHeight - prevSurfaceHeight;
+ float difference = surfaceHeight - stepHeight;
+ float t = prevDifference / (prevDifference + difference);
+ uvOffset = prevUVOffset -uvDelta * t;
+
+ return uvOffset *= POI2D_SAMPLER_PAN(_ParallaxHeightMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+
+ void calculateandApplyParallax()
+ {
+
+ if (float(0))
+ {
+ float2 parallaxOffset = ParallaxRaymarching(poiCam.tangentViewDir.xy);
+
+ if(float(0) == 0)
+ {
+ poiMesh.uv[0] += parallaxOffset;
+ }
+
+ if(float(0) == 1)
+ {
+ poiMesh.uv[1] += parallaxOffset;
+ }
+
+ if(float(0) == 2)
+ {
+ poiMesh.uv[2] += parallaxOffset;
+ }
+
+ if(float(0) == 3)
+ {
+ poiMesh.uv[3] += parallaxOffset;
+ }
+ }
+ }
+
+ void calculateAndApplyInternalParallax(inout float4 finalColor)
+ {
+ #if defined(_PARALLAXMAP)
+
+ if(float(0))
+ {
+ float3 parallax = 0;
+
+ for (int j = float(1); j > 0; j --)
+ {
+ float ratio = (float)j / float(1);
+ float2 parallaxOffset = _Time.y * (float4(0,0,0,0) + (1 - ratio) * float4(0,0,0,0));
+ float fade = lerp(float(0), float(1), ratio);
+ float4 parallaxColor = UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxInternalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _ParallaxInternalMap) + lerp(float(0), float(1), ratio) * - poiCam.tangentViewDir.xy + parallaxOffset);
+ float3 parallaxTint = lerp(float4(1,1,1,1), float4(1,1,1,1), ratio);
+ float parallaxHeight;
+ if(float(0))
+ {
+ parallaxTint *= parallaxColor.rgb;
+ parallaxHeight = parallaxColor.a;
+ }
+ else
+ {
+ parallaxHeight = parallaxColor.r;
+ }
+ //float parallaxColor *= lerp(float4(1,1,1,1), float4(1,1,1,1), 1 - ratio);
+
+ if (float(0) == 1)
+ {
+ parallax = lerp(parallax, parallaxTint * fade, parallaxHeight >= 1 - ratio);
+ }
+ else
+ {
+ parallax += parallaxTint * parallaxHeight * fade;
+ }
+ }
+ //parallax /= float(1);
+ finalColor.rgb += parallax * POI2D_SAMPLER_PAN(_ParallaxInternalMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
new file mode 100644
index 00000000..634bddd0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6706e109a49045d4a925ac7d0908068c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
new file mode 100644
index 00000000..81230e8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
@@ -0,0 +1,233 @@
+/*
+USED---------------------------------------------
+"_PARALLAXMAP",
+"_REQUIRE_UV2",
+"_SUNDISK_NONE",
+"_DETAIL_MULX2",
+"_GLOSSYREFLECTIONS_OFF",
+"_METALLICGLOSSMAP",
+"_COLORADDSUBDIFF_ON",
+"_SPECGLOSSMAP",
+"_TERRAIN_NORMAL_MAP",
+"_SUNDISK_SIMPLE",
+"_EMISSION",
+"_COLORCOLOR_ON",
+"_COLOROVERLAY_ON",
+"_ALPHAMODULATE_ON",
+"_SUNDISK_HIGH_QUALITY",
+"_MAPPING_6_FRAMES_LAYOUT",
+"_NORMALMAP"
+"EFFECT_BUMP",
+"BLOOM",
+"BLOOM_LOW",
+"GRAIN",
+"DEPTH_OF_FIELD",
+"USER_LUT",
+"CHROMATIC_ABERRATION_LOW",
+"BLOOM_LENS_DIRT",
+"_FADING_ON",
+"CHROMATIC_ABERRATION",
+"DISTORT",
+"GEOM_TYPE_BRANCH",
+"_SPECULARHIGHLIGHTS_OFF",
+"_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A",
+"EFFECT_HUE_VARIATION",
+"GEOM_TYPE_LEAF",
+"GEOM_TYPE_MESH",
+"FINALPASS",
+"AUTO_EXPOSURE"
+"VIGNETTE",
+"VIGNETTE_MASKED",
+"COLOR_GRADING_HDR",
+
+UNUSED-------------------------------------------
+"_ALPHABLEND_ON",
+"_ALPHAPREMULTIPLY_ON",
+"_ALPHATEST_ON",
+"GEOM_TYPE_BRANCH_DETAIL",
+"GEOM_TYPE_FROND",
+"PIXELSNAP_ON",
+"SOFTPARTICLES_ON",
+"DITHERING",
+"TONEMAPPING_NEUTRAL",
+"TONEMAPPING_FILMIC",
+"TONEMAPPING_ACES",
+"TONEMAPPING_CUSTOM",
+"DEPTH_OF_FIELD_COC_VIEW",
+"COLOR_GRADING",
+"COLOR_GRADING_LOG_VIEW",
+"VIGNETTE_CLASSIC",
+"COLOR_GRADING_HDR_3D",
+
+DO NOT USE -----------------------------------------
+"BILLBOARD_FACE_CAMERA_POS",
+*/
+
+
+#ifndef POI_PASS
+ #define POI_PASS
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #ifdef POI_META_PASS
+ #include "UnityMetaPass.cginc"
+ #endif
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+
+ #include "CGI_PoiSpawnInVert.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+
+ #ifdef BLOOM_LOW
+ #include "CGI_PoiBulge.cginc"
+ #endif
+
+ #include "CGI_PoiVert.cginc"
+
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+
+ #include "CGI_PoiDithering.cginc"
+
+ #ifdef _PARALLAXMAP
+ #include "CGI_PoiParallax.cginc"
+ #endif
+
+ #ifdef USER_LUT
+ #include "CGI_PoiUVDistortion.cginc"
+ #endif
+
+ #ifdef VIGNETTE
+ #include "CGI_PoiRGBMask.cginc"
+ #endif
+
+ #include "CGI_PoiData.cginc"
+
+ #ifdef _SPECULARHIGHLIGHTS_OFF
+ #include "CGI_PoiBlackLight.cginc"
+ #endif
+
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+
+ #ifdef DEPTH_OF_FIELD
+ #include "CGI_PoiHologram.cginc"
+ #endif
+
+ #ifdef BLOOM_LENS_DIRT
+ #include "CGI_PoiIridescence.cginc"
+ #endif
+
+
+ #ifdef FUR
+ #include "CGI_PoiFur.cginc"
+ #include "CGI_PoiGeomFur.cginc"
+ #endif
+
+ #ifdef VIGNETTE_MASKED
+ #include "CGI_PoiLighting.cginc"
+ #endif
+
+ #include "CGI_PoiMainTex.cginc"
+
+ #ifdef GEOM_TYPE_BRANCH
+ #include "CGI_PoiDecal.cginc"
+ #endif
+
+ #ifdef CHROMATIC_ABERRATION
+ #include "CGI_PoiVoronoi.cginc"
+ #endif
+
+ #ifdef _DETAIL_MULX2
+ #include "CGI_PoiPanosphere.cginc"
+ #endif
+
+ #ifdef EFFECT_BUMP
+ #include "CGI_PoiMSDF.cginc"
+ #endif
+
+ #ifdef GRAIN
+ #include "CGI_PoiDepthColor.cginc"
+ #endif
+
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _GLOSSYREFLECTIONS_OFF
+ #include "CGI_PoiRimLighting.cginc"
+ #endif
+
+ #ifdef _MAPPING_6_FRAMES_LAYOUT
+ #include "CGI_PoiEnvironmentalRimLighting.cginc"
+ #endif
+
+ #ifdef _METALLICGLOSSMAP
+ #include "CGI_PoiMetal.cginc"
+ #endif
+
+ #ifdef _COLORADDSUBDIFF_ON
+ #include "CGI_PoiMatcap.cginc"
+ #endif
+
+ #ifdef _SPECGLOSSMAP
+ #include "CGI_PoiSpecular.cginc"
+ #endif
+
+ #ifdef BLOOM
+ #include "CGI_PoiVideo.cginc"
+ #endif
+
+ #ifdef _TERRAIN_NORMAL_MAP
+ #include "CGI_PoiSubsurfaceScattering.cginc"
+ #endif
+
+ #include "CGI_PoiBlending.cginc"
+ #include "CGI_PoiGrab.cginc"
+
+ #ifdef _SUNDISK_SIMPLE
+ #include "CGI_PoiGlitter.cginc"
+ #endif
+
+ #ifdef _EMISSION
+ #include "CGI_PoiEmission.cginc"
+ #endif
+
+ #ifdef _COLORCOLOR_ON
+ #include "CGI_PoiClearCoat.cginc"
+ #endif
+
+ #include "CGI_PoiAlphaToCoverage.cginc"
+
+ #ifdef _COLOROVERLAY_ON
+ #include "CGI_PoiDebug.cginc"
+ #endif
+ #include "CGI_PoiFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
new file mode 100644
index 00000000..515abc39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 66d0f128ef000b547b41c95902350d54
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
new file mode 100644
index 00000000..5e365972
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
@@ -0,0 +1,26 @@
+#ifndef POI_PASS_OUTLINE
+ #define POI_PASS_OUTLINE
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiOutlineVert.cginc"
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiLighting.cginc"
+ #include "CGI_PoiMainTex.cginc"
+ #include "CGI_PoiData.cginc"
+ #include "CGI_PoiDithering.cginc"
+ #include "CGI_PoiOutlineFrag.cginc"
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
new file mode 100644
index 00000000..c1b90427
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4565d47fdca06ea4a98e829e855642e4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
new file mode 100644
index 00000000..d21a5d4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
@@ -0,0 +1,44 @@
+#ifndef POI_PASS_SHADOW
+ #define POI_PASS_SHADOW
+
+ #pragma multi_compile_shadowcaster
+ #include "UnityCG.cginc"
+ #include "UnityShaderVariables.cginc"
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiShadowIncludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiMirror.cginc"
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+ #include "CGI_PoiData.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+ #include "CGI_PoiDithering.cginc"
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+ #include "CGI_PoiSpawnInVert.cginc"
+ #include "CGI_PoiShadowVert.cginc"
+ #include "CGI_PoiShadowFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
new file mode 100644
index 00000000..6ac21781
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 62e5234a39139174b970dc3759a540d4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
new file mode 100644
index 00000000..d4cd1697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
@@ -0,0 +1,131 @@
+#ifndef POI_RGBMASK
+ #define POI_RGBMASK
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RGBMask); float4 _RGBMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RedTexure); float4 _RedTexure_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_GreenTexture); float4 _GreenTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BlueTexture); float4 _BlueTexture_ST;
+
+ #ifdef GEOM_TYPE_MESH
+ POI_NORMAL_NOSAMPLER(_RgbNormalR);
+ POI_NORMAL_NOSAMPLER(_RgbNormalG);
+ POI_NORMAL_NOSAMPLER(_RgbNormalB);
+ float _RgbNormalsEnabled;
+ #endif
+
+ float4 _RedColor;
+ float4 _GreenColor;
+ float4 _BlueColor;
+
+ float4 _RGBMaskPanning;
+ float4 _RGBRedPanning;
+ float4 _RGBGreenPanning;
+ float4 _RGBBluePanning;
+
+ float _RGBBlendMultiplicative;
+
+ float _RGBMaskUV;
+ float _RGBRed_UV;
+ float _RGBGreen_UV;
+ float _RGBBlue_UV;
+ float _RGBUseVertexColors;
+ float _RGBNormalBlend;
+
+ static float3 rgbMask;
+
+ void calculateRGBNormals(inout half3 mainTangentSpaceNormal)
+ {
+ #ifdef GEOM_TYPE_MESH
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+
+ if(float(0))
+ {
+
+ if(float(0) == 0)
+ {
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.r);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.g);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.b);
+ }
+ return;
+ }
+ else
+ {
+ half3 newNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0) * rgbMask.r);
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.g);
+ normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.b);
+ mainTangentSpaceNormal = BlendNormals(newNormal, mainTangentSpaceNormal);
+ return;
+ }
+ }
+ #endif
+ }
+
+ float3 calculateRGBMask(float3 baseColor)
+ {
+ //If RGB normals are in use this data will already exist
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+ float4 red = POI2D_SAMPLER_PAN(_RedTexure, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 green = POI2D_SAMPLER_PAN(_GreenTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 blue = POI2D_SAMPLER_PAN(_BlueTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+
+ if(float(0))
+ {
+ float3 RGBColor = 1;
+ RGBColor = lerp(RGBColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ baseColor *= RGBColor;
+ }
+ else
+ {
+ baseColor = lerp(baseColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ }
+
+ return baseColor;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
new file mode 100644
index 00000000..d4609f08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c3ce2791572092949bf42f65114b6241
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
new file mode 100644
index 00000000..137ef6de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
@@ -0,0 +1,4 @@
+#ifndef POI_RNG
+ #define POI_RNG
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
new file mode 100644
index 00000000..f5b80b74
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 51959af48b664fa4db2919c1c37e1111
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
new file mode 100644
index 00000000..11f3eea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_RANDOM
+ #define POI_RANDOM
+
+ float _EnableRandom;
+ float m_start_Angle;
+ float _AngleType;
+ float3 _AngleForwardDirection;
+ float _CameraAngleMin;
+ float _CameraAngleMax;
+ float _ModelAngleMin;
+ float _ModelAngleMax;
+ float _AngleMinAlpha;
+ float _AngleCompareTo;
+
+ float ApplyAngleBasedRendering(float3 modelPos, float3 worldPos)
+ {
+ half cameraAngleMin = float(45) / 180;
+ half cameraAngleMax = float(90) / 180;
+ half modelAngleMin = float(45) / 180;
+ half modelAngleMax = float(90) / 180;
+ float3 pos = float(0) == 0 ? modelPos : worldPos;
+ half3 cameraToModelDirection = normalize(pos - getCameraPosition());
+ half3 modelForwardDirection = normalize(mul(unity_ObjectToWorld, normalize(float4(0,0,1,0))));
+ half cameraLookAtModel = remapClamped(.5 * dot(cameraToModelDirection, getCameraForward()) + .5, cameraAngleMax, cameraAngleMin, 0, 1);
+ half modelLookAtCamera = remapClamped(.5 * dot(-cameraToModelDirection, modelForwardDirection) + .5, modelAngleMax, modelAngleMin, 0, 1);
+ if (float(0) == 0)
+ {
+ return max(cameraLookAtModel, float(0));
+ }
+ else if(float(0) == 1)
+ {
+ return max(modelLookAtCamera, float(0));
+ }
+ else if(float(0) == 2)
+ {
+ return max(cameraLookAtModel * modelLookAtCamera, float(0));
+ }
+ return 1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
new file mode 100644
index 00000000..4b11f4e0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d076e0b129085cd4d87ae48d4e5f6586
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
new file mode 100644
index 00000000..d4571c0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
@@ -0,0 +1,47 @@
+#ifndef POI_RIM
+ #define POI_RIM
+
+ float4 _RimLightColor;
+ float _RimLightingInvert;
+ float _RimWidth;
+ float _RimStrength;
+ float _RimSharpness;
+ float _RimLightColorBias;
+ float _ShadowMix;
+ float _ShadowMixThreshold;
+ float _ShadowMixWidthMod;
+ float _EnableRimLighting;
+ float _RimBrighten;
+ float _RimLightNormal;
+
+ POI_TEXTURE_NOSAMPLER(_RimTex);
+ POI_TEXTURE_NOSAMPLER(_RimMask);
+ POI_TEXTURE_NOSAMPLER(_RimWidthNoiseTexture);
+
+ float _RimWidthNoiseStrength;
+
+ float4 rimColor = float4(0, 0, 0, 0);
+ float rim = 0;
+
+ void applyRimLighting(inout float4 albedo, inout float3 rimLightEmission)
+ {
+ float rimNoise = POI2D_SAMPLER_PAN(_RimWidthNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimNoise = (rimNoise - .5) * float(0.1);
+
+ float viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+
+ if (float(0))
+ {
+ viewDotNormal = 1 - abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+ }
+ float rimWidth = float(0.8);
+ rimWidth -= rimNoise;
+ float rimMask = POI2D_SAMPLER_PAN(_RimMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimColor = POI2D_SAMPLER_PAN(_RimTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ rimWidth = max(lerp(rimWidth, rimWidth * lerp(0, 1, poiLight.lightMap - float(0.5)) * float(0.5), float(0)),0);
+ rim = 1 - smoothstep(min(float(0.25), rimWidth), rimWidth, viewDotNormal);
+ rim *= float4(1,1,1,1).a * rimColor.a * rimMask;
+ rimLightEmission = rim * lerp(albedo, rimColor, float(0)) * float(0);
+ albedo.rgb = lerp(albedo.rgb, lerp(albedo.rgb, rimColor, float(0)) + lerp(albedo.rgb, rimColor, float(0)) * float(0), rim);
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
new file mode 100644
index 00000000..90b602e2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f001e3978ff10c54ca3c008bc7374231
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
new file mode 100644
index 00000000..16701f61
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
@@ -0,0 +1,116 @@
+#ifndef SHADOW_FRAG
+ #define SHADOW_FRAG
+
+ float2 _MainDistanceFade;
+ float _ForceOpaque;
+ float _MainShadowClipMod;
+ float2 _AlphaMaskPan;
+ float _AlphaMaskUV;
+ sampler3D _DitherMaskLOD;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+
+ half4 fragShadowCaster(
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ V2FShadow i, uint facing: SV_IsFrontFace
+ #endif
+ ): SV_Target
+ {
+ poiMesh.uv[0] = i.uv;
+ poiMesh.uv[1] = i.uv1;
+ poiMesh.uv[2] = i.uv2;
+ poiMesh.uv[3] = i.uv3;
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+
+
+ //Possible Bug with clip
+ float clipValue = clamp(float(0.5) + float(0), - .001, 1.001);
+
+ poiMesh.vertexColor = saturate(i.vertexColor);
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+ #if defined(UNITY_STANDARD_USE_SHADOW_UVS)
+
+ half4 alpha = mainTexture;
+
+
+ if (float(0))
+ {
+ if(IsInMirror())
+ {
+ alpha.a = UNITY_SAMPLE_TEX2D_SAMPLER(_MirrorTexture, _MainTex, TRANSFORM_TEX(i.uv, _MirrorTexture)).a;
+ }
+ }
+
+
+ alpha.a *= smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(i.modelPos, _WorldSpaceCameraPos));
+ half alphaMask = POI2D_PAN(_AlphaMask, poiMesh.uv[float(0)], float4(0,0,0,0));
+ alpha.a *= alphaMask;
+ alpha.a *= float4(1,1,1,1).a + .0001;
+ alpha.a += float(0);
+ alpha.a = saturate(alpha.a);
+
+
+ if(float(0) == 0)
+ {
+ alpha.a = 1;
+ }
+
+
+ if(float(0) == 1)
+ {
+ applyShadowDithering(alpha.a, calcScreenUVs(i.grabPos).xy);
+ }
+
+ #ifdef POI_DISSOLVE
+ float3 fakeEmission = 1;
+ calculateDissolve(alpha, fakeEmission);
+ #endif
+
+ if(float(0) == 1)
+ {
+ clip(alpha.a - 0.001);
+ }
+
+ /*
+ return poiMesh.vertexColor.g;
+
+ #ifdef POI_RANDOM
+ alpha.a *= i.angleAlpha;
+ #endif
+
+
+ if(float(0) >= 1)
+ {
+ applySpawnInShadow(uv[0], i.localPos);
+
+ #if defined(POI_FLIPBOOK)
+ alpha.a *= applyFlipbookAlphaToShadow(uv[float(0)]);
+ #endif
+ }
+ */
+
+ if (float(0) == 1)
+ {
+ clip(alpha.a - clipValue);
+ }
+
+
+ if(float(0) > 1)
+ {
+ float dither = tex3D(_DitherMaskLOD, float3(i.pos.xy * .25, alpha.a * 0.9375)).a;
+ clip(dither - 0.01);
+ }
+
+ #endif
+ SHADOW_CASTER_FRAGMENT(i)
+ }
+
+ #endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
new file mode 100644
index 00000000..c6d004ee
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 30a8753bf7297364fb973278948ddf65
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
new file mode 100644
index 00000000..fd8f19a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
@@ -0,0 +1,41 @@
+#ifndef SHADOW_INCLUDES
+ #define SHADOW_INCLUDES
+
+ #define UNITY_STANDARD_USE_SHADOW_UVS 1
+
+ float4 _Color;
+ sampler2D _AlphaMask; float4 _AlphaMask_ST;
+
+ struct VertexInputShadow
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ struct V2FShadow
+ {
+ V2F_SHADOW_CASTER_NOPOS
+ float4 pos: SV_POSITION;
+ float2 uv: TEXCOORD1;
+ float2 uv1: TEXCOORD2;
+ float2 uv2: TEXCOORD3;
+ float2 uv3: TEXCOORD4;
+ float3 modelPos: TEXCOORD5;
+ float4 worldPos: TEXCOORD6;
+ float4 localPos: TEXCOORD7;
+ float3 angleAlpha: TEXCOORD8;
+ float4 grabPos: TEXCOORD9;
+ fixed3 barycentricCoordinates: TEXCOORD10;
+ float4 vertexColor: TEXCOORD11;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
new file mode 100644
index 00000000..f96864e1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0da72bf5d673a714b838e8334c01588e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
new file mode 100644
index 00000000..f0b7184a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
@@ -0,0 +1,80 @@
+float _EnableTouchGlow;
+float _EnableBulge;
+float _VertexManipulationHeightUV;
+
+V2FShadow vertShadowCaster(VertexInputShadow v)
+{
+ V2FShadow o;
+ UNITY_SETUP_INSTANCE_ID(v);
+
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(V2FShadow, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.uv = v.uv0;
+ o.uv1 = v.uv1;
+ o.uv2 = v.uv2;
+ o.uv3 = v.uv3;
+
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, v.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.vertexColor = v.color;
+
+
+ if(_EnableTouchGlow || _EnableBulge)
+ {
+ o.pos = UnityObjectToClipPos(float3(0, 0, -5));
+ o.localPos.xyz = float3(0, 0, -5);
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ }
+
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+
+ o.pos = UnityClipSpaceShadowCasterPos(o.localPos, v.normal);
+ o.pos = UnityApplyLinearShadowBias(o.pos);
+
+ return o;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
new file mode 100644
index 00000000..9bc86a47
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c0d04d055a9cead4fa24768a8c8be479
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
new file mode 100644
index 00000000..0c18d1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+ #endif
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_SpawnInNoise); float4 _SpawnInNoise_ST;
+
+ float calculateGradientValueFrag(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnIn(inout float4 finalColor, inout float3 spawnInEmission, float2 uv, float3 localPos)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ spawnInEmission = saturate(inverseGradient + _SpawnInAlpha + _SpawnInEmissionOffset +noise - 1) * _SpawnInEmissionColor;
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+
+ void applySpawnInShadow(float2 uv, float3 localPos)
+ {
+
+ if(_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float alpha = gradient - _SpawnInAlpha - noise + length(_SpawnInVertOffset);
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
new file mode 100644
index 00000000..da04095f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ebba08467ef279a4dbc03914e8fdcd9a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
new file mode 100644
index 00000000..fdcc457f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
@@ -0,0 +1,40 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+
+ #endif
+ //sampler2D _SpawnInNoiseVert; float4 _SpawnInNoiseVert_ST;
+
+ float calculateGradientValueVert(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnInVert(inout float4 worldPos, inout float4 localPos, float2 uv)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = 0;
+ float gradient = calculateGradientValueVert(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ worldPos.xyz += saturate(inverseGradient + _SpawnInAlpha + _SpawnInVertOffsetOffset -1) * float3(0, _SpawnInVertOffset, 0);
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+ //float noise = tex2Dlod(_SpawnInNoise, float4(TRANSFORM_TEX(uv, _SpawnInNoise))).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
new file mode 100644
index 00000000..db96608e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0addb3f850363d644a444782ea7619c5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
new file mode 100644
index 00000000..f5287465
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
@@ -0,0 +1,488 @@
+#ifndef POI_SPECULAR
+ #define POI_SPECULAR
+ float _SpecWhatTangent;
+ float _SpecularType;
+ float _SmoothnessFrom;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap);
+ fixed _CenterOutSpecColor;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro);
+ float _SpecularAnisoJitterMirrored;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoFakeUV);
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask);
+ float _SpecularAnisoJitterMicroMultiplier;
+ float _SpecularAnisoJitterMacroMultiplier;
+ float4 _SpecularTint;
+ float _SpecularSmoothness;
+ float _Spec1Offset;
+ float _Spec1JitterStrength;
+ float _Spec2Smoothness;
+ float _Spec2Offset;
+ float _Spec2JitterStrength;
+ float _AnisoUseTangentMap;
+ float _AnisoSpec1Alpha;
+ float _AnisoSpec2Alpha;
+ float _SpecularInvertSmoothness;
+ half _SpecularMetallic;
+ float _SpecularNormal;
+ float _SpecularNormal1;
+ // Toon
+ fixed _SpecularToonStart;
+ fixed _SpecularToonEnd;
+ half4 _SpecularToonInnerOuter;
+
+ float _EnableSpecular1;
+ float _SpecWhatTangent1;
+ float _SpecularType1;
+ float _SmoothnessFrom1;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro1);
+ float _SpecularAnisoJitterMirrored1;
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask1);
+ float _SpecularAnisoJitterMicroMultiplier1;
+ float _SpecularAnisoJitterMacroMultiplier1;
+ float4 _SpecularTint1;
+ float _SpecularSmoothness1;
+ float _Spec1Offset1;
+ float _Spec1JitterStrength1;
+ float _Spec2Smoothness1;
+ float _Spec2Offset1;
+ float _Spec2JitterStrength1;
+ float _AnisoUseTangentMap1;
+ float _AnisoSpec1Alpha1;
+ float _AnisoSpec2Alpha1;
+ float _SpecularInvertSmoothness1;
+ half _SpecularMetallic1;
+ // Toon
+ half4 _SpecularToonInnerOuter1;
+ fixed _SpecularToonStart1;
+ fixed _SpecularToonEnd1;
+
+ UnityIndirect ZeroIndirect()
+ {
+ UnityIndirect ind;
+ ind.diffuse = 0;
+ ind.specular = 0;
+ return ind;
+ }
+
+ // From unity just putting it here in case I want to mod it
+ half4 poiRealisticSpecular(half3 diffColor, half3 specColor, half oneMinusReflectivity, half smoothness,
+ float3 normal, float3 halfDir,
+ UnityLight light, UnityIndirect gi)
+ {
+ float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
+ #define UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV 0
+
+ #if UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV
+ half shiftAmount = dot(normal, poiCam.viewDir);
+ normal = shiftAmount < 0.0f ? normal + poiCam.viewDir * (-shiftAmount + 1e-5f): normal;
+ float nv = saturate(dot(normal, poiCam.viewDir));
+ #else
+ half nv = abs(dot(normal, poiCam.viewDir));
+ #endif
+
+ float nl = saturate(dot(normal, light.dir));
+ float nh = saturate(dot(normal, halfDir));
+
+ half lv = saturate(dot(light.dir, poiCam.viewDir));
+ half lh = saturate(dot(light.dir, halfDir));
+
+ half diffuseTerm = DisneyDiffuse(nv, nl, lh, perceptualRoughness) * nl;
+
+ float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
+
+ roughness = max(roughness, 0.002);
+ float V = SmithJointGGXVisibilityTerm(nl, nv, roughness);
+ float D = GGXTerm(nh, roughness);
+
+ float specularTerm = V * D * UNITY_PI;
+
+ #ifdef UNITY_COLORSPACE_GAMMA
+ specularTerm = sqrt(max(1e-4h, specularTerm));
+ #endif
+
+ specularTerm = max(0, specularTerm * nl);
+ #if defined(_POI_SPECULARHIGHLIGHTS_OFF)
+ specularTerm = 0.0;
+ #endif
+
+ half surfaceReduction;
+ #ifdef UNITY_COLORSPACE_GAMMA
+ surfaceReduction = 1.0 - 0.28 * roughness * perceptualRoughness;
+ #else
+ surfaceReduction = 1.0 / (roughness * roughness + 1.0);
+ #endif
+
+ specularTerm *= any(specColor) ? 1.0: 0.0;
+
+ half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
+ half3 color = diffColor * (gi.diffuse + light.color * diffuseTerm)
+ + specularTerm * light.color * FresnelTerm(specColor, lh)
+ + surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, nv);
+
+ return half4(color, 1);
+ }
+
+ half3 calculateRealisticSpecular(float4 albedo, float2 uv, float4 specularTint, float specularSmoothness, float invertSmoothness, float mixAlbedoWithTint, float4 specularMap, float3 specularLight, float3 normal, float attenuation, float3 lightDirection, float nDotL, float3 halfDir)
+ {
+ half oneMinusReflectivity;
+ half3 finalSpecular;
+ UnityLight unityLight;
+ unityLight.color = specularLight;
+ unityLight.dir = lightDirection;
+ unityLight.ndotl = nDotL;
+
+
+ if (float(1) == 0)
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularMap.rgb * specularTint.rgb, /*out*/ oneMinusReflectivity);
+ finalSpecular = poiRealisticSpecular(diffColor, specularMap.rgb, oneMinusReflectivity, specularMap.a * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ else
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularTint.rgb, /*out*/ oneMinusReflectivity);
+ float smoothness = max(max(specularMap.r, specularMap.g), specularMap.b);
+ finalSpecular = poiRealisticSpecular(diffColor, 1, oneMinusReflectivity, smoothness * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ finalSpecular *= lerp(1, albedo.rgb, mixAlbedoWithTint);
+ return finalSpecular;
+ }
+
+ half3 calculateToonSpecular(float4 albedo, float2 uv, float2 specularToonInnerOuter, float specularMixAlbedoIntoTint, float smoothnessFrom, float4 specularMap, float3 specularLight, float3 normal, float3 halfDir, float attenuation)
+ {
+ half3 finalSpecular = smoothstep(1 - specularToonInnerOuter.y, 1 - specularToonInnerOuter.x, dot(halfDir, normal)) * specularLight;
+
+ if (smoothnessFrom == 0)
+ {
+ finalSpecular.rgb *= specularMap.rgb * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ finalSpecular *= specularMap.a;
+ }
+ else
+ {
+ finalSpecular *= specularMap.r * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+ return finalSpecular;
+ }
+
+ float3 strandSpecular(float TdotL, float TdotV, float specPower, float nDotL)
+ {
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+ float Specular = saturate(nDotL) * pow(saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV), specPower);
+ half normalization = sqrt((specPower + 1) * ((specPower) + 1)) / (8 * pi);
+ Specular *= normalization;
+ return Specular;
+ }
+
+ half3 AnisotropicSpecular(
+ float specWhatTangent, float anisoUseTangentMap, float specularSmoothness, float spec2Smoothness,
+ float anisoSpec1Alpha, float anisoSpec2Alpha, float4 specularTint, float specularMixAlbedoIntoTint, float4 specularMap, float3 specularLight, float3 lightDirection, float3 halfDir, float nDotL, float jitter, float4 packedTangentMap, in float4 albedo)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ tangentDirectionMap += float(0) +jitter;
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+ half specPower = RoughnessToSpecPower(1.0 - specularSmoothness * specularMap.a);
+ half spec2Power = RoughnessToSpecPower(1.0 - spec2Smoothness * specularMap.a);
+ half Specular = 0;
+
+ float3 spec = strandSpecular(TdotL, TdotV, specPower, nDotL) * anisoSpec1Alpha;
+ float3 spec2 = strandSpecular(TdotL, TdotV, spec2Power, nDotL) * anisoSpec2Alpha;
+
+ return max(spec, spec2) * specularMap.rgb * specularTint.a * specularLight * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+
+ inline float3 toonAnisoSpecular(float specWhatTangent, float anisoUseTangentMap, float3 lightDirection, float halfDir, float4 specularMap, float nDotL, fixed gradientStart, fixed gradientEnd, float4 specColor, float4 finalColor, fixed metallic, float jitter, float mirrored, float4 packedTangentMap)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ if (!mirrored)
+ {
+ tangentDirectionMap += jitter;
+ }
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+
+ float specular = saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV);
+
+ fixed smoothAlpha = specular;
+ if(mirrored)
+ {
+ smoothAlpha = max(specular - jitter, 0);
+ }
+
+ specular = smoothstep(gradientStart, gradientEnd, smoothAlpha);
+
+ /*
+
+ if(_CenterOutSpecColor)
+ {
+ specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, clamp(float2(specular, specular), 0.01, .99), float4(0,0,0,0));
+ }
+ */
+
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+
+ return saturate(nDotL) * specular * poiLight.color * specColor * specularMap.rgb * lerp(1, finalColor, metallic) * specularMap.a;
+ }
+
+ inline float SpecularHQ(half roughness, half dotNH, half dotLH)
+ {
+ roughness = saturate(roughness);
+ roughness = max((roughness * roughness), 0.002);
+ half roughnessX2 = roughness * roughness;
+
+ half denom = dotNH * dotNH * (roughnessX2 - 1.0) + 1.0f;
+ half D = roughnessX2 / (3.14159 * denom * denom);
+
+ half k = roughness / 2.0f;
+ half k2 = k * k;
+ half invK2 = 1.0f - k2;
+
+ half vis = rcp(dotLH * dotLH * invK2 + k2);
+
+ float specTerm = vis * D;
+
+ return specTerm;
+ }
+
+ float3 calculateNewSpecular(in float3 specularMap, uint colorFrom, in float4 albedo, in float3 specularTint, in float specularMetallic, in float specularSmoothness, in half dotNH, in half dotLH, in float3 lightColor, in float attenuation)
+ {
+ float3 specColor = specularTint;
+ float metallic = specularMetallic;
+ float roughness = 1 - specularSmoothness;
+ float perceptualRoughness = roughness;
+ //float reflectInverse = DielectricSpec.a - metallic * DielectricSpec.a;
+ //float reflectivity = 1.0h - reflectInverse;
+ float3 specMapColor = lerp(specularMap, 1, colorFrom);
+ float3 specularColor = lerp(DielectricSpec.rgb * specMapColor, lerp(specularMap, albedo.rgb, colorFrom), metallic);
+ //albedo.rgb *= reflectInverse;
+ return clamp(specularColor * lightColor * attenuation * specularTint * SpecularHQ(perceptualRoughness, dotNH, dotLH), 0, lightColor * specularTint);
+ }
+
+ float3 calculateSpecular(in float4 albedo)
+ {
+ half3 finalSpecular = 0;
+ half3 finalSpecular1 = 0;
+ float4 realisticAlbedo = albedo;
+ float4 realisticAlbedo1 = albedo;
+ float4 specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half metallic = POI2D_SAMPLER_PAN(_SpecularMetallicMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ half specularMask = POI2D_SAMPLER_PAN(_SpecularMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float attenuation = saturate(poiLight.nDotL);
+ #ifdef POI_LIGHTING
+
+ if (float(0) && float(0) == 0 && float(0) == 1)
+ {
+ attenuation = poiLight.rampedLightMap;
+ }
+ #endif
+
+
+ if(float(1) == 1) // Realistic
+ {
+ if (float(1) == 1)
+ {
+ specularMap.a = specularMap.r;
+ specularMap.rgb = 1;
+ }
+
+ if(float(0))
+ {
+ specularMap.a = 1 - specularMap.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, attenuation);
+ #else
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic, jitter, float(0), packedTangentMap);
+ finalSpecular *= attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular += calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic, float(1), specularMap, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += AnisotropicSpecular(float(0), float(0), float(1), float(0), float(1), float(1), float4(1,1,1,1), metallic, specularMap, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular *= float4(1,1,1,1);
+ finalSpecular *= attenuation;
+ }
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+
+ finalSpecular *= float4(1,1,1,1).a;
+ finalSpecular = finalSpecular.rgb;
+ finalSpecular *= specularMask;
+
+
+ if (float(0))
+ {
+ float4 specularMap1 = POI2D_SAMPLER_PAN(_SpecularMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half specularMask1 = POI2D_SAMPLER_PAN(_SpecularMask1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ half metallic1 = POI2D_SAMPLER_PAN(_SpecularMetallicMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ float attenuation = poiLight.attenuation;
+
+ if(float(1) == 1) // Realistic
+ {
+
+ if (float(1) == 1)
+ {
+ specularMap1.a = specularMap1.r;
+ specularMap1.rgb = 1;
+ }
+ else
+ {
+ realisticAlbedo1.rgb = specularMap1.rgb;
+ }
+
+
+ if(float(0))
+ {
+ specularMap1.a = 1 - specularMap1.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, saturate(poiLight.nDotL));
+ #else
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap1, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic1, jitter, float(0), packedTangentMap);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular1 = calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic1, float(1), specularMap1, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular1 *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 = AnisotropicSpecular(float(0), float(0), float(0.75), float(0), float(1), float(1), float4(1,1,1,1), metallic1, specularMap1, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular1 *= float4(1,1,1,1);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ // Non Important Lights
+ #ifdef VERTEXLIGHT_ON
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular1 += calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+ #endif
+
+ finalSpecular1 *= float4(1,1,1,1).a;
+ finalSpecular1 = finalSpecular1.rgb;
+ finalSpecular1 *= specularMask1;
+ }
+ return finalSpecular + finalSpecular1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
new file mode 100644
index 00000000..1193bded
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: dff1912e59ed9ae408a7619adae84a0e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
new file mode 100644
index 00000000..b7c21c01
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
@@ -0,0 +1,28 @@
+#ifndef SUBSURFACE
+ #define SUBSURFACE
+
+ float _SSSThicknessMod;
+ float _SSSSCale;
+ float _SSSPower;
+ float _SSSDistortion;
+ float4 _SSSColor;
+ float _EnableSSS;
+
+ POI_TEXTURE_NOSAMPLER(_SSSThicknessMap);
+
+ float3 calculateSubsurfaceScattering()
+ {
+ float SSS = 1 - POI2D_SAMPLER_PAN(_SSSThicknessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ half3 vLTLight = poiLight.direction + poiMesh.normals[0] * float(1);
+ half flTDot = pow(saturate(dot(poiCam.viewDir, -vLTLight)), float(5)) * float(0.25);
+ #ifdef FORWARD_BASE_PASS
+ half3 fLT = (flTDot) * saturate(SSS + - 1 * float(0));
+ #else
+ half3 fLT = poiLight.attenuation * (flTDot) * saturate(SSS + - 1 * float(0));
+ #endif
+
+ return fLT * poiLight.color * float4(1,0,0,1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
new file mode 100644
index 00000000..3e8cbcab
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8f6e35b9565b6204eb0f13c8f384e101
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
new file mode 100644
index 00000000..4912473d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
@@ -0,0 +1,117 @@
+#ifndef POI_TESSELLATION
+ #define POI_TESSELLATION
+
+ float _TessellationPhongStrength;
+ float _TessellationEdgeLength;
+ float _TessellationExtrusionAmount;
+ float _TessellationUniform;
+
+ struct TessellationControlPoint
+ {
+ float4 vertex: INTERNALTESSPOS;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ };
+
+ struct TessellationFactors
+ {
+ float edge[3]: SV_TessFactor;
+ float inside: SV_InsideTessFactor;
+ };
+
+ TessellationControlPoint poiTessellationVert(appdata v)
+ {
+ TessellationControlPoint p;
+ p.vertex = v.vertex;
+ p.normal = v.normal;
+ p.tangent = v.tangent;
+ p.color = v.color;
+ p.uv0 = v.uv0;
+ p.uv1 = v.uv1;
+ p.uv2 = v.uv2;
+ p.uv3 = v.uv3;
+ return p;
+ }
+
+ float TessellationEdgeFactor(float3 p0, float3 p1)
+ {
+ #ifndef _FADING_ON
+ float edgeLength = distance(p0, p1);
+
+ float3 edgeCenter = (p0 + p1) * 0.5;
+ float viewDistance = distance(edgeCenter, _WorldSpaceCameraPos);
+
+ return edgeLength * _ScreenParams.y /
+ (_TessellationEdgeLength * viewDistance);
+ #else
+ return _TessellationUniform;
+ #endif
+ }
+
+ TessellationFactors poiPatchConst(
+ InputPatch < TessellationControlPoint, 3 > patch
+ )
+ {
+
+ TessellationFactors f;
+ float3 p0 = mul(unity_ObjectToWorld, patch[0].vertex).xyz;
+ float3 p1 = mul(unity_ObjectToWorld, patch[1].vertex).xyz;
+ float3 p2 = mul(unity_ObjectToWorld, patch[2].vertex).xyz;
+ f.edge[0] = TessellationEdgeFactor(p1, p2);
+ f.edge[1] = TessellationEdgeFactor(p2, p0);
+ f.edge[2] = TessellationEdgeFactor(p0, p1);
+ f.inside = (TessellationEdgeFactor(p1, p2) +
+ TessellationEdgeFactor(p2, p0) +
+ TessellationEdgeFactor(p0, p1)) * (1 / 3.0);
+ return f;
+ }
+
+ [UNITY_domain("tri")]
+ [UNITY_outputcontrolpoints(3)]
+ [UNITY_outputtopology("triangle_cw")]
+ [UNITY_partitioning("fractional_odd")]
+ [UNITY_patchconstantfunc("poiPatchConst")]
+ TessellationControlPoint poiHull(
+ InputPatch < TessellationControlPoint, 3 > patch,
+ uint id: SV_OutputControlPointID
+ )
+ {
+ return patch[id];
+ }
+
+ [UNITY_domain("tri")]
+ v2f poiDomain(
+ TessellationFactors factors,
+ OutputPatch < TessellationControlPoint, 3 > patch,
+ float3 barycentricCoordinates: SV_DomainLocation
+ )
+ {
+ appdata data;
+
+ #define MY_DOMAIN_PROGRAM_INTERPOLATE(fieldName) data.fieldName = patch[0].fieldName * barycentricCoordinates.x + patch[1].fieldName * barycentricCoordinates.y + patch[2].fieldName * barycentricCoordinates.z;
+
+ MY_DOMAIN_PROGRAM_INTERPOLATE(vertex)
+ float3 pp[3];
+ for (int i = 0; i < 3; ++ i)
+ {
+ pp[i] = data.vertex.xyz - patch[i].normal * (dot(data.vertex.xyz, patch[i].normal) - dot(patch[i].vertex.xyz, patch[i].normal));
+ }
+ data.vertex.xyz = _TessellationPhongStrength * (pp[0] * barycentricCoordinates.x + pp[1] * barycentricCoordinates.y + pp[2] * barycentricCoordinates.z) + (1.0f - _TessellationPhongStrength) * data.vertex.xyz;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(normal)
+ data.vertex.xyz += data.normal.xyz * _TessellationExtrusionAmount;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(tangent)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(color)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv0)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv1)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv2)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv3)
+
+ return vert(data);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
new file mode 100644
index 00000000..fb6f15cf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b70b3681e221e1f4980ac558bf32e09f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
new file mode 100644
index 00000000..38d5fd75
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_UV_DISTORTION
+ #define POI_UV_DISTORTION
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture); float4 _DistortionFlowTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture1); float4 _DistortionFlowTexture1_ST;
+ POI_TEXTURE_NOSAMPLER(_DistortionMask);
+
+ float _DistortionStrength;
+ float _DistortionStrength1;
+ float2 _DistortionSpeed;
+ float2 _DistortionSpeed1;
+
+ float2 getTorusUv(float2 uv)
+ {
+ // translated to hlsl from https://www.shadertoy.com/view/Md3Bz7
+ // http://web.cs.ucdavis.edu/~amenta/s12/findnorm.pdf
+ float phi = 6.28318530718f * uv.x;
+ float theta = 6.28318530718f * uv.y;
+ float3 c = cos(float3(phi, phi + 1.57079632679f, theta));
+ float2 result = float2(c.x * c.z, -c.y * c.z);
+ return result * 0.5 + 0.5;
+ }
+
+ float2 calculateDistortionUV(float2 uv)
+ {
+ half distortionMask = POI2D_SAMPLER_PAN(_DistortionMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flowVector = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ float4 flowVector1 = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture1, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture1) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ flowVector *= float(0.5);
+ flowVector1 *= float(0.5);
+ return uv + ((flowVector.xy + flowVector1.xy) / 2) * distortionMask;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
new file mode 100644
index 00000000..b333a22b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b3866426a09e05f4793584f5397809bc
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
new file mode 100644
index 00000000..0e29a179
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_V2F
+ #define POI_V2F
+
+ struct v2f
+ {
+ float4 pos: SV_POSITION;
+ float4 uv0: TEXCOORD0;
+ float4 uv1: TEXCOORD1;
+ float3 normal: TEXCOORD2;
+ float3 tangentViewDir: TEXCOORD3;
+ float4 tangent: TEXCOORD4;
+ float4 worldPos: TEXCOORD5;
+ float4 localPos: TEXCOORD6;
+ float4 grabPos: TEXCOORD7;
+ float3 barycentricCoordinates: TEXCOORD8;
+ #if defined(GRAIN)
+ float4 worldDirection: TEXCOORD9;
+ #endif
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV: TEXCOORD10;
+ #endif
+ float3 modelPos: TEXCOORD11;
+ float angleAlpha: TEXCOORD12;
+ float4 vertexColor: TEXCOORD14;
+ #ifdef FUR
+ float furAlpha: TEXCOORD15;
+ #endif
+ UNITY_SHADOW_COORDS(16)
+ UNITY_FOG_COORDS(17)
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ UNITY_VERTEX_OUTPUT_STEREO
+ };
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
new file mode 100644
index 00000000..cca63307
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a194b4ac4ffd53846b56ef0316f4632d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
new file mode 100644
index 00000000..1558e937
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
@@ -0,0 +1,126 @@
+#ifndef POI_VERT
+ #define POI_VERT
+
+ float _VertexManipulationHeightUV;
+ float _VertexUnwrap;
+
+ #define PM UNITY_MATRIX_P
+
+ inline float4 CalculateFrustumCorrection()
+ {
+ float x1 = -PM._31 / (PM._11 * PM._34);
+ float x2 = -PM._32 / (PM._22 * PM._34);
+ return float4(x1, x2, 0, PM._33 / PM._34 + x1 * PM._13 + x2 * PM._23);
+ }
+
+ v2f vert(appdata v)
+ {
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ #ifdef _COLOROVERLAY_ON
+ v.vertex.xyz = lerp(v.vertex.xyz, float3(v.uv0.x - .5, v.uv0.y - .5, 0), float(0));
+ #endif
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.tangent, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ #ifdef _REQUIRE_UV2 //POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ TANGENT_SPACE_ROTATION;
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ //o.localPos.x *= -1;
+ //o.localPos.xz += sin(o.localPos.y * 100 + _Time.y * 5) * .0025;
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, o.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+ o.vertexColor = v.color;
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.tangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
+
+ #ifdef POI_BULGE
+ bulgyWolgy(o);
+ #endif
+
+
+ o.angleAlpha = 1;
+ #ifdef _SUNDISK_NONE //POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ #if defined(LIGHTMAP_ON)
+ o.lightmapUV.xy = v.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
+ #endif
+ #ifdef DYNAMICLIGHTMAP_ON
+ o.lightmapUV.zw = v.uv2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0.xy);
+ UNITY_TRANSFER_FOG(o, o.pos);
+
+ #if defined(_PARALLAXMAP) // POI_PARALLAX
+ v.tangent.xyz = normalize(v.tangent.xyz);
+ v.normal = normalize(v.normal);
+ float3x3 objectToTangent = float3x3(
+ v.tangent.xyz,
+ cross(v.normal, v.tangent.xyz) * v.tangent.w,
+ v.normal
+ );
+ o.tangentViewDir = mul(objectToTangent, ObjSpaceViewDir(v.vertex));
+ #endif
+
+ #ifdef POI_META_PASS
+ o.pos = UnityMetaVertexPosition(v.vertex, v.uv1.xy, v.uv2.xy, unity_LightmapST, unity_DynamicLightmapST);
+ #endif
+
+ #if defined(GRAIN)
+ float4 worldDirection;
+
+ worldDirection.xyz = o.worldPos.xyz - _WorldSpaceCameraPos;
+ worldDirection.w = dot(o.pos, CalculateFrustumCorrection());
+ o.worldDirection = worldDirection;
+ #endif
+
+ return o;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
new file mode 100644
index 00000000..b6d101c2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c8763b60afaf4bf44b8a5c6a1c5e2888
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
new file mode 100644
index 00000000..94c16148
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
@@ -0,0 +1,93 @@
+#ifndef POI_VERTEX_MANIPULATION
+ #define POI_VERTEX_MANIPULATION
+
+ #include "CGI_PoiMath.cginc"
+
+ float4 _VertexManipulationLocalTranslation;
+ float4 _VertexManipulationLocalRotation;
+ float4 _VertexManipulationLocalScale;
+ float4 _VertexManipulationWorldTranslation;
+
+ float _VertexManipulationHeight;
+ float _VertexManipulationHeightBias;
+ sampler2D _VertexManipulationHeightMask; float4 _VertexManipulationHeightMask_ST;
+ float2 _VertexManipulationHeightPan;
+
+
+ //Vertex Glitching
+ float _EnableVertexGlitch;
+ sampler2D _VertexGlitchMap; float4 _VertexGlitchMap_ST;
+ float _VertexGlitchThreshold;
+ float _VertexGlitchFrequency;
+ float _VertexGlitchStrength;
+ // Rounding
+ float _VertexRoundingDivision;
+ float _VertexRoundingEnabled;
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 tangent, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ tangent.xyz = rotate_with_quaternion(tangent.xyz, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyWorldVertexTransformation(inout float4 worldPos, inout float4 localPos, inout float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyWorldVertexTransformationShadow(inout float4 worldPos, inout float4 localPos, float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyVertexRounding(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if (float(0))
+ {
+ worldPos.xyz = (ceil(worldPos * float(500)) / float(500)) - 1 / float(500) * .5;
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+ void applyVertexGlitching(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if(_EnableVertexGlitch)
+ {
+ float3 forward = getCameraPosition() - mul(unity_ObjectToWorld, float4(0, 0, 0, 1)).xyz;
+ forward.y = 0;
+ forward = normalize(forward);
+ float3 glitchDirection = normalize(cross(float3(0, 1, 0), forward));
+ float glitchAmount = frac(sin(dot(_Time.xy + worldPos.y, float2(12.9898, 78.233))) * 43758.5453123) * 2 - 1;
+ /*
+ float uvl = worldPos.y * _VertexGlitchDensity + _Time.x * _VertexGlitchMapPanSpeed;
+ float uvr = worldPos.y * _VertexGlitchDensity - _Time.x * _VertexGlitchMapPanSpeed;
+ float glitchAmountLeft = tex2Dlod(_VertexGlitchMap, float4(uvl, uvl, 0, 0)).r;
+ float glitchAmountRight = -tex2Dlod(_VertexGlitchMap, float4(uvr, uvr, 0, 0)).r;
+ float glitchAmount = glitchAmountLeft + glitchAmountRight;
+ */
+ float time = _Time.y * _VertexGlitchFrequency;
+ float randomGlitch = (sin(time) + sin(2.2 * time + 5.52) + sin(2.9 * time + 0.93) + sin(4.6 * time + 8.94)) / 4;
+ worldPos.xyz += glitchAmount * glitchDirection * (_VertexGlitchStrength * .01) * step(_VertexGlitchThreshold, randomGlitch);
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+#endif
+//
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
new file mode 100644
index 00000000..a0c2bb83
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4c9fd1e210b97fc49b1de95f9df4b6e0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
new file mode 100644
index 00000000..ec2d37e4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
@@ -0,0 +1,266 @@
+#ifndef POI_VIDEO
+ #define POI_VIDEO
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoPixelTexture); float4 _VideoPixelTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoMaskTexture); float4 _VideoMaskTexture_ST;
+
+ float _VideoUVNumber;
+ float _VideoType;
+ float3 pixels;
+ float2 _VideoResolution;
+ sampler2D _VideoGameboyRamp;
+ half _VideoBacklight;
+ half _VideoCRTRefreshRate;
+ half _VideoCRTPixelEnergizedTime;
+ half _VideoEnableVideoPlayer;
+ half _VideoRepeatVideoTexture;
+ half _VideoPixelateToResolution;
+ float2 _VideoMaskPanning;
+ // Video Settings
+ half _VideoSaturation;
+ half _VideoContrast;
+ float2 _VideoTiling;
+ float2 _VideoOffset;
+ float2 _VideoPanning;
+ //Debug
+ half _VideoEnableDebug;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoDebugTexture); float4 _VideoDebugTexture_ST;
+
+
+ sampler2D _VRChat_VideoPlayer;
+ float4 _VRChat_VideoPlayer_TexelSize;
+
+ float4 globalVideoPlayerColor;
+ float3 globalColorToDisplayOnScreen;
+ float globalVideoOn;
+
+ float3 applyBacklight(float3 albedo, half backlightStrength)
+ {
+ return max(backlightStrength, albedo.rgb);
+ }
+
+ float3 applyViewAngleTN(float3 albedo)
+ {
+ float3 reflectionVector = normalize(reflect(poiCam.viewDir.rgb, poiMesh.normals[1].rgb));
+ float upwardShift = dot(reflectionVector, poiMesh.binormal);
+ upwardShift = pow(upwardShift, 1);
+ float sideShift = dot(reflectionVector, poiMesh.tangent);
+ sideShift *= pow(sideShift, 3);
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = LinearToGammaSpace(albedo);
+ #endif
+ albedo = saturate(lerp(half3(0.5, 0.5, 0.5), albedo, upwardShift + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = GammaToLinearSpace(albedo);
+ #endif
+ albedo = (lerp(albedo, albedo.gbr, sideShift));
+ return albedo;
+ }
+
+ float calculateCRTPixelBrightness()
+ {
+ float totalPixels = _VideoResolution.x * _VideoResolution.y;
+ float2 uvPixel = float2((floor((1 - poiMesh.uv[_VideoUVNumber].y) * _VideoResolution.y)) / _VideoResolution.y, (floor(poiMesh.uv[_VideoUVNumber].x * _VideoResolution.x)) / _VideoResolution.x);
+ float currentPixelNumber = _VideoResolution.x * (_VideoResolution.y * uvPixel.x) + _VideoResolution.y * uvPixel.y;
+ float currentPixelAlpha = currentPixelNumber / totalPixels;
+ half electronBeamAlpha = frac(_Time.y * _VideoCRTRefreshRate);
+ float electronBeamPixelNumber = totalPixels * electronBeamAlpha;
+
+ float DistanceInPixelsFromCurrentElectronBeamPixel = 0;
+ if (electronBeamPixelNumber >= currentPixelNumber)
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber - currentPixelNumber;
+ }
+ else
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber + (totalPixels - currentPixelNumber);
+ }
+ float CRTFrameTime = 1 / _VideoCRTRefreshRate;
+ float timeSincecurrentPixelWasHitByElectronBeam = (DistanceInPixelsFromCurrentElectronBeamPixel / totalPixels);
+
+ return saturate(_VideoCRTPixelEnergizedTime - timeSincecurrentPixelWasHitByElectronBeam);
+ }
+
+ void applyContrastSettings(inout float3 pixel)
+ {
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = LinearToGammaSpace(pixel);
+ #endif
+ pixel = saturate(lerp(half3(0.5, 0.5, 0.5), pixel, _VideoContrast + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = GammaToLinearSpace(pixel);
+ #endif
+ }
+
+ void applySaturationSettings(inout float3 pixel)
+ {
+ pixel = lerp(pixel.rgb, dot(pixel.rgb, float3(0.3, 0.59, 0.11)), -_VideoSaturation);
+ }
+
+ void applyVideoSettings(inout float3 pixel)
+ {
+ applySaturationSettings(pixel);
+ applyContrastSettings(pixel);
+ }
+
+ void calculateLCD(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateTN(inout float4 albedo)
+ {
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ globalColorToDisplayOnScreen = applyViewAngleTN(globalColorToDisplayOnScreen);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateCRT(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ float brightness = calculateCRTPixelBrightness();
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * brightness * _VideoBacklight;
+ }
+ void calculateOLED(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateGameboy(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ half brightness = saturate((globalColorToDisplayOnScreen.r + globalColorToDisplayOnScreen.g + globalColorToDisplayOnScreen.b) * .3333333);
+ albedo.rgb = tex2D(_VideoGameboyRamp, brightness);
+ }
+ void calculateProjector(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+
+ float3 projectorColor = albedo * globalColorToDisplayOnScreen * _VideoBacklight;
+ albedo.r = clamp(projectorColor.r, albedo.r, 1000);
+ albedo.g = clamp(projectorColor.g, albedo.g, 1000);
+ albedo.b = clamp(projectorColor.b, albedo.b, 1000);
+ }
+
+ void applyScreenEffect(inout float4 albedo, inout float3 videoEmission)
+ {
+ float4 albedoBeforeScreen = albedo;
+
+ pixels = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoPixelTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoPixelTexture) * _VideoResolution);
+ globalVideoOn = 0;
+
+ if(_VideoEnableVideoPlayer == 1)
+ {
+ float4 videoTexture = 0;
+
+ if(_VideoPixelateToResolution)
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, round(TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoResolution + .5) / _VideoResolution);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, round(poiMesh.uv[_VideoUVNumber] * _VideoResolution + .5) / _VideoResolution);
+ }
+ }
+ else
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoTiling + _VideoOffset);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, ((poiMesh.uv[_VideoUVNumber] + _Time.x * _VideoPanning) * _VideoTiling) + _VideoOffset);
+ }
+ }
+ if(videoTexture.a == 1)
+ {
+ globalColorToDisplayOnScreen = videoTexture.rgb;
+ globalVideoOn = 1;
+ }
+ }
+
+
+ if(_VideoRepeatVideoTexture == 1)
+ {
+ if(poiMesh.uv[_VideoUVNumber].x > 1 || poiMesh.uv[_VideoUVNumber].x < 0 || poiMesh.uv[_VideoUVNumber].y > 1 || poiMesh.uv[_VideoUVNumber].y < 0)
+ {
+ return;
+ }
+ }
+
+ switch(_VideoType)
+ {
+ case 0: // LCD
+ {
+ calculateLCD(albedo);
+ break;
+ }
+ case 1: // TN
+ {
+ calculateTN(albedo);
+ break;
+ }
+ case 2: // CRT
+ {
+ calculateCRT(albedo);
+ break;
+ }
+ case 3: // OLED
+ {
+ calculateOLED(albedo);
+ break;
+ }
+ case 4: // Gameboy
+ {
+ calculateGameboy(albedo);
+ break;
+ }
+ case 5: // Projector
+ {
+ calculateProjector(albedo);
+ break;
+ }
+ }
+
+ float screenMask = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoMaskTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoMaskTexture) + _Time.x * _VideoMaskPanning);
+ albedo = lerp(albedoBeforeScreen, albedo, screenMask);
+ videoEmission = max(albedo.rgb * screenMask - 1, 0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
new file mode 100644
index 00000000..fcb99719
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 61289de70d8831646a207bd45a2633ca
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
new file mode 100644
index 00000000..db3d3130
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
@@ -0,0 +1,304 @@
+#ifndef POI_VORONOI
+ #define POI_VORONOI
+
+ #include "CGI_PoiRNG.cginc"
+
+ float _VoronoiSpace;
+ float _VoronoiBlend;
+ float _VoronoiType;
+ float4 _VoronoiColor0;
+ float _VoronoiEmission0;
+ float4 _VoronoiColor1;
+ float _VoronoiEmission1;
+ float2 _VoronoiGradient;
+ float _VoronoiScale;
+ float3 _VoronoiSpeed;
+ float _VoronoiEnableRandomCellColor;
+ float2 _VoronoiRandomMinMaxSaturation;
+ float2 _VoronoiRandomMinMaxBrightness;
+ float3 randomPoint;
+ float _VoronoiEffectsMaterialAlpha;
+
+ POI_TEXTURE_NOSAMPLER(_VoronoiMask);
+ POI_TEXTURE_NOSAMPLER(_VoronoiNoise);
+ float _VoronoiNoiseIntensity;
+
+ float2 inoise(float3 P, float jitter)
+ {
+ float3 Pi = mod(floor(P), 289.0);
+ float3 Pf = frac(P);
+ float3 oi = float3(-1.0, 0.0, 1.0);
+ float3 of = float3(-0.5, 0.5, 1.5);
+ float3 px = Permutation(Pi.x + oi);
+ float3 py = Permutation(Pi.y + oi);
+
+ float3 p, ox, oy, oz, dx, dy, dz;
+ float2 F = 1e6;
+
+ for (int i = 0; i < 3; i ++)
+ {
+ for (int j = 0; j < 3; j ++)
+ {
+ p = Permutation(px[i] + py[j] + Pi.z + oi); // pij1, pij2, pij3
+
+ ox = frac(p * K) - Ko;
+ oy = mod(floor(p * K), 7.0) * K - Ko;
+
+ p = Permutation(p);
+
+ oz = frac(p * K) - Ko;
+
+ dx = Pf.x - of[i] + jitter * ox;
+ dy = Pf.y - of[j] + jitter * oy;
+ dz = Pf.z - of + jitter * oz;
+
+ float3 d = dx * dx + dy * dy + dz * dz; // dij1, dij2 and dij3, squared
+
+ //Find lowest and second lowest distances
+ for (int n = 0; n < 3; n ++)
+ {
+ if (d[n] < F[0])
+ {
+ F[1] = F[0];
+ F[0] = d[n];
+ randomPoint = p;
+ }
+ else if(d[n] < F[1])
+ {
+ F[1] = d[n];
+ }
+ }
+ }
+ }
+
+ return F;
+ }
+
+ float voronoi2D(in float2 x, float scale, float2 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float2 n = floor(x);
+ float2 f = frac(x);
+
+ // first pass: regular voronoi
+ float2 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 g = float2(float(i), float(j));
+ float2 o = random2(n + g);
+ float2 currentPoint = o;
+
+ float2 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint.xy = currentPoint;
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ float2 g = mg + float2(float(q), float(r));
+ float2 o = random2(n + g);
+
+ float2 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ return md;
+ }
+
+ float voronoi3D(in float3 x, float scale, float3 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float3 n = floor(x);
+ float3 f = frac(x);
+
+ // first pass: regular voronoi
+ float3 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ for (int h = -1; h <= 1; h ++)
+ {
+ float3 g = float3(float(h), float(i), float(j));
+ float3 o = random3(n + g);
+ float3 currentPoint = o;
+
+ float3 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint = currentPoint;
+ }
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ for (int p = -2; p <= 2; p ++)
+ {
+ float3 g = mg + float3(float(p), float(q), float(r));
+ float3 o = random3(n + g);
+
+ float3 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ }
+ return md;
+ }
+
+
+
+ // fracal sum, range -1.0 - 1.0
+ float VoronoiNoise_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ float VoronoiNoiseDiff_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[1]) - sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ void applyVoronoi(inout float4 finalColor, inout float3 VoronoiEmission)
+ {
+ float voronoiOctaveNumber = 1;
+ float voronoiOctaveScale = 1;
+ float voronoiOctaveAttenuation = 1;
+ randomPoint = 0;
+ float4 voronoiColor1 = _VoronoiColor1;
+
+ float voronoi = 0;
+
+ float3 position = 0;
+
+
+ if (_VoronoiSpace == 0)
+ {
+ position = poiMesh.localPos;
+ }
+
+ if(_VoronoiSpace == 1)
+ {
+ position = poiMesh.worldPos;
+ }
+
+ if(_VoronoiSpace == 2)
+ {
+ position = float3(poiMesh.uv[0].x, poiMesh.uv[0].y, 0);
+ }
+
+ float mask = POI2D_SAMPLER_PAN(_VoronoiMask, _MainTex, poiMesh.uv[_VoronoiMaskUV], _VoronoiMaskPan).r;
+ float edgeNoise = POI2D_SAMPLER_PAN(_VoronoiNoise, _MainTex, poiMesh.uv[_VoronoiNoiseUV], _VoronoiNoisePan).r * _VoronoiNoiseIntensity;
+
+
+ if(_VoronoiType == 0) // Basic
+ {
+ voronoi = voronoi2D(position.xy, _VoronoiScale, _VoronoiSpeed);
+ }
+
+ if (_VoronoiType == 1) // Diff
+ {
+ voronoi = VoronoiNoiseDiff_Octaves(position, _VoronoiScale, _VoronoiSpeed, voronoiOctaveNumber, voronoiOctaveScale, voronoiOctaveAttenuation, 1, _Time.x);
+ }
+
+ if (_VoronoiType == 2) // Fixed Border
+ {
+ voronoi = voronoi3D(position, _VoronoiScale, _VoronoiSpeed);
+ // isolines
+ //color = c.x * (0.5 + 0.5 * sin(64.0 * c.x)) * 1.0;
+ }
+
+ if (_VoronoiEnableRandomCellColor == 1)
+ {
+ float3 rando = random3(randomPoint);
+ fixed hue = rando.x;
+ fixed saturation = lerp(_VoronoiRandomMinMaxSaturation.x, _VoronoiRandomMinMaxSaturation.y, rando.y);
+ fixed value = lerp(_VoronoiRandomMinMaxBrightness.x, _VoronoiRandomMinMaxBrightness.y, rando.z);
+ float3 hsv = float3(hue, saturation, value);
+
+ voronoiColor1.rgb = HSVtoRGB(hsv);
+ }
+
+ float2 voronoiGradient = _VoronoiGradient;
+ voronoiGradient.xy += edgeNoise;
+ float ramp = smoothstep(voronoiGradient.x, voronoiGradient.y, voronoi);
+
+
+ if(_VoronoiBlend == 0)
+ {
+ float4 voronoiColor = lerp(_VoronoiColor0, voronoiColor1, ramp);
+
+ if(_VoronoiEffectsMaterialAlpha)
+ {
+ finalColor.rgba = lerp(finalColor, voronoiColor, mask);
+ }
+ else
+ {
+ finalColor.rgb = lerp(finalColor.rgb, voronoiColor.rgb, mask * voronoiColor.a);
+ }
+ }
+ float4 voronoiEmissionColor = lerp(_VoronoiColor0 * _VoronoiEmission0, voronoiColor1 * _VoronoiEmission1, ramp);
+ VoronoiEmission = voronoiEmissionColor.rgb * mask * voronoiEmissionColor.a;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
new file mode 100644
index 00000000..bd33c3a2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ec5f4c677e7819b44973b39f49c62af2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
new file mode 100644
index 00000000..49c602c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
@@ -0,0 +1,111 @@
+#ifndef POI_WIREFRAME
+ #define POI_WIREFRAME
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_WireframeTexture); float4 _WireframeTexture_ST;
+ float2 _WireframeTexturePan;
+ float _WireframeSmoothing;
+ float _WireframeThickness;
+ float4 _WireframeColor;
+ float _WireframeAlpha;
+ float _WireframeEnable;
+ float _WireframeWaveEnabled;
+ float _WireframeWaveDensity;
+ float _WireframeWaveSpeed;
+ float _WireframeEdgeOpacity;
+ float _WireframeFaceOpacity;
+ half _WireframeEmissionAlpha;
+ float _WireframeEmissionStrength;
+ float _WireframeQuad;
+ float _WireframeUV;
+
+ #ifndef POI_SHADOW
+ void applyWireframe(inout float3 wireframeEmission, inout float4 albedo)
+ {
+
+ if (_WireframeEnable)
+ {
+ float4 colorMap = UNITY_SAMPLE_TEX2D_SAMPLER(_WireframeTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_WireframeUV], _WireframeTexture) + _Time.x * _WireframeTexturePan);
+ float size = _WireframeThickness;
+ half3 width = abs(ddx(poiMesh.barycentricCoordinates)) + abs(ddy(poiMesh.barycentricCoordinates));
+ half3 eF = smoothstep(0, width * size, poiMesh.barycentricCoordinates);
+ half minBary = size > 0 ? min(min(eF.x, eF.y), eF.z): 1;
+
+ float4 wireframeColor = _WireframeColor * colorMap;
+
+ albedo.a *= lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ albedo.rgb = lerp(lerp(albedo.rgb, wireframeColor.rgb, wireframeColor.a), albedo.rgb, minBary);
+ wireframeEmission = wireframeColor.rgb * _WireframeEmissionStrength * (1 - minBary) * _WireframeColor.a;
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle v2f IN[3], inout TriangleStream < v2f > tristream)
+ {
+
+ if(_WireframeQuad)
+ {
+ float e1 = length(IN[0].localPos - IN[1].localPos);
+ float e2 = length(IN[1].localPos - IN[2].localPos);
+ float e3 = length(IN[2].localPos - IN[0].localPos);
+
+ float3 quad = 0;
+ if(e1 > e2 && e1 > e3)
+ quad.y = 1.;
+ else if(e2 > e3 && e2 > e1)
+ quad.x = 1;
+ else
+ quad.z = 1;
+
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0) + quad;
+ IN[1].barycentricCoordinates = fixed3(0, 0, 1) + quad;
+ IN[2].barycentricCoordinates = fixed3(0, 1, 0) + quad;
+ }
+ else
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ }
+
+
+
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #else
+
+ float applyShadowWireframe(float2 uv, float3 barycentricCoordinates, float3 normal, float3 worldPos)
+ {
+
+ if(_WireframeEnable)
+ {
+ float wireframeFadeAlpha = _WireframeAlpha;
+ float3 finalWireframeColor = 0;
+
+ float3 barys;
+ barys.xy = barycentricCoordinates;
+ barys.z = 1 - barys.x - barys.y;
+ float3 deltas = fwidth(barys);
+ float3 smoothing = deltas * _WireframeSmoothing;
+ float wireframeThickness = _WireframeThickness;
+ float3 thickness = deltas * wireframeThickness;
+ barys = smoothstep(thickness, thickness + smoothing, barys);
+ float minBary = min(barys.x, min(barys.y, barys.z));
+
+ return lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle V2FShadow IN[3], inout TriangleStream < V2FShadow > tristream)
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
new file mode 100644
index 00000000..d01fe108
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8549836604c3c8546acd697e09c55739
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
new file mode 100644
index 00000000..319de57c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
@@ -0,0 +1,171 @@
+#ifndef POICLUDES
+ #define POICLUDES
+
+ UNITY_DECLARE_TEX2D(_MainTex); float4 _MainTex_ST; float4 _MainTex_TexelSize;
+ sampler2D _PoiGrab;
+ sampler2D _CameraDepthTexture;
+ float _Cutoff;
+ float _AlphaMod;
+
+ //Structs
+ struct appdata
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #ifdef OUTLINE
+ float _LineWidth;
+ float _OutlineEmission;
+ float4 _LineColor;
+ sampler2D _OutlineTexture; float4 _OutlineTexture_ST; float2 _OutlineTexturePan; float _OutlineTextureUV;
+ float4 _OutlineFadeDistance;
+ float4 _OutlineGlobalPan;
+ #endif
+
+ struct PoiLighting
+ {
+ half3 direction;
+ half3 color;
+ fixed attenuation;
+ #ifdef FORWARD_ADD_PASS
+ fixed additiveShadow;
+ #endif
+ half3 directLighting;
+ half3 indirectLighting;
+ half lightMap;
+ half3 rampedLightMap;
+ half3 finalLighting;
+ half3 halfDir;
+ half nDotL;
+ half nDotH;
+ half lDotv;
+ half lDotH;
+ half nDotV;
+ half N0DotV;
+ half diffuseTerm;
+
+ // World normal dot half direction
+ #ifdef POI_VAR_DOTNH
+ half dotNH;
+ #endif
+
+ // Light direction dot half direction
+ #ifdef POI_VAR_DOTLH
+ half dotLH;
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ float4 vDotNL;
+ float3 vColor[4];
+ float4 vCorrectedDotNL;
+ float4 vAttenuation;
+ float4 vAttenuationDotNL;
+ float3 vPosition[4];
+ float3 vDirection[4];
+ float3 vFinalLighting;
+ float3 vHalfDir[4];
+
+ #ifdef POI_VAR_DOTLH
+ half4 vDotLH;
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ half4 vDotNH;
+ #endif
+
+ #endif
+ };
+
+ struct PoiCamera
+ {
+ half3 viewDir;
+ half3 tangentViewDir;
+ half3 forwardDir;
+ half3 worldPos;
+ float viewDotNormal;
+ float distanceToModel;
+ float distanceToVert;
+ float3 reflectionDir;
+ float3 vertexReflectionDir;
+ float2 screenUV;
+ float4 clipPos;
+ #if defined(GRAIN)
+ float4 worldDirection;
+ #endif
+ float4 grabPos;
+ };
+
+ struct PoiMesh
+ {
+ float3 normals[2];
+ float3 tangent;
+ float3 binormal;
+ float3 localPos;
+ float3 worldPos;
+ float3 modelPos;
+ float3 tangentSpaceNormal;
+ float2 uv[5];
+ float4 vertexColor;
+ fixed3 barycentricCoordinates;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV;
+ #endif
+ float isFrontFace;
+ #ifdef FUR
+ float furAlpha;
+ #endif
+ };
+
+ struct PoiTangentData
+ {
+ float3x3 tangentTransform;
+ float3x3 tangentToWorld;
+ };
+
+ struct FragmentCommonData
+ {
+ half3 diffColor, specColor;
+ // Note: smoothness & oneMinusReflectivity for optimization purposes, mostly for DX9 SM2.0 level.
+ // Most of the math is being done on these (1-x) values, and that saves a few precious ALU slots.
+ half oneMinusReflectivity, smoothness;
+ float3 normalWorld;
+ float3 eyeVec;
+ half alpha;
+ float3 posWorld;
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 reflUVW;
+ #endif
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 tangentSpaceNormal;
+ #endif
+ };
+
+ struct Debug
+ {
+ float debug1;
+ float2 debug2;
+ float3 debug3;
+ float4 debug4;
+ };
+
+ static Debug debug;
+ static PoiLighting poiLight;
+ static PoiCamera poiCam;
+ static PoiMesh poiMesh;
+ static UnityGI gi;
+ static FragmentCommonData s;
+ static PoiTangentData poiTData;
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
new file mode 100644
index 00000000..c3e244a4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 59c0ddfa6c62da64487e8b512b1e8372
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
new file mode 100644
index 00000000..5b297188
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: ea65aa4e8cc11654492d627c3ea6fed3
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
new file mode 100644
index 00000000..c2c0ce31
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
@@ -0,0 +1,7648 @@
+Shader "Hidden/.poiyomi/• Poiyomi Toon •/R2Changyu01001Cloth-163ee521"
+{
+ Properties
+ {
+ [HideInInspector] shader_is_using_thry_editor ("", Float) = 0
+ [HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Toon V7.0.100</color>", Float) = 0
+ [HideInInspector] shader_presets ("poiToonPresets", Float) = 0
+ [HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
+
+ [HideInInspector] footer_youtube ("youtube footer button", Float) = 0
+ [HideInInspector] footer_twitter ("twitter footer button", Float) = 0
+ [HideInInspector] footer_patreon ("patreon footer button", Float) = 0
+ [HideInInspector] footer_discord ("discord footer button", Float) = 0
+ [HideInInspector] footer_github ("github footer button", Float) = 0
+
+ // Keyword to remind users in the VRChat SDK that this material hasn't been locked. Inelegant but it works.
+ [HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Int) = 1
+ [ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Int) = 0
+ [Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Int) = 0
+
+ [ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)]_Mode("Rendering Preset--{on_value_actions:[
+ {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2450}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=1}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2451}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
+ {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:RenderType=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
+ }]}]}", Int) = 0
+ [HideInInspector] m_LockingInfo ("Locking Info--{button_right:{text:Tutorial,action:{type:URL,data:https://youtu.be/asWeDJb5LAo},hover:YouTube},is_hideable:true}", Float) = 0
+ [Helpbox(1)] _HelpBoxLocking ("LOCKING IN THE SHADER WILL DRAMATICALLY INCREASE PERFORMANCE AND DRAMATICALLY LOWER THE FILE SIZE OF AN AVATAR PACKAGE.
+
+ LOCKED IN MATERIALS CANNOT BE ANIMATED WITHOUT SETTING THE SPECIFIC PROPERTY TO DYNAMIC. RIGHT CLICK MATERIAL PROPERTIES YOU WISH TO ANIMATE, A CLOCK ICON WILL APPEAR BESIDE THE PROPERTY SIGNIFYING THAT IT CAN BE ANIMATED.
+
+ FOR MORE INFORMATION ON LOCKING PLEASE WATCH THE LOCKING TUTORIAL IN THE HEADER ABOVE.", Int) = 0
+ [Helpbox(2)] _HelpBoxHideLocking ("TO HIDE THIS CATEGORY SELECT CUSTOM UI AT THE TOP AND UNCHECK THE LOCKING INFO CATEGORY", Float) = 0
+ // Main
+ [HideInInspector] m_mainOptions ("Main", Float) = 0
+ _Color ("Color & Alpha", Color) = (1, 1, 1, 1)
+ _MainTex ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainTextureUV ("UV", Int) = 0
+ _Saturation ("Saturation", Range(-1, 1)) = 0
+ _MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
+ [Normal]_BumpMap ("Normal Map", 2D) = "bump" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _BumpMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_BumpMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ _BumpScale ("Normal Intensity", Range(0, 10)) = 1
+ _AlphaMask ("Alpha Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_AlphaMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AlphaMaskUV ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector] m_start_MainHueShift ("Hue Shift", Float) = 0
+ [HideInInspector][Toggle(COLOR_GRADING_HDR)]_MainHueShiftToggle ("Toggle Hueshift", Float) = 0
+ [ToggleUI]_MainHueShiftReplace ("Replace?", Float) = 1
+ _MainHueShift ("Hue Shift", Range(0, 1)) = 0
+ _MainHueShiftSpeed ("Shift Speed", Float) = 0
+ _MainHueShiftMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainHueShiftMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainHueShiftMaskUV ("UV", Int) = 0
+ [HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
+
+ // RGB Masking
+ [HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
+ [HideInInspector][Toggle(VIGNETTE)]_RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
+ [ToggleUI]_RGBUseVertexColors ("Use Vertex Colors", Float) = 0
+ [ToggleUI]_RGBBlendMultiplicative ("Multiplicative?", Float) = 0
+ _RGBMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBMaskPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBMaskUV ("UV", int) = 0
+ _RedColor ("R Color", Color) = (1, 1, 1, 1)
+ _RedTexure ("R Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBRedPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBRed_UV ("UV", int) = 0
+ _GreenColor ("G Color", Color) = (1, 1, 1, 1)
+ _GreenTexture ("G Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBGreenPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBGreen_UV ("UV", int) = 0
+ _BlueColor ("B Color", Color) = (1, 1, 1, 1)
+ _BlueTexture ("B Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBBluePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBBlue_UV ("UV", int) = 0
+ // RGB MASKED NORMALS
+ [Toggle(GEOM_TYPE_MESH)]_RgbNormalsEnabled ("Enable Normals", Float) = 0
+ [ToggleUI]_RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
+ [Normal]_RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalRPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalRUV ("UV", int) = 0
+ _RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalGPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalGUV ("UV", int) = 0
+ _RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalBPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalBUV ("UV", int) = 0
+ _RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
+
+ // Detail Options
+ [HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(FINALPASS)]_DetailEnabled ("Enable", Float) = 0
+ _DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" { }
+ [HideInInspector][Vector2]_DetailMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailMaskUV ("UV", Int) = 0
+ _DetailTint ("Detail Texture Tint", Color) = (1, 1, 1)
+ _DetailTex ("Detail Texture", 2D) = "gray" { }
+ [HideInInspector][Vector2]_DetailTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailTexUV ("UV", Int) = 0
+ _DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
+ _DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
+ [Normal]_DetailNormalMap ("Detail Normal", 2D) = "bump" { }
+ _DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
+ [HideInInspector][Vector2]_DetailNormalMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailNormalMapUV ("UV", Int) = 0
+ [HideInInspector] m_end_DetailOptions ("Details", Float) = 0
+
+ // Vertex Colors
+ [HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
+ _MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
+ _MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
+
+ //Vertex Manipulations
+ [HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(AUTO_EXPOSURE)]_VertexManipulationsEnabled ("Enabled", Float) = 0
+ [Vector3]_VertexManipulationLocalTranslation ("Local Translation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalRotation ("Local Rotation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalScale ("Local Scale", Vector) = (1, 1, 1, 1)
+ [Vector3]_VertexManipulationWorldTranslation ("World Translation", Vector) = (0, 0, 0, 1)
+ _VertexManipulationHeight ("Vertex Height", Float) = 0
+ _VertexManipulationHeightMask ("Height Map", 2D) = "while" { }
+ [HideInInspector][Vector2]_VertexManipulationHeightPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _VertexManipulationHeightUV ("UV", Int) = 0
+ _VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
+ [ToggleUI]_VertexRoundingEnabled ("Rounding Enabled", Float) = 0
+ _VertexRoundingDivision ("Division Amount", Float) = 500
+ [HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
+
+ // Alpha Options
+ [HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
+ _Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
+ [ToggleUI]_DitheringEnabled ("Enable Dithering", Float) = 0
+ _DitherGradient ("Dither Gradient", Range(0, 1)) = .1
+ [ToggleUI]_ForceOpaque ("Force Opaque", Float) = 0
+ _MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
+ [Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
+ [ToggleUI]_MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
+ _MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
+ [ToggleUI]_AlphaPremultiply ("Alpha Premultiply", Float) = 0
+ _AlphaMod ("Alpha Mod", Range(-1, 1)) = 0.0
+ [HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
+
+ // Decal Texture
+ [HideInInspector] m_start_DecalSection ("Decal", Float) = 0
+ [HideInInspector][Toggle(GEOM_TYPE_BRANCH)]_DecalEnabled ("Enable", Float) = 0
+ _DecalColor ("Color", Color) = (1, 1, 1, 1)
+ _DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _DecalTexture ("Decal", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalTextureUV ("UV", Int) = 0
+ _DecalMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalMaskUV ("UV", Int) = 0
+ [ToggleUI]_DecalTiled ("Tiled?", Float) = 0
+ [Vector2]_DecalScale ("Scale", Vector) = (1, 1, 0, 0)
+ [Vector2]_DecalPosition ("Position", Vector) = (.5, .5, 0, 0)
+ _DecalRotation ("Rotation", Range(0, 360)) = 0
+ _DecalRotationSpeed ("Rotation Speed", Float) = 0
+ _DecalBlendAdd ("Add", Range(0, 1)) = 0
+ _DecalBlendMultiply ("Multiply", Range(0, 1)) = 0
+ _DecalBlendReplace ("Replace", Range(0, 1)) = 0
+ [HideInInspector] m_end_DecalSection ("Decal", Float) = 0
+
+ // Back Face Textures and Emission
+ [HideInInspector] m_start_backFace ("Back Face", Float) = 0
+ [ToggleUI]_BackFaceEnabled ("Enable Back Face Options", Float) = 0
+ _BackFaceColor ("Color", Color) = (1, 1, 1, 1)
+ _BackFaceTexture ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_BackFacePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_BackFaceTextureUV ("UV#", Int) = 0
+ _BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
+ _BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
+ _BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [HideInInspector] m_end_backFace ("Back Face", Float) = 0
+
+ // Lighting
+ [HideInInspector] m_lightingOptions ("Lighting", Float) = 0
+ [HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
+ [Toggle(VIGNETTE_MASKED)]_EnableLighting ("Enable Lighting", Float) = 1
+ [Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Int) = 0
+ _LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
+ [Enum(Ramp Texture, 0, Math Gradient, 1)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Int) = 0
+ [Gradient]_ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" { }
+ _LightingShadowMask ("Ramp Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowMaskUV ("UV", Int) = 0
+ _ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
+ _LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
+ _LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = .5
+ _LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Color) = (1, 1, 1, 1)
+ _ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 1
+ _AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+
+ [HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
+ [Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Int) = 0
+ [ToggleUI]_LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
+ [ToggleUI]_LightingUncapped ("Uncapped Lighting", Float) = 0
+ [ToggleUI]_LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
+ _LightingMonochromatic ("Monochromatic Lighting?", Range(0,1)) = 0
+ _LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
+ _LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
+ [HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
+
+ [HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
+ _LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingDetailShadowsPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingDetailShadowsUV ("UV", Int) = 0
+ _LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
+
+ [HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableAO ("Enable AO", Float) = 0
+ _LightingAOTex ("AO Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingAOTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingAOTexUV ("UV", Int) = 0
+ _AOStrength ("AO Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
+
+ [HideInInspector] m_start_shadowTexture ("Shadow Texture--{reference_property:_UseShadowTexture, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ [HideInInspector][ToggleUI]_UseShadowTexture ("EnableShadowTexture--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ _LightingShadowTexture ("Shadow Texture--{reference_properties:[_LightingShadowTexturePan, _LightingShadowTextureUV], condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_shadowTexture ("Shadow Texture", Float) = 0
+
+ // HSL Lighting
+ [HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
+ _LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
+ _LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
+ _LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
+ _LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
+ [HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
+
+ // point/spot Light Settings
+ [HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
+ [HideInInspector][ToggleUI]_commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
+ [Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Int) = 1
+ _LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
+ _LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = .5
+ _LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = .5
+ _LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
+ [ToggleUI]_LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
+ _LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
+ [Toggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)]_DisableDirectionalInAdd ("No Directional", Float) = 1
+ [HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
+ [HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
+
+ // Subsurface Scattering
+ [HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
+ [Toggle(_TERRAIN_NORMAL_MAP)]_EnableSSS ("Enable Subsurface Scattering", Float) = 0
+ _SSSColor ("Subsurface Color", Color) = (1, 0, 0, 1)
+ _SSSThicknessMap ("Thickness Map", 2D) = "black" { }
+ [HideInInspector][Vector2]_SSSThicknessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SSSThicknessMapUV ("UV", Int) = 0
+ _SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
+ _SSSSCale ("Light Strength", Range(0, 1)) = 0.25
+ _SSSPower ("Light Spread", Range(1, 100)) = 5
+ _SSSDistortion ("Light Distortion", Range(0, 1)) = 1
+ [HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
+
+ // Rim Lighting
+ [HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
+ [Toggle(_GLOSSYREFLECTIONS_OFF)]_EnableRimLighting ("Enable Rim Lighting", Float) = 0
+ [Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Int) = 1
+ [ToggleUI]_RimLightingInvert ("Invert Rim Lighting", Float) = 0
+ _RimLightColor ("Rim Color", Color) = (1, 1, 1, 1)
+ _RimWidth ("Rim Width", Range(0, 1)) = 0.8
+ _RimSharpness ("Rim Sharpness", Range(0, 1)) = .25
+ _RimStrength ("Rim Emission", Range(0, 20)) = 0
+ _RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
+ _RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 0
+ _RimTex ("Rim Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimTexUV ("UV", Int) = 0
+ _RimMask ("Rim Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimMaskUV ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
+ _RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_RimWidthNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimWidthNoiseTextureUV ("UV", Int) = 0
+ _RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
+ [HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
+ _ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
+ _ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = .5
+ _ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = .5
+ [HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
+ [HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
+ [Toggle(_MAPPING_6_FRAMES_LAYOUT)]_EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
+ _RimEnviroMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimEnviroMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimEnviroMaskUV ("UV", Int) = 0
+ _RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
+ _RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
+ _RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
+ _RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
+ _RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
+ [HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
+
+ // Baked Lighting
+ [HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
+ _GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
+ [HideInInspector] DSGI ("DSGI", Float) = 0 //add this property for double sided illumination settings to be shown
+ [HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0 //add this property for lightmap flags settings to be shown
+ [HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
+
+ // Metallics
+ [HideInInspector] m_start_Metallic ("Metallics", Float) = 0
+ [Toggle(_METALLICGLOSSMAP)]_EnableMetallic ("Enable Metallics", Float) = 0
+ _CubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _MetalReflectionTint ("Reflection Tint", Color) = (1, 1, 1)
+ _MetallicTintMap ("Tint Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicTintMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicTintMapUV ("UV", Int) = 0
+ _MetallicMask ("Metallic Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicMaskUV ("UV", Int) = 0
+ _Metallic ("Metallic", Range(0, 1)) = 0
+ _SmoothnessMask ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SmoothnessMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SmoothnessMaskUV ("UV", Int) = 0
+ [ToggleUI]_InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _Smoothness ("Smoothness", Range(0, 1)) = 0
+ [HideInInspector] m_end_Metallic ("Metallics", Float) = 0
+
+ // Clearcoat
+ [HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
+ [Toggle(_COLORCOLOR_ON)]_EnableClearCoat ("Enable Clear Coat", Float) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _ClearCoatNormalToUse ("What Normal?", Int) = 0
+ _ClearCoatCubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_ClearCoatSampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _ClearCoatTint ("Reflection Tint", Color) = (1, 1, 1)
+ _ClearCoatMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatMaskUV ("UV", Int) = 0
+ _ClearCoat ("Clear Coat", Range(0, 1)) = 1
+ _ClearCoatSmoothnessMap ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatSmoothnessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatSmoothnessMapUV ("UV", Int) = 0
+ [ToggleUI]_ClearCoatInvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _ClearCoatSmoothness ("Smoothness", Range(0, 1)) = 0
+ [ToggleUI]_ClearCoatForceLighting ("Force Lighting", Float) = 0
+ [HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
+
+ // First Matcap
+ [HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
+ [Toggle(_COLORADDSUBDIFF_ON)]_MatcapEnable ("Enable Matcap", Float) = 0
+ _MatcapColor ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap ("Matcap", 2D) = "white" { }
+ _MatcapBorder ("Border", Range(0, .5)) = 0.43
+ _MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_MatcapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MatcapMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_MatcapMaskInvert("Invert", Float) = 0
+ _MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _MatcapIntensity ("Intensity", Range(0, 5)) = 1
+ _MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
+ _MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
+ _MatcapAdd ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_matcap ("Matcap", Float) = 0
+
+ // Second Matcap
+ [HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
+ [ToggleUI]_Matcap2Enable ("Enable Matcap 2", Float) = 0
+ _Matcap2Color ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap2 ("Matcap", 2D) = "white" { }
+ _Matcap2Border ("Border", Range(0, .5)) = 0.43
+ _Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_Matcap2MaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _Matcap2MaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_Matcap2MaskInvert("Invert", Float) = 0
+ _Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _Matcap2Intensity ("Intensity", Range(0, 5)) = 1
+ _Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
+ _Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
+ _Matcap2Add ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
+
+ // Specular
+ [HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
+ [Toggle(_SPECGLOSSMAP)]_EnableSpecular ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Int) = 1
+ _SpecularTint ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMapUV ("UV", Int) = 0
+ _SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
+ [Gradient]_SpecularMap ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMapUV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
+ _SpecularMask ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMaskUV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Int) = 1
+ // Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Int) = 0
+ _AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
+ _AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMapUV ("UV", Int) = 0
+ //toon aniso
+ _SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicroUV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacroUV ("UV", Int) = 0
+ // Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
+
+ // Second Specular
+ [HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
+ [ToggleUI]_EnableSpecular1 ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Int) = 1
+ _SpecularTint1 ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMap1UV ("UV", Int) = 0
+ _SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = .75
+ _SpecularMap1 ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMap1UV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
+ _SpecularMask1 ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMask1UV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Int) = 1
+ // Second Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Int) = 0
+ _AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
+ _AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMap1UV ("UV", Int) = 0
+ // Second toon aniso
+ _SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor1 ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicro1UV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacro1UV ("UV", Int) = 0
+ // Second Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
+
+ // First Emission
+ [HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
+ [HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
+ [Toggle(_EMISSION)]_EnableEmission ("Enable Emission", Float) = 0
+ [ToggleUI]_EmissionReplace ("Replace Base Color", Float) = 0
+ [HDR]_EmissionColor ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMapUV ("UV", Int) = 0
+ _EmissionMask ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMaskUV ("UV", Int) = 0
+ _EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
+
+ // Center out emission
+ [HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+
+ // Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor ("VColor as position", float) = 0
+ _EmissiveScroll_Direction ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width ("Width", Float) = 10
+ _EmissiveScroll_Velocity ("Velocity", Float) = 10
+ _EmissiveScroll_Interval ("Interval", Float) = 20
+ _EmissionScrollingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
+
+ // Second Enission
+ [HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
+ [Toggle(EFFECT_HUE_VARIATION)]_EnableEmission1 ("Enable Emission 2", Float) = 0
+ [HDR]_EmissionColor1 ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap1 ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMap1UV ("UV", Int) = 0
+ _EmissionMask1 ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMask1UV ("UV", Int) = 0
+ _EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
+
+ // Second Center Out Enission
+ [HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Second Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve1 ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve1 ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor1 ("VColor as position", float) = 0
+ _EmissiveScroll_Direction1 ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width1 ("Width", Float) = 10
+ _EmissiveScroll_Velocity1 ("Velocity", Float) = 10
+ _EmissiveScroll_Interval1 ("Interval", Float) = 20
+ _EmissionScrollingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
+
+ // Flipbook
+ [HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
+ [Toggle(_SUNDISK_HIGH_QUALITY)]_EnableFlipbook ("Enable Flipbook", Float) = 0
+ [ToggleUI]_FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
+ [TextureArray]_FlipbookTexArray ("Texture Array", 2DArray) = "" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookTexArrayUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookTexArrayPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookMaskUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookColor ("Color & alpha", Color) = (1, 1, 1, 1)
+ _FlipbookTotalFrames ("Total Frames", Int) = 1
+ _FlipbookFPS ("FPS", Float) = 30.0
+ _FlipbookScaleOffset ("Scale | Offset", Vector) = (1, 1, 0, 0)
+ [ToggleUI]_FlipbookTiled ("Tiled?", Float) = 0
+ _FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _FlipbookRotation ("Rotation", Range(0, 360)) = 0
+ _FlipbookRotationSpeed ("Rotation Speed", Float) = 0
+ _FlipbookReplace ("Replace", Range(0, 1)) = 1
+ _FlipbookMultiply ("Multiply", Range(0, 1)) = 0
+ _FlipbookAdd ("Add", Range(0, 1)) = 0
+
+ // Flipbook Manual Control
+ [HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
+ _FlipbookCurrentFrame ("Current Frame", Float) = -1
+ [HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
+ [HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
+
+ // Dissolve
+ [HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
+ [Toggle(DISTORT)]_EnableDissolve ("Enable Dissolve", Float) = 0
+ [Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Int) = 1
+ _DissolveEdgeWidth ("Edge Width", Range(0, .5)) = 0.025
+ _DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
+ _DissolveEdgeColor ("Edge Color", Color) = (1, 1, 1, 1)
+ [Gradient]_DissolveEdgeGradient ("Edge Gradient", 2D) = "white" { }
+ _DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
+ _DissolveTextureColor ("Dissolved Color", Color) = (1, 1, 1, 1)
+ _DissolveToTexture ("Dissolved Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveToTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveToTextureUV ("UV", Int) = 0
+ _DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
+ _DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveNoiseTextureUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertNoise ("Invert?", Float) = 0
+ _DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_DissolveDetailNoisePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveDetailNoiseUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertDetailNoise ("Invert?", Float) = 0
+ _DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
+ _DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
+ _DissolveMask ("Dissolve Mask", 2D) = "white" { }
+ [ToggleUI]_DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
+ [HideInInspector][Vector2]_DissolveMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveMaskInvert ("Invert?", Float) = 0
+ _ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
+ [HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Int) = 2
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Int) = 2
+ [HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
+ [Enum(Local, 0, World, 1)] _DissolveP2PWorldLocal ("World/Local", Int) = 0
+ _DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
+ [Vector3]_DissolveStartPoint ("Start Point", Vector) = (0, -1, 0, 0)
+ [Vector3]_DissolveEndPoint ("End Point", Vector) = (0, 1, 0, 0)
+ [HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
+
+ // Locked in anim sldiers
+ [HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
+ _DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
+ _DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
+ _DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
+ _DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
+ _DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
+ _DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
+ _DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
+ _DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
+ _DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
+ _DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
+ [HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
+ [HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
+
+ // Panosphere
+ [HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+ [Toggle(_DETAIL_MULX2)]_PanoToggle ("Enable Panosphere", Float) = 0
+ [ToggleUI]_PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
+ _PanosphereColor ("Color", Color) = (1, 1, 1, 1)
+ _PanosphereTexture ("Texture", 2D) = "white" { }
+ _PanoMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_PanoMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _PanoMaskUV ("UV", Int) = 0
+ _PanoEmission ("Emission Strength", Range(0, 10)) = 0
+ _PanoBlend ("Alpha", Range(0, 1)) = 0
+ [Vector3]_PanospherePan ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [ToggleUI]_PanoCubeMapToggle ("Use Cubemap", Float) = 0
+ [TextureNoSO]_PanoCubeMap ("CubeMap", Cube) = "" { }
+ [HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+
+ // Glitter
+ [HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
+ [Toggle(_SUNDISK_SIMPLE)]_GlitterEnable ("Enable Glitter?", Float) = 0
+ [Enum(Angle, 0, Linear Emission, 1)]_GlitterMode ("Mode", Int) = 0
+ [Enum(Circle, 0, Square, 1)]_GlitterShape ("Shape", Int) = 0
+ [Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Int) = 0
+ [HDR]_GlitterColor ("Color", Color) = (1, 1, 1)
+ _GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
+ _GlitterColorMap ("Glitter Color Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterColorMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterColorMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_GlitterPan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterMask ("Glitter Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterMaskUV ("UV", Int) = 0
+ _GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterTextureRotation ("Rotation Speed", Float) = 0
+ _GlitterFrequency ("Glitter Density", Float) = 300.0
+ _GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1.0
+ _GlitterSpeed ("Glitter Speed", Float) = 10.0
+ _GlitterSize ("Glitter Size", Range(0, 1)) = .3
+ _GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
+ _GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
+ _GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
+ _GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
+ _GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = .8
+ _GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = .08
+ _glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
+ _GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, .1)) = .0
+
+ // Glitter Random Colors
+ [HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
+ [ToggleUI]_GlitterRandomColors ("Random Colors", Float) = 0
+ [MultiSlider]_GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8, 1, 0, 1)
+ [MultiSlider]_GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8, 1, 0, 1)
+ [ToggleUI]_GlitterRandomSize("Random Size?", Float) = 0
+ [MultiSlider]_GlitterMinMaxSize ("Size Range", Vector) = (0.1, 0.5, 0, 1)
+ [ToggleUI]_GlitterRandomRotation("Random Tex Rotation", Float) = 0
+ [HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
+ [HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
+ _TextGlyphs ("Font Array", 2D) = "black" { }
+ _TextPixelRange ("Pixel Range", Float) = 4.0
+ [Toggle(EFFECT_BUMP)]_TextEnabled ("Text?", Float) = 0
+
+ // FPS
+ [HideInInspector] m_start_TextFPS ("FPS", Float) = 0
+ [ToggleUI]_TextFPSEnabled ("FPS Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Int) = 0
+ _TextFPSColor ("Color", Color) = (1, 1, 1, 1)
+ _TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextFPSOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextFPSRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextFPSScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextFPSPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextFPS ("FPS", Float) = 0
+
+ // POSITION
+ [HideInInspector] m_start_TextPosition ("Position", Float) = 0
+ [ToggleUI]_TextPositionEnabled ("Position Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVertical ("Vertical?", Float) = 0
+ _TextPositionColor ("Color", Color) = (1, 0, 1, 1)
+ _TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextPositionOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextPositionRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextPositionScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextPositionPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextPosition ("Position", Float) = 0
+
+ // INSTANCE TIME
+ [HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
+ [ToggleUI]_TextTimeEnabled ("Time Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Int) = 0
+ _TextTimeColor ("Color", Color) = (1, 0, 1, 1)
+ _TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextTimeOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextTimeRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextTimeScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextTimePadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
+ [HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
+
+ // Mirror Rendering
+ [HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
+ [Toggle(_REQUIRE_UV2)]_EnableMirrorOptions ("Enable Mirror Options", Float) = 0
+ [Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Int) = 0
+ [ToggleUI]_EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
+ _MirrorTexture ("Mirror Tex", 2D) = "white" { }
+ [HideInInspector][Vector2]_MirrorTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MirrorTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
+
+ // Distance Fade
+ [HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
+ _MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
+ _MainFadeTexture ("Fade Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainFadeTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainFadeTextureUV ("UV", Int) = 0
+ [Vector2]_MainDistanceFade ("Distance Fade X to Y", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
+
+ // Angular Fade
+ [HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
+ [Toggle(_SUNDISK_NONE)]_EnableRandom ("Enable Angular Fade", Float) = 0
+ [Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Int) = 0
+ [Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Int) = 0
+ [Vector3]_AngleForwardDirection ("Forward Direction", Vector) = (0, 0, 1, 0)
+ _CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
+ _CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
+ _ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
+ _ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
+ _AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
+
+ // UV Distortion
+ [HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
+ [Toggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
+ _DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_DistortionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _DistortionMaskUV ("UV", Int) = 0
+ _DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" { }
+ _DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" { }
+ _DistortionStrength ("Strength1", Float) = 0.5
+ _DistortionStrength1 ("Strength2", Float) = 0.5
+ [Vector2]_DistortionSpeed ("Speed1", Vector) = (0.5, 0.5, 0, 0)
+ [Vector2]_DistortionSpeed1 ("Speed2", Vector) = (0.5, 0.5, 0, 0)
+ [HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
+
+ // Outline Options
+ [HideInInspector] m_outlineOptions ("Outlines", Float) = 0
+ [ToggleUI]_commentIfZero_EnableOutlinePass ("Enable Outlines", float) = 0
+ [Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)]_OutlineMode ("Mode", Int) = 0
+ _OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
+ _OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
+ _OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1, 0, 0, 0)
+ _OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1, 0, 0, 0)
+ [ToggleUI]_OutlineFixedSize ("Fixed Size?", Float) = 0
+ [Enum(Off, 0, Normals, 1, Mask VC.r, 2)]_OutlineUseVertexColors ("Vertex Color", Float) = 0
+ [ToggleUI]_OutlineLit ("Enable Lighting", Float) = 1
+ _LineWidth ("Width", Float) = 0
+ _LineColor ("Color", Color) = (1, 1, 1, 1)
+ _OutlineEmission ("Outline Emission", Float) = 0
+ _OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineTexturePan ("Outline Texture Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineTextureUV ("UV", Int) = 0
+ _OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineMaskUV ("UV", Int) = 0
+ _OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
+ [HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
+ [Vector2]_OutlineFadeDistance ("Outline distance Fade", Vector) = (0, 0, 0, 0)
+ [Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
+ _OutlineOffsetFactor("Offset Factor", Float) = 0
+ _OutlineOffsetUnits("Offset Units", Float) = 0
+ [HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
+
+ // Parallax Mapping
+ [HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
+ [Toggle(_PARALLAXMAP)]_ParallaxMap ("Enable Parallax FX", Float) = 0
+ [ToggleUI]_ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
+ [ToggleUI]_ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
+ [HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
+ [Vector2]_ParallaxHeightMapPan ("Pan", Vector) = (0, 0, 0, 0)
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Int) = 0
+ _ParallaxHeightMap ("Height Map", 2D) = "black" { }
+ _ParallaxHeightMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxHeightMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxHeightMapMaskUV ("UV", Int) = 0
+ _ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
+ [HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
+ [HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
+ [Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Int) = 0
+ [ToggleUI]_ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
+ _ParallaxInternalMap ("Internal Map", 2D) = "black" { }
+ _ParallaxInternalMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxInternalMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxInternalMapMaskUV ("UV", Int) = 0
+ _ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
+ _ParallaxInternalMinDepth ("Min Depth", Float) = 0
+ _ParallaxInternalMaxDepth ("Max Depth", Float) = 1
+ _ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
+ _ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
+ _ParallaxInternalMinColor ("Min Depth Color", Color) = (1, 1, 1, 1)
+ _ParallaxInternalMaxColor ("Max Depth Color", Color) = (1, 1, 1, 1)
+ [Vector2]_ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [Vector2]_ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
+ [HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
+ _ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
+ [HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
+
+ // Rendering Options
+ [HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
+ [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
+ [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
+ [Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Int) = 1
+ [Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Int) = 15
+ _OffsetFactor ("Offset Factor", Float) = 0.0
+ _OffsetUnits ("Offset Units", Float) = 0.0
+ [ToggleUI]_IgnoreFog ("Ignore Fog", Float) = 0
+ [HideInInspector] Instancing ("Instancing", Float) = 0 //add this property for instancing variants settings to be shown
+
+ // Blending Options
+ [HideInInspector] m_start_blending ("Blending", Float) = 0
+ [Enum(Thry.BlendOp)]_BlendOp ("RGB Blend Op", Int) = 0
+ [Enum(Thry.BlendOp)]_BlendOpAlpha ("Alpha Blend Op", Int) = 0
+ [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Int) = 1
+ [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Int) = 0
+ [HideInInspector] m_end_blending ("Blending", Float) = 0
+
+ // Stencils
+ [HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
+ [IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
+
+ // Outline Stencil
+ [HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
+ [IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
+
+ // Debug Options
+ [HideInInspector] m_start_debugOptions ("Debug", Float) = 0
+ [HideInInspector][Toggle(_COLOROVERLAY_ON)]_DebugEnabled ("Display Debug Info", Float) = 0
+ _VertexUnwrap ("Unwrap", Range(0, 1)) = 0
+ [Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Int) = 0
+ [Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Int) = 0
+ [Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Int) = 0
+ [HideInInspector] m_end_debugOptions ("Debug", Float) = 0
+
+ //[HideInInspector] m_animationToggles ("Animation Support Toggles", Float) = 0
+ //[HelpBox(1)] _AnimationToggleHelp ("You don't need to search through this list. You can enable animation support on any property by right clicking it", Int) = 0
+
+ // Main
+ [HideInInspector]_ColorAnimated ("Color & Alpha", Int) = 0
+ [HideInInspector]_MainTexAnimated ("Texture", Int) = 0
+ [HideInInspector]_MainTex_STAnimated ("Texture Offset/Scale", Int) = 0
+ [HideInInspector]_MainTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_MainVertexColoringAnimated ("Use Vertex Color", Int) = 0
+ [HideInInspector]_MainUseVertexColorAlphaAnimated ("Use Vertex Alpha", Int) = 0
+ [HideInInspector]_MainEmissionStrengthAnimated ("Basic Emission", Int) = 0
+ [HideInInspector]_BumpMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_BumpMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_BumpMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_BumpScaleAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_AlphaMaskAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_AlphaMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AlphaMaskUVAnimated ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector]_MainHueShiftToggleAnimated ("Toggle Hueshift", Int) = 0
+ [HideInInspector]_MainHueShiftReplaceAnimated ("Replace?", Int) = 0
+ [HideInInspector]_MainHueShiftAnimated ("Hue Shift", Int) = 0
+ [HideInInspector]_MainHueShiftSpeedAnimated ("Shift Speed", Int) = 0
+ [HideInInspector]_MainHueShiftMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MainHueShiftMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainHueShiftMaskUVAnimated ("UV", Int) = 0
+
+ // RGB Masking
+ [HideInInspector]_RGBMaskEnabledAnimated ("RGB Mask Enabled", Int) = 0
+ [HideInInspector]_RGBUseVertexColorsAnimated ("Use Vertex Colors", Int) = 0
+ [HideInInspector]_RGBBlendMultiplicativeAnimated ("Multiplicative?", Int) = 0
+ [HideInInspector]_RGBMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RGBMaskPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RedColorAnimated ("R Color", Int) = 0
+ [HideInInspector]_RedTexureAnimated ("R Texture", Int) = 0
+ [HideInInspector]_RGBRedPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBRed_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_GreenColorAnimated ("G Color", Int) = 0
+ [HideInInspector]_GreenTextureAnimated ("G Texture", Int) = 0
+ [HideInInspector]_RGBGreenPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBGreen_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_BlueColorAnimated ("B Color", Int) = 0
+ [HideInInspector]_BlueTextureAnimated ("B Texture", Int) = 0
+ [HideInInspector]_RGBBluePanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBBlue_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_RGBNormalBlendAnimated ("UV", Int) = 0
+
+ // Detail Options
+ [HideInInspector]_DetailMaskAnimated ("Detail Mask (R:Texture, G:Normal)", Int) = 0
+ [HideInInspector]_DetailMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTintAnimated ("Detail Texture Tint", Int) = 0
+ [HideInInspector]_DetailTexAnimated ("Detail Texture", Int) = 0
+ [HideInInspector]_DetailTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTexIntensityAnimated ("Detail Tex Intensity", Int) = 0
+ [HideInInspector]_DetailBrightnessAnimated ("Detail Brightness:", Int) = 0
+ [HideInInspector]_DetailNormalMapAnimated ("Detail Normal", Int) = 0
+ [HideInInspector]_DetailNormalMapScaleAnimated ("Detail Normal Intensity", Int) = 0
+ [HideInInspector]_DetailNormalMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailNormalMapUVAnimated ("UV", Int) = 0
+
+ //Vertex Manipulations
+ [HideInInspector]_VertexManipulationLocalTranslationAnimated ("Local Translation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalRotationAnimated ("Local Rotation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalScaleAnimated ("Local Scale", Int) = 0
+ [HideInInspector]_VertexManipulationWorldTranslationAnimated ("World Translation", Int) = 0
+ [HideInInspector]_VertexManipulationHeightAnimated ("Vertex Height", Int) = 0
+ [HideInInspector]_VertexManipulationHeightMaskAnimated ("Height Map", Int) = 0
+ [HideInInspector]_VertexManipulationHeightPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VertexManipulationHeightUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VertexManipulationHeightBiasAnimated ("Mask Bias", Int) = 0
+ [HideInInspector]_VertexRoundingEnabledAnimated ("Rounding Enabled", Int) = 0
+ [HideInInspector]_VertexRoundingDivisionAnimated ("Division Amount", Int) = 0
+
+ // Alpha Options
+ [HideInInspector]_AlphaModAnimated ("Alpha Mod", Int) = 0
+ [HideInInspector]_CutoffAnimated ("Alpha Cuttoff", Int) = 0
+ [HideInInspector]_DitheringEnabledAnimated ("Enable Dithering", Int) = 0
+ [HideInInspector]_DitherGradientAnimated ("Dither Gradient", Int) = 0
+ [HideInInspector]_ForceOpaqueAnimated ("Force Opaque", Int) = 0
+ [HideInInspector]_MainShadowClipModAnimated ("Shadow Clip Mod", Int) = 0
+ [HideInInspector]_AlphaToMaskAnimated ("Alpha To Coverage", Int) = 0
+ [HideInInspector]_MainAlphaToCoverageAnimated ("Sharpenned A2C", Int) = 0
+ [HideInInspector]_AlphaPremultiplyAnimated ("Alpha Premultiply", Int) = 0
+ [HideInInspector]_MainMipScaleAnimated ("Mip Level Alpha Scale", Int) = 0
+
+ // Decal Texture
+ [HideInInspector]_DecalEnabledAnimated ("Enable", Int) = 0
+ [HideInInspector]_DecalColorAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalEmissionStrengthAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalTextureAnimated ("Decal", Int) = 0
+ [HideInInspector]_DecalTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DecalMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_DecalScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_DecalPositionAnimated ("Position", Int) = 0
+ [HideInInspector]_DecalRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_DecalRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_DecalBlendAddAnimated ("Add", Int) = 0
+ [HideInInspector]_DecalBlendMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_DecalBlendReplaceAnimated ("Replace", Int) = 0
+
+ // Lighting
+ [HideInInspector]_EnableLightingAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LightingModeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingStandardSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_LightingShadingEnabledAnimated ("Enable Shading-",Int) = 0
+ [HideInInspector]_LightingRampTypeAnimated ("Ramp Type", Int) = 0
+ [HideInInspector]_ToonRampAnimated ("Lighting Ramp", Int) = 0
+ [HideInInspector]_LightingShadowMaskAnimated ("Ramp Mask", Int) = 0
+ [HideInInspector]_LightingShadowMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ShadowOffsetAnimated ("Ramp Offset", Int) = 0
+ [HideInInspector]_LightingGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingShadowColorAnimated ("Shadow Tint", Int) = 0
+ [HideInInspector]_ShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_AttenuationMultiplierAnimated ("Unity Shadows", Int) = 0
+ [HideInInspector]_LightingIgnoreAmbientColorAnimated ("Ignore Ambient Color", Int) = 0
+
+ [HideInInspector]_LightingDirectColorModeAnimated ("D Color", Int) = 0
+ [HideInInspector]_LightingIndirectColorModeAnimated ("I Color?", Int) = 0
+ [HideInInspector]_LightingMonochromaticAnimated ("Monochromatic Lighting?", Int) = 0
+ [HideInInspector]_LightingUncappedAnimated ("Uncapped Lighting", Int) = 0
+ [HideInInspector]_LightingOnlyUnityShadowsAnimated ("Only Unity Shadows", Int) = 0
+ [HideInInspector]_LightingMinLightBrightnessAnimated ("Min Brightnes", Int) = 0
+ [HideInInspector]_LightingMinShadowBrightnessRatioAnimated ("Shadow:Light min Ratio", Int) = 0
+
+ [HideInInspector]_LightingDetailShadowsEnabledAnimated ("Enabled Detail Shadows?", Int) = 0
+ [HideInInspector]_LightingDetailShadowsAnimated ("Detail Shadows", Int) = 0
+ [HideInInspector]_LightingDetailShadowsPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingDetailShadowsUVAnimated ("UV", Int) = 0
+ [HideInInspector]_LightingDetailStrengthAnimated ("Detail Strength", Int) = 0
+
+ [HideInInspector]_LightingEnableAOAnimated ("Enable AO", Int) = 0
+ [HideInInspector]_LightingAOTexAnimated ("AO Map", Int) = 0
+ [HideInInspector]_LightingAOTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingAOTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_AOStrengthAnimated ("AO Strength", Range(0, 1)) = 0
+
+ [HideInInspector]_UseShadowTextureAnimated ("EnableShadowTexture", Int) = 0
+ [HideInInspector]_LightingShadowTextureAnimated ("Shadow Texture", Int) = 0
+ [HideInInspector]_LightingShadowTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowTextureUVAnimated ("UV", Int) = 0
+
+ [HideInInspector]_LightingEnableHSLAnimated ("Enabled HSL Lighting", Int) = 0
+ [HideInInspector]_LightingHSLIntensityAnimated ("Shadow HSL Intensity", Int) = 0
+ [HideInInspector]_LightingShadowHueAnimated ("Shadow Hue Change", Int) = 0
+ [HideInInspector]_LightingShadowSaturationAnimated ("Shadow Saturation Change", Int) = 0
+ [HideInInspector]_LightingShadowLightnessAnimated ("Shadow Lightness Change", Int) = 0
+
+ // point/spot Light Settings
+ [HideInInspector]_commentIfZero_LightingAdditiveEnableAnimated ("Enable Additive", Int) = 0
+ [HideInInspector]_LightingAdditiveTypeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingAdditivePassthroughAnimated ("Point Light Passthrough", Int) = 0
+ [HideInInspector]_LightingAdditiveDetailStrengthAnimated ("Detail Shadow Strength", Int) = 0
+ [HideInInspector]_LightingAdditiveLimitIntensityAnimated ("Limit Intensity", Int) = 0
+ [HideInInspector]_LightingAdditiveMaxIntensityAnimated ("Max Intensity", Int) = 0
+
+ // Subsurface Scattering
+ [HideInInspector]_EnableSSSAnimated ("Enable Subsurface Scattering", Int) = 0
+ [HideInInspector]_SSSColorAnimated ("Subsurface Color", Int) = 0
+ [HideInInspector]_SSSThicknessMapAnimated ("Thickness Map", Int) = 0
+ [HideInInspector]_SSSThicknessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SSSThicknessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SSSThicknessModAnimated ("Thickness mod", Int) = 0
+ [HideInInspector]_SSSSCaleAnimated ("Light Strength", Int) = 0
+ [HideInInspector]_SSSPowerAnimated ("Light Spread", Int) = 0
+ [HideInInspector]_SSSDistortionAnimated ("Light Distortion", Int) = 0
+
+ // Rim Lighting
+ [HideInInspector]_EnableRimLightingAnimated ("Enable Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_RimLightingInvertAnimated ("Invert Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightColorAnimated ("Rim Color", Int) = 0
+ [HideInInspector]_RimWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimStrengthAnimated ("Rim Emission", Int) = 0
+ [HideInInspector]_RimBrightenAnimated ("Rim Color Brighten", Int) = 0
+ [HideInInspector]_RimLightColorBiasAnimated ("Rim Color Bias", Int) = 0
+ [HideInInspector]_RimTexAnimated ("Rim Texture", Int) = 0
+ [HideInInspector]_RimTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimMaskAnimated ("Rim Mask", Int) = 0
+ [HideInInspector]_RimMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimMaskUVAnimated ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector]_RimWidthNoiseTextureAnimated ("Rim Width Noise", Int) = 0
+ [HideInInspector]_RimWidthNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimWidthNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimWidthNoiseStrengthAnimated ("Intensity", Int) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector]_ShadowMixAnimated ("Shadow Mix In", Int) = 0
+ [HideInInspector]_ShadowMixThresholdAnimated ("Shadow Mix Threshold", Int) = 0
+ [HideInInspector]_ShadowMixWidthModAnimated ("Shadow Mix Width Mod", Int) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector]_EnableEnvironmentalRimAnimated ("Enable Environmental Rim", Int) = 0
+ [HideInInspector]_RimEnviroMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RimEnviroMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimEnviroMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimEnviroBlurAnimated ("Blur", Int) = 0
+ [HideInInspector]_RimEnviroWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimEnviroSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimEnviroMinBrightnessAnimated ("Min Brightness Threshold", Int) = 0
+ [HideInInspector]_RimEnviroIntensityAnimated ("Intensity", Int) = 0
+
+ // Metallics
+ [HideInInspector]_EnableMetallicAnimated ("Enable Metallics", Int) = 0
+ [HideInInspector]_CubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_SampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_MetalReflectionTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_MetallicTintMapAnimated ("Tint Map", Int) = 0
+ [HideInInspector]_MetallicTintMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicTintMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicMaskAnimated ("Metallic Mask", Int) = 0
+ [HideInInspector]_MetallicMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SmoothnessMaskAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SmoothnessMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_InvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessAnimated ("Smoothness", Int) = 0
+
+ // Clearcoat
+ [HideInInspector]_EnableClearCoatAnimated ("Enable Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatNormalToUseAnimated ("What Normal?", Int) = 0
+ [HideInInspector]_ClearCoatCubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_ClearCoatSampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_ClearCoatTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_ClearCoatMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ClearCoatMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatInvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_ClearCoatForceLightingAnimated ("Force Lighting", Int) = 0
+
+ // First Matcap
+ [HideInInspector]_MatcapEnableAnimated ("Enable Matcap", Int) = 0
+ [HideInInspector]_MatcapColorAnimated ("Color", Int) = 0
+ [HideInInspector]_MatcapAnimated ("Matcap", Int) = 0
+ [HideInInspector]_MatcapBorderAnimated ("Border", Int) = 0
+ [HideInInspector]_MatcapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MatcapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MatcapMaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_MatcapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MatcapEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_MatcapIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_MatcapLightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_MatcapReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_MatcapMultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_MatcapAddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_MatcapNormalAnimated ("Normal to use", Int) = 0
+
+ // Second Matcap
+ [HideInInspector]_Matcap2EnableAnimated ("Enable Matcap 2", Int) = 0
+ [HideInInspector]_Matcap2ColorAnimated ("Color", Int) = 0
+ [HideInInspector]_Matcap2Animated ("Matcap", Int) = 0
+ [HideInInspector]_Matcap2BorderAnimated ("Border", Int) = 0
+ [HideInInspector]_Matcap2MaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_Matcap2MaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_Matcap2MaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_Matcap2MaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_Matcap2EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_Matcap2IntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_Matcap2LightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_Matcap2ReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_Matcap2MultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_Matcap2AddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_Matcap2NormalAnimated ("Normal to use", Int) = 0
+
+ // Specular
+ [HideInInspector]_EnableSpecularAnimated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularTypeAnimated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTintAnimated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMapAnimated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothnessAnimated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMaskAnimated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFromAnimated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangentAnimated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1AlphaAnimated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2AlphaAnimated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1OffsetAnimated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2SmoothnessAnimated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMapAnimated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMapAnimated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStartAnimated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEndAnimated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColorAnimated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirroredAnimated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroAnimated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplierAnimated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroAnimated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplierAnimated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuterAnimated ("Inner/Outer Edge", Int) = 0
+
+ // Second Specular
+ [HideInInspector]_EnableSpecular1Animated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularType1Animated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormal1Animated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTint1Animated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallic1Animated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothness1Animated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMap1Animated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothness1Animated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMask1Animated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFrom1Animated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangent1Animated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1Alpha1Animated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2Alpha1Animated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1Offset1Animated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2Smoothness1Animated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMap1Animated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMap1Animated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStart1Animated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEnd1Animated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColor1Animated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirrored1Animated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1Animated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplier1Animated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1Animated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplier1Animated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuter1Animated ("Inner/Outer Edge", Int) = 0
+
+ // First Emission
+ [HideInInspector]_EnableEmissionAnimated ("Enable Emission", Int) = 0
+ [HideInInspector]_EmissionReplaceAnimated ("Replace Base Color", Int) = 0
+ [HideInInspector]_EmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMapAnimated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMapAnimated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMaskAnimated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabledAnimated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShiftAnimated ("Hue Shift", Int) = 0
+
+ // Center out emission
+ [HideInInspector]_EmissionCenterOutEnabledAnimated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeedAnimated ("Flow Speed", Int) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector]_EnableGITDEmissionAnimated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMeshAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplierAnimated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplierAnimated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLightAnimated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLightAnimated ("Max Lighting", Int) = 0
+
+ // Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_MinAnimated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_MaxAnimated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_VelocityAnimated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffsetAnimated ("Offset", Int) = 0
+
+ // Scrolling Emission
+ [HideInInspector]_ScrollingEmissionAnimated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurveAnimated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurveAnimated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColorAnimated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_DirectionAnimated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_WidthAnimated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_VelocityAnimated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_IntervalAnimated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffsetAnimated ("Offset", Int) = 0
+
+ // Second Enission
+ [HideInInspector]_EnableEmission1Animated ("Enable Emission 2", Int) = 0
+ [HideInInspector]_EmissionColor1Animated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMap1Animated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMap1Animated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMask1Animated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrength1Animated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabled1Animated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShift1Animated ("Hue Shift", Int) = 0
+
+ // Second Center Out Enission
+ [HideInInspector]_EmissionCenterOutEnabled1Animated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeed1Animated ("Flow Speed", Int) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector]_EnableGITDEmission1Animated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMesh1Animated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplier1Animated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplier1Animated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLight1Animated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLight1Animated ("Max Lighting", Int) = 0
+
+ // Second Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_Min1Animated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_Max1Animated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_Velocity1Animated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffset1Animated ("Offset", Int) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector]_ScrollingEmission1Animated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurve1Animated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurve1Animated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColor1Animated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_Direction1Animated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_Width1Animated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_Velocity1Animated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_Interval1Animated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffset1Animated ("Offset", Int) = 0
+
+ // Flipbook
+ [HideInInspector]_EnableFlipbookAnimated ("Enable Flipbook", Int) = 0
+ [HideInInspector]_FlipbookAlphaControlsFinalAlphaAnimated ("Flipbook Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookIntensityControlsAlphaAnimated ("Intensity Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookColorReplacesAnimated ("Color Replaces Flipbook", Int) = 0
+ [HideInInspector]_FlipbookTexArrayAnimated ("Texture Array", Int) = 0
+ [HideInInspector]_FlipbookTexArrayUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookTexArrayPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_FlipbookMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookColorAnimated ("Color & alpha", Int) = 0
+ [HideInInspector]_FlipbookTotalFramesAnimated ("Total Frames", Int) = 0
+ [HideInInspector]_FlipbookFPSAnimated ("FPS", Int) = 0
+ [HideInInspector]_FlipbookScaleOffsetAnimated ("Scale | Offset", Int) = 0
+ [HideInInspector]_FlipbookTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_FlipbookEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_FlipbookRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_FlipbookRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_FlipbookReplaceAnimated ("Replace", Int) = 0
+ [HideInInspector]_FlipbookMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_FlipbookAddAnimated ("Add", Int) = 0
+ [HideInInspector]_FlipbookCurrentFrameAnimated ("Current Frame", Int) = 0
+
+ // Dissolve
+ [HideInInspector]_EnableDissolveAnimated ("Enable Dissolve", Int) = 0
+ [HideInInspector]_DissolveTypeAnimated ("Dissolve Type", Int) = 0
+ [HideInInspector]_DissolveEdgeWidthAnimated ("Edge Width", Int) = 0
+ [HideInInspector]_DissolveEdgeHardnessAnimated ("Edge Hardness", Int) = 0
+ [HideInInspector]_DissolveEdgeColorAnimated ("Edge Color", Int) = 0
+ [HideInInspector]_DissolveEdgeGradientAnimated ("Edge Gradient", Int) = 0
+ [HideInInspector]_DissolveEdgeEmissionAnimated ("Edge Emission", Int) = 0
+ [HideInInspector]_DissolveTextureColorAnimated ("Dissolved Color", Int) = 0
+ [HideInInspector]_DissolveToTextureAnimated ("Dissolved Texture", Int) = 0
+ [HideInInspector]_DissolveToTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveToTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveToEmissionStrengthAnimated ("Dissolved Emission Strength", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureAnimated ("Dissolve Noise", Int) = 0
+ [HideInInspector]_DissolveNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseAnimated ("Dissolve Detail Noise", Int) = 0
+ [HideInInspector]_DissolveDetailNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertDetailNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailStrengthAnimated ("Dissolve Detail Strength", Int) = 0
+ [HideInInspector]_DissolveAlphaAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveUseVertexColorsAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveMaskAnimated ("Dissolve Mask", Int) = 0
+ [HideInInspector]_DissolveMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveMaskInvertAnimated ("Invert?", Int) = 0
+ [HideInInspector]_ContinuousDissolveAnimated ("Continuous Dissolve Speed", Int) = 0
+ [HideInInspector]_DissolveEmissionSideAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_DissolveEmission1SideAnimated ("Emission 2", Int) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector]_DissolveP2PWorldLocalAnimated ("World/Local", Int) = 0
+ [HideInInspector]_DissolveP2PEdgeLengthAnimated ("Edge Length", Int) = 0
+ [HideInInspector]_DissolveStartPointAnimated ("Start Point", Int) = 0
+ [HideInInspector]_DissolveEndPointAnimated ("End Point", Int) = 0
+
+ [HideInInspector]_DissolveAlpha0Animated ("_DissolveAlpha0", Int) = 0
+ [HideInInspector]_DissolveAlpha1Animated ("_DissolveAlpha1", Int) = 0
+ [HideInInspector]_DissolveAlpha2Animated ("_DissolveAlpha2", Int) = 0
+ [HideInInspector]_DissolveAlpha3Animated ("_DissolveAlpha3", Int) = 0
+ [HideInInspector]_DissolveAlpha4Animated ("_DissolveAlpha4", Int) = 0
+ [HideInInspector]_DissolveAlpha5Animated ("_DissolveAlpha5", Int) = 0
+ [HideInInspector]_DissolveAlpha6Animated ("_DissolveAlpha6", Int) = 0
+ [HideInInspector]_DissolveAlpha7Animated ("_DissolveAlpha7", Int) = 0
+ [HideInInspector]_DissolveAlpha8Animated ("_DissolveAlpha8", Int) = 0
+ [HideInInspector]_DissolveAlpha9Animated ("_DissolveAlpha9", Int) = 0
+
+ // Panosphere
+ [HideInInspector]_PanoToggleAnimated ("Enable Panosphere", Int) = 0
+ [HideInInspector]_PanoInfiniteStereoToggleAnimated ("Infinite Stereo", Int) = 0
+ [HideInInspector]_PanosphereColorAnimated ("Color", Int) = 0
+ [HideInInspector]_PanosphereTextureAnimated ("Texture", Int) = 0
+ [HideInInspector]_PanoMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_PanoMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_PanoMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_PanoEmissionAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_PanoBlendAnimated ("Alpha", Int) = 0
+ [HideInInspector]_PanospherePanAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_PanoCubeMapToggleAnimated ("Use Cubemap", Int) = 0
+ [HideInInspector]_PanoCubeMapAnimated ("CubeMap", Int) = 0
+
+ // Glitter
+ [HideInInspector]_GlitterEnableAnimated ("Enable Glitter?", Int) = 0
+ [HideInInspector]_GlitterModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterShapeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterBlendTypeAnimated ("Blend Mode", Int) = 0
+ [HideInInspector]_GlitterColorAnimated ("Color", Int) = 0
+ [HideInInspector]_GlitterUseSurfaceColorAnimated ("Use Surface Color", Int) = 0
+ [HideInInspector]_GlitterColorMapAnimated ("Glitter Color Map", Int) = 0
+ [HideInInspector]_GlitterColorMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterColorMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterTextureAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterRandomRotationAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterFrequencyAnimated ("Glitter Density", Int) = 0
+ [HideInInspector]_GlitterJitterAnimated ("Glitter Jitter", Int) = 0
+ [HideInInspector]_GlitterSpeedAnimated ("Glitter Wobble Speed", Int) = 0
+ [HideInInspector]_GlitterSizeAnimated ("Glitter Size", Int) = 0
+ [HideInInspector]_GlitterContrastAnimated ("Glitter Contrast", Int) = 0
+ [HideInInspector]_GlitterAngleRangeAnimated ("Glitter Angle Range", Int) = 0
+ [HideInInspector]_GlitterMinBrightnessAnimated ("Glitter Min Brightness", Int) = 0
+ [HideInInspector]_GlitterBrightnessAnimated ("Glitter Max Brightness", Int) = 0
+ [HideInInspector]_GlitterBiasAnimated ("Glitter Bias", Int) = 0
+ [HideInInspector]_GlitterCenterSizeAnimated ("center size", Int) = 0
+ [HideInInspector]_GlitterTextureRotationAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_glitterFrequencyLinearEmissiveAnimated ("Frequency", Int) = 0
+ [HideInInspector]_GlitterJaggyFixAnimated ("Jaggy Fix", Int) = 0
+
+ // Glitter Random Colors
+ [HideInInspector]_GlitterRandomColorsAnimated ("Enable", Int) = 0
+ [HideInInspector]_GlitterMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_GlitterMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+ [HideInInspector]_GlitterRandomSizeAnimated ("random Size Toggle", Int) = 0
+ [HideInInspector]_GlitterMinMaxSizeAnimated ("Min Max Random Size", Int) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector]_TextGlyphsAnimated ("Font Array", Int) = 0
+ [HideInInspector]_TextPixelRangeAnimated ("Pixel Range", Int) = 0
+ [HideInInspector]_TextEnabledAnimated ("Text?", Int) = 0
+
+ // FPS
+ [HideInInspector]_TextFPSEnabledAnimated ("FPS Text?", Int) = 0
+ [HideInInspector]_TextFPSUVAnimated ("FPS UV", Int) = 0
+ [HideInInspector]_TextFPSColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextFPSEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextFPSOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextFPSRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextFPSScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextFPSPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // POSITION
+ [HideInInspector]_TextPositionEnabledAnimated ("Position Text?", Int) = 0
+ [HideInInspector]_TextPositionUVAnimated ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVerticalAnimated ("Vertical?", Int) = 0
+ [HideInInspector]_TextPositionColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextPositionEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextPositionOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextPositionRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextPositionScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextPositionPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // INSTANCE TIME
+ [HideInInspector]_TextTimeEnabledAnimated ("Time Text?", Int) = 0
+ [HideInInspector]_TextTimeUVAnimated ("Time UV", Int) = 0
+ [HideInInspector]_TextTimeColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextTimeEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextTimeOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextTimeRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextTimeScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextTimePaddingAnimated ("Padding Reduction", Int) = 0
+
+ // Mirror Rendering
+ [HideInInspector]_EnableMirrorOptionsAnimated ("Enable Mirror Options", Int) = 0
+ [HideInInspector]_MirrorAnimated ("Show in mirror", Int) = 0
+ [HideInInspector]_EnableMirrorTextureAnimated ("Enable Mirror Texture", Int) = 0
+ [HideInInspector]_MirrorTextureAnimated ("Mirror Tex", Int) = 0
+ [HideInInspector]_MirrorTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MirrorTextureUVAnimated ("UV", Int) = 0
+
+ // Distance Fade
+ [HideInInspector]_MainMinAlphaAnimated ("Minimum Alpha", Int) = 0
+ [HideInInspector]_MainFadeTextureAnimated ("Fade Mask", Int) = 0
+ [HideInInspector]_MainFadeTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainFadeTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MainDistanceFadeAnimated ("Distance Fade X to Y", Int) = 0
+
+ // Angular Fade
+ [HideInInspector]_EnableRandomAnimated ("Enable Angular Fade", Int) = 0
+ [HideInInspector]_AngleTypeAnimated ("Angle Type", Int) = 0
+ [HideInInspector]_AngleCompareToAnimated ("Model or Vert Positon", Int) = 0
+ [HideInInspector]_AngleForwardDirectionAnimated ("Forward Direction", Int) = 0
+ [HideInInspector]_CameraAngleMinAnimated ("Camera Angle Min", Int) = 0
+ [HideInInspector]_CameraAngleMaxAnimated ("Camera Angle Max", Int) = 0
+ [HideInInspector]_ModelAngleMinAnimated ("Model Angle Min", Int) = 0
+ [HideInInspector]_ModelAngleMaxAnimated ("Model Angle Max", Int) = 0
+ [HideInInspector]_AngleMinAlphaAnimated ("Min Alpha", Int) = 0
+
+ // UV Distortion
+ [HideInInspector]_EnableDistortionAnimated ("Enabled?", Int) = 0
+ [HideInInspector]_DistortionMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DistortionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DistortionMaskUVAnimated ("Distortion Mask UV", Int) = 0
+ [HideInInspector]_DistortionFlowTextureAnimated ("Distortion Texture 1", Int) = 0
+ [HideInInspector]_DistortionFlowTexture1Animated ("Distortion Texture 2", Int) = 0
+ [HideInInspector]_DistortionStrengthAnimated ("Strength1", Int) = 0
+ [HideInInspector]_DistortionStrength1Animated ("Strength2", Int) = 0
+ [HideInInspector]_DistortionSpeedAnimated ("Speed1", Int) = 0
+ [HideInInspector]_DistortionSpeed1Animated ("Speed2", Int) = 0
+
+ // Video Options
+ [HideInInspector]_EnableVideoAnimated ("Enable Video", Int) = 0
+ [HideInInspector]_VideoUVNumberAnimated ("Screen UV#", Int) = 0
+ [HideInInspector]_VideoTypeAnimated ("Screen Type", Int) = 0
+ [HideInInspector]_VideoBacklightAnimated ("Brightness", Int) = 0
+ [HideInInspector]_VideoPixelTextureAnimated ("Pixel Texture", Int) = 0
+ [HideInInspector]_VideoResolutionAnimated ("Resolution", Int) = 0
+ [HideInInspector]_VideoMaskTextureAnimated ("Mask", Int) = 0
+ [HideInInspector]_VideoMaskPanningAnimated ("Mask Pan Speed", Int) = 0
+ [HideInInspector]_VideoEnableVideoPlayerAnimated ("Enable Video Player", Int) = 0
+ [HideInInspector]_VideoPixelateToResolutionAnimated ("Pixelate To Resolution", Int) = 0
+ [HideInInspector]_VideoRepeatVideoTextureAnimated ("Clamp To UV", Int) = 0
+ [HideInInspector]_VideoPanningAnimated ("Panning Speed", Int) = 0
+ [HideInInspector]_VideoTilingAnimated ("Tiling", Int) = 0
+ [HideInInspector]_VideoOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_VideoSaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_VideoContrastAnimated ("Contrast boost", Int) = 0
+ [HideInInspector]_VideoEnableDebugAnimated ("Enable Debug", Int) = 0
+ [HideInInspector]_VideoDebugTextureAnimated ("Video Debug Tex", Int) = 0
+ [HideInInspector]_VideoCRTRefreshRateAnimated ("Refresh Rate", Int) = 0
+ [HideInInspector]_VideoCRTPixelEnergizedTimeAnimated ("Pixel Fade Time", Int) = 0
+ [HideInInspector]_VideoGameboyRampAnimated ("Color Ramp", Int) = 0
+
+ // TouchFX
+ [HideInInspector]_EnableBulgeAnimated ("Bulge", Int) = 0
+ [HideInInspector]_BulgeMaskAnimated ("Bulge Mask", Int) = 0
+ [HideInInspector]_BuldgeFadeLengthAnimated ("Touch Distance", Int) = 0
+ [HideInInspector]_BuldgeHeightAnimated ("Bulge Height", Int) = 0
+
+ [HideInInspector]_EnableTouchGlowAnimated ("Enable Touch Glow", Int) = 0
+ [HideInInspector]_DepthGradientTextureUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientBlendAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGlowColorAnimated ("Depth Glow Color", Int) = 0
+ [HideInInspector]_DepthGradientAnimated ("Depth Gradient", Int) = 0
+ [HideInInspector]_DepthMaskAnimated ("Depth Mask", Int) = 0
+ [HideInInspector]_DepthGlowEmissionAnimated ("Depth Glow Emission", Int) = 0
+ [HideInInspector]_FadeLengthAnimated ("Fade Length", Int) = 0
+ [HideInInspector]_DepthAlphaMinAnimated ("Alpha Min", Int) = 0
+ [HideInInspector]_DepthAlphaMaxAnimated ("Alpha Max", Int) = 0
+
+ // Hologram
+ [HideInInspector]_EnableHoloAnimated ("Enable Hologram Alpha", Int) = 0
+ [HideInInspector]_HoloAlphaMapAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_HoloCoordinateSpaceAnimated ("Coordinate Space", Int) = 0
+ [HideInInspector]_HoloDirectionAnimated ("Scroll Direction", Int) = 0
+ [HideInInspector]_HoloLineDensityAnimated ("Line Density", Int) = 0
+ [HideInInspector]_HoloScrollSpeedAnimated ("Scroll Speed", Int) = 0
+ [HideInInspector]_HoloFresnelAlphaAnimated ("Intensity", Int) = 0
+ [HideInInspector]_HoloRimSharpnessAnimated ("Sharpness", Int) = 0
+ [HideInInspector]_HoloRimWidthAnimated ("Width", Int) = 0
+
+ // GrabPass
+ [HideInInspector]_GrabPassUseAlphaAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabPassBlendFactorAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabSrcBlendAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabDstBlendAnimated ("Destination Blend", Int) = 0
+ [HideInInspector]_RefractionEnabledAnimated ("Enable Refraction,", Int) = 0
+ [HideInInspector]_RefractionIndexAnimated ("Refraction", Int) = 0
+ [HideInInspector]_RefractionChromaticAberattionAnimated ("Chromatic Aberration", Int) = 0
+ [HideInInspector]_EnableBlurAnimated ("Enable Blur", Int) = 0
+ [HideInInspector]_GrabBlurDistanceAnimated ("Blur Distance", Int) = 0
+ [HideInInspector]_GrabBlurQualityAnimated ("Blur Quality", Int) = 0
+ [HideInInspector]_GrabBlurDirectionsAnimated ("Blur Direction", Int) = 0
+
+ // Iridescence
+ [HideInInspector]_EnableIridescenceAnimated ("Enable Iridescence", Int) = 0
+ [HideInInspector]_IridescenceRampAnimated ("Ramp", Int) = 0
+ [HideInInspector]_IridescenceNormalToggleAnimated ("Custom Normals?", Int) = 0
+ [HideInInspector]_IridescenceNormalMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_IridescenceMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_IridescenceNormalIntensityAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_IridescenceNormalUVAnimated ("Normal UV", Int) = 0
+ [HideInInspector]_IridescenceMaskUVAnimated ("Mask UV", Int) = 0
+ [HideInInspector]_IridescenceNormalSelectionAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_IridescenceIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_IridescenceAddBlendAnimated ("Blend Add", Int) = 0
+ [HideInInspector]_IridescenceReplaceBlendAnimated ("Blend Replace", Int) = 0
+ [HideInInspector]_IridescenceMultiplyBlendAnimated ("Blend Multiply", Int) = 0
+ [HideInInspector]_IridescenceEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_IridescenceTimeAnimated ("When To Run", Int) = 0
+
+ // Vertex Glitching
+ [HideInInspector]_EnableVertexGlitchAnimated ("Enable Vertex Glitching", Int) = 0
+ [HideInInspector]_VertexGlitchFrequencyAnimated ("Glitch Interval", Int) = 0
+ [HideInInspector]_VertexGlitchThresholdAnimated ("Glitch Threshold", Int) = 0
+ [HideInInspector]_VertexGlitchStrengthAnimated ("Glitch Strength", Int) = 0
+
+ // Spawn In Effects
+ [HideInInspector]_EnableScifiSpawnInAnimated ("Enable Sci Fi Spawn", Int) = 0
+ [HideInInspector]_SpawnInNoiseAnimated ("Spawn Noise", Int) = 0
+ [HideInInspector]_SpawnInNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_SpawnInAlphaAnimated ("Spawn Alpha", Int) = 0
+ [HideInInspector]_SpawnInGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_SpawnInGradientFinishAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_SpawnInEmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_SpawnInEmissionOffsetAnimated ("Emission Width", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetAnimated ("Vertex Offset Speed", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetOffsetAnimated ("vert width", Int) = 0
+
+ // Voronoi
+ [HideInInspector]_VoronoiTypeAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiSpaceAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiBlendAnimated ("Blend", Int) = 0
+ [HideInInspector]_EnableVoronoiAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiEffectsMaterialAlphaAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_VoronoiMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseAnimated ("Edge Noise", Int) = 0
+ [HideInInspector]_VoronoiNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_VoronoiColor0Animated ("Color 0", Int) = 0
+ [HideInInspector]_VoronoiEmission0Animated ("Emission 0", Int) = 0
+ [HideInInspector]_VoronoiColor1Animated ("Color 1", Int) = 0
+ [HideInInspector]_VoronoiEmission1Animated ("Emission 1", Int) = 0
+ [HideInInspector]_VoronoiGradientAnimated ("Gradient", Int) = 0
+ [HideInInspector]_VoronoiScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_VoronoiSpeedAnimated ("Speed", Int) = 0
+ [HideInInspector]_VoronoiEnableRandomCellColorAnimated ("Rando Cell Col", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+
+ // Blacklight mask
+ [HideInInspector]_BlackLightMaskEnabledAnimated ("Black Light Mask Enabled", Int) = 0
+ [HideInInspector]_BlackLightMaskKeysAnimated ("Mask Keys", Int) = 0
+ [HideInInspector]_BlackLightMaskStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_BlackLightMaskEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_BlackLightMaskDebugAnimated ("Visualize", Int) = 0
+ [HideInInspector]_BlackLightMaskMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_BlackLightMaskClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcapAnimated ("Matcap 1", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcap2Animated ("Matcap 2", Int) = 0
+ [HideInInspector]_BlackLightMaskEmissionAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_BlackLightMaskEmission2Animated ("Emission 2", Int) = 0
+ [HideInInspector]_BlackLightMaskFlipbookAnimated ("Flipbook", Int) = 0
+ [HideInInspector]_BlackLightMaskDissolveAnimated ("Dissolve", Int) = 0
+ [HideInInspector]_BlackLightMaskPanosphereAnimated ("Panosphere", Int) = 0
+ [HideInInspector]_BlackLightMaskGlitterAnimated ("Glitter", Int) = 0
+ [HideInInspector]_BlackLightMaskIridescenceAnimated ("Iridescence", Int) = 0
+
+ // Outline Options
+ [HideInInspector]_OutlineModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_OutlineFixedSizeAnimated ("Fixed Size?", Int) = 0
+ [HideInInspector]_OutlineUseVertexColorsAnimated ("V Color", Int) = 0
+ [HideInInspector]_OutlineLitAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LineWidthAnimated ("Width", Int) = 0
+ [HideInInspector]_LineColorAnimated ("Color", Int) = 0
+ [HideInInspector]_OutlineTintMixAnimated ("Tint Mix", Int) = 0
+ [HideInInspector]_OutlineEmissionAnimated ("Outline Emission", Int) = 0
+ [HideInInspector]_OutlineTextureAnimated ("Outline Texture", Int) = 0
+ [HideInInspector]_OutlineMaskAnimated ("Outline Mask", Int) = 0
+ [HideInInspector]_OutlineTexturePanAnimated ("Outline Texture Pan", Int) = 0
+ [HideInInspector]_OutlineShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_OutlineRimLightBlendAnimated ("Rim Light Blend", Int) = 0
+ [HideInInspector]_OutlinePersonaDirectionAnimated ("directional Offset XY", Int) = 0
+ [HideInInspector]_OutlineDropShadowOffsetAnimated ("Drop Direction XY", Int) = 0
+ [HideInInspector]_OutlineFadeDistanceAnimated ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetFactor ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetUnits ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineCullAnimated ("Cull", Int) = 0
+
+ // Parallax Mapping
+ [HideInInspector]_ParallaxMapAnimated ("Enable Parallax FX", Int) = 0
+ [HideInInspector]_ParallaxHeightMapEnabledAnimated ("Enable Parallax Height", Int) = 0
+ [HideInInspector]_ParallaxInternalMapEnabledAnimated ("Enable Parallax Internal", Int) = 0
+ [HideInInspector]_ParallaxHeightMapPanAnimated ("Pan", Int) = 0
+ [HideInInspector]_ParallaxUVAnimated ("Parallax UV", Int) = 0
+ [HideInInspector]_ParallaxHeightMapAnimated ("Height Map", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxStrengthAnimated ("Parallax Strength", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightmapModeAnimated ("Parallax Mode", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightFromAlphaAnimated ("HeightFromAlpha", Int) = 0
+ [HideInInspector]_ParallaxInternalMapAnimated ("Internal Map", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxInternalIterationsAnimated ("Parallax Internal Iterations", Int) = 0
+ [HideInInspector]_ParallaxInternalMinDepthAnimated ("Min Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxDepthAnimated ("Max Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMinFadeAnimated ("Min Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxFadeAnimated ("Max Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMinColorAnimated ("Min Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxColorAnimated ("Max Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalPanSpeedAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_ParallaxInternalPanDepthSpeedAnimated ("Per Level Speed Multiplier", Int) = 0
+ [HideInInspector]_ParallaxBiasAnimated ("Parallax Bias (0.42)", Int) = 0
+
+ // Rendering Options
+ [HideInInspector]_CullAnimated ("Cull", Int) = 0
+ [HideInInspector]_ZTestAnimated ("ZTest", Int) = 0
+ [HideInInspector]_ZWriteAnimated ("ZWrite", Int) = 0
+ [HideInInspector]_ColorMaskAnimated ("Color Mask", Int) = 0
+ [HideInInspector]_OffsetFactorAnimated ("Offset Factor", Int) = 0
+ [HideInInspector]_OffsetUnitsAnimated ("Offset Units", Int) = 0
+ [HideInInspector]_IgnoreFogAnimated ("Ignore Fog", Int) = 0
+
+ // Blending Options
+ [HideInInspector]_BlendOpAnimated ("RGB Blend Op", Int) = 0
+ [HideInInspector]_BlendOpAlphaAnimated ("Alpha Blend Op", Int) = 0
+ [HideInInspector]_SrcBlendAnimated ("RGB Source Blend", Int) = 0
+ [HideInInspector]_DstBlendAnimated ("RGB Destination Blend", Int) = 0
+
+ // Stencils
+ [HideInInspector]_StencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_StencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_StencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_StencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_StencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_StencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_StencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Outline Stencil
+ [HideInInspector]_OutlineStencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_OutlineStencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_OutlineStencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_OutlineStencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_OutlineStencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Debug Options
+ [HideInInspector]_VertexUnwrapAnimated ("Unwrap", Range(0, 1)) = 0
+ [HideInInspector]_DebugMeshDataAnimated ("Mesh Data", Int) = 0
+ [HideInInspector]_DebugLightingDataAnimated ("Lighting Data", Int) = 0
+ [HideInInspector]_DebugCameraDataAnimated ("Camera Data", Int) = 0
+ }
+
+
+ //originalEditorCustomEditor "PoiToon"
+ CustomEditor "Thry.ShaderEditor"
+ SubShader
+ {
+ Tags { "RenderType" = "Opaque" "Queue" = "Geometry" }
+
+// //EnableOutlinePass
+// Pass
+// {
+// Name "Outline"
+// Tags { "LightMode" = "ForwardBase" }
+// Stencil
+// {
+// Ref [_OutlineStencilRef]
+// ReadMask [_OutlineStencilReadMask]
+// WriteMask [_OutlineStencilWriteMask]
+// Comp [_OutlineStencilCompareFunction]
+// Pass [_OutlineStencilPassOp]
+// Fail [_OutlineStencilFailOp]
+// ZFail [_OutlineStencilZFailOp]
+// }
+// ZTest [_ZTest]
+// ColorMask [_ColorMask]
+// Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
+// BlendOp [_BlendOp], [_BlendOpAlpha]
+// Blend [_SrcBlend] [_DstBlend]
+// ZWrite [_ZWrite]
+// AlphaToMask [_AlphaToMask]
+// Cull [_OutlineCull]
+// CGPROGRAM
+//
+// #pragma target 5.0
+// #define FORWARD_BASE_PASS
+// #define OUTLINE
+// float _Mode;
+// // patreon Additive
+// // Black Light Mask
+//// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+// // voronoi
+//// #pragma shader_feature CHROMATIC_ABERRATION
+// // UV Distortion
+//// #pragma shader_feature USER_LUT
+// // Vertex Offsets
+//// #pragma shader_feature AUTO_EXPOSURE
+// // Mirror
+//// #pragma shader_feature _REQUIRE_UV2
+// // Random
+//// #pragma shader_feature _SUNDISK_NONE
+// // Dissolve
+//// #pragma shader_feature DISTORT
+// // Lighting
+//// #pragma shader_feature VIGNETTE_MASKED
+// #pragma multi_compile_fwdbase
+// #pragma fragmentoption ARB_precision_hint_fastest
+// #pragma multi_compile_fog
+// #pragma multi_compile_instancing
+// #pragma vertex vert
+// #pragma fragment frag
+// #include "../Includes/CGI_PoiPassOutline.cginc"
+// ENDCG
+//
+// }
+ //EnableOutlinePass
+
+ Pass
+ {
+ Name "MainPass"
+ Tags { "LightMode" = "ForwardBase" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ AlphaToMask [_AlphaToMask]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend [_SrcBlend] [_DstBlend]
+
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_BASE_PASS
+ float _Mode;
+ // Base Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ #pragma multi_compile _ VERTEXLIGHT_ON
+ // patreon Base
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Grab Pass Blur
+// #pragma shader_feature CHROMATIC_ABERRATION_LOW
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Touch Color
+// #pragma shader_feature GRAIN
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdbase
+ #pragma fragmentoption ARB_precision_hint_fastest
+ #pragma multi_compile_fog
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+
+ //LightingAdditiveEnable
+ Pass
+ {
+ Name "ForwardAddPass"
+ Tags { "LightMode" = "ForwardAdd" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ ZWrite Off
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend One One
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_ADD_PASS
+ float _Mode;
+ // Add Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ // patreon Additive
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+// #pragma shader_feature _PARALLAX_MAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Disable Directionals
+// #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdadd_fullshadows
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ //LightingAdditiveEnable
+
+ //LightingCastShadows
+ Pass
+ {
+ Name "ShadowCasterPass"
+ Tags { "LightMode" = "ShadowCaster" }
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ AlphaToMask Off
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_SHADOW
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Dissolve
+// #pragma shader_feature DISTORT
+ #pragma multi_compile_instancing
+ #pragma vertex vertShadowCaster
+ #pragma fragment fragShadowCaster
+ #include "../Includes/CGI_PoiPassShadow.cginc"
+ ENDCG
+
+ }
+ //LightingCastShadows
+
+ Pass
+ {
+ Tags { "LightMode" = "Meta" }
+ Cull Off
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_META_PASS
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
new file mode 100644
index 00000000..f6cb8aad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Cloth-163ee521/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ee778f5331edea44baeddcfb5d8669ae
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e.meta
new file mode 100644
index 00000000..6689fed9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: cbe892d0d8d557342a1cf2a544c4e136
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets.meta
new file mode 100644
index 00000000..99cdfc1c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 3df867caa2540ca4b8b8cee93ddf4127
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders.meta
new file mode 100644
index 00000000..bedc4fe4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7adbc24e8ef472445a4638e8f9009902
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders.meta
new file mode 100644
index 00000000..1f8f0240
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: af032078b7f4ffb498e2bdd7d5b4cb0b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon.meta
new file mode 100644
index 00000000..e0f1fe9e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 915da2f88f43c334aa95a49b0eb3ed5d
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
new file mode 100644
index 00000000..d337f57e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 775a84daff9c5b8458e78675a87fce86
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
new file mode 100644
index 00000000..44c6fbc2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_ALPHA_TO_COVERAGE
+ #define POI_ALPHA_TO_COVERAGE
+
+ half _MainMipScale;
+ float _MainAlphaToCoverage;
+
+ float CalcMipLevel(float2 texture_coord)
+ {
+ float2 dx = ddx(texture_coord);
+ float2 dy = ddy(texture_coord);
+ float delta_max_sqr = max(dot(dx, dx), dot(dy, dy));
+
+ return 0.5 * log2(delta_max_sqr);
+ }
+
+ void ApplyAlphaToCoverage(inout float4 finalColor)
+ {
+ // Force Model Opacity to 1 if desired
+
+ if (float(0) == 1)
+ {
+
+ if(float(0))
+ {
+ // rescale alpha by mip level
+ finalColor.a *= 1 + max(0, CalcMipLevel(poiMesh.uv[0] * float4(0.0009765625,0.0009765625,1024,1024).zw)) * float(0.25);
+ // rescale alpha by partial derivative
+ finalColor.a = (finalColor.a - float(0.5)) / max(fwidth(finalColor.a), 0.0001) + float(0.5);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
new file mode 100644
index 00000000..73ab8e3f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 28200c5355bf1c64086047606caf3b77
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
new file mode 100644
index 00000000..e529136f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_BACKFACE
+ #define POI_BACKFACE
+
+ float _BackFaceEnabled;
+ float _BackFaceTextureUV;
+ float _BackFaceDetailIntensity;
+ float _BackFaceEmissionStrength;
+ float2 _BackFacePanning;
+ float _BackFaceHueShift;
+ float4 _BackFaceColor;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
+
+ float3 BackFaceColor;
+ void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
+ {
+ backFaceEmission = 0;
+ BackFaceColor = 0;
+
+ if (float(0))
+ {
+ if(!poiMesh.isFrontFace)
+ {
+ albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ backFaceDetailIntensity = float(1);
+ BackFaceColor = albedo.rgb;
+ mixedHueShift = float(0);
+ backFaceEmission = BackFaceColor * float(0);
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
new file mode 100644
index 00000000..9465e0b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7780c4b50f936824e9a26bd25fff0bc0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
new file mode 100644
index 00000000..750364ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
@@ -0,0 +1,54 @@
+#ifndef POI_BLACKLIGHT
+ #define POI_BLACKLIGHT
+
+ float4 _BlackLightMaskStart;
+ float4 _BlackLightMaskEnd;
+ float4 _BlackLightMaskKeys;
+ float _BlackLightMaskDebug;
+ float _BlackLightMaskDissolve;
+ float _BlackLightMaskMetallic;
+ float _BlackLightMaskClearCoat;
+ float _BlackLightMaskMatcap;
+ float _BlackLightMaskMatcap2;
+ float _BlackLightMaskEmission;
+ float _BlackLightMaskEmission2;
+ float _BlackLightMaskFlipbook;
+ float _BlackLightMaskPanosphere;
+ float _BlackLightMaskIridescence;
+
+ half _BlackLightMaskGlitter;
+
+ half4 blackLightMask;
+
+ void createBlackLightMask()
+ {
+ blackLightMask = 0;
+ #ifdef VERTEXLIGHT_ON
+
+ for (int lightIndex = 0; lightIndex < 4; lightIndex ++)
+ {
+ float3 lightPos = float3(unity_4LightPosX0[lightIndex], unity_4LightPosY0[lightIndex], unity_4LightPosZ0[lightIndex]);
+ if (!distance(unity_LightColor[lightIndex].rgb, float3(0, 0, 0)))
+ {
+ for (int maskIndex = 0; maskIndex < 4; maskIndex ++)
+ {
+ float4 comparison = _BlackLightMaskKeys;
+ if(unity_LightColor[lightIndex].a == comparison[maskIndex])
+ {
+ blackLightMask[maskIndex] = max(blackLightMask[maskIndex], smoothstep(_BlackLightMaskEnd[maskIndex], _BlackLightMaskStart[maskIndex], distance(poiMesh.worldPos, lightPos)));
+ }
+ }
+ }
+ }
+ #endif
+ }
+#endif
+
+/*
+#ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskDissolve != 4)
+ {
+ blackLightMask[mask];
+ }
+#endif
+*/
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
new file mode 100644
index 00000000..80b09ff1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cca553df5d452734eb8b0c6747822d11
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
new file mode 100644
index 00000000..f87ae6dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
@@ -0,0 +1,39 @@
+#ifndef POI_BLENDING
+ #define POI_BLENDING
+
+ /*
+ 0: Zero float4(0.0, 0.0, 0.0, 0.0),
+ 1: One float4(1.0, 1.0, 1.0, 1.0),
+ 2: DstColor destinationColor,
+ 3: SrcColor sourceColor,
+ 4: OneMinusDstColor float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ 5: SrcAlpha sourceColor.aaaa,
+ 6: OneMinusSrcColor float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ 7: DstAlpha destinationColor.aaaa,
+ 8: OneMinusDstAlpha float4(1.0, 1.0, 1.0, 1.0) - destinationColor.,
+ 9: SrcAlphaSaturate saturate(sourceColor.aaaa),
+ 10: OneMinusSrcAlpha float4(1.0, 1.0, 1.0, 1.0) - sourceColor.aaaa,
+ */
+
+ float4 poiBlend(const float sourceFactor, const float4 sourceColor, const float destinationFactor, const float4 destinationColor, const float4 blendFactor)
+ {
+ float4 sA = 1-blendFactor;
+ const float4 blendData[11] = {
+ float4(0.0, 0.0, 0.0, 0.0),
+ float4(1.0, 1.0, 1.0, 1.0),
+ destinationColor,
+ sourceColor,
+ float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sA,
+ saturate(sourceColor.aaaa),
+ 1 - sA,
+ };
+
+ return lerp(blendData[sourceFactor] * sourceColor + blendData[destinationFactor] * destinationColor,sourceColor, sA);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
new file mode 100644
index 00000000..8713dc81
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d458579efe4e26a4bbae1a47f7778dd9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
new file mode 100644
index 00000000..6e4db3fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_BULGE
+ #define POI_BULGE
+
+
+ sampler2D _BulgeMask;
+ float _BuldgeFadeLength;
+ float _BuldgeHeight;
+
+ void bulgyWolgy(inout v2f o)
+ {
+ float depth = DecodeFloatRG(tex2Dlod(_CameraDepthTexture, float4(o.grabPos.xy / o.grabPos.w, 0, 0)));
+ float bulgeMask = tex2Dlod(_BulgeMask, float4(o.uv0.xy, 0, 0));
+ depth = Linear01Depth(depth);
+
+ float intersect = 0;
+ if (depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(o.pos.z / o.pos.w));
+ if(diff > 0)
+ {
+ intersect = 1 - smoothstep(0, _ProjectionParams.w * _BuldgeFadeLength, diff);
+ }
+ }
+ float4 offset = intersect * _BuldgeHeight * float4(o.normal, 0);
+
+ offset = IsInMirror() ? 0: offset;
+ offset *= bulgeMask;
+
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos) + offset;
+ o.localPos = mul(unity_WorldToObject, o.worldPos);
+ o.pos = UnityObjectToClipPos(o.localPos);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
new file mode 100644
index 00000000..97f75961
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 34df687af0fad93449b196cd27d998a6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
new file mode 100644
index 00000000..5adf7340
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
@@ -0,0 +1,108 @@
+#ifndef POI_CLEARCOAT
+ #define POI_CLEARCOAT
+
+ samplerCUBE _ClearCoatCubeMap;
+ float _ClearCoatSampleWorld;
+ POI_TEXTURE_NOSAMPLER(_ClearCoatMask);
+ POI_TEXTURE_NOSAMPLER(_ClearCoatSmoothnessMap);
+ float _ClearCoatInvertSmoothness;
+ float _ClearCoat;
+ float _ClearCoatSmoothness;
+ float3 _ClearCoatTint;
+ float _ClearCoatNormalToUse;
+ float _ClearCoatForceLighting;
+ float lighty_clear_boy_uwu_var;
+
+
+ float3 CalculateClearCoatEnvironmentalReflections()
+ {
+ float3 reflectionColor;
+
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_ClearCoatSmoothnessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+ if (float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ float roughness = 1 - smoothnessMap;
+
+ lighty_clear_boy_uwu_var = 0;
+
+ float3 reflectedDir = float(0) == 0 ? poiCam.vertexReflectionDir: poiCam.reflectionDir;
+
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool no_probe = unity_SpecCube0_HDR.a == 0 && envSample.a == 0;
+
+
+ if(float(0) == 0 && no_probe == 0)
+ {
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflectionColor = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflectionColor = probe0;
+ }
+ }
+ else
+ {
+ lighty_clear_boy_uwu_var = 1;
+ reflectionColor = texCUBElod(_ClearCoatCubeMap, float4(reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+ }
+
+ if(float(0))
+ {
+ lighty_clear_boy_uwu_var = 1;
+ }
+
+ return reflectionColor * float4(1,1,1,1);
+ }
+
+ void calculateAndApplyClearCoat(inout float4 finalColor)
+ {
+ half clearCoatMap = POI2D_SAMPLER_PAN(_ClearCoatMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskClearCoat != 4)
+ {
+ clearCoatMap *= blackLightMask[_BlackLightMaskClearCoat];
+ }
+ #endif
+
+ half3 reflectionColor = CalculateClearCoatEnvironmentalReflections();
+
+ float NormalDotView = abs(dot(float(1), float(0) == 0 ? poiLight.N0DotV: poiLight.nDotV).r);
+ #ifdef POI_LIGHTING
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var), clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ //finalColor.rgb += reflectionColor;
+ //finalColor.rgb = finalColor.rgb * (1- (reflectionColor.r + reflectionColor.g + reflectionColor.b)/3) + reflectionColor * clearCoatMap * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var);
+ #else
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor, clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
new file mode 100644
index 00000000..07e15122
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d801b6259124c0b4bbb7ae2a1dc66f1b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
new file mode 100644
index 00000000..687dc443
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
@@ -0,0 +1,262 @@
+#ifndef POI_COLOR
+ #define POI_COLOR
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ static const float Epsilon = 1e-10;
+ // The weights of RGB contributions to luminance.
+ // Should sum to unity.
+ static const float3 HCYwts = float3(0.299, 0.587, 0.114);
+ static const float HCLgamma = 3;
+ static const float HCLy0 = 100;
+ static const float HCLmaxL = 0.530454533953517; // == exp(HCLgamma / HCLy0) - 0.5
+ static const float3 wref = float3(1.0, 1.0, 1.0);
+ #define TAU 6.28318531
+
+ float3 HUEtoRGB(in float H)
+ {
+ float R = abs(H * 6 - 3) - 1;
+ float G = 2 - abs(H * 6 - 2);
+ float B = 2 - abs(H * 6 - 4);
+ return saturate(float3(R, G, B));
+ }
+
+ float3 RGBtoHCV(in float3 RGB)
+ {
+ // Based on work by Sam Hocevar and Emil Persson
+ float4 P = (RGB.g < RGB.b) ? float4(RGB.bg, -1.0, 2.0 / 3.0): float4(RGB.gb, 0.0, -1.0 / 3.0);
+ float4 Q = (RGB.r < P.x) ? float4(P.xyw, RGB.r): float4(RGB.r, P.yzx);
+ float C = Q.x - min(Q.w, Q.y);
+ float H = abs((Q.w - Q.y) / (6 * C + Epsilon) + Q.z);
+ return float3(H, C, Q.x);
+ }
+
+ float3 HSVtoRGB(in float3 HSV)
+ {
+ float3 RGB = HUEtoRGB(HSV.x);
+ return((RGB - 1) * HSV.y + 1) * HSV.z;
+ }
+
+ float3 RGBtoHSV(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float S = HCV.y / (HCV.z + Epsilon);
+ return float3(HCV.x, S, HCV.z);
+ }
+
+ float3 HSLtoRGB(in float3 HSL)
+ {
+ float3 RGB = HUEtoRGB(HSL.x);
+ float C = (1 - abs(2 * HSL.z - 1)) * HSL.y;
+ return(RGB - 0.5) * C + HSL.z;
+ }
+
+ float3 RGBtoHSL(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float L = HCV.z - HCV.y * 0.5;
+ float S = HCV.y / (1 - abs(L * 2 - 1) + Epsilon);
+ return float3(HCV.x, S, L);
+ }
+
+ float3 HCYtoRGB(in float3 HCY)
+ {
+
+
+ float3 RGB = HUEtoRGB(HCY.x);
+ float Z = dot(RGB, HCYwts);
+ if (HCY.z < Z)
+ {
+ HCY.y *= HCY.z / Z;
+ }
+ else if(Z < 1)
+ {
+ HCY.y *= (1 - HCY.z) / (1 - Z);
+ }
+ return(RGB - Z) * HCY.y + HCY.z;
+ }
+
+ float3 RGBtoHCY(in float3 RGB)
+ {
+ // Corrected by David Schaeffer
+ float3 HCV = RGBtoHCV(RGB);
+ float Y = dot(RGB, HCYwts);
+ float Z = dot(HUEtoRGB(HCV.x), HCYwts);
+ if (Y < Z)
+ {
+ HCV.y *= Z / (Epsilon + Y);
+ }
+ else
+ {
+ HCV.y *= (1 - Z) / (Epsilon + 1 - Y);
+ }
+ return float3(HCV.x, HCV.y, Y);
+ }
+
+ float3 HCLtoRGB(in float3 HCL)
+ {
+ float3 RGB = 0;
+ if(HCL.z != 0)
+ {
+ float H = HCL.x;
+ float C = HCL.y;
+ float L = HCL.z * HCLmaxL;
+ float Q = exp((1 - C / (2 * L)) * (HCLgamma / HCLy0));
+ float U = (2 * L - C) / (2 * Q - 1);
+ float V = C / Q;
+ float A = (H + min(frac(2 * H) / 4, frac(-2 * H) / 8)) * pi * 2;
+ float T;
+ H *= 6;
+ if(H <= 0.999)
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.g = T / (1 + T);
+ }
+ else if(H <= 1.001)
+ {
+ RGB.r = 1;
+ RGB.g = 1;
+ }
+ else if(H <= 2)
+ {
+ T = tan(A);
+ RGB.r = (1 + T) / T;
+ RGB.g = 1;
+ }
+ else if(H <= 3)
+ {
+ T = tan(A);
+ RGB.g = 1;
+ RGB.b = 1 + T;
+ }
+ else if(H <= 3.999)
+ {
+ T = tan(A);
+ RGB.g = 1 / (1 + T);
+ RGB.b = 1;
+ }
+ else if(H <= 4.001)
+ {
+ RGB.g = 0;
+ RGB.b = 1;
+ }
+ else if(H <= 5)
+ {
+ T = tan(A);
+ RGB.r = -1 / T;
+ RGB.b = 1;
+ }
+ else
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.b = -T;
+ }
+ RGB = RGB * V + U;
+ }
+ return RGB;
+ }
+
+ float3 RGBtoHCL(in float3 RGB)
+ {
+ float3 HCL;
+ float H = 0;
+ float U = min(RGB.r, min(RGB.g, RGB.b));
+ float V = max(RGB.r, max(RGB.g, RGB.b));
+ float Q = HCLgamma / HCLy0;
+ HCL.y = V - U;
+ if(HCL.y != 0)
+ {
+ H = atan2(RGB.g - RGB.b, RGB.r - RGB.g) / pi;
+ Q *= U / V;
+ }
+ Q = exp(Q);
+ HCL.x = frac(H / 2 - min(frac(H), frac(-H)) / 6);
+ HCL.y *= Q;
+ HCL.z = lerp(-U, V, Q) / (HCLmaxL * 2);
+ return HCL;
+ }
+
+ //HSL MODIFT
+ float3 ModifyViaHSL(float3 color, float3 HSLMod)
+ {
+ float3 colorHSL = RGBtoHSL(color);
+ colorHSL.r = frac(colorHSL.r + HSLMod.r);
+ colorHSL.g = saturate(colorHSL.g + HSLMod.g);
+ colorHSL.b = saturate(colorHSL.b + HSLMod.b);
+ return HSLtoRGB(colorHSL);
+ }
+
+ float3 hueShift(float3 col, float hueAdjust)
+ {
+ hueAdjust *= 2 * pi;
+ const float3 k = float3(0.57735, 0.57735, 0.57735);
+ half cosAngle = cos(hueAdjust);
+ return col * cosAngle + cross(k, col) * sin(hueAdjust) + k * dot(k, col) * (1.0 - cosAngle);
+ }
+
+ float3 poiSaturation(float3 In, float Saturation)
+ {
+ float luma = dot(In, float3(0.2126729, 0.7151522, 0.0721750));
+ return luma.xxx + Saturation.xxx * (In - luma.xxx);
+ }
+ // LCH
+ float xyzF(float t)
+ {
+ return lerp(pow(t, 1. / 3.), 7.787037 * t + 0.139731, step(t, 0.00885645));
+ }
+ float xyzR(float t)
+ {
+ return lerp(t * t * t, 0.1284185 * (t - 0.139731), step(t, 0.20689655));
+ }
+ float3 rgb2lch(in float3 c)
+ {
+ c = mul(float3x3(0.4124, 0.3576, 0.1805,
+ 0.2126, 0.7152, 0.0722,
+ 0.0193, 0.1192, 0.9505), c);
+ c.x = xyzF(c.x / wref.x);
+ c.y = xyzF(c.y / wref.y);
+ c.z = xyzF(c.z / wref.z);
+ float3 lab = float3(max(0., 116.0 * c.y - 16.0), 500.0 * (c.x - c.y), 200.0 * (c.y - c.z));
+ return float3(lab.x, length(float2(lab.y, lab.z)), atan2(lab.z, lab.y));
+ }
+
+ float3 lch2rgb(in float3 c)
+ {
+ c = float3(c.x, cos(c.z) * c.y, sin(c.z) * c.y);
+
+ float lg = 1. / 116. * (c.x + 16.);
+ float3 xyz = float3(wref.x * xyzR(lg + 0.002 * c.y),
+ wref.y * xyzR(lg),
+ wref.z * xyzR(lg - 0.005 * c.z));
+
+ float3 rgb = mul(float3x3(3.2406, -1.5372, -0.4986,
+ - 0.9689, 1.8758, 0.0415,
+ 0.0557, -0.2040, 1.0570), xyz);
+
+ return rgb;
+ }
+
+ //cheaply lerp around a circle
+ float lerpAng(in float a, in float b, in float x)
+ {
+ float ang = fmod(fmod((a - b), TAU) + pi * 3., TAU) - pi;
+ return ang * x + b;
+ }
+
+ //Linear interpolation between two colors in Lch space
+ float3 lerpLch(in float3 a, in float3 b, in float x)
+ {
+ float hue = lerpAng(a.z, b.z, x);
+ return float3(lerp(b.xy, a.xy, x), hue);
+ }
+
+ float3 poiExpensiveColorBlend(float3 col1, float3 col2, float alpha)
+ {
+ return lch2rgb(lerpLch(rgb2lch(col1), rgb2lch(col2), alpha));
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
new file mode 100644
index 00000000..77acbcfd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9dccc4dd5bcdd4b40bc0d4595d5939f2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
new file mode 100644
index 00000000..cd354f85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
@@ -0,0 +1,249 @@
+#ifndef POI_DATA
+ #define POI_DATA
+
+ float _ParallaxBias;
+ float _LightingAdditiveLimitIntensity;
+ float _LightingAdditiveMaxIntensity;
+ POI_TEXTURE_NOSAMPLER(_BumpMap);
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailMask);
+ POI_TEXTURE_NOSAMPLER(_DetailNormalMap);
+ float _DetailNormalMapScale;
+ #endif
+ float _BumpScale;
+
+ void calculateAttenuation(v2f i)
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if defined(POINT) || defined(SPOT)
+ POI_LIGHT_ATTENUATION(attenuation, shadow, i, i.worldPos.xyz)
+ poiLight.additiveShadow = shadow;
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ poiLight.additiveShadow == 0;
+ #endif
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ // fix for rare bug where light atten is 0 when there is no directional light in the scene
+ #ifdef FORWARD_BASE_PASS
+ if (all(_LightColor0.rgb == 0.0))
+ {
+ attenuation = 1.0;
+ }
+ #endif
+ #endif
+ poiLight.attenuation = attenuation;
+ }
+
+ void calculateVertexLightingData(in v2f i)
+ {
+ #ifdef VERTEXLIGHT_ON
+ float4 toLightX = unity_4LightPosX0 - i.worldPos.x;
+ float4 toLightY = unity_4LightPosY0 - i.worldPos.y;
+ float4 toLightZ = unity_4LightPosZ0 - i.worldPos.z;
+ float4 lengthSq = 0;
+ lengthSq += toLightX * toLightX;
+ lengthSq += toLightY * toLightY;
+ lengthSq += toLightZ * toLightZ;
+
+ float4 lightAttenSq = unity_4LightAtten0;
+ float4 atten = 1.0 / (1.0 + lengthSq * lightAttenSq);
+ float4 vLightWeight = saturate(1 - (lengthSq * lightAttenSq / 25));
+ poiLight.vAttenuation = min(atten, vLightWeight * vLightWeight);
+
+ poiLight.vDotNL = 0;
+ poiLight.vDotNL += toLightX * poiMesh.normals[1].x;
+ poiLight.vDotNL += toLightY * poiMesh.normals[1].y;
+ poiLight.vDotNL += toLightZ * poiMesh.normals[1].z;
+
+ float4 corr = rsqrt(lengthSq);
+ poiLight.vDotNL = max(0, poiLight.vDotNL * corr);
+ poiLight.vAttenuationDotNL = poiLight.vAttenuation * poiLight.vDotNL;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vPosition[index] = float3(unity_4LightPosX0[index], unity_4LightPosY0[index], unity_4LightPosZ0[index]);
+
+ float3 vertexToLightSource = poiLight.vPosition[index] - poiMesh.worldPos;
+ poiLight.vDirection[index] = normalize(vertexToLightSource);
+ //poiLight.vAttenuationDotNL[index] = 1.0 / (1.0 + unity_4LightAtten0[index] * poiLight.vDotNL[index]);
+ poiLight.vColor[index] = unity_LightColor[index].rgb;
+
+ if (float(0) == 1)
+ {
+ float intensity = max(0.001, (0.299 * poiLight.vColor[index].r + 0.587 * poiLight.vColor[index].g + 0.114 * poiLight.vColor[index].b));
+ poiLight.vColor[index] = min(poiLight.vColor[index], poiLight.vColor[index] / (intensity / float(1)));
+ }
+ poiLight.vHalfDir[index] = Unity_SafeNormalize(poiLight.vDirection[index] + poiCam.viewDir);
+ poiLight.vDotNL[index] = dot(poiMesh.normals[1], -poiLight.vDirection[index]);
+ poiLight.vCorrectedDotNL[index] = .5 * (poiLight.vDotNL[index] + 1);
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.vDotLH[index] = saturate(dot(poiLight.vDirection[index], poiLight.vHalfDir[index]));
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.vDotNH[index] = saturate(dot(poiMesh.normals[1], poiLight.vHalfDir[index]));
+ #endif
+ }
+ #endif
+ }
+
+ void calculateLightingData(in v2f i)
+ {
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ float3 magic = max(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb;
+ poiLight.color = magic + normalLight;
+ #else
+ #ifdef FORWARD_ADD_PASS
+ poiLight.color = _LightColor0.rgb;
+
+
+ if (float(0) == 1)
+ {
+ float additiveLightIntensity = max(0.001, (0.299 * poiLight.color.r + 0.587 * poiLight.color.g + 0.114 * poiLight.color.b));
+ poiLight.color = min(poiLight.color, poiLight.color / (additiveLightIntensity / float(1)));
+ }
+ #endif
+ #endif
+
+ #ifdef FORWARD_BASE_PASS
+ poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ #else
+ #if defined(POINT) || defined(SPOT)
+ poiLight.direction = normalize(_WorldSpaceLightPos0.xyz - i.worldPos);
+ #else
+ poiLight.direction = _WorldSpaceLightPos0;
+ #endif
+ #endif
+
+ poiLight.halfDir = normalize(poiLight.direction + poiCam.viewDir);
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.dotNH = saturate(dot(poiMesh.normals[1], poiLight.halfDir));
+ #endif
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.dotLH = saturate(dot(poiLight.direction, poiLight.halfDir));
+ #endif
+
+ poiLight.nDotV = dot(poiMesh.normals[1], poiCam.viewDir);
+ poiLight.N0DotV = dot(poiMesh.normals[0], poiCam.viewDir);
+ poiLight.nDotL = dot(poiMesh.normals[1], poiLight.direction);
+ poiLight.nDotH = dot(poiMesh.normals[1], poiLight.halfDir);
+ poiLight.lDotv = dot(poiLight.direction, poiCam.viewDir);
+ poiLight.lDotH = dot(poiLight.direction, poiLight.halfDir);
+ }
+
+ float3 CreateBinormal(float3 normal, float3 tangent, float binormalSign)
+ {
+ return cross(normal, tangent.xyz) * (binormalSign * unity_WorldTransformParams.w);
+ }
+
+ void InitializeMeshData(inout v2f i, uint facing)
+ {
+ poiMesh.isFrontFace = facing;
+ poiMesh.normals[0] = normalize(i.normal);
+ poiMesh.binormal = CreateBinormal(i.normal, i.tangent.xyz, i.tangent.w);
+ poiMesh.tangent = i.tangent.xyz;
+
+ #ifndef OUTLINE
+ if(!poiMesh.isFrontFace)
+ {
+ poiMesh.normals[0] *= -1;
+ poiMesh.tangent *= -1;
+ poiMesh.binormal *= -1;
+ }
+ #endif
+
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+ poiMesh.barycentricCoordinates = i.barycentricCoordinates;
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ #ifdef POI_UV_DISTORTION
+ poiMesh.uv[4] = calculateDistortionUV(i.uv0.xy);
+ #else
+ poiMesh.uv[4] = poiMesh.uv[0];
+ #endif
+
+ poiMesh.vertexColor = i.vertexColor;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ poiMesh.lightmapUV = i.lightmapUV;
+ #endif
+ poiMesh.modelPos = i.modelPos;
+
+ #ifdef FUR
+ poiMesh.furAlpha = i.furAlpha;
+ #endif
+ }
+
+ void initializeCamera(v2f i)
+ {
+ poiCam.viewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
+ poiCam.forwardDir = getCameraForward();
+ poiCam.worldPos = _WorldSpaceCameraPos;
+ poiCam.distanceToModel = distance(poiMesh.modelPos, poiCam.worldPos);
+ poiCam.distanceToVert = distance(poiMesh.worldPos, poiCam.worldPos);
+ poiCam.grabPos = i.grabPos;
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ poiCam.clipPos = i.pos;
+ #if defined(GRAIN)
+ poiCam.worldDirection = i.worldDirection;
+ #endif
+
+ poiCam.tangentViewDir = normalize(i.tangentViewDir);
+ poiCam.tangentViewDir.xy /= (poiCam.tangentViewDir.z + float(0.42));
+ }
+
+ void calculateTangentData()
+ {
+ poiTData.tangentTransform = float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]);
+ poiTData.tangentToWorld = transpose(float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]));
+ }
+
+ void CalculateReflectionData()
+ {
+ #if defined(_METALLICGLOSSMAP) || defined(_COLORCOLOR_ON)
+ poiCam.reflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[1]);
+ poiCam.vertexReflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[0]);
+ #endif
+ }
+
+ void calculateNormals(inout half3 detailMask)
+ {
+ half3 mainNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_BumpMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ #ifdef FINALPASS
+ detailMask = POI2D_SAMPLER_PAN(_DetailMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(1) > 0)
+ {
+ half3 detailNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_DetailNormalMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1) * detailMask.g);
+ poiMesh.tangentSpaceNormal = BlendNormals(mainNormal, detailNormal);
+ }
+ else
+ {
+ poiMesh.tangentSpaceNormal = mainNormal;
+ }
+ #else
+ poiMesh.tangentSpaceNormal = mainNormal;
+ #endif
+
+ #ifdef POI_RGBMASK
+ calculateRGBNormals(poiMesh.tangentSpaceNormal);
+ #endif
+
+ poiMesh.normals[1] = normalize(
+ poiMesh.tangentSpaceNormal.x * poiMesh.tangent +
+ poiMesh.tangentSpaceNormal.y * poiMesh.binormal +
+ poiMesh.tangentSpaceNormal.z * poiMesh.normals[0]
+ );
+
+ poiCam.viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[1]));
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
new file mode 100644
index 00000000..431985f3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c7f428feab40daf4ea05b6d534c19bcf
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
new file mode 100644
index 00000000..125d2cd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
@@ -0,0 +1,107 @@
+#ifndef POI_DEBUG
+ #define POI_DEBUG
+
+ float _DebugEnabled;
+ float _DebugMeshData;
+ float _DebugLightingData;
+ float _DebugCameraData;
+
+ void displayDebugInfo(inout float4 finalColor)
+ {
+
+ if (float(0) != 0)
+ {
+ //Mesh Data
+ if (float(0) == 1)
+ {
+ finalColor.rgb = poiMesh.normals[0];
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiMesh.normals[1];
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiMesh.tangent;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiMesh.binormal;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiMesh.localPos;
+ return;
+ }
+
+ #ifdef POI_LIGHTING
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiLight.attenuation;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiLight.directLighting;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiLight.indirectLighting;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiLight.lightMap;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiLight.rampedLightMap;
+ return;
+ }
+ else if(float(0) == 6)
+ {
+ finalColor.rgb = poiLight.finalLighting;
+ return;
+ }
+ else if(float(0) == 7)
+ {
+ finalColor.rgb = poiLight.nDotL;
+ return;
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiCam.viewDir;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiCam.tangentViewDir;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiCam.forwardDir;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiCam.worldPos;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiCam.viewDotNormal;
+ return;
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
new file mode 100644
index 00000000..6f13e664
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b459901340966e742ad016960ead8a02
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
new file mode 100644
index 00000000..280fcbc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_DECAL
+ #define POI_DECAL
+
+ POI_TEXTURE_NOSAMPLER(_DecalTexture);
+ POI_TEXTURE_NOSAMPLER(_DecalMask);
+ float4 _DecalColor;
+ fixed _DecalTiled;
+ fixed _DecalBlendAdd;
+ fixed _DecalBlendMultiply;
+ fixed _DecalBlendReplace;
+ half _DecalRotation;
+ half2 _DecalScale;
+ half2 _DecalPosition;
+ half _DecalRotationSpeed;
+ float _DecalEmissionStrength;
+
+ void applyDecal(inout float4 albedo, inout float3 decalEmission)
+ {
+ float2 uv = poiMesh.uv[float(0)];
+ float2 decalCenter = float4(0.5,0.5,0,0);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - decalCenter.x) * cs - (uv.y - decalCenter.y) * sn + decalCenter.x, (uv.x - decalCenter.x) * sn + (uv.y - decalCenter.y) * cs + decalCenter.y);
+ uv = remap(uv, float2(0, 0) - float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float2(0, 0), float2(1, 1));
+
+ half decalAlpha = 1;
+ //float2 uv = TRANSFORM_TEX(poiMesh.uv[float(0)], _DecalTexture) + _Time.x * float4(0,0,0,0);
+ float4 decalColor = POI2D_SAMPLER_PAN(_DecalTexture, _MainTex, uv, float4(0,0,0,0)) * float4(1,1,1,1);
+ decalAlpha *= POI2D_SAMPLER_PAN(_DecalMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if (!float(0))
+ {
+ if(uv.x > 1 || uv.y > 1 || uv.x < 0 || uv.y < 0)
+ {
+ decalAlpha = 0;
+ }
+ }
+
+ if(float(0))
+ {
+ albedo.rgb = lerp(albedo.rgb, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb *= lerp(1, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb += decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+ albedo = saturate(albedo);
+ decalEmission = decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
new file mode 100644
index 00000000..272e1279
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 86512d9155c58614d8c5b83a0a7ca534
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
new file mode 100644
index 00000000..9b70067a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
@@ -0,0 +1,21 @@
+#ifndef POI_DEFINES
+ #define POI_DEFINES
+
+ #define DielectricSpec float4(0.04, 0.04, 0.04, 1.0 - 0.04)
+
+ #ifdef _SPECGLOSSMAP // Specular
+ #ifndef POI_VAR_DOTNH
+ #define POI_VAR_DOTNH
+ #endif
+ #ifndef POI_VAR_DOTLH
+ #define POI_VAR_DOTLH
+ #endif
+ #endif
+
+ #ifdef VIGNETTE_MASKED // Lighting
+ #ifndef POI_VAR_DOTNL
+ #define POI_VAR_DOTNL
+ #endif
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
new file mode 100644
index 00000000..c3f81c20
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ca30de9acbc53ee45bf01e805de92169
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
new file mode 100644
index 00000000..828460bc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
@@ -0,0 +1,112 @@
+#ifndef POI_DEPTH_COLOR
+ #define POI_DEPTH_COLOR
+
+ float4 _DepthGlowColor;
+ float _DepthGlowEmission;
+ float _FadeLength;
+ float _DepthAlphaMin;
+ float _DepthAlphaMax;
+ POI_TEXTURE_NOSAMPLER(_DepthGradient);
+ POI_TEXTURE_NOSAMPLER(_DepthMask);
+ float _DepthGradientTextureUV;
+ float _DepthGradientBlend;
+
+ /*
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, float4 worldDirection, float4 clipPos)
+ {
+ float3 touchEmission = 0;
+ if (!IsInMirror())
+ {
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+ float depth = DecodeFloatRG(tex2Dproj(_CameraDepthTexture, worldDirection));
+ depth = Linear01Depth(depth);
+ if(depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(clipPos.z));
+ float intersect = 0;
+ if(diff > 0)
+ {
+ intersect = clamp(1 - smoothstep(0, _ProjectionParams.w * fadeLength, diff), 0, 1);
+ }
+ half4 depthGradient = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthGradient, _MainTex, intersect);
+ half3 depthMask = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthMask, _MainTex, poiMesh.uv[0]);
+ half3 depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+ }
+ }
+ depthTouchEmission = touchEmission;
+ }
+ */
+
+ inline float CorrectedLinearEyeDepth(float z, float B)
+ {
+ return 1.0 / (z / PM._34 + B);
+ }
+
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, in float4 worldDirection)
+ {
+ float3 touchEmission = 0;
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+
+ float perspectiveDivide = 1.0f / poiCam.clipPos.w;
+ float4 direction = worldDirection * perspectiveDivide;
+ float2 screenPos = poiCam.grabPos.xy * perspectiveDivide;
+ float z = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, screenPos);
+
+ #if UNITY_REVERSED_Z
+ if (z == 0)
+ #else
+ if(z == 1)
+ #endif
+ return;
+
+ float depth = CorrectedLinearEyeDepth(z, direction.w);
+ float3 worldpos = direction * depth + _WorldSpaceCameraPos.xyz;
+ /*
+ finalColor.rgb = frac(worldpos);
+ return;
+ */
+
+ float diff = distance(worldpos, poiMesh.worldPos);
+ float intersect = 0;
+ intersect = clamp(1 - smoothstep(0, fadeLength, diff), 0, 1);
+ half3 depthMask = POI2D_SAMPLER_PAN(_DepthMask, _MainTex, poiMesh.uv[_DepthMaskUV], _DepthMaskPan);
+
+ half4 depthGradient = 0;
+ half3 depthColor = 0;
+
+
+ if (_DepthGradientTextureUV == 0)
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, float2(intersect, intersect), _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ }
+ else
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, poiMesh.uv[_DepthGradientUV], _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb * intersect;
+ }
+
+
+ if(_DepthGradientBlend == 0) // rpelace
+ {
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ }
+ else if(_DepthGradientBlend == 1) // add
+ {
+ finalColor.rgb += depthColor * intersect * depthMask;
+ }
+ else if(_DepthGradientBlend == 2) // multiply
+ {
+ finalColor.rgb *= lerp(1, depthColor, intersect * depthMask);
+ }
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect * depthMask);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+
+ depthTouchEmission = touchEmission;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
new file mode 100644
index 00000000..7a1fdd9f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 72b07d6507f8cf043808d00329a4aa18
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
new file mode 100644
index 00000000..13175f00
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
@@ -0,0 +1,171 @@
+#ifndef POI_DISSOLVE
+ #define POI_DISSOLVE
+
+ float _DissolveType;
+ float _DissolveEdgeWidth;
+ float4 _DissolveEdgeColor;
+ sampler2D _DissolveEdgeGradient; float4 _DissolveEdgeGradient_ST;
+ float _DissolveEdgeEmission;
+ float4 _DissolveTextureColor;
+
+ POI_TEXTURE_NOSAMPLER(_DissolveToTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveNoiseTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveDetailNoise);
+ POI_TEXTURE_NOSAMPLER(_DissolveMask);
+
+ float _DissolveMaskInvert;
+ float _DissolveAlpha;
+ float _ContinuousDissolve;
+ float _DissolveDetailStrength;
+ float _DissolveEdgeHardness;
+ float _DissolveInvertNoise;
+ float _DissolveInvertDetailNoise;
+ float _DissolveToEmissionStrength;
+
+ // Point to Point
+ float _DissolveP2PWorldLocal;
+ float _DissolveP2PEdgeLength;
+ float4 _DissolveStartPoint;
+ float4 _DissolveEndPoint;
+
+ // World Dissolve
+ float _DissolveWorldShape;
+ float4 _DissolveShapePosition;
+ float4 _DissolveShapeRotation;
+ float _DissolveShapeScale;
+ float _DissolveInvertShape;
+ float _DissolveShapeEdgeLength;
+
+ float _DissolveAlpha0;
+ float _DissolveAlpha1;
+ float _DissolveAlpha2;
+ float _DissolveAlpha3;
+ float _DissolveAlpha4;
+ float _DissolveAlpha5;
+ float _DissolveAlpha6;
+ float _DissolveAlpha7;
+ float _DissolveAlpha8;
+ float _DissolveAlpha9;
+
+ // Masking
+ float _DissolveEmissionSide;
+ float _DissolveEmission1Side;
+ float _DissolveUseVertexColors;
+
+ float4 edgeColor;
+ float edgeAlpha;
+ float dissolveAlpha;
+ float4 dissolveToTexture;
+ //Globals
+
+
+ void calculateDissolve(inout float4 albedo, inout float3 dissolveEmission)
+ {
+
+ float dissolveMask = POI2D_SAMPLER_PAN(_DissolveMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+
+ if (float(0))
+ {
+ // Vertex Color Imprecision hype
+ dissolveMask = ceil(poiMesh.vertexColor.g * 100000) / 100000;
+ }
+
+ dissolveToTexture = POI2D_SAMPLER_PAN(_DissolveToTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ float dissolveNoiseTexture = POI2D_SAMPLER_PAN(_DissolveNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ float da = float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0);
+ da = saturate(da);
+
+ float dds = float(0.1);
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskDissolve != 4)
+ {
+ dissolveMask *= blackLightMask[_BlackLightMaskDissolve];
+ }
+ #endif
+
+ if(float(0))
+ {
+ dissolveMask = 1 - dissolveMask;
+ }
+
+ float dissolveDetailNoise = POI2D_SAMPLER_PAN(_DissolveDetailNoise, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(0))
+ {
+ dissolveNoiseTexture = 1 - dissolveNoiseTexture;
+ }
+ if(float(0))
+ {
+ dissolveDetailNoise = 1 - dissolveDetailNoise;
+ }
+ if(float(0) != 0)
+ {
+ da = sin(_Time.y * float(0)) * .5 + .5;
+ }
+ da *= dissolveMask;
+ dissolveAlpha = da;
+ edgeAlpha = 0;
+
+
+ if(float(1) == 1) // Basic
+ {
+ da = remap(da, 0, 1, -float(0.025), 1);
+ dissolveAlpha = da;
+ //Adjust detail strength to avoid artifacts
+ dds *= smoothstep(1, .99, da);
+ float noise = saturate(dissolveNoiseTexture - dissolveDetailNoise * dds);
+
+ noise = saturate(noise + 0.001);
+ //noise = remap(noise, 0, 1, float(0.025), 1 - float(0.025));
+ dissolveAlpha = dissolveAlpha >= noise;
+ edgeAlpha = remapClamped(noise, da + float(0.025), da, 0, 1) * (1 - dissolveAlpha);
+ }
+ else if (float(1) == 2) // Point to Point
+ {
+ float3 direction;
+ float3 currentPos;
+ float distanceTo = 0;
+ direction = normalize(float4(0,1,0,0) - float4(0,-1,0,0));
+ currentPos = lerp(float4(0,-1,0,0), float4(0,1,0,0), dissolveAlpha);
+ if (float(0) == 0)
+ {
+ distanceTo = dot(poiMesh.localPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ else
+ {
+ distanceTo = dot(poiMesh.worldPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ }
+
+ albedo = lerp(albedo, dissolveToTexture, dissolveAlpha);
+
+
+ if(float(0.025))
+ {
+ edgeColor = tex2D(_DissolveEdgeGradient, TRANSFORM_TEX(float2(edgeAlpha, edgeAlpha), _DissolveEdgeGradient)) * float4(1,1,1,1);
+ albedo.rgb = lerp(albedo.rgb, edgeColor.rgb, smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+ dissolveEmission = lerp(0, dissolveToTexture * float(0), dissolveAlpha) + lerp(0, edgeColor.rgb * float(0), smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
new file mode 100644
index 00000000..6e052aee
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f7d1bcf66f829c64998be6c6c4224f79
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
new file mode 100644
index 00000000..91efad39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_DITHERING
+ #define POI_DITHERING
+ fixed _DitheringEnabled;
+ fixed _DitherGradient;
+
+ half calcDither(half2 grabPos)
+ {
+ half dither = Dither8x8Bayer(fmod(grabPos.x, 8), fmod(grabPos.y, 8));
+ return dither;
+ }
+
+ #ifndef POI_SHADOW
+ void applyDithering(inout float4 finalColor)
+ {
+
+ if (float(0))
+ {
+ half dither = calcDither(poiCam.screenUV.xy);
+ finalColor.a = finalColor.a - (dither * (1 - finalColor.a) * float(0.1));
+ }
+ }
+ #else
+ void applyShadowDithering(inout float alpha, float2 screenUV)
+ {
+
+ if(float(0))
+ {
+ half dither = calcDither(screenUV);
+ alpha = alpha - (dither * (1 - alpha) * float(0.1));
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
new file mode 100644
index 00000000..84b439ff
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f9750b9403a095445861491400544b2f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
new file mode 100644
index 00000000..4888c2ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
@@ -0,0 +1,240 @@
+#ifndef POI_EMISSION
+ #define POI_EMISSION
+
+ float4 _EmissionColor;
+ POI_TEXTURE_NOSAMPLER(_EmissionMap);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve); float4 _EmissionScrollingCurve_ST;
+ float _EmissionBaseColorAsMap;
+ float _EmissionStrength;
+ float _EnableEmission;
+ float _EmissionHueShift;
+ float4 _EmissiveScroll_Direction;
+ float _EmissiveScroll_Width;
+ float _EmissiveScroll_Velocity;
+ float _EmissiveScroll_Interval;
+ float _EmissionBlinkingEnabled;
+ float _EmissiveBlink_Min;
+ float _EmissiveBlink_Max;
+ float _EmissiveBlink_Velocity;
+ float _ScrollingEmission;
+ float _EnableGITDEmission;
+ float _GITDEMinEmissionMultiplier;
+ float _GITDEMaxEmissionMultiplier;
+ float _GITDEMinLight;
+ float _GITDEMaxLight;
+ float _GITDEWorldOrMesh;
+ float _EmissionCenterOutEnabled;
+ float _EmissionCenterOutSpeed;
+ float _EmissionHueShiftEnabled;
+ float _EmissionBlinkingOffset;
+ float _EmissionScrollingOffset;
+
+ float4 _EmissionColor1;
+ #ifdef EFFECT_HUE_VARIATION
+ POI_TEXTURE_NOSAMPLER(_EmissionMap1);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask1);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve1); float4 _EmissionScrollingCurve1_ST;
+ #endif
+ float _EmissionBaseColorAsMap1;
+ float _EmissionStrength1;
+ float _EnableEmission1;
+ float _EmissionHueShift1;
+ float4 _EmissiveScroll_Direction1;
+ float _EmissiveScroll_Width1;
+ float _EmissiveScroll_Velocity1;
+ float _EmissiveScroll_Interval1;
+ float _EmissionBlinkingEnabled1;
+ float _EmissiveBlink_Min1;
+ float _EmissiveBlink_Max1;
+ float _EmissiveBlink_Velocity1;
+ float _ScrollingEmission1;
+ float _EnableGITDEmission1;
+ float _GITDEMinEmissionMultiplier1;
+ float _GITDEMaxEmissionMultiplier1;
+ float _GITDEMinLight1;
+ float _GITDEMaxLight1;
+ float _GITDEWorldOrMesh1;
+ float _EmissionCenterOutEnabled1;
+ float _EmissionCenterOutSpeed1;
+ float _EmissionHueShiftEnabled1;
+ float _EmissionBlinkingOffset1;
+ float _EmissionScrollingOffset1;
+
+ float _EmissionReplace;
+
+ float _EmissionScrollingVertexColor;
+ float _EmissionScrollingVertexColor1;
+
+ float _EmissionScrollingUseCurve;
+ float _EmissionScrollingUseCurve1;
+
+ float calculateGlowInTheDark(in float minLight, in float maxLight, in float minEmissionMultiplier, in float maxEmissionMultiplier, in float enabled)
+ {
+ float glowInTheDarkMultiplier = 1;
+
+ if (enabled)
+ {
+ #ifdef POI_LIGHTING
+ float3 lightValue = float(0) ? poiLight.finalLighting.rgb: poiLight.directLighting.rgb;
+ float gitdeAlpha = (clamp(poiMax(lightValue), minLight, maxLight) - minLight) / (maxLight - minLight);
+ glowInTheDarkMultiplier = lerp(minEmissionMultiplier, maxEmissionMultiplier, gitdeAlpha);
+ #endif
+ }
+ return glowInTheDarkMultiplier;
+ }
+
+ float calculateScrollingEmission(in float3 direction, in float velocity, in float interval, in float scrollWidth, float offset, float3 position)
+ {
+ float phase = 0;
+ phase = dot(position, direction);
+ phase -= (_Time.y + offset) * velocity;
+ phase /= interval;
+ phase -= floor(phase);
+ phase = saturate(phase);
+ return(pow(phase, scrollWidth) + pow(1 - phase, scrollWidth * 4)) * 0.5;
+ }
+
+ float calculateBlinkingEmission(in float blinkMin, in float blinkMax, in float blinkVelocity, float offset)
+ {
+ float amplitude = (blinkMax - blinkMin) * 0.5f;
+ float base = blinkMin + amplitude;
+ return sin((_Time.y + offset) * blinkVelocity) * amplitude + base;
+ }
+
+ float3 calculateEmissionNew(in float4 baseColor, inout float4 finalColor)
+ {
+ // First Emission
+ float3 emission0 = 0;
+ float emissionStrength0 = float(0);
+ float3 emissionColor0 = 0;
+
+ float glowInTheDarkMultiplier0 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor0 = POI2D_SAMPLER_PAN(_EmissionMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+ else
+ {
+ emissionColor0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve) + (dot(pos, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength0 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos);
+ }
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor0 = hueShift(emissionColor0, float(0) * float(0));
+ float emissionMask0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask) + _Time.x * float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission != 4)
+ {
+ emissionMask0 *= blackLightMask[_BlackLightMaskEmission];
+ }
+ #endif
+
+ emissionStrength0 *= glowInTheDarkMultiplier0 * emissionMask0;
+ emission0 = emissionStrength0 * emissionColor0;
+
+ #ifdef POI_DISSOLVE
+
+ if(float(2) != 2)
+ {
+ emission0 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+
+ // Second Emission
+ float3 emission1 = 0;
+ float emissionStrength1 = 0;
+ float3 emissionColor1 = 0;
+
+ #ifdef EFFECT_HUE_VARIATION
+ emissionStrength1 = float(0);
+ float glowInTheDarkMultiplier1 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor1 = POI2D_SAMPLER_PAN(_EmissionMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ emissionColor1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap1, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)).rgb * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos1 = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos1 = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength1 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve1) + (dot(pos1, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength1 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos1);
+ }
+ }
+
+ if(float(0))
+ {
+ emissionStrength1 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor1 = hueShift(emissionColor1, float(0) * float(0));
+ float emissionMask1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask1) + _Time.x * float4(0,0,0,0));
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission2 != 4)
+ {
+ emissionMask1 *= blackLightMask[_BlackLightMaskEmission2];
+ }
+ #endif
+ emissionStrength1 *= glowInTheDarkMultiplier1 * emissionMask1;
+ emission1 = emissionStrength1 * emissionColor1;
+
+ #ifdef POI_DISSOLVE
+ if(float(2) != 2)
+ {
+ emission1 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+ #endif
+ finalColor.rgb = lerp(finalColor.rgb, saturate(emissionColor0 + emissionColor1), saturate(emissionStrength0 + emissionStrength1) * float(0) * poiMax(emission0 + emission1));
+
+ return emission0 + emission1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
new file mode 100644
index 00000000..58cd1f60
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 571658fac0e054a44afa9992bd535bdb
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
new file mode 100644
index 00000000..1e9188ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
@@ -0,0 +1,43 @@
+#ifndef POI_ENVIRONMENTAL_RIM
+ #define POI_ENVIRONMENTAL_RIM
+
+ //enviro rim
+ float _EnableEnvironmentalRim;
+ POI_TEXTURE_NOSAMPLER(_RimEnviroMask);
+ float _RimEnviroBlur;
+ float _RimEnviroMinBrightness;
+ float _RimEnviroWidth;
+ float _RimEnviroSharpness;
+ float _RimEnviroIntensity;
+
+ float3 calculateEnvironmentalRimLighting(in float4 albedo)
+ {
+ float enviroRimAlpha = saturate(1 - smoothstep(min(float(0), float(0.45)), float(0.45), poiCam.viewDotNormal));
+ float(0.7) *= 1.7 - 0.7 * float(0.7);
+
+ float3 enviroRimColor = 0;
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if (interpolator < 0.99999)
+ {
+ //Probe 1
+ float4 reflectionData0 = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor0 = DecodeHDR(reflectionData0, unity_SpecCube0_HDR);
+
+ //Probe 2
+ float4 reflectionData1 = UNITY_SAMPLE_TEXCUBE_SAMPLER_LOD(unity_SpecCube1, unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor1 = DecodeHDR(reflectionData1, unity_SpecCube1_HDR);
+
+ enviroRimColor = lerp(reflectionColor1, reflectionColor0, interpolator);
+ }
+ else
+ {
+ float4 reflectionData = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ enviroRimColor = DecodeHDR(reflectionData, unity_SpecCube0_HDR);
+ }
+
+ half enviroMask = poiMax(POI2D_SAMPLER_PAN(_RimEnviroMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb);
+ return lerp(0, max(0, (enviroRimColor - float(0)) * albedo.rgb), enviroRimAlpha).rgb * enviroMask * float(1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
new file mode 100644
index 00000000..f0204419
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f94c877cf0a14be4eba646c150d6e343
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
new file mode 100644
index 00000000..0ed89b59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
@@ -0,0 +1,153 @@
+#ifndef POI_FLIPBOOK
+ #define POI_FLIPBOOK
+
+ UNITY_DECLARE_TEX2DARRAY(_FlipbookTexArray); float4 _FlipbookTexArray_ST;
+ float4 _FlipbookColor;
+ float _FlipbookFPS;
+ float _FlipbookTotalFrames;
+ float4 _FlipbookScaleOffset;
+ float _FlipbookTiled;
+ float _FlipbookCurrentFrame;
+ float _FlipbookEmissionStrength;
+ float _FlipbookRotation;
+ float _EnableFlipbook;
+ float _FlipbookTexArrayUV;
+ float _FlipbookAlphaControlsFinalAlpha;
+ float _FlipbookRotationSpeed;
+ float _FlipbookIntensityControlsAlpha;
+ float _FlipbookColorReplaces;
+ float2 _FlipbookTexArrayPan;
+
+ // blending
+ float _FlipbookReplace;
+ float _FlipbookMultiply;
+ float _FlipbookAdd;
+ POI_TEXTURE_NOSAMPLER(_FlipbookMask);
+
+ // anim
+ float _FlipbookMovementType;
+ float4 _FlipbookStartEndOffset;
+ float _FlipbookMovementSpeed;
+
+ // Global
+ float4 flipBookPixel;
+ float4 flipBookPixelMultiply;
+ float flipBookMask;
+
+ #ifndef POI_SHADOW
+
+ void applyFlipbook(inout float4 finalColor, inout float3 flipbookEmission)
+ {
+ flipBookMask = POI2D_SAMPLER_PAN(_FlipbookMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float2 uv = frac(poiMesh.uv[float(0)]);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ // 2d rotation
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ if (float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipBookPixel = 0;
+ return;
+ }
+ }
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ flipBookPixel = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipBookPixel.a = poiMax(flipBookPixel.rgb);
+ }
+
+ if(float(0))
+ {
+ flipBookPixel.rgb = float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ flipBookPixel.rgb *= float4(1,1,1,1).rgb;
+ }
+
+ #ifdef POI_BLACKLIGHT
+
+ if(_BlackLightMaskFlipbook != 4)
+ {
+ flipBookMask *= blackLightMask[_BlackLightMaskFlipbook];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * float(1) * flipBookMask);
+ finalColor.rgb = finalColor + flipBookPixel.rgb * float(0) * flipBookMask;
+ finalColor.rgb = finalColor * lerp(1, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * flipBookMask * float(0));
+
+
+ if(float(0))
+ {
+ finalColor.a = lerp(finalColor.a, flipBookPixel.a * float4(1,1,1,1).a, flipBookMask);
+ }
+ flipbookEmission = lerp(0, flipBookPixel.rgb * float(0), flipBookPixel.a * float4(1,1,1,1).a * flipBookMask);
+ }
+
+ #else
+
+ float applyFlipbookAlphaToShadow(float2 uv)
+ {
+
+ if(float(0))
+ {
+ float flipbookShadowAlpha = 0;
+
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float theta = radians(float(0));
+
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ half4 flipbookColor = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipbookColor.a = poiMax(flipbookColor.rgb);
+ }
+
+
+ if(float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipbookColor.a = 0;
+ }
+ }
+ return flipbookColor.a * float4(1,1,1,1).a;
+ }
+ return 1;
+ }
+
+ #endif
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
new file mode 100644
index 00000000..a6f715df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4301518b4fff93b4e96ec45c93511695
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
new file mode 100644
index 00000000..aa950e7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
@@ -0,0 +1,376 @@
+#ifndef POIFRAG
+ #define POIFRAG
+
+ float _MainEmissionStrength;
+ float _IgnoreFog;
+ half _GIEmissionMultiplier;
+ float _IridescenceTime;
+ float _AlphaToMask;
+ float _ForceOpaque;
+ float _commentIfZero_EnableGrabpass;
+ float _AlphaPremultiply;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+ float _commentIfZero_LightingAdditiveEnable;
+
+ float4 frag(v2f i, uint facing: SV_IsFrontFace): SV_Target
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if !defined(POI_LIGHTING)
+ return 0;
+ #endif
+ #if defined(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A) && defined(DIRECTIONAL)
+ return 0;
+ #endif
+ #endif
+ #ifdef FORWARD_ADD_PASS
+
+ if (float(1) == 0)
+ {
+ return 0;
+ }
+ #endif
+ UNITY_SETUP_INSTANCE_ID(i);
+ // Color
+ float4 albedo = 1;
+ float4 finalColor = 1;
+
+ // Lighting
+ float bakedCubemap = 0; // Whether or not metallic should run before or after lighting multiplication
+ float3 finalSpecular0 = 0;
+ float3 finalSpecular1 = 0;
+ float3 finalSSS = 0;
+ fixed lightingAlpha = 1;
+ float3 finalEnvironmentalRim = 0;
+
+ // Emissions
+ float3 finalEmission = 0;
+ float3 finalLighting = 1;
+ float3 IridescenceEmission = 0;
+ float3 spawnInEmission = 0;
+ float3 voronoiEmission = 0;
+ float3 matcapEmission = 0;
+ float3 depthTouchEmission = 0;
+ float3 decalEmission = 0;
+ float3 glitterEmission = 0;
+ float3 panosphereEmission = 0;
+ float3 backFaceEmission = 0;
+ float3 dissolveEmission = 0;
+ float3 rimLightEmission = 0;
+ float3 flipbookEmission = 0;
+ float3 textOverlayEmission = 0;
+ float3 videoEmission = 0;
+ /**********************************************************************
+ Initialize the base data that's needed everywhere else in the shader
+ **********************************************************************/
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+
+ #ifdef POI_BLACKLIGHT
+ createBlackLightMask();
+
+ if (_BlackLightMaskDebug)
+ {
+ return float4(blackLightMask.rgb, 1);
+ }
+ #endif
+
+ // This has to happen in the initializbecause it alters UV data globally
+ #ifdef POI_PARALLAX
+ calculateandApplyParallax();
+ #endif
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+ calculateVertexLightingData(i);
+ /**********************************************************************
+ Calculate Light Maps
+ **********************************************************************/
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ /**********************************************************************
+ Calculate Color Data
+ **********************************************************************/
+
+ initTextureData(albedo, mainTexture, backFaceEmission, dissolveEmission, detailMask);
+
+ #ifdef POI_DECAL
+ applyDecal(albedo, decalEmission);
+ #endif
+
+
+ #ifdef POI_IRIDESCENCE
+
+ if (_IridescenceTime == 0)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VORONOI
+ applyVoronoi(albedo, voronoiEmission);
+ #endif
+
+ #ifdef POI_MSDF
+ ApplyTextOverlayColor(albedo, textOverlayEmission);
+ #endif
+
+ #ifdef POI_ENVIRONMENTAL_RIM
+ finalEnvironmentalRim = calculateEnvironmentalRimLighting(albedo);
+ #endif
+
+ #if defined(POI_METAL) || defined(POI_CLEARCOAT)
+ CalculateReflectionData();
+ #endif
+
+ #ifdef POI_DATA
+ distanceFade(albedo);
+ #endif
+
+ #ifdef POI_RANDOM
+ albedo.a *= i.angleAlpha;
+ #endif
+
+ #ifdef MATCAP
+ applyMatcap(albedo, matcapEmission);
+ #endif
+
+ #ifdef PANOSPHERE
+ applyPanosphereColor(albedo, panosphereEmission);
+ #endif
+
+ #ifdef POI_FLIPBOOK
+ applyFlipbook(albedo, flipbookEmission);
+ #endif
+
+ #ifdef POI_GLITTER
+ applyGlitter(albedo, glitterEmission);
+ #endif
+
+ #ifdef POI_RIM
+ applyRimLighting(albedo, rimLightEmission);
+ #endif
+
+ #ifdef POI_DEPTH_COLOR
+ applyDepthColor(albedo, depthTouchEmission, finalEmission, i.worldDirection);
+ #endif
+
+ #ifdef POI_IRIDESCENCE
+
+ if(_IridescenceTime == 1)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VIDEO
+ applyScreenEffect(albedo, videoEmission);
+ #endif
+
+ applySpawnIn(albedo, spawnInEmission, poiMesh.uv[0], poiMesh.localPos);
+
+ /**********************************************************************
+ Handle a few alpha options
+ **********************************************************************/
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 0)
+ {
+ applyDithering(albedo);
+ }
+ }
+
+ albedo.a = max(float(0), albedo.a);
+
+
+ if(float(0) >= 1)
+ {
+ clip(albedo.a - float(0.5));
+ }
+
+
+ if(float(0))
+ {
+ albedo.rgb *= saturate(albedo.a + 0.0000000001);
+ }
+
+ /**********************************************************************
+ Lighting Time :)
+ **********************************************************************/
+
+ #ifdef POI_LIGHTING
+ finalLighting = calculateFinalLighting(albedo.rgb, finalColor);
+
+ #ifdef SUBSURFACE
+ finalSSS = calculateSubsurfaceScattering();
+ #endif
+ #endif
+
+ float4 finalColorBeforeLighting = albedo;
+ finalColor = finalColorBeforeLighting;
+
+ #ifdef POI_SPECULAR
+ finalSpecular0 = calculateSpecular(finalColorBeforeLighting);
+ #endif
+ #ifdef POI_PARALLAX
+ calculateAndApplyInternalParallax(finalColor);
+ #endif
+
+ #ifdef POI_ALPHA_TO_COVERAGE
+ ApplyAlphaToCoverage(finalColor);
+ #endif
+
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 1)
+ {
+ applyDithering(finalColor);
+ }
+ }
+
+ #ifdef POI_METAL
+ calculateMetallicness();
+ bool probeExists = shouldMetalHappenBeforeLighting();
+
+ if(!probeExists)
+ {
+ ApplyMetallicsFake(finalColor, albedo);
+ }
+ #endif
+
+ #ifdef POI_LIGHTING
+ #if defined(FORWARD_ADD_PASS) && defined(POI_METAL)
+ finalLighting *= 1 - metalicMap;
+ #endif
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ finalColor.rgb *= finalLighting + poiLight.vFinalLighting;
+ #else
+ finalColor.rgb *= finalLighting;
+ #endif
+
+ #ifdef POI_METAL
+
+ if(probeExists)
+ {
+ ApplyMetallics(finalColor, albedo);
+ }
+ #endif
+
+ finalColor.rgb += finalSpecular0 + finalEnvironmentalRim + finalSSS;
+
+ #ifdef FORWARD_BASE_PASS
+ #ifdef POI_CLEARCOAT
+ calculateAndApplyClearCoat(finalColor);
+ #endif
+ #endif
+
+ finalColor.a = saturate(finalColor.a);
+
+ /**********************************************************************
+ Add Up all the emission values :D
+ **********************************************************************/
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ finalEmission += finalColorBeforeLighting.rgb * float(0) * albedo.a;
+ finalEmission += wireframeEmission;
+ finalEmission += IridescenceEmission;
+ finalEmission += spawnInEmission;
+ finalEmission += voronoiEmission;
+ finalEmission += matcapEmission;
+ finalEmission += depthTouchEmission;
+ finalEmission += decalEmission;
+ finalEmission += glitterEmission;
+ finalEmission += panosphereEmission;
+ finalEmission += backFaceEmission;
+ finalEmission += rimLightEmission;
+ finalEmission += flipbookEmission;
+ finalEmission += videoEmission;
+ finalEmission += textOverlayEmission;
+ finalEmission += dissolveEmission;
+ #ifdef POI_EMISSION
+ finalEmission += calculateEmissionNew(finalColorBeforeLighting, finalColor);
+ #endif
+ #endif
+
+ /**********************************************************************
+ Meta Pass Hype :D
+ **********************************************************************/
+ #ifdef POI_META_PASS
+ UnityMetaInput meta;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, meta);
+ meta.Emission = finalEmission * float(1);
+ meta.Albedo = saturate(finalColor.rgb);
+ #ifdef POI_SPECULAR
+ meta.SpecularColor = poiLight.color.rgb * float4(1,1,1,1).rgb * lerp(1, albedo.rgb, float(0)) * float4(1,1,1,1).a;
+ #else
+ meta.SpecularColor = poiLight.color.rgb * albedo.rgb;
+ #endif
+ return UnityMetaFragment(meta);
+ #endif
+
+ /**********************************************************************
+ Apply Emission to finalColor
+ **********************************************************************/
+ finalColor.rgb += finalEmission;
+
+ /**********************************************************************
+ Grabpass features
+ **********************************************************************/
+
+
+ if (_commentIfZero_EnableGrabpass)
+ {
+ applyGrabEffects(finalColor);
+ }
+
+ /**********************************************************************
+ Unity Fog
+ **********************************************************************/
+ #ifdef FORWARD_BASE_PASS
+
+ if (float(0) == 0)
+ {
+ UNITY_APPLY_FOG(i.fogCoord, finalColor);
+ }
+ #endif
+
+ #ifdef FORWARD_ADD_PASS
+ if(float(0) > 0)
+ {
+ finalColor.rgb *= finalColor.a;
+ }
+ #endif
+
+
+ if(float(0) == 0)
+ {
+ finalColor.a = 1;
+ }
+
+ #ifdef FORWARD_ADD_PASS
+ //finalColor.rgb = smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5));
+ #endif
+
+ #ifdef POI_DEBUG
+ displayDebugInfo(finalColor);
+ #endif
+
+ //finalColor.rgb = frac(finalColor.rgb);
+ return finalColor;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
new file mode 100644
index 00000000..7d4a4bb4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 50b5109a4b07329429c61d8f537a114c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
new file mode 100644
index 00000000..8d260cdf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_FUR
+ #define POI_FUR
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurTexture); float4 _FurTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurHeightMap); float4 _FurHeightMap_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurMask); float4 _FurMask_ST;
+ float _FurAO;
+ float4 _FurColor;
+ float _FurLayers;
+ float _FurMinDistance;
+ float _FurMaxDistance;
+ float _FurHeightMapMin;
+ float _FurHeightMapMax;
+ float _FurDebug;
+ float _AoRampMin;
+ float _AoRampMax;
+ float _FurTipAlpha;
+ float _FurFadeStart;
+
+ //globals
+ half furHeightMap;
+ half furMask;
+
+ void calculateFur()
+ {
+
+ furHeightMap = UNITY_SAMPLE_TEX2D_SAMPLER(_FurHeightMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurHeightMap)).x;
+ furHeightMap = remap(furHeightMap, 0, _FurHeightMapMax, _FurHeightMapMin, 1);
+ furMask = poiMax(UNITY_SAMPLE_TEX2D_SAMPLER(_FurMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurMask)).xyz);
+ half3 furTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_FurTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurTexture));
+ clip(furHeightMap - poiMesh.furAlpha);
+ clip(furMask - poiMesh.furAlpha);
+
+ albedo.rgb = lerp(mainTexture.rgb, furTexture.rgb * _FurColor.rgb, ceil(poiMesh.furAlpha));
+ float aoRampMax = _AoRampMax - (1 - furMask);
+ albedo.rgb *= lerp(1, smoothstep(_AoRampMin, aoRampMax, furHeightMap), _FurAO);
+
+ albedo.a *= smoothstep(1.01, _FurTipAlpha, remapClamped(poiMesh.furAlpha, _FurFadeStart, 1, 0, 1)) + float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
new file mode 100644
index 00000000..6bbc0a3c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6c80997fce8ef4e4f8d8edd2744a19a2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
new file mode 100644
index 00000000..032f3b08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
@@ -0,0 +1,37 @@
+float _FurLength;
+float _FurGravityStrength;
+
+[instance(4)]
+[maxvertexcount(20)]
+void geomFur(triangle v2f IN[3], inout TriangleStream < v2f > tristream, uint InstanceID : SV_GSInstanceID)
+{
+ float4 fur_worldPos[3];
+ v2f o_fur[3];
+ float3 offset = (float3(0, -1, 0) * (_FurLength*.9) *_FurGravityStrength);
+
+ for (int i = 0; i < 3; i++)
+ {
+ if (InstanceID == 0) {
+ IN[i].furAlpha = 0;
+ tristream.Append(IN[i]);
+ }
+ o_fur[i] = IN[i];
+ fur_worldPos[i] = float4(IN[i].worldPos + IN[i].normal * _FurLength, 1);
+ }
+ if (InstanceID == 0) {
+ tristream.RestartStrip();
+ }
+ int Total_FurLayers = clamp(floor(_FurLayers * (1 - smoothstep(_FurMinDistance, _FurMaxDistance, distance(IN[0].worldPos, getCameraPosition())))), min(1, _FurLayers), _FurLayers);
+
+ int startLayer = max(int(InstanceID) * 6 - 1, 0);
+ for (int layer = startLayer; layer < Total_FurLayers; layer++) {
+ for (int i = 0; i < 3; i++) {
+ o_fur[i].furAlpha = float(layer) / Total_FurLayers;
+ o_fur[i].worldPos = float4(lerp(IN[i].worldPos, fur_worldPos[i] + offset * o_fur[i].furAlpha, o_fur[i].furAlpha),1);
+ o_fur[i].pos = UnityWorldToClipPos(o_fur[i].worldPos);
+ o_fur[i].furAlpha += .01;
+ tristream.Append(o_fur[i]);
+ }
+ tristream.RestartStrip();
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
new file mode 100644
index 00000000..d1f681c2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: da1e9bdb15119aa40b8a50813519163c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
new file mode 100644
index 00000000..e31b6498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
@@ -0,0 +1,232 @@
+#ifndef POI_GLITTER
+ #define POI_GLITTER
+
+ half3 _GlitterColor;
+ POI_TEXTURE_NOSAMPLER(_GlitterMask);
+ float2 _GlitterPan;
+ POI_TEXTURE_NOSAMPLER(_GlitterColorMap);
+ POI_TEXTURE_NOSAMPLER(_GlitterTexture);
+ half _GlitterSpeed;
+ half _GlitterBrightness;
+ float _GlitterFrequency;
+ float _GlitterJitter;
+ half _GlitterSize;
+ half _GlitterContrast;
+ half _GlitterAngleRange;
+ half _GlitterMinBrightness;
+ half _GlitterBias;
+ float _GlitterRandomColors;
+ float2 _GlitterMinMaxSaturation;
+ float2 _GlitterMinMaxBrightness;
+ fixed _GlitterUseSurfaceColor;
+ float _GlitterBlendType;
+ float _GlitterMode;
+ float _GlitterShape;
+ float _GlitterCenterSize;
+ float _glitterFrequencyLinearEmissive;
+ float _GlitterJaggyFix;
+ float _GlitterRandomRotation;
+ float _GlitterTextureRotation;
+ float4 _GlitterMinMaxSize;
+ float _GlitterRandomSize;
+
+
+ float3 randomFloat3(float2 Seed, float maximum)
+ {
+ return(.5 + float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed), float2(12.9898, 78.233))) * 43758.5453)
+ ) * .5) * (maximum);
+ }
+
+ float3 randomFloat3Range(float2 Seed, float Range)
+ {
+ return(float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1) * Range;
+ }
+
+ float3 randomFloat3WiggleRange(float2 Seed, float Range)
+ {
+ float3 rando = (float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1);
+ float speed = 1 + float(10);
+ return float3(sin((_Time.x + rando.x * pi) * speed), sin((_Time.x + rando.y * pi) * speed), sin((_Time.x + rando.z * pi) * speed)) * Range;
+ }
+
+ void Unity_RandomRange_float(float2 Seed, float Min, float Max, out float Out)
+ {
+ float randomno = frac(sin(dot(Seed, float2(12.9898, 78.233))) * 43758.5453);
+ Out = lerp(Min, Max, randomno);
+ }
+
+ float3 RandomColorFromPoint(float2 rando)
+ {
+ fixed hue = random2(rando.x + rando.y).x;
+ fixed saturation = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.x);
+ fixed value = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.y);
+ float3 hsv = float3(hue, saturation, value);
+ return HSVtoRGB(hsv);
+ }
+
+ void applyGlitter(inout float4 albedo, inout float3 glitterEmission)
+ {
+
+
+ // Scale
+ float2 st = poiMesh.uv[0] * float(300);
+
+ // Tile the space
+ float2 i_st = floor(st);
+ float2 f_st = frac(st);
+
+ float m_dist = 10.; // minimun distance
+ float2 m_point = 0; // minimum point
+ float2 randoPoint = 0;
+ float2 dank;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 neighbor = float2(i, j);
+ float2 pos = random2(i_st + neighbor);
+ float2 rando = pos;
+ pos = 0.5 + 0.5 * sin(float(1) * 6.2831 * pos);
+ float2 diff = neighbor + pos - f_st;
+ float dist = length(diff);
+
+ if (dist < m_dist)
+ {
+ dank = diff;
+ m_dist = dist;
+ m_point = pos;
+ randoPoint = rando;
+ }
+ }
+ }
+
+ float randomFromPoint = random(randoPoint);
+
+ float size = float(0.3);
+
+ if(float(0))
+ {
+ size = remapClamped(randomFromPoint, 0, 1, float4(0.1,0.5,0,1).x, float4(0.1,0.5,0,1).y);
+ }
+
+
+ // Assign a color using the closest point position
+ //color += dot(m_point, float2(.3, .6));
+
+ // Add distance field to closest point center
+ // color.g = m_dist;
+
+ // Show isolines
+ //color -= abs(sin(40.0 * m_dist)) * 0.07;
+
+ // Draw cell center
+ half glitterAlpha = 1;
+ switch(float(0))
+ {
+ case 0: //circle
+ glitterAlpha = (1. - step(size, m_dist));
+ break;
+ case 1: //sqaure
+ float jaggyFix = pow(poiCam.distanceToVert, 2) * float(0);
+
+
+ if (float(0))
+ {
+ float2 center = float2(0, 0);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ dank = float2((dank.x - center.x) * cs - (dank.y - center.y) * sn + center.x, (dank.x - center.x) * sn + (dank.y - center.y) * cs + center.y);
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ else
+ {
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ break;
+ }
+
+ float3 finalGlitter = 0;
+
+ switch(float(0))
+ {
+ case 0:
+ float3 randomRotation = 0;
+
+ if(float(10) > 0)
+ {
+ randomRotation = randomFloat3WiggleRange(randoPoint, float(90));
+ }
+ else
+ {
+ randomRotation = randomFloat3Range(randoPoint, float(90));
+ }
+ float3 norm = poiMesh.normals[0];
+
+ float3 glitterReflectionDirection = normalize(mul(poiRotationMatrixFromAngles(randomRotation), norm));
+ finalGlitter = lerp(0, float(0) * glitterAlpha, glitterAlpha) + max(pow(saturate(dot(lerp(glitterReflectionDirection, poiCam.viewDir, float(0.8)), poiCam.viewDir)), float(300)), 0);
+ finalGlitter *= glitterAlpha;
+ break;
+ case 1:
+ float offset = random(randoPoint);
+ float brightness = sin((_Time.x + offset) * float(10)) * float(20) - (float(20) - 1);
+ finalGlitter = max(float(0) * glitterAlpha, brightness * glitterAlpha * smoothstep(0, 1, 1 - m_dist * float(0.08) * 10));
+ break;
+ }
+
+
+ half3 glitterColor = float4(1,1,1,1);
+ glitterColor *= lerp(1, albedo, float(0));
+ glitterColor *= POI2D_SAMPLER_PAN(_GlitterColorMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+
+ float2 uv = remapClamped(dank, -size, size, 0, 1);
+
+ if(float(0) && !float(0))
+ {
+ float2 fakeUVCenter = float2(.5, .5);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - fakeUVCenter.x) * cs - (uv.y - fakeUVCenter.y) * sn + fakeUVCenter.x, (uv.x - fakeUVCenter.x) * sn + (uv.y - fakeUVCenter.y) * cs + fakeUVCenter.y);
+ }
+ float4 glitterTexture = POI2D_SAMPLER_PAN(_GlitterTexture, _MainTex, uv, float4(0,0,0,0));
+ //float4 glitterTexture = _GlitterTexture.SampleGrad(sampler_MainTex, frac(uv), ddx(uv), ddy(uv));
+ glitterColor *= glitterTexture.rgb;
+ float glitterMask = POI2D_SAMPLER_PAN(_GlitterMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskGlitter != 4)
+ {
+ glitterMask *= blackLightMask[_BlackLightMaskGlitter];
+ }
+ #endif
+
+ if(float(0))
+ {
+ glitterColor *= RandomColorFromPoint(random2(randoPoint.x + randoPoint.y));
+ }
+
+
+ if(float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, finalGlitter * glitterColor * float(3), finalGlitter * glitterTexture.a * glitterMask);
+ glitterEmission = finalGlitter * glitterColor * max(0, (float(3) - 1) * glitterTexture.a) * glitterMask;
+ }
+ else
+ {
+ glitterEmission = finalGlitter * glitterColor * float(3) * glitterTexture.a * glitterMask;
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
new file mode 100644
index 00000000..e4e4e9a8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 80ae3ca6d804e464c8056b4c6b1bd308
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
new file mode 100644
index 00000000..060cb720
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
@@ -0,0 +1,127 @@
+#ifndef POI_GRAB
+ #define POI_GRAB
+
+ float _RefractionIndex;
+ float _RefractionOpacity;
+ float _RefractionChromaticAberattion;
+ float _RefractionEnabled;
+ float _GrabSrcBlend;
+ float _GrabDstBlend;
+ float _GrabPassUseAlpha;
+ float _GrabPassBlendFactor;
+ float _GrabBlurDistance;
+ float _GrabBlurQuality;
+ float _GrabBlurDirections;
+ POI_TEXTURE_NOSAMPLER(_GrabPassBlendMap);
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RefractionOpacityMask); float4 _RefractionOpacityMask_ST;
+
+ float4 blur(float2 uv)
+ {
+ float two_pi = 6.28318530718;
+
+ float2 radius = _GrabBlurDistance / _ScreenParams.xy * 100; // Arbitrary constant to match old blur
+ float quality = floor(_GrabBlurQuality);
+ float directions = floor(_GrabBlurDirections);
+
+ // Pixel colour
+ float4 color = tex2D(_PoiGrab, uv);
+
+ float deltaAngle = two_pi / directions;
+ float deltaQuality = 1.0 / quality;
+ for (int i = 0; i < directions; i ++)
+ {
+ for (int j = 0; j < quality; j ++)
+ {
+ float angle = deltaAngle * i + j;
+ float offset = deltaQuality * (j + 1);
+ color += tex2D(_PoiGrab, uv + float2(cos(angle), sin(angle)) * radius * offset);
+ }
+ }
+
+ // Output to screen
+ color /= quality * directions + 1;
+ return color;
+ }
+
+ inline float4 Refraction(float indexOfRefraction, float chromaticAberration, float2 projectedGrabPos)
+ {
+ float4 refractionColor;
+ float3 worldViewDir = normalize(UnityWorldSpaceViewDir(poiMesh.worldPos));
+ float3 refractionOffset = ((((indexOfRefraction - 1.0) * mul(UNITY_MATRIX_V, float4(poiMesh.normals[1], 0.0))) * (1.0 / (poiCam.grabPos.z + 1.0))) * (1.0 - dot(poiMesh.normals[1], worldViewDir)));
+ float2 cameraRefraction = float2(refractionOffset.x, - (refractionOffset.y * _ProjectionParams.x));
+
+
+ if (_RefractionChromaticAberattion > 0)
+ {
+ float4 redAlpha = tex2D(_PoiGrab, (projectedGrabPos + cameraRefraction));
+ float green = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 - chromaticAberration)))).g;
+ float blue = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 + chromaticAberration)))).b;
+ refractionColor = float4(redAlpha.r, green, blue, redAlpha.a);
+ }
+ else
+ {
+ float2 refractedGrab = projectedGrabPos + cameraRefraction;
+
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refractionColor = blur(refractedGrab);
+ #else
+ refractionColor = tex2D(_PoiGrab, (refractedGrab));
+ #endif
+ }
+ return refractionColor;
+ }
+
+ void calculateRefraction(float2 projectedGrabPos, inout float4 finalColor)
+ {
+ float3 refraction = 1;
+
+ if(_RefractionEnabled == 1)
+ {
+ refraction = Refraction(_RefractionIndex, _RefractionChromaticAberattion, projectedGrabPos).rgb;
+ }
+ else
+ {
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refraction = blur(projectedGrabPos);
+ #else
+ refraction = tex2Dproj(_PoiGrab, poiCam.grabPos);
+ #endif
+ }
+
+ float blendFactor = _GrabPassBlendFactor * POI2D_SAMPLER_PAN(_GrabPassBlendMap, _MainTex, poiMesh.uv[_GrabPassBlendMapUV], _GrabPassBlendMapPan).r;
+
+ if(_GrabPassUseAlpha)
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor * (1 - finalColor.a));
+ finalColor.a = 1;
+ }
+ else
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor);
+ }
+ }
+
+ float2 calculateGrabPosition()
+ {
+ float4 grabPos = poiCam.grabPos;
+ #if UNITY_UV_STARTS_AT_TOP
+ float scale = -1.0;
+ #else
+ float scale = 1.0;
+ #endif
+ float halfPosW = grabPos.w * 0.5;
+ grabPos.y = (grabPos.y - halfPosW) * _ProjectionParams.x * scale + halfPosW;
+ #if SHADER_API_D3D9 || SHADER_API_D3D11
+ grabPos.w += 0.00000000001;
+ #endif
+ return(grabPos / grabPos.w).xy;
+ }
+
+ void applyGrabEffects(inout float4 finalColor)
+ {
+ float2 projectedGrabPos = calculateGrabPosition();
+ calculateRefraction(projectedGrabPos, finalColor);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
new file mode 100644
index 00000000..e4963321
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a300c50bcaea2e541aeaa266508f3e87
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
new file mode 100644
index 00000000..9ae9e754
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
@@ -0,0 +1,338 @@
+#ifndef POI_HELPER
+ #define POI_HELPER
+
+ #include "CGI_PoiColors.cginc"
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float linearSin(float x)
+ {
+ return pow(min(cos(pi * x / 2.0), 1.0 - abs(x)), 1.0);
+ }
+
+ float random(float2 p)
+ {
+ return frac(sin(dot(p, float2(12.9898, 78.2383))) * 43758.5453123);
+ }
+
+ float2 random2(float2 p)
+ {
+ return frac(sin(float2(dot(p, float2(127.1, 311.7)), dot(p, float2(269.5, 183.3)))) * 43758.5453);
+ }
+
+ float3 random3(float3 p)
+ {
+ return frac(sin(float3(dot(p, float3(127.1, 311.7, 248.6)), dot(p, float3(269.5, 183.3, 423.3)), dot(p, float3(248.3, 315.9, 184.2)))) * 43758.5453);
+ }
+
+ float3 mod(float3 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+ float2 mod(float2 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+
+ //1/7
+ #define K 0.142857142857
+ //3/7
+ #define Ko 0.428571428571
+
+ // Permutation polynomial: (34x^2 + x) mod 289
+ float3 Permutation(float3 x)
+ {
+ return mod((34.0 * x + 1.0) * x, 289.0);
+ }
+
+ bool IsInMirror()
+ {
+ return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f;
+ }
+
+ float3 BoxProjection(float3 direction, float3 position, float4 cubemapPosition, float3 boxMin, float3 boxMax)
+ {
+ #if UNITY_SPECCUBE_BOX_PROJECTION
+
+ if (cubemapPosition.w > 0)
+ {
+ float3 factors = ((direction > 0 ? boxMax: boxMin) - position) / direction;
+ float scalar = min(min(factors.x, factors.y), factors.z);
+ direction = direction * scalar + (position - cubemapPosition);
+ }
+ #endif
+ return direction;
+ }
+
+ // Camera
+ float3 getCameraPosition()
+ {
+ #ifdef USING_STEREO_MATRICES
+ return lerp(unity_StereoWorldSpaceCameraPos[0], unity_StereoWorldSpaceCameraPos[1], 0.5);
+ #endif
+ return _WorldSpaceCameraPos;
+ }
+
+ float3 getCameraForward()
+ {
+ #if UNITY_SINGLE_PASS_STEREO
+ float3 p1 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 0, 1));
+ #else
+ float3 p1 = mul(unity_CameraToWorld, float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_CameraToWorld, float4(0, 0, 0, 1));
+ #endif
+ return normalize(p2 - p1);
+ }
+
+ float3 grayscale_vector_node()
+ {
+ return float3(0, 0.3823529, 0.01845836);
+ }
+
+ float3 grayscale_for_light()
+ {
+ return float3(0.298912, 0.586611, 0.114478);
+ }
+
+ //Math Operators
+
+ float remap(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float2 remap(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float3 remap(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float4 remap(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float remapClamped(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float2 remapClamped(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float3 remapClamped(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float4 remapClamped(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float poiMax(float2 i)
+ {
+ return max(i.x, i.y);
+ }
+
+ float poiMax(float3 i)
+ {
+ return max(max(i.x, i.y), i.z);
+ }
+
+ float poiMax(float4 i)
+ {
+ return max(max(max(i.x, i.y), i.z), i.w);
+ }
+
+ float4x4 poiAngleAxisRotationMatrix(float angle, float3 axis)
+ {
+ axis = normalize(axis);
+ float s = sin(angle);
+ float c = cos(angle);
+ float oc = 1.0 - c;
+
+ return float4x4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
+ oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
+ oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
+ 0.0, 0.0, 0.0, 1.0);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float x, float y, float z)
+ {
+ float angleX = radians(x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float3 angles)
+ {
+ float angleX = radians(angles.x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(angles.y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(angles.z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+#endif
+
+half2 calcScreenUVs(half4 grabPos)
+{
+ half2 uv = grabPos / (grabPos.w + 0.0000000001);
+ #if UNITY_SINGLE_PASS_STEREO
+ uv.xy *= half2(_ScreenParams.x * 2, _ScreenParams.y);
+ #else
+ uv.xy *= _ScreenParams.xy;
+ #endif
+
+ return uv;
+}
+
+float inverseLerp(float A, float B, float T)
+{
+ return(T - A) / (B - A);
+}
+
+float inverseLerp2(float2 a, float2 b, float2 value)
+{
+ float2 AB = b - a;
+ float2 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp3(float3 a, float3 b, float3 value)
+{
+ float3 AB = b - a;
+ float3 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp4(float4 a, float4 b, float4 value)
+{
+ float4 AB = b - a;
+ float4 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+// Dithering
+inline half Dither8x8Bayer(int x, int y)
+{
+ const half dither[ 64 ] = {
+ 1, 49, 13, 61, 4, 52, 16, 64,
+ 33, 17, 45, 29, 36, 20, 48, 32,
+ 9, 57, 5, 53, 12, 60, 8, 56,
+ 41, 25, 37, 21, 44, 28, 40, 24,
+ 3, 51, 15, 63, 2, 50, 14, 62,
+ 35, 19, 47, 31, 34, 18, 46, 30,
+ 11, 59, 7, 55, 10, 58, 6, 54,
+ 43, 27, 39, 23, 42, 26, 38, 22
+ };
+ int r = y * 8 + x;
+ return dither[r] / 64;
+}
+
+// UV Manipulation
+float2 TransformUV(half2 offset, half rotation, half2 scale, float2 uv)
+{
+ float theta = radians(rotation);
+ scale = 1 - scale;
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 centerPoint = offset + .5;
+ uv = float2((uv.x - centerPoint.x) * cs - (uv.y - centerPoint.y) * sn + centerPoint.x, (uv.x - centerPoint.x) * sn + (uv.y - centerPoint.y) * cs + centerPoint.y);
+
+ return remap(uv, float2(0, 0) + offset + (scale * .5), float2(1, 1) + offset - (scale * .5), float2(0, 0), float2(1, 1));
+}
+
+bool isVR()
+{
+ // USING_STEREO_MATRICES
+ #if UNITY_SINGLE_PASS_STEREO
+ return true;
+ #else
+ return false;
+ #endif
+}
+
+bool isVRHandCamera()
+{
+ return !isVR() && abs(UNITY_MATRIX_V[0].y) > 0.0000005;
+}
+
+bool isDesktop()
+{
+ return !isVRHandCamera();
+}
+
+bool isVRHandCameraPreview()
+{
+ return isVRHandCamera() && _ScreenParams.y == 720;
+}
+
+bool isVRHandCameraPicture()
+{
+ return isVRHandCamera() && _ScreenParams.y == 1080;
+}
+
+bool isPanorama()
+{
+ // Crude method
+ // FOV=90=camproj=[1][1]
+ return unity_CameraProjection[1][1] == 1 && _ScreenParams.x == 1075 && _ScreenParams.y == 1025;
+}
+
+float3 calculateluminance(float3 color)
+{
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
new file mode 100644
index 00000000..e16056d8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cc231b26c11ef744b9bbb8b640584704
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
new file mode 100644
index 00000000..6ee66d3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
@@ -0,0 +1,36 @@
+#ifndef POI_HOLOGRAM
+ #define POI_HOLOGRAM
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_HoloAlphaMap); float4 _HoloAlphaMap_ST;
+ float _HoloCoordinateSpace; // 0 World, 1 Local, 2 UV
+ float3 _HoloDirection;
+ float _HoloScrollSpeed;
+ float _HoloLineDensity;
+
+ fixed _HoloFresnelAlpha;
+ fixed _HoloRimSharpness;
+ fixed _HoloRimWidth;
+ void ApplyHoloAlpha(inout float4 color)
+ {
+ float uv = 0;
+
+ if (_HoloCoordinateSpace == 0)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.worldPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 1)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.localPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 2)
+ {
+ uv = dot(_HoloDirection, poiMesh.uv[0] * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+ float holoRim = saturate(1 - smoothstep(min(_HoloRimSharpness, _HoloRimWidth), _HoloRimWidth, poiCam.viewDotNormal));
+ holoRim = abs(lerp(1, holoRim, _HoloFresnelAlpha));
+ color.a *= UNITY_SAMPLE_TEX2D_SAMPLER(_HoloAlphaMap, _MainTex, uv).r * holoRim;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
new file mode 100644
index 00000000..2b363996
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e545346dea54f3c4b9929a7607102580
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
new file mode 100644
index 00000000..bcea8ccc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
@@ -0,0 +1,61 @@
+#ifndef POI_IRIDESCENCE
+ #define POI_IRIDESCENCE
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceRamp); float4 _IridescenceRamp_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceMask); float4 _IridescenceMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceNormalMap); float4 _IridescenceNormalMap_ST;
+ float _IridescenceNormalUV;
+ float _IridescenceMaskUV;
+ float _IridescenceNormalSelection;
+ float _IridescenceNormalIntensity;
+ float _IridescenceNormalToggle;
+ float _IridescenceIntensity;
+ fixed _IridescenceAddBlend;
+ fixed _IridescenceReplaceBlend;
+ fixed _IridescenceMultiplyBlend;
+ float _IridescenceEmissionStrength;
+
+ //global
+
+ float3 calculateNormal(float3 baseNormal)
+ {
+ float3 normal = UnpackScaleNormal(UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceNormalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceNormalUV], _IridescenceNormalMap)), _IridescenceNormalIntensity);
+ return normalize(
+ normal.x * poiMesh.tangent +
+ normal.y * poiMesh.binormal +
+ normal.z * baseNormal
+ );
+ }
+
+ void applyIridescence(inout float4 albedo, inout float3 IridescenceEmission)
+ {
+ float3 normal = poiMesh.normals[_IridescenceNormalSelection];
+
+ // Use custom normal map
+
+ if (_IridescenceNormalToggle)
+ {
+ normal = calculateNormal(normal);
+ }
+
+ float ndotv = dot(normal, poiCam.viewDir);
+
+ float4 iridescenceColor = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceRamp, _MainTex, 1 - abs(ndotv));
+ float4 iridescenceMask = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceMaskUV], _IridescenceMask));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskIridescence != 4)
+ {
+ iridescenceMask *= blackLightMask[_BlackLightMaskIridescence];
+ }
+ #endif
+
+
+ albedo.rgb = lerp(albedo.rgb, saturate(iridescenceColor.rgb * _IridescenceIntensity), iridescenceColor.a * _IridescenceReplaceBlend * iridescenceMask);
+ albedo.rgb += saturate(iridescenceColor.rgb * _IridescenceIntensity * iridescenceColor.a * _IridescenceAddBlend * iridescenceMask);
+ albedo.rgb *= saturate(lerp(1, iridescenceColor.rgb * _IridescenceIntensity, iridescenceColor.a * _IridescenceMultiplyBlend * iridescenceMask));
+
+ IridescenceEmission = saturate(iridescenceColor.rgb * _IridescenceIntensity) * iridescenceColor.a * iridescenceMask * _IridescenceEmissionStrength;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
new file mode 100644
index 00000000..7cdc0bc7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 73fb10f6a3770b84ca31e52e5afd3916
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
new file mode 100644
index 00000000..8f35cb62
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
@@ -0,0 +1,668 @@
+
+#ifndef POI_LIGHTING
+ #define POI_LIGHTING
+
+ float _LightingShadingEnabled;
+ float _LightingRampType;
+ float _LightingIgnoreAmbientColor;
+ float _UseShadowTexture;
+ float _LightingEnableAO;
+ float _LightingDetailShadowsEnabled;
+
+ float _LightingOnlyUnityShadows;
+ float _LightingMode;
+ float _ForceLightDirection;
+ float _ShadowStrength;
+ float _OutlineShadowStrength;
+ float _ShadowOffset;
+ float3 _LightDirection;
+ float _ForceShadowStrength;
+ float _CastedShadowSmoothing;
+ float _AttenuationMultiplier;
+ float _EnableLighting;
+ float _LightingControlledUseLightColor;
+ fixed _LightingStandardSmoothness;
+ fixed _LightingStandardControlsToon;
+ fixed _LightingMinLightBrightness;
+ float _LightingUseShadowRamp;
+ float _LightingMinShadowBrightnessRatio;
+ UNITY_DECLARE_TEX2D(_ToonRamp);
+ fixed _LightingMonochromatic;
+
+ fixed _LightingGradientStart;
+ fixed _LightingGradientEnd;
+ float3 _LightingShadowColor;
+ POI_TEXTURE_NOSAMPLER(_LightingShadowTexture);
+ float _AOStrength;
+ fixed _LightingDetailStrength;
+ fixed _LightingAdditiveDetailStrength;
+ fixed _LightingNoIndirectMultiplier;
+ fixed _LightingNoIndirectThreshold;
+ float _LightingUncapped;
+
+ float _LightingDirectColorMode;
+ float _LightingIndirectColorMode;
+ float _LightingAdditiveType;
+ fixed _LightingAdditiveGradientStart;
+ fixed _LightingAdditiveGradientEnd;
+ fixed _LightingAdditivePassthrough;
+ float _LightingDirectAdjustment;
+ float _LightingIndirect;
+ // HSL JUNK
+ float _LightingEnableHSL;
+ float _LightingShadowHue;
+ float _LightingShadowSaturation;
+ float _LightingShadowLightness;
+ float _LightingHSLIntensity;
+ /*
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ToonRamp3);
+ half _LightingShadowStrength3;
+ half _ShadowOffset3;
+ */
+
+ half4 shadowStrength;
+
+ POI_TEXTURE_NOSAMPLER(_LightingDetailShadows);
+ POI_TEXTURE_NOSAMPLER(_LightingAOTex);
+ POI_TEXTURE_NOSAMPLER(_LightingShadowMask);
+
+ /*
+ * MIT License
+ *
+ * Copyright (c) 2018 s-ilent
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+ /*
+ * Silent's code starts here
+ */
+
+ float shEvaluateDiffuseL1Geomerics_local(float L0, float3 L1, float3 n)
+ {
+ // average energy
+ float R0 = max(0, L0);
+
+ // avg direction of incoming light
+ float3 R1 = 0.5f * L1;
+
+ // directional brightness
+ float lenR1 = length(R1);
+
+ // linear angle between normal and direction 0-1
+ //float q = 0.5f * (1.0f + dot(R1 / lenR1, n));
+ //float q = dot(R1 / lenR1, n) * 0.5 + 0.5;
+ float q = dot(normalize(R1), n) * 0.5 + 0.5;
+ q = saturate(q); // Thanks to ScruffyRuffles for the bug identity.
+
+ // power for q
+ // lerps from 1 (linear) to 3 (cubic) based on directionality
+ float p = 1.0f + 2.0f * lenR1 / R0;
+
+ // dynamic range constant
+ // should vary between 4 (highly directional) and 0 (ambient)
+ float a = (1.0f - lenR1 / R0) / (1.0f + lenR1 / R0);
+
+ return R0 * (a + (1.0f - a) * (p + 1.0f) * pow(q, p));
+ }
+
+ half3 BetterSH9(half4 normal)
+ {
+ float3 indirect;
+ float3 L0 = float3(unity_SHAr.w, unity_SHAg.w, unity_SHAb.w) + float3(unity_SHBr.z, unity_SHBg.z, unity_SHBb.z) / 3.0;
+ indirect.r = shEvaluateDiffuseL1Geomerics_local(L0.r, unity_SHAr.xyz, normal);
+ indirect.g = shEvaluateDiffuseL1Geomerics_local(L0.g, unity_SHAg.xyz, normal);
+ indirect.b = shEvaluateDiffuseL1Geomerics_local(L0.b, unity_SHAb.xyz, normal);
+ indirect = max(0, indirect);
+ indirect += SHEvalLinearL2(normal);
+ return indirect;
+ }
+
+ float3 BetterSH9(float3 normal)
+ {
+ return BetterSH9(float4(normal, 1));
+ }
+
+ /*
+ * Standard stuff starts here
+ */
+ UnityLight CreateLight(float3 normal, fixed detailShadowMap)
+ {
+ UnityLight light;
+ light.dir = poiLight.direction;
+ light.color = saturate(_LightColor0.rgb * lerp(1, poiLight.attenuation, float(0)) * detailShadowMap);
+ light.ndotl = DotClamped(normal, poiLight.direction);
+ return light;
+ }
+
+ float FadeShadows(float attenuation)
+ {
+ #if HANDLE_SHADOWS_BLENDING_IN_GI || ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ // UNITY_LIGHT_ATTENUATION doesn't fade shadows for us.
+
+ #if ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ attenuation = lerp(1, poiLight.attenuation, float(0));
+ #endif
+
+ float viewZ = dot(_WorldSpaceCameraPos - poiMesh.worldPos, UNITY_MATRIX_V[2].xyz);
+ float shadowFadeDistance = UnityComputeShadowFadeDistance(poiMesh.worldPos, viewZ);
+ float shadowFade = UnityComputeShadowFade(shadowFadeDistance);
+ float bakedAttenuation = UnitySampleBakedOcclusion(poiMesh.lightmapUV.xy, poiMesh.worldPos);
+ attenuation = UnityMixRealtimeAndBakedShadows(
+ attenuation, bakedAttenuation, shadowFade
+ );
+ #endif
+
+ return attenuation;
+ }
+
+ void ApplySubtractiveLighting(inout UnityIndirect indirectLight)
+ {
+ #if SUBTRACTIVE_LIGHTING
+ poiLight.attenuation = FadeShadows(lerp(1, poiLight.attenuation, float(0)));
+
+ float ndotl = saturate(dot(i.normal, _WorldSpaceLightPos0.xyz));
+ float3 shadowedLightEstimate = ndotl * (1 - poiLight.attenuation) * _LightColor0.rgb;
+ float3 subtractedLight = indirectLight.diffuse - shadowedLightEstimate;
+ subtractedLight = max(subtractedLight, unity_ShadowColor.rgb);
+ subtractedLight = lerp(subtractedLight, indirectLight.diffuse, _LightShadowData.x);
+ indirectLight.diffuse = min(subtractedLight, indirectLight.diffuse);
+ #endif
+ }
+
+ float3 weightedBlend(float3 layer1, float3 layer2, float2 weights)
+ {
+ return(weights.x * layer1 + weights.y * layer2) / (weights.x + weights.y);
+ }
+
+ UnityIndirect CreateIndirectLight(float3 normal)
+ {
+ UnityIndirect indirectLight;
+ indirectLight.diffuse = 0;
+ indirectLight.specular = 0;
+
+ #if defined(FORWARD_BASE_PASS)
+ #if defined(LIGHTMAP_ON)
+ indirectLight.diffuse = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap, poiMesh.lightmapUV.xy));
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 lightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_LightmapInd, unity_Lightmap, poiMesh.lightmapUV.xy
+ );
+ indirectLight.diffuse = DecodeDirectionalLightmap(
+ indirectLight.diffuse, lightmapDirection, normal
+ );
+ #endif
+ ApplySubtractiveLighting(indirectLight);
+ #endif
+
+ #if defined(DYNAMICLIGHTMAP_ON)
+ float3 dynamicLightDiffuse = DecodeRealtimeLightmap(
+ UNITY_SAMPLE_TEX2D(unity_DynamicLightmap, poiMesh.lightmapUV.zw)
+ );
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 dynamicLightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_DynamicDirectionality, unity_DynamicLightmap,
+ poiMesh.lightmapUV.zw
+ );
+ indirectLight.diffuse += DecodeDirectionalLightmap(
+ dynamicLightDiffuse, dynamicLightmapDirection, normal
+ );
+ #else
+ indirectLight.diffuse += dynamicLightDiffuse;
+ #endif
+ #endif
+
+ #if !defined(LIGHTMAP_ON) && !defined(DYNAMICLIGHTMAP_ON)
+ #if UNITY_LIGHT_PROBE_PROXY_VOLUME
+ if (unity_ProbeVolumeParams.x == 1)
+ {
+ indirectLight.diffuse = SHEvalLinearL0L1_SampleProbeVolume(
+ float4(normal, 1), poiMesh.worldPos
+ );
+ indirectLight.diffuse = max(0, indirectLight.diffuse);
+ #if defined(UNITY_COLORSPACE_GAMMA)
+ indirectLight.diffuse = LinearToGammaSpace(indirectLight.diffuse);
+ #endif
+ }
+ else
+ {
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ }
+ #else
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ #endif
+ #endif
+
+ float3 reflectionDir = reflect(-poiCam.viewDir, normal);
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = 1 - float(0);
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+ #if UNITY_SPECCUBE_BLENDING
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ indirectLight.specular = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ indirectLight.specular = probe0;
+ }
+ #else
+ indirectLight.specular = probe0;
+ #endif
+ float occlusion = 1;
+
+ if(float(0))
+ {
+ occlusion = lerp(1, POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ }
+
+ indirectLight.diffuse *= occlusion;
+ indirectLight.diffuse = max(indirectLight.diffuse, float(0));
+ indirectLight.specular *= occlusion;
+ #endif
+
+ return indirectLight;
+ }
+
+ /*
+ * Poiyomi's cool as heck code starts here :smug:
+ */
+
+ half PoiDiffuse(half NdotV, half NdotL, half LdotH)
+ {
+ half fd90 = 0.5 + 2 * LdotH * LdotH * SmoothnessToPerceptualRoughness(.5);
+ // Two schlick fresnel term
+ half lightScatter = (1 + (fd90 - 1) * Pow5(1 - NdotL));
+ half viewScatter = (1 + (fd90 - 1) * Pow5(1 - NdotV));
+
+ return lightScatter * viewScatter;
+ }
+
+ float3 ShadeSH9Indirect()
+ {
+ return ShadeSH9(half4(0.0, -1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Direct()
+ {
+ return ShadeSH9(half4(0.0, 1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Normal(float3 normalDirection)
+ {
+ return ShadeSH9(half4(normalDirection, 1.0));
+ }
+
+ half3 GetSHLength()
+ {
+ half3 x, x1;
+ x.r = length(unity_SHAr);
+ x.g = length(unity_SHAg);
+ x.b = length(unity_SHAb);
+ x1.r = length(unity_SHBr);
+ x1.g = length(unity_SHBg);
+ x1.b = length(unity_SHBb);
+ return x + x1;
+ }
+
+ float3 calculateRealisticLighting(float4 colorToLight, fixed detailShadowMap)
+ {
+ return UNITY_BRDF_PBS(1, 0, 0, float(0), poiMesh.normals[1], poiCam.viewDir, CreateLight(poiMesh.normals[1], detailShadowMap), CreateIndirectLight(poiMesh.normals[1]));
+ }
+
+ void calculateBasePassLightMaps()
+ {
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ float AOMap = 1;
+ float AOStrength = 1;
+ float3 lightColor = poiLight.color;
+ /*
+ * Generate Basic Light Maps
+ */
+
+ bool lightExists = false;
+ if (all(_LightColor0.rgb >= 0.002))
+ {
+ lightExists = true;
+ }
+ #ifndef OUTLINE
+
+ if(float(0))
+ {
+ AOMap = POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ AOStrength = float(1);
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ if (lightExists)
+ {
+ lightColor = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+ }
+ else
+ {
+ lightColor = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ }
+
+ //lightColor = magic * magiratio + normalLight * normaRatio;
+ //lightColor = magic + normalLight;
+ #endif
+ #endif
+
+ float3 grayscale_vector = float3(.33333, .33333, .33333);
+ float3 ShadeSH9Plus = GetSHLength();
+ float3 ShadeSH9Minus = BetterSH9(float4(0, 0, 0, 1));
+
+ shadowStrength = 1;
+ #ifndef OUTLINE
+ shadowStrength = POI2D_SAMPLER_PAN(_LightingShadowMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(1);
+ #else
+ shadowStrength = float(1);
+ #endif
+
+ float bw_lightColor = dot(lightColor, grayscale_vector);
+ float bw_directLighting = (((poiLight.nDotL * 0.5 + 0.5) * bw_lightColor * lerp(1, poiLight.attenuation, float(0))) + dot(ShadeSH9Normal(poiMesh.normals[1]), grayscale_vector));
+ float bw_bottomIndirectLighting = dot(ShadeSH9Minus, grayscale_vector);
+ float bw_topIndirectLighting = dot(ShadeSH9Plus, grayscale_vector);
+ float lightDifference = ((bw_topIndirectLighting + bw_lightColor) - bw_bottomIndirectLighting);
+
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(0))
+ {
+ poiLight.lightMap = poiLight.attenuation;
+ }
+ else
+ {
+ poiLight.lightMap = smoothstep(0, lightDifference, bw_directLighting - bw_bottomIndirectLighting);
+ }
+ poiLight.lightMap *= detailShadow;
+
+ /*
+ * Decide on light colors
+ */
+
+ float3 indirectLighting = 0;
+ float3 directLighting = 0;
+
+
+
+
+ if (float(0) == 1)
+ {
+ indirectLighting = BetterSH9(float4(poiMesh.normals[0], 1));
+ }
+ else
+ {
+ indirectLighting = ShadeSH9Minus;
+ }
+
+ poiLight.directLighting = lightColor;
+ poiLight.indirectLighting = indirectLighting;
+
+
+ if(float(0) == 0)
+ {
+ float3 magic = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+
+ float magiLumi = calculateluminance(magic);
+ float normaLumi = calculateluminance(normalLight);
+ float maginormalumi = magiLumi + normaLumi;
+
+ float magiratio = magiLumi / maginormalumi;
+ float normaRatio = normaLumi / maginormalumi;
+
+ float target = calculateluminance(magic * magiratio + normalLight * normaRatio);
+ float3 properLightColor = magic + normalLight;
+ float properLuminance = calculateluminance(magic + normalLight);
+ directLighting = properLightColor * max(0.0001, (target / properLuminance));
+ }
+ else
+ {
+ directLighting = lightColor;
+ }
+
+
+ if(!float(0))
+ {
+ float directluminance = calculateluminance(directLighting);
+ float indirectluminance = calculateluminance(indirectLighting);
+ directLighting = min(directLighting, directLighting / max(0.0001, (directluminance / 1)));
+ indirectLighting = min(indirectLighting, indirectLighting / max(0.0001, (indirectluminance / 1)));
+ }
+
+ directLighting = lerp(directLighting, dot(directLighting, float3(0.299, 0.587, 0.114)), float(0));
+ indirectLighting = lerp(indirectLighting, dot(indirectLighting, float3(0.299, 0.587, 0.114)), float(0));
+
+ if(max(max(indirectLighting.x, indirectLighting.y), indirectLighting.z) <= _LightingNoIndirectThreshold && max(max(directLighting.x, directLighting.y), directLighting.z) >= 0)
+ {
+ indirectLighting = directLighting * _LightingNoIndirectMultiplier;
+ }
+
+
+ if(float(0))
+ {
+ float directluminance = clamp(directLighting.r * 0.299 + directLighting.g * 0.587 + directLighting.b * 0.114, 0, 1);
+ if(directluminance > 0)
+ {
+ indirectLighting = max(0.001, indirectLighting);
+ }
+ float indirectluminance = clamp(indirectLighting.r * 0.299 + indirectLighting.g * 0.587 + indirectLighting.b * 0.114, 0, 1);
+ float targetluminance = directluminance * float(0);
+ if(indirectluminance < targetluminance)
+ {
+ indirectLighting = indirectLighting / max(0.0001, indirectluminance / targetluminance);
+ }
+ }
+
+ /*
+ * Create Shade Maps
+ */
+
+ if (float(0))
+ {
+ switch(float(0))
+ {
+ case 0: // Ramp Texture
+ {
+ poiLight.rampedLightMap = lerp(1, UNITY_SAMPLE_TEX2D(_ToonRamp, poiLight.lightMap + float(0)), shadowStrength.r);
+
+ if (float(0))
+ {
+ poiLight.finalLighting = lerp(poiLight.rampedLightMap * directLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ else
+ {
+ poiLight.finalLighting = lerp(indirectLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ }
+ break;
+ case 1: // Math Gradient
+ {
+ poiLight.rampedLightMap = saturate(1 - smoothstep(float(0) - .000001, float(0.5), 1 - poiLight.lightMap));
+ float3 shadowColor = float4(1,1,1,1);
+
+ if (float(0))
+ {
+ shadowColor = 1;
+ }
+
+ if(float(0))
+ {
+ poiLight.finalLighting = lerp((directLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ else
+ {
+ poiLight.finalLighting = lerp((indirectLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ }
+ break;
+ }
+ }
+ else
+ {
+ poiLight.rampedLightMap = 1 - smoothstep(0, .5, 1 - poiLight.lightMap);
+ poiLight.finalLighting = directLighting;
+ }
+
+ if(!float(0))
+ {
+ poiLight.finalLighting = saturate(poiLight.finalLighting);
+ }
+ //poiLight.finalLighting *= .8;
+ #endif
+ }
+
+ void applyShadowTexture(inout float4 albedo)
+ {
+
+ if (float(0) && float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, POI2D_SAMPLER_PAN(_LightingShadowTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1), (1 - poiLight.rampedLightMap) * shadowStrength);
+ }
+ }
+
+ float3 calculateNonImportantLighting(float attenuation, float attenuationDotNL, float3 albedo, float3 lightColor, half dotNL)
+ {
+ fixed detailShadow = 1;
+
+ if(float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ return lightColor * attenuationDotNL * detailShadow;
+ }
+ else
+ {
+ return lerp(lightColor * attenuation, lightColor * float(0.5) * attenuation, smoothstep(float(0), float(0.5), dotNL)) * detailShadow;
+ }
+ }
+
+
+ float3 calculateFinalLighting(inout float3 albedo, float4 finalColor)
+ {
+ float3 finalLighting = 1;
+ // Additive Lighting
+ #ifdef FORWARD_ADD_PASS
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ finalLighting = poiLight.color * poiLight.attenuation * max(0, poiLight.nDotL) * detailShadow;
+ }
+ else
+ {
+ #if defined(POINT) || defined(SPOT)
+ finalLighting = lerp(poiLight.color * max(poiLight.additiveShadow, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * poiLight.attenuation * detailShadow;
+ #else
+ finalLighting = lerp(poiLight.color * max(poiLight.attenuation, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * detailShadow;
+ #endif
+ }
+ #endif
+
+ // Base and Meta Lighting
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ #ifdef VERTEXLIGHT_ON
+ poiLight.vFinalLighting = 0;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vFinalLighting += calculateNonImportantLighting(poiLight.vAttenuation[index], poiLight.vAttenuationDotNL[index], albedo, poiLight.vColor[index], poiLight.vCorrectedDotNL[index]);
+ }
+ #endif
+
+ switch(float(0))
+ {
+ case 0: // Toon Lighting
+ {
+ // HSL Shading
+
+ if (float(0))
+ {
+ float3 HSLMod = float3(float(0.5) * 2 - 1, float(0.5) * 2 - 1, float(0.5) * 2 - 1) * (1 - poiLight.rampedLightMap);
+ albedo = lerp(albedo.rgb, ModifyViaHSL(albedo.rgb, HSLMod), float(1));
+ }
+
+ // Normal Shading
+
+ if (float(0) > 0)
+ {
+ poiLight.finalLighting = max(0.001, poiLight.finalLighting);
+ float finalluminance = calculateluminance(poiLight.finalLighting);
+ finalLighting = max(poiLight.finalLighting, poiLight.finalLighting / max(0.0001, (finalluminance / float(0))));
+ }
+ else
+ {
+ finalLighting = poiLight.finalLighting;
+ }
+ }
+ break;
+ case 1: // realistic
+ {
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ float3 realisticLighting = calculateRealisticLighting(finalColor, detailShadow).rgb;
+ finalLighting = lerp(realisticLighting, dot(realisticLighting, float3(0.299, 0.587, 0.114)), float(0));
+ }
+ break;
+ }
+ #endif
+ return finalLighting;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
new file mode 100644
index 00000000..318f9986
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f9f8031c28edd8f4898c847a0695af49
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
new file mode 100644
index 00000000..c23736df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
@@ -0,0 +1,243 @@
+#ifndef POI_MSDF
+ #define POI_MSDF
+
+ sampler2D _TextGlyphs;
+ float4 _TextGlyphs_ST;
+ float4 _TextGlyphs_TexelSize;
+ float _TextFPSUV;
+ float _TextTimeUV;
+ float _TextPositionUV;
+ float _TextPixelRange;
+
+ float _TextFPSEnabled;
+ float _TextPositionEnabled;
+ float _TextTimeEnabled;
+
+
+ float4 _TextFPSColor;
+ half _TextFPSEmissionStrength;
+ fixed4 _TextFPSPadding;
+ half2 _TextFPSOffset;
+ half2 _TextFPSScale;
+ half _TextFPSRotation;
+
+ fixed _TextPositionVertical;
+ float4 _TextPositionColor;
+ half _TextPositionEmissionStrength;
+ fixed4 _TextPositionPadding;
+ half2 _TextPositionOffset;
+ half2 _TextPositionScale;
+ half _TextPositionRotation;
+
+ float4 _TextTimeColor;
+ half _TextTimeEmissionStrength;
+ fixed4 _TextTimePadding;
+ half2 _TextTimeOffset;
+ half2 _TextTimeScale;
+ half _TextTimeRotation;
+
+ #define glyphWidth 0.0625
+
+ #define ASCII_LEFT_PARENTHESIS 40
+ #define ASCII_RIGHT_PARENTHESIS 41
+ #define ASCII_POSITIVE 43
+ #define ASCII_PERIOD 46
+ #define ASCII_NEGATIVE 45
+ #define ASCII_COMMA 44
+ #define ASCII_E 69
+ #define ASCII_F 70
+ #define ASCII_I 73
+ #define ASCII_M 77
+ #define ASCII_O 79
+ #define ASCII_P 80
+ #define ASCII_S 83
+ #define ASCII_T 54
+ #define ASCII_SEMICOLON 58
+
+ float3 globalTextEmission;
+
+ half2 getAsciiCoordinate(float index)
+ {
+ return half2((index - 1) / 16, 1 - ((floor(index / 16 - glyphWidth)) / 16));
+ }
+
+ float median(float r, float g, float b)
+ {
+ return max(min(r, g), min(max(r, g), b));
+ }
+
+ void ApplyPositionText(inout float4 albedo, float2 uv)
+ {
+ float3 cameraPos = clamp(getCameraPosition(), -999, 999);
+ float3 absCameraPos = abs(cameraPos);
+ float totalCharacters = 20;
+ float positionArray[20];
+ positionArray[0] = cameraPos.x >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[1] = floor((absCameraPos.x * .01) % 10) + 48;
+ positionArray[2] = floor((absCameraPos.x * .1) % 10) + 48;
+ positionArray[3] = floor(absCameraPos.x % 10) + 48;
+ positionArray[4] = ASCII_PERIOD;
+ positionArray[5] = floor((absCameraPos.x * 10) % 10) + 48;
+ positionArray[6] = ASCII_COMMA;
+ positionArray[7] = cameraPos.y >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[8] = floor((absCameraPos.y * .01) % 10) + 48;
+ positionArray[9] = floor((absCameraPos.y * .1) % 10) + 48;
+ positionArray[10] = floor(absCameraPos.y % 10) + 48;
+ positionArray[11] = ASCII_PERIOD;
+ positionArray[12] = floor((absCameraPos.y * 10) % 10) + 48;
+ positionArray[13] = ASCII_COMMA;
+ positionArray[14] = cameraPos.z >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[15] = floor((absCameraPos.z * .01) % 10) + 48;
+ positionArray[16] = floor((absCameraPos.z * .1) % 10) + 48;
+ positionArray[17] = floor(absCameraPos.z % 10) + 48;
+ positionArray[18] = ASCII_PERIOD;
+ positionArray[19] = floor((absCameraPos.z * 10) % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if (uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(positionArray[currentCharacter]);
+
+ float2 startUV = float2(1 / totalCharacters * currentCharacter, 0);
+ float2 endUV = float2(1 / totalCharacters * (currentCharacter + 1), 1);
+
+ fixed4 textPositionPadding = float4(0,0,0,0);
+ textPositionPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, startUV, endUV, float2(glyphPos.x + textPositionPadding.x, glyphPos.y - glyphWidth + textPositionPadding.y), float2(glyphPos.x + glyphWidth - textPositionPadding.z, glyphPos.y - textPositionPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textPositionPadding.z - .001 || uv.x < glyphPos.x + textPositionPadding.x + .001 || uv.y > glyphPos.y - textPositionPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textPositionPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTimeText(inout float4 albedo, float2 uv)
+ {
+ float instanceTime = _Time.y;
+ float hours = instanceTime / 3600;
+ float minutes = (instanceTime / 60) % 60;
+ float seconds = instanceTime % 60;
+ float totalCharacters = 8;
+ float timeArray[8];
+ timeArray[0] = floor((hours * .1) % 10) + 48;
+ timeArray[1] = floor(hours % 10) + 48;
+ timeArray[2] = ASCII_SEMICOLON;
+ timeArray[3] = floor((minutes * .1) % 10) + 48;
+ timeArray[4] = floor(minutes % 10) + 48;
+ timeArray[5] = ASCII_SEMICOLON;
+ timeArray[6] = floor((seconds * .1) % 10) + 48;
+ timeArray[7] = floor(seconds % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(timeArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+ fixed4 textTimePadding = float4(0,0,0,0);
+ textTimePadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textTimePadding.x, glyphPos.y - glyphWidth + textTimePadding.y), float2(glyphPos.x + glyphWidth - textTimePadding.z, glyphPos.y - textTimePadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textTimePadding.z - .001 || uv.x < glyphPos.x + textTimePadding.x + .001 || uv.y > glyphPos.y - textTimePadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textTimePadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyFPSText(inout float4 albedo, float2 uv)
+ {
+ float smoothDeltaTime = clamp(unity_DeltaTime.w, 0, 999);
+ float totalCharacters = 7;
+ float fpsArray[7];
+ fpsArray[0] = ASCII_F;
+ fpsArray[1] = ASCII_P;
+ fpsArray[2] = ASCII_S;
+ fpsArray[3] = ASCII_SEMICOLON;
+ fpsArray[4] = floor((smoothDeltaTime * .01) % 10) + 48;
+ fpsArray[5] = floor((smoothDeltaTime * .1) % 10) + 48;
+ fpsArray[6] = floor(smoothDeltaTime % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(fpsArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+
+ fixed4 textFPSPadding = float4(0,0,0,0);
+ textFPSPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textFPSPadding.x, glyphPos.y - glyphWidth + textFPSPadding.y), float2(glyphPos.x + glyphWidth - textFPSPadding.z, glyphPos.y - textFPSPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textFPSPadding.z - .001 || uv.x < glyphPos.x + textFPSPadding.x + .001 || uv.y > glyphPos.y - textFPSPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textFPSPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,1,1,1).rgb, opacity * float4(1,1,1,1).a);
+ globalTextEmission += float4(1,1,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTextOverlayColor(inout float4 albedo, inout float3 textOverlayEmission)
+ {
+ globalTextEmission = 0;
+ half positionalOpacity = 0;
+ #ifdef EFFECT_BUMP
+
+ if(float(0))
+ {
+ ApplyFPSText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyPositionText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyTimeText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ textOverlayEmission = globalTextEmission;
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
new file mode 100644
index 00000000..9187a1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7d6ca01f76b8ee64dba2bc9c856a464b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
new file mode 100644
index 00000000..ecac0805
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
@@ -0,0 +1,33 @@
+#ifndef POI_MACROS
+ #define POI_MACROS
+
+ #define POI_TEXTURE_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_TEXTURE(tex) UNITY_DECLARE_TEX2D(tex##); float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_NORMAL_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV; float tex##Scale
+
+ #define POI2D_SAMPLER_PAN(tex, texSampler, uv, pan) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D_SAMPLER(tex, texSampler, uv) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex)))
+ #define POI2D_PAN(tex, uv, pan) (tex2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D(tex, uv) (tex2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D(tex, uv) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D_PAN(tex, uv, pan) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+
+ #ifdef POINT
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ unityShadowCoord3 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1)).xyz; \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = tex2D(_LightTexture0, dot(lightCoord, lightCoord).rr).r;
+ #endif
+
+ #ifdef SPOT
+ #if !defined(UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS)
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1))
+ #else
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = input._LightCoord
+ #endif
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ DECLARE_LIGHT_COORD(input, worldPos); \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = (lightCoord.z > 0) * UnitySpotCookie(lightCoord) * UnitySpotAttenuate(lightCoord.xyz);
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
new file mode 100644
index 00000000..e74a96cf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c5320c3780e88ca4aa6334554280f55b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
new file mode 100644
index 00000000..270384af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
@@ -0,0 +1,147 @@
+#ifndef POI_MAINTEXTURE
+ #define POI_MAINTEXTURE
+
+
+
+ POI_TEXTURE_NOSAMPLER(_AlphaMask);
+ POI_TEXTURE_NOSAMPLER(_MainFadeTexture);
+ float4 _Color;
+ float _MainVertexColoring;
+ float _MainUseVertexColorAlpha;
+ float _Saturation;
+ float2 _MainDistanceFade;
+ half _MainMinAlpha;
+ float _MainHueShift;
+ #ifdef COLOR_GRADING_HDR
+ POI_TEXTURE_NOSAMPLER(_MainHueShiftMask);
+ float _MainHueShiftToggle;
+ float _MainHueShiftSpeed;
+ float _MainHueShiftReplace;
+ #endif
+
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailTex);
+ half _DetailTexIntensity;
+ half3 _DetailTint;
+ float _DetailBrightness;
+ #endif
+ //globals
+ float alphaMask;
+ half3 diffColor;
+
+ #include "CGI_PoiBackFace.cginc"
+
+ float3 wireframeEmission;
+
+ inline FragmentCommonData SpecularSetup(float4 i_tex, inout float4 albedo)
+ {
+ half4 specGloss = 0;
+ half3 specColor = specGloss.rgb;
+ half smoothness = specGloss.a;
+
+ half oneMinusReflectivity;
+ diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specColor, /*out*/ oneMinusReflectivity);
+
+ FragmentCommonData o = (FragmentCommonData)0;
+ o.diffColor = diffColor;
+ o.specColor = specColor;
+ o.oneMinusReflectivity = oneMinusReflectivity;
+ o.smoothness = smoothness;
+ return o;
+ }
+
+ inline FragmentCommonData FragmentSetup(float4 i_tex, half3 i_viewDirForParallax, float3 i_posWorld, inout float4 albedo)
+ {
+ i_tex = i_tex;
+
+ FragmentCommonData o = SpecularSetup(i_tex, albedo);
+ o.normalWorld = float4(0, 0, 0, 1);
+ o.eyeVec = poiCam.viewDir;
+ o.posWorld = i_posWorld;
+
+ // NOTE: shader relies on pre-multiply alpha-blend (float(1) = One, float(0) = OneMinusSrcAlpha)
+ o.diffColor = PreMultiplyAlpha(o.diffColor, 1, o.oneMinusReflectivity, /*out*/ o.alpha);
+ return o;
+ }
+
+ void initTextureData(inout float4 albedo, inout float4 mainTexture, inout float3 backFaceEmission, inout float3 dissolveEmission, in half3 detailMask)
+ {
+ dissolveEmission = 0;
+
+ #if (defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ #endif
+
+ alphaMask = POI2D_SAMPLER_PAN(_AlphaMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ mainTexture.a *= alphaMask;
+
+ #ifndef POI_SHADOW
+ albedo = float4(lerp(mainTexture.rgb, dot(mainTexture.rgb, float3(0.3, 0.59, 0.11)), -float(0)) * max(float4(1,1,1,1).rgb, float3(0.000000001, 0.000000001, 0.000000001)) * lerp(1, GammaToLinearSpace(poiMesh.vertexColor.rgb), float(0)), mainTexture.a * max(float4(1,1,1,1).a, 0.0000001));
+
+ #ifdef POI_LIGHTING
+ applyShadowTexture(albedo);
+ #endif
+
+ albedo *= lerp(1, poiMesh.vertexColor.a, float(0));
+ #ifdef POI_RGBMASK
+ albedo.rgb = calculateRGBMask(albedo.rgb);
+ #endif
+
+ albedo.a = saturate(float(0) + albedo.a);
+
+ wireframeEmission = 0;
+ #ifdef POI_WIREFRAME
+ applyWireframe(wireframeEmission, albedo);
+ #endif
+ float backFaceDetailIntensity = 1;
+
+ float mixedHueShift = float(0);
+ applyBackFaceTexture(backFaceDetailIntensity, mixedHueShift, albedo, backFaceEmission);
+
+ #ifdef POI_FUR
+ calculateFur();
+ #endif
+
+ #ifdef COLOR_GRADING_HDR
+ float hueShiftAlpha = POI2D_SAMPLER_PAN(_MainHueShiftMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if(float(1))
+ {
+ albedo.rgb = lerp(albedo.rgb, hueShift(albedo.rgb, mixedHueShift + float(0) * _Time.x), hueShiftAlpha);
+ }
+ else
+ {
+ albedo.rgb = hueShift(albedo.rgb, frac((mixedHueShift - (1 - hueShiftAlpha) + float(0) * _Time.x)));
+ }
+ #endif
+ #ifdef FINALPASS
+ half3 detailTexture = POI2D_SAMPLER_PAN(_DetailTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb * float4(1,1,1,1).rgb;
+ albedo.rgb *= LerpWhiteTo(detailTexture * float(1) * unity_ColorSpaceDouble.rgb, detailMask.r * float(1) * backFaceDetailIntensity);
+ #endif
+ albedo.rgb = saturate(albedo.rgb);
+
+ #ifdef POI_HOLOGRAM
+ ApplyHoloAlpha(albedo);
+ #endif
+
+ s = FragmentSetup(float4(poiMesh.uv[0], 1, 1), poiCam.viewDir, poiMesh.worldPos, albedo);
+ #endif
+
+ #ifdef DISTORT
+ calculateDissolve(albedo, dissolveEmission);
+ #endif
+ }
+
+ void distanceFade(inout float4 albedo)
+ {
+ half fadeMap = POI2D_SAMPLER_PAN(_MainFadeTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(fadeMap)
+ {
+ half fadeValue = max(smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, poiCam.distanceToVert), float(0));
+ albedo.a *= fadeValue;
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
new file mode 100644
index 00000000..7acc324f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f7a04619cee9c7540b69b02bbb3ed28c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
new file mode 100644
index 00000000..3aa6d6b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
@@ -0,0 +1,115 @@
+#ifndef MATCAP
+ #define MATCAP
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap); float4 _Matcap_ST;
+ POI_TEXTURE_NOSAMPLER(_MatcapMask);
+ float _MatcapMaskInvert;
+ float _MatcapBorder;
+ float4 _MatcapColor;
+ float _MatcapIntensity;
+ float _MatcapReplace;
+ float _MatcapMultiply;
+ float _MatcapAdd;
+ float _MatcapEnable;
+ float _MatcapLightMask;
+ float _MatcapEmissionStrength;
+ float _MatcapNormal;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap2);float4 _Matcap2_ST;
+ POI_TEXTURE_NOSAMPLER(_Matcap2Mask);
+ float _Matcap2MaskInvert;
+ float _Matcap2Border;
+ float4 _Matcap2Color;
+ float _Matcap2Intensity;
+ float _Matcap2Replace;
+ float _Matcap2Multiply;
+ float _Matcap2Add;
+ float _Matcap2Enable;
+ float _Matcap2LightMask;
+ float _Matcap2EmissionStrength;
+ float _Matcap2Normal;
+
+ void blendMatcap(inout float4 finalColor, float add, float multiply, float replace, float4 matcapColor, float matcapMask, inout float3 matcapEmission, float emissionStrength
+ #ifdef POI_LIGHTING
+ , float matcapLightMask
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , uint blackLightMaskIndex
+ #endif
+ )
+ {
+ #ifdef POI_LIGHTING
+ if (matcapLightMask)
+ {
+ matcapMask *= lerp(1, poiLight.rampedLightMap, matcapLightMask);
+ }
+ #endif
+ #ifdef POI_BLACKLIGHT
+ if(blackLightMaskIndex != 4)
+ {
+ matcapMask *= blackLightMask[blackLightMaskIndex];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor.rgb, matcapColor.rgb, replace * matcapMask * matcapColor.a);
+ finalColor.rgb *= lerp(1, matcapColor.rgb, multiply * matcapMask * matcapColor.a);
+ finalColor.rgb += matcapColor.rgb * add * matcapMask * matcapColor.a;
+ matcapEmission += matcapColor.rgb * emissionStrength * matcapMask * matcapColor.a;
+ }
+
+ void applyMatcap(inout float4 finalColor, inout float3 matcapEmission)
+ {
+ float4 matcap = 0;
+ float matcapMask = 0;
+ float4 matcap2 = 0;
+ float matcap2Mask = 0;
+
+ // Both matcaps use the same coordinates
+ half3 worldViewUp = normalize(half3(0, 1, 0) - poiCam.viewDir * dot(poiCam.viewDir, half3(0, 1, 0)));
+ half3 worldViewRight = normalize(cross(poiCam.viewDir, worldViewUp));
+
+ // Matcap 1
+ half2 matcapUV = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+
+ matcap = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap, _MainTex, TRANSFORM_TEX(matcapUV, _Matcap)) * float4(1,1,1,1);
+ matcap.rgb *= float(1);
+ matcapMask = POI2D_SAMPLER_PAN(_MatcapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if (float(0))
+ {
+ matcapMask = 1 - matcapMask;
+ }
+
+ blendMatcap(finalColor, float(0), float(0), float(1), matcap, matcapMask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap
+ #endif
+ );
+
+ // Matcap 2
+
+ if (float(0))
+ {
+ half2 matcapUV2 = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+ matcap2 = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap2, _MainTex, TRANSFORM_TEX(matcapUV2, _Matcap2)) * float4(1,1,1,1);
+ matcap2.rgb *= float(1);
+ matcap2Mask = POI2D_SAMPLER_PAN(_Matcap2Mask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(float(0))
+ {
+ matcap2Mask = 1 - matcap2Mask;
+ }
+ blendMatcap(finalColor, float(0), float(0), float(0), matcap2, matcap2Mask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap2
+ #endif
+ );
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
new file mode 100644
index 00000000..136dba17
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c42c70418c35b794881ae877e0562e2b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
new file mode 100644
index 00000000..b2d07a38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
@@ -0,0 +1,104 @@
+/*
+MIT License
+
+Copyright (c) 2019 wraikny
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+VertexTransformShader is dependent on:
+*/
+
+#ifndef POI_MATH
+ #define POI_MATH
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float4 quaternion_conjugate(float4 v)
+ {
+ return float4(
+ v.x, -v.yzw
+ );
+ }
+
+ float4 quaternion_mul(float4 v1, float4 v2)
+ {
+ float4 result1 = (v1.x * v2 + v1 * v2.x);
+
+ float4 result2 = float4(
+ - dot(v1.yzw, v2.yzw),
+ cross(v1.yzw, v2.yzw)
+ );
+
+ return float4(result1 + result2);
+ }
+
+ // angle : radians
+ float4 get_quaternion_from_angle(float3 axis, float angle)
+ {
+ return float4(
+ cos(angle / 2.0),
+ normalize(axis) * sin(angle / 2.0)
+ );
+ }
+
+ float4 quaternion_from_vector(float3 inVec)
+ {
+ return float4(0.0, inVec);
+ }
+
+ float degree_to_radius(float degree)
+ {
+ return(
+ degree / 180.0 * pi
+ );
+ }
+
+ float3 rotate_with_quaternion(float3 inVec, float3 rotation)
+ {
+ float4 qx = get_quaternion_from_angle(float3(1, 0, 0), degree_to_radius(rotation.x));
+ float4 qy = get_quaternion_from_angle(float3(0, 1, 0), degree_to_radius(rotation.y));
+ float4 qz = get_quaternion_from_angle(float3(0, 0, 1), degree_to_radius(rotation.z));
+
+ #define MUL3(A, B, C) quaternion_mul(quaternion_mul((A), (B)), (C))
+ float4 quaternion = normalize(MUL3(qx, qy, qz));
+ float4 conjugate = quaternion_conjugate(quaternion);
+
+ float4 inVecQ = quaternion_from_vector(inVec);
+
+ float3 rotated = (
+ MUL3(quaternion, inVecQ, conjugate)
+ ).yzw;
+
+ return rotated;
+ }
+
+ float4 transform(float4 input, float4 pos, float4 rotation, float4 scale)
+ {
+ input.rgb *= (scale.xyz * scale.w);
+ input = float4(
+ rotate_with_quaternion(input.xyz, rotation.xyz * rotation.w)
+ + (pos.xyz * pos.w),
+ input.w
+ );
+ return input;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
new file mode 100644
index 00000000..b0989d65
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2d0fc0af0062f984ba782c1371f7ed17
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
new file mode 100644
index 00000000..916f65eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
@@ -0,0 +1,130 @@
+#ifndef POI_METAL
+ #define POI_METAL
+
+ samplerCUBE _CubeMap;
+ float _SampleWorld;
+ POI_TEXTURE_NOSAMPLER(_MetallicMask);
+ POI_TEXTURE_NOSAMPLER(_SmoothnessMask);
+ float _Metallic;
+ float _InvertSmoothness;
+ float _Smoothness;
+ float _EnableMetallic;
+ float3 _MetalReflectionTint;
+ POI_TEXTURE_NOSAMPLER(_MetallicTintMap);
+
+ float3 finalreflections;
+ float metalicMap;
+ float3 reflection;
+ float roughness;
+ float lighty_boy_uwu_var;
+
+ bool shouldMetalHappenBeforeLighting()
+ {
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool probeExists = !(unity_SpecCube0_HDR.a == 0 && envSample.a == 0);
+ return probeExists && !float(0);
+ }
+
+ float3 fresnelRelflection(in float4 albedo)
+ {
+ half3 dotNV = 1 - abs(poiLight.nDotV);
+ half f = dotNV * dotNV * dotNV * dotNV;
+ //f *= i_sold.fresnel;
+ return lerp(lerp(DielectricSpec.rgb, albedo.rgb, metalicMap), saturate(1 - roughness + metalicMap), f);
+ }
+
+ void calculateMetallicness()
+ {
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ }
+
+ void ApplyMetallics(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflection = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflection = probe0;
+ }
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+
+ void ApplyMetallicsFake(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+ reflection = texCUBElod(_CubeMap, float4(poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
new file mode 100644
index 00000000..8755b49a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 780e243e1e0fb324d811759e503532e8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
new file mode 100644
index 00000000..8bb16398
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
@@ -0,0 +1,77 @@
+#ifndef POI_MIRROR
+ #define POI_MIRROR
+
+ float _Mirror;
+ float _EnableMirrorTexture;
+ POI_TEXTURE_NOSAMPLER(_MirrorTexture);
+
+
+ void applyMirrorRenderVert(inout float4 vertex)
+ {
+
+ if (float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ void applyMirrorRenderFrag()
+ {
+
+ if(float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ #if(defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ void applyMirrorTexture(inout float4 mainTexture)
+ {
+
+ if(float(0))
+ {
+ if(IsInMirror())
+ {
+ mainTexture = POI2D_SAMPLER_PAN(_MirrorTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ }
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
new file mode 100644
index 00000000..46d3e012
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: da3cbde3df860c3479e2a141ee4ed0f3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
new file mode 100644
index 00000000..62e63c91
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
@@ -0,0 +1,107 @@
+float _OutlineRimLightBlend;
+float _OutlineLit;
+float _OutlineTintMix;
+float2 _MainTexPan;
+float _MainTextureUV;
+
+float4 frag(v2f i, uint facing: SV_IsFrontFace): COLOR
+{
+ float4 finalColor = 1;
+
+ if (float(0))
+ {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ float3 finalEmission = 0;
+ float4 albedo = 1;
+
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ float3 uselessData0;
+ float3 uselessData1;
+ initTextureData(albedo, mainTexture, uselessData0, uselessData1, detailMask);
+
+
+ fixed4 col = mainTexture;
+ float alphaMultiplier = smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(getCameraPosition(), i.worldPos));
+ float OutlineMask = tex2D(_OutlineMask, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0)).r;
+ clip(OutlineMask * float(0) - 0.001);
+
+ col = col * 0.00000000001 + tex2D(_OutlineTexture, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineTexture) + _Time.x * float4(0,0,0,0) );
+ col.a *= albedo.a;
+ col.a *= alphaMultiplier;
+
+ #ifdef POI_RANDOM
+ col.a *= i.angleAlpha;
+ #endif
+
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ col.a *= float4(1,1,1,1).a;
+
+
+ if(float(0) == 1)
+ {
+ applyDithering(col);
+ }
+
+ clip(col.a - float(0.5));
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+
+ if(float(0) == 1)
+ {
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ col.rgb = mainTexture.rgb;
+ }
+ else if(float(0) == 2)
+ {
+ col.rgb = lerp(col.rgb, poiLight.color, float(0));
+ }
+ col.rgb *= float4(1,1,1,1).rgb;
+
+ if(float(0) == 1)
+ {
+ col.rgb = lerp(col.rgb, mainTexture.rgb, float(0));
+ }
+
+ finalColor = col;
+
+ #ifdef POI_LIGHTING
+
+ if(float(1))
+ {
+ finalColor.rgb *= calculateFinalLighting(finalColor.rgb, finalColor);
+ }
+ #endif
+ finalColor.rgb += (col.rgb * float(0));
+ }
+ else
+ {
+ clip(-1);
+ }
+ return finalColor;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
new file mode 100644
index 00000000..48f4ed32
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c4324c2142e03e94f975aaa807abbd5e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
new file mode 100644
index 00000000..900e9e43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
@@ -0,0 +1,105 @@
+#ifndef OutlineVert
+ #define OutlineVert
+
+ #include "CGI_PoiV2F.cginc"
+
+ float _OutlineMode;
+ float4 _OutlinePersonaDirection;
+ float4 _OutlineDropShadowOffset;
+ float _OutlineUseVertexColors;
+ float _OutlineFixedSize;
+ float _commentIfZero_EnableOutlinePass;
+
+ sampler2D _OutlineMask; float4 _OutlineMask_ST; float2 _OutlineMaskPan; float _OutlineMaskUV;
+ v2f vert(appdata v)
+ {
+
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+
+ float2 uvArray[4];
+ uvArray[0] = o.uv0.xy;
+ uvArray[1] = o.uv0.zw;
+ uvArray[2] = o.uv1.xy;
+ uvArray[3] = o.uv1.zw;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ o.uv0.xy = v.uv0 + _OutlineGlobalPan.xy * _Time.y;
+ float outlineMask = 1;
+
+ outlineMask = poiMax(tex2Dlod(_OutlineMask, float4(TRANSFORM_TEX(uvArray[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0), 0, 0)).rgb);
+
+ if (float(0) == 2)
+ {
+ outlineMask *= v.color.r;
+ }
+
+
+ if(float(0) != 1)
+ {
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ }
+ else
+ {
+ o.normal = UnityObjectToWorldNormal(v.color);
+ }
+
+
+ half offsetMultiplier = 1;
+ half distanceOffset = 1;
+
+ if(float(0))
+ {
+ distanceOffset *= distance(_WorldSpaceCameraPos, mul(unity_ObjectToWorld, v.vertex).xyz);
+ }
+
+ float3 offset = o.normal * (float(0) * float(0) / 100) * outlineMask * distanceOffset;
+
+
+ if(float(0) == 2)
+ {
+ float3 lightDirection = poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ offsetMultiplier = saturate(dot(lightDirection, o.normal));
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 3)
+ {
+ half3 viewNormal = mul((float3x3)UNITY_MATRIX_V, o.normal);
+ offsetMultiplier = saturate(dot(viewNormal.xy, normalize(float4(1,0,0,0).xy)));
+
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 4)
+ {
+ offset = mul((float3x3)transpose(UNITY_MATRIX_V), float4(1,0,0,0));
+ offset *= distanceOffset;
+ }
+
+ o.worldPos = mul(unity_ObjectToWorld, v.vertex) + float4(offset, 0);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.pos = UnityWorldToClipPos(o.worldPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0);
+ UNITY_TRANSFER_FOG(o, o.pos);
+ return o;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
new file mode 100644
index 00000000..8671e741
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d6003f8019c1a68429ec316c9960ba1a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
new file mode 100644
index 00000000..da64a89d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
@@ -0,0 +1,63 @@
+#ifndef PANOSPHERE
+ #define PANOSPHERE
+
+ sampler2D _PanosphereTexture; float4 _PanosphereTexture_ST;
+ POI_TEXTURE_NOSAMPLER(_PanoMask);
+ float _PanoEmission;
+ float _PanoBlend;
+ float4 _PanosphereColor;
+ float3 _PanospherePan;
+ float _PanoToggle;
+ float _PanoCubeMapToggle;
+ float _PanoInfiniteStereoToggle;
+ samplerCUBE _PanoCubeMap; half4 _PanoCubeMap_HDR;
+
+ float3 panoColor;
+ float panoMask;
+
+ float2 projectIt(float3 coords)
+ {
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude + _Time.y * float4(0,0,0,0).x, latitude + _Time.y * float4(0,0,0,0).y) * float2(1.0 / UNITY_PI, 1.0 / UNITY_PI);
+ sphereCoords = float2(1.0, 1.0) - sphereCoords;
+ return(sphereCoords + float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).xy) * float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).zw;
+ }
+
+ void applyPanosphereColor(inout float4 albedo, inout float3 panosphereEmission)
+ {
+ panoMask = POI2D_SAMPLER_PAN(_PanoMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskPanosphere != 4)
+ {
+ panoMask *= blackLightMask[_BlackLightMaskPanosphere];
+ }
+ #endif
+
+
+ if(float(0))
+ {
+ float3 cubeUV = mul(poiRotationMatrixFromAngles(float4(0,0,0,0).xyz * _Time.y), float4(-poiCam.viewDir, 1));
+ half4 cubemap = texCUBE(_PanoCubeMap, cubeUV);
+ panoColor = DecodeHDR(cubemap, _PanoCubeMap_HDR);
+ }
+ else
+ {
+ float2 uv = projectIt(normalize(lerp(getCameraPosition().xyz, poiCam.worldPos.xyz, float(0)) - poiMesh.worldPos.xyz) * - 1);
+
+ float2 ddxuv = ddx(uv);
+ float2 ddyuv = ddy(uv);
+ if(any(fwidth(uv) > .5))
+ {
+ ddxuv = ddyuv = 0.001;
+ }
+ panoColor = tex2D(_PanosphereTexture, TRANSFORM_TEX(uv, _PanosphereTexture), ddxuv, ddyuv).rgb * float4(1,1,1,1).rgb;
+ }
+ panosphereEmission = panoColor * float(0) * panoMask * float(0);
+ albedo.rgb = lerp(albedo.rgb, panoColor, float(0) * panoMask);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
new file mode 100644
index 00000000..b5cc9fc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3460e1993b5c47a4fb36f6a0bea971d7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
new file mode 100644
index 00000000..6cd94900
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
@@ -0,0 +1,143 @@
+#ifndef POI_PARALLAX
+ #define POI_PARALLAX
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxHeightMap); float4 _ParallaxHeightMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxHeightMapMask);
+ float2 _ParallaxHeightMapPan;
+ float _ParallaxStrength;
+ float _ParallaxHeightMapEnabled;
+ float _ParallaxUV;
+
+ //Internal
+ float _ParallaxInternalMapEnabled;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxInternalMap); float4 _ParallaxInternalMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxInternalMapMask);
+ float _ParallaxInternalIterations;
+ float _ParallaxInternalMinDepth;
+ float _ParallaxInternalMaxDepth;
+ float _ParallaxInternalMinFade;
+ float _ParallaxInternalMaxFade;
+ float4 _ParallaxInternalMinColor;
+ float4 _ParallaxInternalMaxColor;
+ float4 _ParallaxInternalPanSpeed;
+ float4 _ParallaxInternalPanDepthSpeed;
+ float _ParallaxInternalHeightmapMode;
+ float _ParallaxInternalHeightFromAlpha;
+
+ float GetParallaxHeight(float2 uv)
+ {
+ return clamp(UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxHeightMap, _MainTex, TRANSFORM_TEX(uv, _ParallaxHeightMap) + _Time.x * float4(0,0,0,0)).g, 0, .99999);
+ }
+ /*
+ float2 ParallaxOffset(float2 viewDir)
+ {
+ float height = GetParallaxHeight();
+ height -= 0.5;
+ height *= float(0);
+ return viewDir * height;
+ }
+ */
+ float2 ParallaxRaymarching(float2 viewDir)
+ {
+ float2 uvOffset = 0;
+ float stepSize = 0.1;
+ float2 uvDelta = viewDir * (stepSize * float(0));
+
+ float stepHeight = 1;
+ float surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)]);
+
+
+ float2 prevUVOffset = uvOffset;
+ float prevStepHeight = stepHeight;
+ float prevSurfaceHeight = surfaceHeight;
+
+ for (int i = 1; i < 10 && stepHeight > surfaceHeight; i ++)
+ {
+ prevUVOffset = uvOffset;
+ prevStepHeight = stepHeight;
+ prevSurfaceHeight = surfaceHeight;
+
+ uvOffset -= uvDelta;
+ stepHeight -= stepSize;
+ surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)] + uvOffset);
+ }
+
+ float prevDifference = prevStepHeight - prevSurfaceHeight;
+ float difference = surfaceHeight - stepHeight;
+ float t = prevDifference / (prevDifference + difference);
+ uvOffset = prevUVOffset -uvDelta * t;
+
+ return uvOffset *= POI2D_SAMPLER_PAN(_ParallaxHeightMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+
+ void calculateandApplyParallax()
+ {
+
+ if (float(0))
+ {
+ float2 parallaxOffset = ParallaxRaymarching(poiCam.tangentViewDir.xy);
+
+ if(float(0) == 0)
+ {
+ poiMesh.uv[0] += parallaxOffset;
+ }
+
+ if(float(0) == 1)
+ {
+ poiMesh.uv[1] += parallaxOffset;
+ }
+
+ if(float(0) == 2)
+ {
+ poiMesh.uv[2] += parallaxOffset;
+ }
+
+ if(float(0) == 3)
+ {
+ poiMesh.uv[3] += parallaxOffset;
+ }
+ }
+ }
+
+ void calculateAndApplyInternalParallax(inout float4 finalColor)
+ {
+ #if defined(_PARALLAXMAP)
+
+ if(float(0))
+ {
+ float3 parallax = 0;
+
+ for (int j = float(1); j > 0; j --)
+ {
+ float ratio = (float)j / float(1);
+ float2 parallaxOffset = _Time.y * (float4(0,0,0,0) + (1 - ratio) * float4(0,0,0,0));
+ float fade = lerp(float(0), float(1), ratio);
+ float4 parallaxColor = UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxInternalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _ParallaxInternalMap) + lerp(float(0), float(1), ratio) * - poiCam.tangentViewDir.xy + parallaxOffset);
+ float3 parallaxTint = lerp(float4(1,1,1,1), float4(1,1,1,1), ratio);
+ float parallaxHeight;
+ if(float(0))
+ {
+ parallaxTint *= parallaxColor.rgb;
+ parallaxHeight = parallaxColor.a;
+ }
+ else
+ {
+ parallaxHeight = parallaxColor.r;
+ }
+ //float parallaxColor *= lerp(float4(1,1,1,1), float4(1,1,1,1), 1 - ratio);
+
+ if (float(0) == 1)
+ {
+ parallax = lerp(parallax, parallaxTint * fade, parallaxHeight >= 1 - ratio);
+ }
+ else
+ {
+ parallax += parallaxTint * parallaxHeight * fade;
+ }
+ }
+ //parallax /= float(1);
+ finalColor.rgb += parallax * POI2D_SAMPLER_PAN(_ParallaxInternalMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
new file mode 100644
index 00000000..61b4acc6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 886da561dbf4ffb498e4fe5a4c7930ae
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
new file mode 100644
index 00000000..81230e8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
@@ -0,0 +1,233 @@
+/*
+USED---------------------------------------------
+"_PARALLAXMAP",
+"_REQUIRE_UV2",
+"_SUNDISK_NONE",
+"_DETAIL_MULX2",
+"_GLOSSYREFLECTIONS_OFF",
+"_METALLICGLOSSMAP",
+"_COLORADDSUBDIFF_ON",
+"_SPECGLOSSMAP",
+"_TERRAIN_NORMAL_MAP",
+"_SUNDISK_SIMPLE",
+"_EMISSION",
+"_COLORCOLOR_ON",
+"_COLOROVERLAY_ON",
+"_ALPHAMODULATE_ON",
+"_SUNDISK_HIGH_QUALITY",
+"_MAPPING_6_FRAMES_LAYOUT",
+"_NORMALMAP"
+"EFFECT_BUMP",
+"BLOOM",
+"BLOOM_LOW",
+"GRAIN",
+"DEPTH_OF_FIELD",
+"USER_LUT",
+"CHROMATIC_ABERRATION_LOW",
+"BLOOM_LENS_DIRT",
+"_FADING_ON",
+"CHROMATIC_ABERRATION",
+"DISTORT",
+"GEOM_TYPE_BRANCH",
+"_SPECULARHIGHLIGHTS_OFF",
+"_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A",
+"EFFECT_HUE_VARIATION",
+"GEOM_TYPE_LEAF",
+"GEOM_TYPE_MESH",
+"FINALPASS",
+"AUTO_EXPOSURE"
+"VIGNETTE",
+"VIGNETTE_MASKED",
+"COLOR_GRADING_HDR",
+
+UNUSED-------------------------------------------
+"_ALPHABLEND_ON",
+"_ALPHAPREMULTIPLY_ON",
+"_ALPHATEST_ON",
+"GEOM_TYPE_BRANCH_DETAIL",
+"GEOM_TYPE_FROND",
+"PIXELSNAP_ON",
+"SOFTPARTICLES_ON",
+"DITHERING",
+"TONEMAPPING_NEUTRAL",
+"TONEMAPPING_FILMIC",
+"TONEMAPPING_ACES",
+"TONEMAPPING_CUSTOM",
+"DEPTH_OF_FIELD_COC_VIEW",
+"COLOR_GRADING",
+"COLOR_GRADING_LOG_VIEW",
+"VIGNETTE_CLASSIC",
+"COLOR_GRADING_HDR_3D",
+
+DO NOT USE -----------------------------------------
+"BILLBOARD_FACE_CAMERA_POS",
+*/
+
+
+#ifndef POI_PASS
+ #define POI_PASS
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #ifdef POI_META_PASS
+ #include "UnityMetaPass.cginc"
+ #endif
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+
+ #include "CGI_PoiSpawnInVert.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+
+ #ifdef BLOOM_LOW
+ #include "CGI_PoiBulge.cginc"
+ #endif
+
+ #include "CGI_PoiVert.cginc"
+
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+
+ #include "CGI_PoiDithering.cginc"
+
+ #ifdef _PARALLAXMAP
+ #include "CGI_PoiParallax.cginc"
+ #endif
+
+ #ifdef USER_LUT
+ #include "CGI_PoiUVDistortion.cginc"
+ #endif
+
+ #ifdef VIGNETTE
+ #include "CGI_PoiRGBMask.cginc"
+ #endif
+
+ #include "CGI_PoiData.cginc"
+
+ #ifdef _SPECULARHIGHLIGHTS_OFF
+ #include "CGI_PoiBlackLight.cginc"
+ #endif
+
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+
+ #ifdef DEPTH_OF_FIELD
+ #include "CGI_PoiHologram.cginc"
+ #endif
+
+ #ifdef BLOOM_LENS_DIRT
+ #include "CGI_PoiIridescence.cginc"
+ #endif
+
+
+ #ifdef FUR
+ #include "CGI_PoiFur.cginc"
+ #include "CGI_PoiGeomFur.cginc"
+ #endif
+
+ #ifdef VIGNETTE_MASKED
+ #include "CGI_PoiLighting.cginc"
+ #endif
+
+ #include "CGI_PoiMainTex.cginc"
+
+ #ifdef GEOM_TYPE_BRANCH
+ #include "CGI_PoiDecal.cginc"
+ #endif
+
+ #ifdef CHROMATIC_ABERRATION
+ #include "CGI_PoiVoronoi.cginc"
+ #endif
+
+ #ifdef _DETAIL_MULX2
+ #include "CGI_PoiPanosphere.cginc"
+ #endif
+
+ #ifdef EFFECT_BUMP
+ #include "CGI_PoiMSDF.cginc"
+ #endif
+
+ #ifdef GRAIN
+ #include "CGI_PoiDepthColor.cginc"
+ #endif
+
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _GLOSSYREFLECTIONS_OFF
+ #include "CGI_PoiRimLighting.cginc"
+ #endif
+
+ #ifdef _MAPPING_6_FRAMES_LAYOUT
+ #include "CGI_PoiEnvironmentalRimLighting.cginc"
+ #endif
+
+ #ifdef _METALLICGLOSSMAP
+ #include "CGI_PoiMetal.cginc"
+ #endif
+
+ #ifdef _COLORADDSUBDIFF_ON
+ #include "CGI_PoiMatcap.cginc"
+ #endif
+
+ #ifdef _SPECGLOSSMAP
+ #include "CGI_PoiSpecular.cginc"
+ #endif
+
+ #ifdef BLOOM
+ #include "CGI_PoiVideo.cginc"
+ #endif
+
+ #ifdef _TERRAIN_NORMAL_MAP
+ #include "CGI_PoiSubsurfaceScattering.cginc"
+ #endif
+
+ #include "CGI_PoiBlending.cginc"
+ #include "CGI_PoiGrab.cginc"
+
+ #ifdef _SUNDISK_SIMPLE
+ #include "CGI_PoiGlitter.cginc"
+ #endif
+
+ #ifdef _EMISSION
+ #include "CGI_PoiEmission.cginc"
+ #endif
+
+ #ifdef _COLORCOLOR_ON
+ #include "CGI_PoiClearCoat.cginc"
+ #endif
+
+ #include "CGI_PoiAlphaToCoverage.cginc"
+
+ #ifdef _COLOROVERLAY_ON
+ #include "CGI_PoiDebug.cginc"
+ #endif
+ #include "CGI_PoiFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
new file mode 100644
index 00000000..c2e04588
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 399303057e3572c4099cc951bd933a72
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
new file mode 100644
index 00000000..5e365972
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
@@ -0,0 +1,26 @@
+#ifndef POI_PASS_OUTLINE
+ #define POI_PASS_OUTLINE
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiOutlineVert.cginc"
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiLighting.cginc"
+ #include "CGI_PoiMainTex.cginc"
+ #include "CGI_PoiData.cginc"
+ #include "CGI_PoiDithering.cginc"
+ #include "CGI_PoiOutlineFrag.cginc"
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
new file mode 100644
index 00000000..39e01613
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 15f6614e347328b44ab1c1e9171a7a16
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
new file mode 100644
index 00000000..d21a5d4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
@@ -0,0 +1,44 @@
+#ifndef POI_PASS_SHADOW
+ #define POI_PASS_SHADOW
+
+ #pragma multi_compile_shadowcaster
+ #include "UnityCG.cginc"
+ #include "UnityShaderVariables.cginc"
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiShadowIncludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiMirror.cginc"
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+ #include "CGI_PoiData.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+ #include "CGI_PoiDithering.cginc"
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+ #include "CGI_PoiSpawnInVert.cginc"
+ #include "CGI_PoiShadowVert.cginc"
+ #include "CGI_PoiShadowFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
new file mode 100644
index 00000000..6f54c282
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 24161cec0558f7c4e8ef7d16ec8105b0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
new file mode 100644
index 00000000..d4cd1697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
@@ -0,0 +1,131 @@
+#ifndef POI_RGBMASK
+ #define POI_RGBMASK
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RGBMask); float4 _RGBMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RedTexure); float4 _RedTexure_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_GreenTexture); float4 _GreenTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BlueTexture); float4 _BlueTexture_ST;
+
+ #ifdef GEOM_TYPE_MESH
+ POI_NORMAL_NOSAMPLER(_RgbNormalR);
+ POI_NORMAL_NOSAMPLER(_RgbNormalG);
+ POI_NORMAL_NOSAMPLER(_RgbNormalB);
+ float _RgbNormalsEnabled;
+ #endif
+
+ float4 _RedColor;
+ float4 _GreenColor;
+ float4 _BlueColor;
+
+ float4 _RGBMaskPanning;
+ float4 _RGBRedPanning;
+ float4 _RGBGreenPanning;
+ float4 _RGBBluePanning;
+
+ float _RGBBlendMultiplicative;
+
+ float _RGBMaskUV;
+ float _RGBRed_UV;
+ float _RGBGreen_UV;
+ float _RGBBlue_UV;
+ float _RGBUseVertexColors;
+ float _RGBNormalBlend;
+
+ static float3 rgbMask;
+
+ void calculateRGBNormals(inout half3 mainTangentSpaceNormal)
+ {
+ #ifdef GEOM_TYPE_MESH
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+
+ if(float(0))
+ {
+
+ if(float(0) == 0)
+ {
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.r);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.g);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.b);
+ }
+ return;
+ }
+ else
+ {
+ half3 newNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0) * rgbMask.r);
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.g);
+ normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.b);
+ mainTangentSpaceNormal = BlendNormals(newNormal, mainTangentSpaceNormal);
+ return;
+ }
+ }
+ #endif
+ }
+
+ float3 calculateRGBMask(float3 baseColor)
+ {
+ //If RGB normals are in use this data will already exist
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+ float4 red = POI2D_SAMPLER_PAN(_RedTexure, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 green = POI2D_SAMPLER_PAN(_GreenTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 blue = POI2D_SAMPLER_PAN(_BlueTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+
+ if(float(0))
+ {
+ float3 RGBColor = 1;
+ RGBColor = lerp(RGBColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ baseColor *= RGBColor;
+ }
+ else
+ {
+ baseColor = lerp(baseColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ }
+
+ return baseColor;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
new file mode 100644
index 00000000..2ace926c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c9ae21526d42a92439dd8f7d5166edfd
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
new file mode 100644
index 00000000..137ef6de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
@@ -0,0 +1,4 @@
+#ifndef POI_RNG
+ #define POI_RNG
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
new file mode 100644
index 00000000..be1346ef
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 310bbec2e0e7f21468966e208916d313
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
new file mode 100644
index 00000000..11f3eea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_RANDOM
+ #define POI_RANDOM
+
+ float _EnableRandom;
+ float m_start_Angle;
+ float _AngleType;
+ float3 _AngleForwardDirection;
+ float _CameraAngleMin;
+ float _CameraAngleMax;
+ float _ModelAngleMin;
+ float _ModelAngleMax;
+ float _AngleMinAlpha;
+ float _AngleCompareTo;
+
+ float ApplyAngleBasedRendering(float3 modelPos, float3 worldPos)
+ {
+ half cameraAngleMin = float(45) / 180;
+ half cameraAngleMax = float(90) / 180;
+ half modelAngleMin = float(45) / 180;
+ half modelAngleMax = float(90) / 180;
+ float3 pos = float(0) == 0 ? modelPos : worldPos;
+ half3 cameraToModelDirection = normalize(pos - getCameraPosition());
+ half3 modelForwardDirection = normalize(mul(unity_ObjectToWorld, normalize(float4(0,0,1,0))));
+ half cameraLookAtModel = remapClamped(.5 * dot(cameraToModelDirection, getCameraForward()) + .5, cameraAngleMax, cameraAngleMin, 0, 1);
+ half modelLookAtCamera = remapClamped(.5 * dot(-cameraToModelDirection, modelForwardDirection) + .5, modelAngleMax, modelAngleMin, 0, 1);
+ if (float(0) == 0)
+ {
+ return max(cameraLookAtModel, float(0));
+ }
+ else if(float(0) == 1)
+ {
+ return max(modelLookAtCamera, float(0));
+ }
+ else if(float(0) == 2)
+ {
+ return max(cameraLookAtModel * modelLookAtCamera, float(0));
+ }
+ return 1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
new file mode 100644
index 00000000..7a09412c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: bd4086ef3f519ef438dd94acddebede7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
new file mode 100644
index 00000000..d4571c0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
@@ -0,0 +1,47 @@
+#ifndef POI_RIM
+ #define POI_RIM
+
+ float4 _RimLightColor;
+ float _RimLightingInvert;
+ float _RimWidth;
+ float _RimStrength;
+ float _RimSharpness;
+ float _RimLightColorBias;
+ float _ShadowMix;
+ float _ShadowMixThreshold;
+ float _ShadowMixWidthMod;
+ float _EnableRimLighting;
+ float _RimBrighten;
+ float _RimLightNormal;
+
+ POI_TEXTURE_NOSAMPLER(_RimTex);
+ POI_TEXTURE_NOSAMPLER(_RimMask);
+ POI_TEXTURE_NOSAMPLER(_RimWidthNoiseTexture);
+
+ float _RimWidthNoiseStrength;
+
+ float4 rimColor = float4(0, 0, 0, 0);
+ float rim = 0;
+
+ void applyRimLighting(inout float4 albedo, inout float3 rimLightEmission)
+ {
+ float rimNoise = POI2D_SAMPLER_PAN(_RimWidthNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimNoise = (rimNoise - .5) * float(0.1);
+
+ float viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+
+ if (float(0))
+ {
+ viewDotNormal = 1 - abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+ }
+ float rimWidth = float(0.8);
+ rimWidth -= rimNoise;
+ float rimMask = POI2D_SAMPLER_PAN(_RimMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimColor = POI2D_SAMPLER_PAN(_RimTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ rimWidth = max(lerp(rimWidth, rimWidth * lerp(0, 1, poiLight.lightMap - float(0.5)) * float(0.5), float(0)),0);
+ rim = 1 - smoothstep(min(float(0.25), rimWidth), rimWidth, viewDotNormal);
+ rim *= float4(1,1,1,1).a * rimColor.a * rimMask;
+ rimLightEmission = rim * lerp(albedo, rimColor, float(0)) * float(0);
+ albedo.rgb = lerp(albedo.rgb, lerp(albedo.rgb, rimColor, float(0)) + lerp(albedo.rgb, rimColor, float(0)) * float(0), rim);
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
new file mode 100644
index 00000000..4a22e70a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f78c9560ba9bdae439bf9087c812f60a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
new file mode 100644
index 00000000..16701f61
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
@@ -0,0 +1,116 @@
+#ifndef SHADOW_FRAG
+ #define SHADOW_FRAG
+
+ float2 _MainDistanceFade;
+ float _ForceOpaque;
+ float _MainShadowClipMod;
+ float2 _AlphaMaskPan;
+ float _AlphaMaskUV;
+ sampler3D _DitherMaskLOD;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+
+ half4 fragShadowCaster(
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ V2FShadow i, uint facing: SV_IsFrontFace
+ #endif
+ ): SV_Target
+ {
+ poiMesh.uv[0] = i.uv;
+ poiMesh.uv[1] = i.uv1;
+ poiMesh.uv[2] = i.uv2;
+ poiMesh.uv[3] = i.uv3;
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+
+
+ //Possible Bug with clip
+ float clipValue = clamp(float(0.5) + float(0), - .001, 1.001);
+
+ poiMesh.vertexColor = saturate(i.vertexColor);
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+ #if defined(UNITY_STANDARD_USE_SHADOW_UVS)
+
+ half4 alpha = mainTexture;
+
+
+ if (float(0))
+ {
+ if(IsInMirror())
+ {
+ alpha.a = UNITY_SAMPLE_TEX2D_SAMPLER(_MirrorTexture, _MainTex, TRANSFORM_TEX(i.uv, _MirrorTexture)).a;
+ }
+ }
+
+
+ alpha.a *= smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(i.modelPos, _WorldSpaceCameraPos));
+ half alphaMask = POI2D_PAN(_AlphaMask, poiMesh.uv[float(0)], float4(0,0,0,0));
+ alpha.a *= alphaMask;
+ alpha.a *= float4(1,1,1,1).a + .0001;
+ alpha.a += float(0);
+ alpha.a = saturate(alpha.a);
+
+
+ if(float(0) == 0)
+ {
+ alpha.a = 1;
+ }
+
+
+ if(float(0) == 1)
+ {
+ applyShadowDithering(alpha.a, calcScreenUVs(i.grabPos).xy);
+ }
+
+ #ifdef POI_DISSOLVE
+ float3 fakeEmission = 1;
+ calculateDissolve(alpha, fakeEmission);
+ #endif
+
+ if(float(0) == 1)
+ {
+ clip(alpha.a - 0.001);
+ }
+
+ /*
+ return poiMesh.vertexColor.g;
+
+ #ifdef POI_RANDOM
+ alpha.a *= i.angleAlpha;
+ #endif
+
+
+ if(float(0) >= 1)
+ {
+ applySpawnInShadow(uv[0], i.localPos);
+
+ #if defined(POI_FLIPBOOK)
+ alpha.a *= applyFlipbookAlphaToShadow(uv[float(0)]);
+ #endif
+ }
+ */
+
+ if (float(0) == 1)
+ {
+ clip(alpha.a - clipValue);
+ }
+
+
+ if(float(0) > 1)
+ {
+ float dither = tex3D(_DitherMaskLOD, float3(i.pos.xy * .25, alpha.a * 0.9375)).a;
+ clip(dither - 0.01);
+ }
+
+ #endif
+ SHADOW_CASTER_FRAGMENT(i)
+ }
+
+ #endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
new file mode 100644
index 00000000..ac31c1d8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 50a1d7e8648fe60419c74fa6c3c6e211
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
new file mode 100644
index 00000000..fd8f19a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
@@ -0,0 +1,41 @@
+#ifndef SHADOW_INCLUDES
+ #define SHADOW_INCLUDES
+
+ #define UNITY_STANDARD_USE_SHADOW_UVS 1
+
+ float4 _Color;
+ sampler2D _AlphaMask; float4 _AlphaMask_ST;
+
+ struct VertexInputShadow
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ struct V2FShadow
+ {
+ V2F_SHADOW_CASTER_NOPOS
+ float4 pos: SV_POSITION;
+ float2 uv: TEXCOORD1;
+ float2 uv1: TEXCOORD2;
+ float2 uv2: TEXCOORD3;
+ float2 uv3: TEXCOORD4;
+ float3 modelPos: TEXCOORD5;
+ float4 worldPos: TEXCOORD6;
+ float4 localPos: TEXCOORD7;
+ float3 angleAlpha: TEXCOORD8;
+ float4 grabPos: TEXCOORD9;
+ fixed3 barycentricCoordinates: TEXCOORD10;
+ float4 vertexColor: TEXCOORD11;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
new file mode 100644
index 00000000..cf72cbef
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d7e31b16f2d4dd642978fd820163f1f8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
new file mode 100644
index 00000000..f0b7184a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
@@ -0,0 +1,80 @@
+float _EnableTouchGlow;
+float _EnableBulge;
+float _VertexManipulationHeightUV;
+
+V2FShadow vertShadowCaster(VertexInputShadow v)
+{
+ V2FShadow o;
+ UNITY_SETUP_INSTANCE_ID(v);
+
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(V2FShadow, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.uv = v.uv0;
+ o.uv1 = v.uv1;
+ o.uv2 = v.uv2;
+ o.uv3 = v.uv3;
+
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, v.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.vertexColor = v.color;
+
+
+ if(_EnableTouchGlow || _EnableBulge)
+ {
+ o.pos = UnityObjectToClipPos(float3(0, 0, -5));
+ o.localPos.xyz = float3(0, 0, -5);
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ }
+
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+
+ o.pos = UnityClipSpaceShadowCasterPos(o.localPos, v.normal);
+ o.pos = UnityApplyLinearShadowBias(o.pos);
+
+ return o;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
new file mode 100644
index 00000000..063e5123
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 87b50e732eecdae41a4b7cd1941a4ed9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
new file mode 100644
index 00000000..0c18d1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+ #endif
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_SpawnInNoise); float4 _SpawnInNoise_ST;
+
+ float calculateGradientValueFrag(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnIn(inout float4 finalColor, inout float3 spawnInEmission, float2 uv, float3 localPos)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ spawnInEmission = saturate(inverseGradient + _SpawnInAlpha + _SpawnInEmissionOffset +noise - 1) * _SpawnInEmissionColor;
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+
+ void applySpawnInShadow(float2 uv, float3 localPos)
+ {
+
+ if(_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float alpha = gradient - _SpawnInAlpha - noise + length(_SpawnInVertOffset);
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
new file mode 100644
index 00000000..01ccdb52
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ed1aa30df14cfec4ab53b9c3d368e9ca
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
new file mode 100644
index 00000000..fdcc457f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
@@ -0,0 +1,40 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+
+ #endif
+ //sampler2D _SpawnInNoiseVert; float4 _SpawnInNoiseVert_ST;
+
+ float calculateGradientValueVert(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnInVert(inout float4 worldPos, inout float4 localPos, float2 uv)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = 0;
+ float gradient = calculateGradientValueVert(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ worldPos.xyz += saturate(inverseGradient + _SpawnInAlpha + _SpawnInVertOffsetOffset -1) * float3(0, _SpawnInVertOffset, 0);
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+ //float noise = tex2Dlod(_SpawnInNoise, float4(TRANSFORM_TEX(uv, _SpawnInNoise))).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
new file mode 100644
index 00000000..98c0c43b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ceffa67443a85c14a90a0291be180a70
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
new file mode 100644
index 00000000..f5287465
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
@@ -0,0 +1,488 @@
+#ifndef POI_SPECULAR
+ #define POI_SPECULAR
+ float _SpecWhatTangent;
+ float _SpecularType;
+ float _SmoothnessFrom;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap);
+ fixed _CenterOutSpecColor;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro);
+ float _SpecularAnisoJitterMirrored;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoFakeUV);
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask);
+ float _SpecularAnisoJitterMicroMultiplier;
+ float _SpecularAnisoJitterMacroMultiplier;
+ float4 _SpecularTint;
+ float _SpecularSmoothness;
+ float _Spec1Offset;
+ float _Spec1JitterStrength;
+ float _Spec2Smoothness;
+ float _Spec2Offset;
+ float _Spec2JitterStrength;
+ float _AnisoUseTangentMap;
+ float _AnisoSpec1Alpha;
+ float _AnisoSpec2Alpha;
+ float _SpecularInvertSmoothness;
+ half _SpecularMetallic;
+ float _SpecularNormal;
+ float _SpecularNormal1;
+ // Toon
+ fixed _SpecularToonStart;
+ fixed _SpecularToonEnd;
+ half4 _SpecularToonInnerOuter;
+
+ float _EnableSpecular1;
+ float _SpecWhatTangent1;
+ float _SpecularType1;
+ float _SmoothnessFrom1;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro1);
+ float _SpecularAnisoJitterMirrored1;
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask1);
+ float _SpecularAnisoJitterMicroMultiplier1;
+ float _SpecularAnisoJitterMacroMultiplier1;
+ float4 _SpecularTint1;
+ float _SpecularSmoothness1;
+ float _Spec1Offset1;
+ float _Spec1JitterStrength1;
+ float _Spec2Smoothness1;
+ float _Spec2Offset1;
+ float _Spec2JitterStrength1;
+ float _AnisoUseTangentMap1;
+ float _AnisoSpec1Alpha1;
+ float _AnisoSpec2Alpha1;
+ float _SpecularInvertSmoothness1;
+ half _SpecularMetallic1;
+ // Toon
+ half4 _SpecularToonInnerOuter1;
+ fixed _SpecularToonStart1;
+ fixed _SpecularToonEnd1;
+
+ UnityIndirect ZeroIndirect()
+ {
+ UnityIndirect ind;
+ ind.diffuse = 0;
+ ind.specular = 0;
+ return ind;
+ }
+
+ // From unity just putting it here in case I want to mod it
+ half4 poiRealisticSpecular(half3 diffColor, half3 specColor, half oneMinusReflectivity, half smoothness,
+ float3 normal, float3 halfDir,
+ UnityLight light, UnityIndirect gi)
+ {
+ float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
+ #define UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV 0
+
+ #if UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV
+ half shiftAmount = dot(normal, poiCam.viewDir);
+ normal = shiftAmount < 0.0f ? normal + poiCam.viewDir * (-shiftAmount + 1e-5f): normal;
+ float nv = saturate(dot(normal, poiCam.viewDir));
+ #else
+ half nv = abs(dot(normal, poiCam.viewDir));
+ #endif
+
+ float nl = saturate(dot(normal, light.dir));
+ float nh = saturate(dot(normal, halfDir));
+
+ half lv = saturate(dot(light.dir, poiCam.viewDir));
+ half lh = saturate(dot(light.dir, halfDir));
+
+ half diffuseTerm = DisneyDiffuse(nv, nl, lh, perceptualRoughness) * nl;
+
+ float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
+
+ roughness = max(roughness, 0.002);
+ float V = SmithJointGGXVisibilityTerm(nl, nv, roughness);
+ float D = GGXTerm(nh, roughness);
+
+ float specularTerm = V * D * UNITY_PI;
+
+ #ifdef UNITY_COLORSPACE_GAMMA
+ specularTerm = sqrt(max(1e-4h, specularTerm));
+ #endif
+
+ specularTerm = max(0, specularTerm * nl);
+ #if defined(_POI_SPECULARHIGHLIGHTS_OFF)
+ specularTerm = 0.0;
+ #endif
+
+ half surfaceReduction;
+ #ifdef UNITY_COLORSPACE_GAMMA
+ surfaceReduction = 1.0 - 0.28 * roughness * perceptualRoughness;
+ #else
+ surfaceReduction = 1.0 / (roughness * roughness + 1.0);
+ #endif
+
+ specularTerm *= any(specColor) ? 1.0: 0.0;
+
+ half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
+ half3 color = diffColor * (gi.diffuse + light.color * diffuseTerm)
+ + specularTerm * light.color * FresnelTerm(specColor, lh)
+ + surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, nv);
+
+ return half4(color, 1);
+ }
+
+ half3 calculateRealisticSpecular(float4 albedo, float2 uv, float4 specularTint, float specularSmoothness, float invertSmoothness, float mixAlbedoWithTint, float4 specularMap, float3 specularLight, float3 normal, float attenuation, float3 lightDirection, float nDotL, float3 halfDir)
+ {
+ half oneMinusReflectivity;
+ half3 finalSpecular;
+ UnityLight unityLight;
+ unityLight.color = specularLight;
+ unityLight.dir = lightDirection;
+ unityLight.ndotl = nDotL;
+
+
+ if (float(1) == 0)
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularMap.rgb * specularTint.rgb, /*out*/ oneMinusReflectivity);
+ finalSpecular = poiRealisticSpecular(diffColor, specularMap.rgb, oneMinusReflectivity, specularMap.a * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ else
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularTint.rgb, /*out*/ oneMinusReflectivity);
+ float smoothness = max(max(specularMap.r, specularMap.g), specularMap.b);
+ finalSpecular = poiRealisticSpecular(diffColor, 1, oneMinusReflectivity, smoothness * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ finalSpecular *= lerp(1, albedo.rgb, mixAlbedoWithTint);
+ return finalSpecular;
+ }
+
+ half3 calculateToonSpecular(float4 albedo, float2 uv, float2 specularToonInnerOuter, float specularMixAlbedoIntoTint, float smoothnessFrom, float4 specularMap, float3 specularLight, float3 normal, float3 halfDir, float attenuation)
+ {
+ half3 finalSpecular = smoothstep(1 - specularToonInnerOuter.y, 1 - specularToonInnerOuter.x, dot(halfDir, normal)) * specularLight;
+
+ if (smoothnessFrom == 0)
+ {
+ finalSpecular.rgb *= specularMap.rgb * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ finalSpecular *= specularMap.a;
+ }
+ else
+ {
+ finalSpecular *= specularMap.r * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+ return finalSpecular;
+ }
+
+ float3 strandSpecular(float TdotL, float TdotV, float specPower, float nDotL)
+ {
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+ float Specular = saturate(nDotL) * pow(saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV), specPower);
+ half normalization = sqrt((specPower + 1) * ((specPower) + 1)) / (8 * pi);
+ Specular *= normalization;
+ return Specular;
+ }
+
+ half3 AnisotropicSpecular(
+ float specWhatTangent, float anisoUseTangentMap, float specularSmoothness, float spec2Smoothness,
+ float anisoSpec1Alpha, float anisoSpec2Alpha, float4 specularTint, float specularMixAlbedoIntoTint, float4 specularMap, float3 specularLight, float3 lightDirection, float3 halfDir, float nDotL, float jitter, float4 packedTangentMap, in float4 albedo)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ tangentDirectionMap += float(0) +jitter;
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+ half specPower = RoughnessToSpecPower(1.0 - specularSmoothness * specularMap.a);
+ half spec2Power = RoughnessToSpecPower(1.0 - spec2Smoothness * specularMap.a);
+ half Specular = 0;
+
+ float3 spec = strandSpecular(TdotL, TdotV, specPower, nDotL) * anisoSpec1Alpha;
+ float3 spec2 = strandSpecular(TdotL, TdotV, spec2Power, nDotL) * anisoSpec2Alpha;
+
+ return max(spec, spec2) * specularMap.rgb * specularTint.a * specularLight * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+
+ inline float3 toonAnisoSpecular(float specWhatTangent, float anisoUseTangentMap, float3 lightDirection, float halfDir, float4 specularMap, float nDotL, fixed gradientStart, fixed gradientEnd, float4 specColor, float4 finalColor, fixed metallic, float jitter, float mirrored, float4 packedTangentMap)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ if (!mirrored)
+ {
+ tangentDirectionMap += jitter;
+ }
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+
+ float specular = saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV);
+
+ fixed smoothAlpha = specular;
+ if(mirrored)
+ {
+ smoothAlpha = max(specular - jitter, 0);
+ }
+
+ specular = smoothstep(gradientStart, gradientEnd, smoothAlpha);
+
+ /*
+
+ if(_CenterOutSpecColor)
+ {
+ specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, clamp(float2(specular, specular), 0.01, .99), float4(0,0,0,0));
+ }
+ */
+
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+
+ return saturate(nDotL) * specular * poiLight.color * specColor * specularMap.rgb * lerp(1, finalColor, metallic) * specularMap.a;
+ }
+
+ inline float SpecularHQ(half roughness, half dotNH, half dotLH)
+ {
+ roughness = saturate(roughness);
+ roughness = max((roughness * roughness), 0.002);
+ half roughnessX2 = roughness * roughness;
+
+ half denom = dotNH * dotNH * (roughnessX2 - 1.0) + 1.0f;
+ half D = roughnessX2 / (3.14159 * denom * denom);
+
+ half k = roughness / 2.0f;
+ half k2 = k * k;
+ half invK2 = 1.0f - k2;
+
+ half vis = rcp(dotLH * dotLH * invK2 + k2);
+
+ float specTerm = vis * D;
+
+ return specTerm;
+ }
+
+ float3 calculateNewSpecular(in float3 specularMap, uint colorFrom, in float4 albedo, in float3 specularTint, in float specularMetallic, in float specularSmoothness, in half dotNH, in half dotLH, in float3 lightColor, in float attenuation)
+ {
+ float3 specColor = specularTint;
+ float metallic = specularMetallic;
+ float roughness = 1 - specularSmoothness;
+ float perceptualRoughness = roughness;
+ //float reflectInverse = DielectricSpec.a - metallic * DielectricSpec.a;
+ //float reflectivity = 1.0h - reflectInverse;
+ float3 specMapColor = lerp(specularMap, 1, colorFrom);
+ float3 specularColor = lerp(DielectricSpec.rgb * specMapColor, lerp(specularMap, albedo.rgb, colorFrom), metallic);
+ //albedo.rgb *= reflectInverse;
+ return clamp(specularColor * lightColor * attenuation * specularTint * SpecularHQ(perceptualRoughness, dotNH, dotLH), 0, lightColor * specularTint);
+ }
+
+ float3 calculateSpecular(in float4 albedo)
+ {
+ half3 finalSpecular = 0;
+ half3 finalSpecular1 = 0;
+ float4 realisticAlbedo = albedo;
+ float4 realisticAlbedo1 = albedo;
+ float4 specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half metallic = POI2D_SAMPLER_PAN(_SpecularMetallicMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ half specularMask = POI2D_SAMPLER_PAN(_SpecularMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float attenuation = saturate(poiLight.nDotL);
+ #ifdef POI_LIGHTING
+
+ if (float(0) && float(0) == 0 && float(0) == 1)
+ {
+ attenuation = poiLight.rampedLightMap;
+ }
+ #endif
+
+
+ if(float(1) == 1) // Realistic
+ {
+ if (float(1) == 1)
+ {
+ specularMap.a = specularMap.r;
+ specularMap.rgb = 1;
+ }
+
+ if(float(0))
+ {
+ specularMap.a = 1 - specularMap.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, attenuation);
+ #else
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic, jitter, float(0), packedTangentMap);
+ finalSpecular *= attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular += calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic, float(1), specularMap, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += AnisotropicSpecular(float(0), float(0), float(1), float(0), float(1), float(1), float4(1,1,1,1), metallic, specularMap, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular *= float4(1,1,1,1);
+ finalSpecular *= attenuation;
+ }
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+
+ finalSpecular *= float4(1,1,1,1).a;
+ finalSpecular = finalSpecular.rgb;
+ finalSpecular *= specularMask;
+
+
+ if (float(0))
+ {
+ float4 specularMap1 = POI2D_SAMPLER_PAN(_SpecularMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half specularMask1 = POI2D_SAMPLER_PAN(_SpecularMask1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ half metallic1 = POI2D_SAMPLER_PAN(_SpecularMetallicMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ float attenuation = poiLight.attenuation;
+
+ if(float(1) == 1) // Realistic
+ {
+
+ if (float(1) == 1)
+ {
+ specularMap1.a = specularMap1.r;
+ specularMap1.rgb = 1;
+ }
+ else
+ {
+ realisticAlbedo1.rgb = specularMap1.rgb;
+ }
+
+
+ if(float(0))
+ {
+ specularMap1.a = 1 - specularMap1.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, saturate(poiLight.nDotL));
+ #else
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap1, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic1, jitter, float(0), packedTangentMap);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular1 = calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic1, float(1), specularMap1, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular1 *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 = AnisotropicSpecular(float(0), float(0), float(0.75), float(0), float(1), float(1), float4(1,1,1,1), metallic1, specularMap1, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular1 *= float4(1,1,1,1);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ // Non Important Lights
+ #ifdef VERTEXLIGHT_ON
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular1 += calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+ #endif
+
+ finalSpecular1 *= float4(1,1,1,1).a;
+ finalSpecular1 = finalSpecular1.rgb;
+ finalSpecular1 *= specularMask1;
+ }
+ return finalSpecular + finalSpecular1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
new file mode 100644
index 00000000..5a7c9852
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fe39373850876c34283ca612b9750797
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
new file mode 100644
index 00000000..b7c21c01
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
@@ -0,0 +1,28 @@
+#ifndef SUBSURFACE
+ #define SUBSURFACE
+
+ float _SSSThicknessMod;
+ float _SSSSCale;
+ float _SSSPower;
+ float _SSSDistortion;
+ float4 _SSSColor;
+ float _EnableSSS;
+
+ POI_TEXTURE_NOSAMPLER(_SSSThicknessMap);
+
+ float3 calculateSubsurfaceScattering()
+ {
+ float SSS = 1 - POI2D_SAMPLER_PAN(_SSSThicknessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ half3 vLTLight = poiLight.direction + poiMesh.normals[0] * float(1);
+ half flTDot = pow(saturate(dot(poiCam.viewDir, -vLTLight)), float(5)) * float(0.25);
+ #ifdef FORWARD_BASE_PASS
+ half3 fLT = (flTDot) * saturate(SSS + - 1 * float(0));
+ #else
+ half3 fLT = poiLight.attenuation * (flTDot) * saturate(SSS + - 1 * float(0));
+ #endif
+
+ return fLT * poiLight.color * float4(1,0,0,1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
new file mode 100644
index 00000000..0fb26fef
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ef543f5a28806dd449de87f0f1ddca1a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
new file mode 100644
index 00000000..4912473d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
@@ -0,0 +1,117 @@
+#ifndef POI_TESSELLATION
+ #define POI_TESSELLATION
+
+ float _TessellationPhongStrength;
+ float _TessellationEdgeLength;
+ float _TessellationExtrusionAmount;
+ float _TessellationUniform;
+
+ struct TessellationControlPoint
+ {
+ float4 vertex: INTERNALTESSPOS;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ };
+
+ struct TessellationFactors
+ {
+ float edge[3]: SV_TessFactor;
+ float inside: SV_InsideTessFactor;
+ };
+
+ TessellationControlPoint poiTessellationVert(appdata v)
+ {
+ TessellationControlPoint p;
+ p.vertex = v.vertex;
+ p.normal = v.normal;
+ p.tangent = v.tangent;
+ p.color = v.color;
+ p.uv0 = v.uv0;
+ p.uv1 = v.uv1;
+ p.uv2 = v.uv2;
+ p.uv3 = v.uv3;
+ return p;
+ }
+
+ float TessellationEdgeFactor(float3 p0, float3 p1)
+ {
+ #ifndef _FADING_ON
+ float edgeLength = distance(p0, p1);
+
+ float3 edgeCenter = (p0 + p1) * 0.5;
+ float viewDistance = distance(edgeCenter, _WorldSpaceCameraPos);
+
+ return edgeLength * _ScreenParams.y /
+ (_TessellationEdgeLength * viewDistance);
+ #else
+ return _TessellationUniform;
+ #endif
+ }
+
+ TessellationFactors poiPatchConst(
+ InputPatch < TessellationControlPoint, 3 > patch
+ )
+ {
+
+ TessellationFactors f;
+ float3 p0 = mul(unity_ObjectToWorld, patch[0].vertex).xyz;
+ float3 p1 = mul(unity_ObjectToWorld, patch[1].vertex).xyz;
+ float3 p2 = mul(unity_ObjectToWorld, patch[2].vertex).xyz;
+ f.edge[0] = TessellationEdgeFactor(p1, p2);
+ f.edge[1] = TessellationEdgeFactor(p2, p0);
+ f.edge[2] = TessellationEdgeFactor(p0, p1);
+ f.inside = (TessellationEdgeFactor(p1, p2) +
+ TessellationEdgeFactor(p2, p0) +
+ TessellationEdgeFactor(p0, p1)) * (1 / 3.0);
+ return f;
+ }
+
+ [UNITY_domain("tri")]
+ [UNITY_outputcontrolpoints(3)]
+ [UNITY_outputtopology("triangle_cw")]
+ [UNITY_partitioning("fractional_odd")]
+ [UNITY_patchconstantfunc("poiPatchConst")]
+ TessellationControlPoint poiHull(
+ InputPatch < TessellationControlPoint, 3 > patch,
+ uint id: SV_OutputControlPointID
+ )
+ {
+ return patch[id];
+ }
+
+ [UNITY_domain("tri")]
+ v2f poiDomain(
+ TessellationFactors factors,
+ OutputPatch < TessellationControlPoint, 3 > patch,
+ float3 barycentricCoordinates: SV_DomainLocation
+ )
+ {
+ appdata data;
+
+ #define MY_DOMAIN_PROGRAM_INTERPOLATE(fieldName) data.fieldName = patch[0].fieldName * barycentricCoordinates.x + patch[1].fieldName * barycentricCoordinates.y + patch[2].fieldName * barycentricCoordinates.z;
+
+ MY_DOMAIN_PROGRAM_INTERPOLATE(vertex)
+ float3 pp[3];
+ for (int i = 0; i < 3; ++ i)
+ {
+ pp[i] = data.vertex.xyz - patch[i].normal * (dot(data.vertex.xyz, patch[i].normal) - dot(patch[i].vertex.xyz, patch[i].normal));
+ }
+ data.vertex.xyz = _TessellationPhongStrength * (pp[0] * barycentricCoordinates.x + pp[1] * barycentricCoordinates.y + pp[2] * barycentricCoordinates.z) + (1.0f - _TessellationPhongStrength) * data.vertex.xyz;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(normal)
+ data.vertex.xyz += data.normal.xyz * _TessellationExtrusionAmount;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(tangent)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(color)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv0)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv1)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv2)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv3)
+
+ return vert(data);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
new file mode 100644
index 00000000..d0e6cfd5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 68975fb0d14f68541883309bfc99a223
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
new file mode 100644
index 00000000..38d5fd75
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_UV_DISTORTION
+ #define POI_UV_DISTORTION
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture); float4 _DistortionFlowTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture1); float4 _DistortionFlowTexture1_ST;
+ POI_TEXTURE_NOSAMPLER(_DistortionMask);
+
+ float _DistortionStrength;
+ float _DistortionStrength1;
+ float2 _DistortionSpeed;
+ float2 _DistortionSpeed1;
+
+ float2 getTorusUv(float2 uv)
+ {
+ // translated to hlsl from https://www.shadertoy.com/view/Md3Bz7
+ // http://web.cs.ucdavis.edu/~amenta/s12/findnorm.pdf
+ float phi = 6.28318530718f * uv.x;
+ float theta = 6.28318530718f * uv.y;
+ float3 c = cos(float3(phi, phi + 1.57079632679f, theta));
+ float2 result = float2(c.x * c.z, -c.y * c.z);
+ return result * 0.5 + 0.5;
+ }
+
+ float2 calculateDistortionUV(float2 uv)
+ {
+ half distortionMask = POI2D_SAMPLER_PAN(_DistortionMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flowVector = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ float4 flowVector1 = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture1, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture1) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ flowVector *= float(0.5);
+ flowVector1 *= float(0.5);
+ return uv + ((flowVector.xy + flowVector1.xy) / 2) * distortionMask;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
new file mode 100644
index 00000000..a3b1b8a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a4b461e54ff1e7f4692438f6d6f330b4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
new file mode 100644
index 00000000..0e29a179
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_V2F
+ #define POI_V2F
+
+ struct v2f
+ {
+ float4 pos: SV_POSITION;
+ float4 uv0: TEXCOORD0;
+ float4 uv1: TEXCOORD1;
+ float3 normal: TEXCOORD2;
+ float3 tangentViewDir: TEXCOORD3;
+ float4 tangent: TEXCOORD4;
+ float4 worldPos: TEXCOORD5;
+ float4 localPos: TEXCOORD6;
+ float4 grabPos: TEXCOORD7;
+ float3 barycentricCoordinates: TEXCOORD8;
+ #if defined(GRAIN)
+ float4 worldDirection: TEXCOORD9;
+ #endif
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV: TEXCOORD10;
+ #endif
+ float3 modelPos: TEXCOORD11;
+ float angleAlpha: TEXCOORD12;
+ float4 vertexColor: TEXCOORD14;
+ #ifdef FUR
+ float furAlpha: TEXCOORD15;
+ #endif
+ UNITY_SHADOW_COORDS(16)
+ UNITY_FOG_COORDS(17)
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ UNITY_VERTEX_OUTPUT_STEREO
+ };
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
new file mode 100644
index 00000000..4b141aab
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 000cf5892263f4545be0c109b7fe8a4b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
new file mode 100644
index 00000000..1558e937
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
@@ -0,0 +1,126 @@
+#ifndef POI_VERT
+ #define POI_VERT
+
+ float _VertexManipulationHeightUV;
+ float _VertexUnwrap;
+
+ #define PM UNITY_MATRIX_P
+
+ inline float4 CalculateFrustumCorrection()
+ {
+ float x1 = -PM._31 / (PM._11 * PM._34);
+ float x2 = -PM._32 / (PM._22 * PM._34);
+ return float4(x1, x2, 0, PM._33 / PM._34 + x1 * PM._13 + x2 * PM._23);
+ }
+
+ v2f vert(appdata v)
+ {
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ #ifdef _COLOROVERLAY_ON
+ v.vertex.xyz = lerp(v.vertex.xyz, float3(v.uv0.x - .5, v.uv0.y - .5, 0), float(0));
+ #endif
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.tangent, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ #ifdef _REQUIRE_UV2 //POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ TANGENT_SPACE_ROTATION;
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ //o.localPos.x *= -1;
+ //o.localPos.xz += sin(o.localPos.y * 100 + _Time.y * 5) * .0025;
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, o.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+ o.vertexColor = v.color;
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.tangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
+
+ #ifdef POI_BULGE
+ bulgyWolgy(o);
+ #endif
+
+
+ o.angleAlpha = 1;
+ #ifdef _SUNDISK_NONE //POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ #if defined(LIGHTMAP_ON)
+ o.lightmapUV.xy = v.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
+ #endif
+ #ifdef DYNAMICLIGHTMAP_ON
+ o.lightmapUV.zw = v.uv2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0.xy);
+ UNITY_TRANSFER_FOG(o, o.pos);
+
+ #if defined(_PARALLAXMAP) // POI_PARALLAX
+ v.tangent.xyz = normalize(v.tangent.xyz);
+ v.normal = normalize(v.normal);
+ float3x3 objectToTangent = float3x3(
+ v.tangent.xyz,
+ cross(v.normal, v.tangent.xyz) * v.tangent.w,
+ v.normal
+ );
+ o.tangentViewDir = mul(objectToTangent, ObjSpaceViewDir(v.vertex));
+ #endif
+
+ #ifdef POI_META_PASS
+ o.pos = UnityMetaVertexPosition(v.vertex, v.uv1.xy, v.uv2.xy, unity_LightmapST, unity_DynamicLightmapST);
+ #endif
+
+ #if defined(GRAIN)
+ float4 worldDirection;
+
+ worldDirection.xyz = o.worldPos.xyz - _WorldSpaceCameraPos;
+ worldDirection.w = dot(o.pos, CalculateFrustumCorrection());
+ o.worldDirection = worldDirection;
+ #endif
+
+ return o;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
new file mode 100644
index 00000000..e9f68b15
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8e0d68e3faeafe944be745234a34d198
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
new file mode 100644
index 00000000..94c16148
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
@@ -0,0 +1,93 @@
+#ifndef POI_VERTEX_MANIPULATION
+ #define POI_VERTEX_MANIPULATION
+
+ #include "CGI_PoiMath.cginc"
+
+ float4 _VertexManipulationLocalTranslation;
+ float4 _VertexManipulationLocalRotation;
+ float4 _VertexManipulationLocalScale;
+ float4 _VertexManipulationWorldTranslation;
+
+ float _VertexManipulationHeight;
+ float _VertexManipulationHeightBias;
+ sampler2D _VertexManipulationHeightMask; float4 _VertexManipulationHeightMask_ST;
+ float2 _VertexManipulationHeightPan;
+
+
+ //Vertex Glitching
+ float _EnableVertexGlitch;
+ sampler2D _VertexGlitchMap; float4 _VertexGlitchMap_ST;
+ float _VertexGlitchThreshold;
+ float _VertexGlitchFrequency;
+ float _VertexGlitchStrength;
+ // Rounding
+ float _VertexRoundingDivision;
+ float _VertexRoundingEnabled;
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 tangent, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ tangent.xyz = rotate_with_quaternion(tangent.xyz, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyWorldVertexTransformation(inout float4 worldPos, inout float4 localPos, inout float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyWorldVertexTransformationShadow(inout float4 worldPos, inout float4 localPos, float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyVertexRounding(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if (float(0))
+ {
+ worldPos.xyz = (ceil(worldPos * float(500)) / float(500)) - 1 / float(500) * .5;
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+ void applyVertexGlitching(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if(_EnableVertexGlitch)
+ {
+ float3 forward = getCameraPosition() - mul(unity_ObjectToWorld, float4(0, 0, 0, 1)).xyz;
+ forward.y = 0;
+ forward = normalize(forward);
+ float3 glitchDirection = normalize(cross(float3(0, 1, 0), forward));
+ float glitchAmount = frac(sin(dot(_Time.xy + worldPos.y, float2(12.9898, 78.233))) * 43758.5453123) * 2 - 1;
+ /*
+ float uvl = worldPos.y * _VertexGlitchDensity + _Time.x * _VertexGlitchMapPanSpeed;
+ float uvr = worldPos.y * _VertexGlitchDensity - _Time.x * _VertexGlitchMapPanSpeed;
+ float glitchAmountLeft = tex2Dlod(_VertexGlitchMap, float4(uvl, uvl, 0, 0)).r;
+ float glitchAmountRight = -tex2Dlod(_VertexGlitchMap, float4(uvr, uvr, 0, 0)).r;
+ float glitchAmount = glitchAmountLeft + glitchAmountRight;
+ */
+ float time = _Time.y * _VertexGlitchFrequency;
+ float randomGlitch = (sin(time) + sin(2.2 * time + 5.52) + sin(2.9 * time + 0.93) + sin(4.6 * time + 8.94)) / 4;
+ worldPos.xyz += glitchAmount * glitchDirection * (_VertexGlitchStrength * .01) * step(_VertexGlitchThreshold, randomGlitch);
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+#endif
+//
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
new file mode 100644
index 00000000..100b10d0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a31a5c348005ae849a50ca445cc7a875
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
new file mode 100644
index 00000000..ec2d37e4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
@@ -0,0 +1,266 @@
+#ifndef POI_VIDEO
+ #define POI_VIDEO
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoPixelTexture); float4 _VideoPixelTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoMaskTexture); float4 _VideoMaskTexture_ST;
+
+ float _VideoUVNumber;
+ float _VideoType;
+ float3 pixels;
+ float2 _VideoResolution;
+ sampler2D _VideoGameboyRamp;
+ half _VideoBacklight;
+ half _VideoCRTRefreshRate;
+ half _VideoCRTPixelEnergizedTime;
+ half _VideoEnableVideoPlayer;
+ half _VideoRepeatVideoTexture;
+ half _VideoPixelateToResolution;
+ float2 _VideoMaskPanning;
+ // Video Settings
+ half _VideoSaturation;
+ half _VideoContrast;
+ float2 _VideoTiling;
+ float2 _VideoOffset;
+ float2 _VideoPanning;
+ //Debug
+ half _VideoEnableDebug;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoDebugTexture); float4 _VideoDebugTexture_ST;
+
+
+ sampler2D _VRChat_VideoPlayer;
+ float4 _VRChat_VideoPlayer_TexelSize;
+
+ float4 globalVideoPlayerColor;
+ float3 globalColorToDisplayOnScreen;
+ float globalVideoOn;
+
+ float3 applyBacklight(float3 albedo, half backlightStrength)
+ {
+ return max(backlightStrength, albedo.rgb);
+ }
+
+ float3 applyViewAngleTN(float3 albedo)
+ {
+ float3 reflectionVector = normalize(reflect(poiCam.viewDir.rgb, poiMesh.normals[1].rgb));
+ float upwardShift = dot(reflectionVector, poiMesh.binormal);
+ upwardShift = pow(upwardShift, 1);
+ float sideShift = dot(reflectionVector, poiMesh.tangent);
+ sideShift *= pow(sideShift, 3);
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = LinearToGammaSpace(albedo);
+ #endif
+ albedo = saturate(lerp(half3(0.5, 0.5, 0.5), albedo, upwardShift + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = GammaToLinearSpace(albedo);
+ #endif
+ albedo = (lerp(albedo, albedo.gbr, sideShift));
+ return albedo;
+ }
+
+ float calculateCRTPixelBrightness()
+ {
+ float totalPixels = _VideoResolution.x * _VideoResolution.y;
+ float2 uvPixel = float2((floor((1 - poiMesh.uv[_VideoUVNumber].y) * _VideoResolution.y)) / _VideoResolution.y, (floor(poiMesh.uv[_VideoUVNumber].x * _VideoResolution.x)) / _VideoResolution.x);
+ float currentPixelNumber = _VideoResolution.x * (_VideoResolution.y * uvPixel.x) + _VideoResolution.y * uvPixel.y;
+ float currentPixelAlpha = currentPixelNumber / totalPixels;
+ half electronBeamAlpha = frac(_Time.y * _VideoCRTRefreshRate);
+ float electronBeamPixelNumber = totalPixels * electronBeamAlpha;
+
+ float DistanceInPixelsFromCurrentElectronBeamPixel = 0;
+ if (electronBeamPixelNumber >= currentPixelNumber)
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber - currentPixelNumber;
+ }
+ else
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber + (totalPixels - currentPixelNumber);
+ }
+ float CRTFrameTime = 1 / _VideoCRTRefreshRate;
+ float timeSincecurrentPixelWasHitByElectronBeam = (DistanceInPixelsFromCurrentElectronBeamPixel / totalPixels);
+
+ return saturate(_VideoCRTPixelEnergizedTime - timeSincecurrentPixelWasHitByElectronBeam);
+ }
+
+ void applyContrastSettings(inout float3 pixel)
+ {
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = LinearToGammaSpace(pixel);
+ #endif
+ pixel = saturate(lerp(half3(0.5, 0.5, 0.5), pixel, _VideoContrast + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = GammaToLinearSpace(pixel);
+ #endif
+ }
+
+ void applySaturationSettings(inout float3 pixel)
+ {
+ pixel = lerp(pixel.rgb, dot(pixel.rgb, float3(0.3, 0.59, 0.11)), -_VideoSaturation);
+ }
+
+ void applyVideoSettings(inout float3 pixel)
+ {
+ applySaturationSettings(pixel);
+ applyContrastSettings(pixel);
+ }
+
+ void calculateLCD(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateTN(inout float4 albedo)
+ {
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ globalColorToDisplayOnScreen = applyViewAngleTN(globalColorToDisplayOnScreen);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateCRT(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ float brightness = calculateCRTPixelBrightness();
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * brightness * _VideoBacklight;
+ }
+ void calculateOLED(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateGameboy(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ half brightness = saturate((globalColorToDisplayOnScreen.r + globalColorToDisplayOnScreen.g + globalColorToDisplayOnScreen.b) * .3333333);
+ albedo.rgb = tex2D(_VideoGameboyRamp, brightness);
+ }
+ void calculateProjector(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+
+ float3 projectorColor = albedo * globalColorToDisplayOnScreen * _VideoBacklight;
+ albedo.r = clamp(projectorColor.r, albedo.r, 1000);
+ albedo.g = clamp(projectorColor.g, albedo.g, 1000);
+ albedo.b = clamp(projectorColor.b, albedo.b, 1000);
+ }
+
+ void applyScreenEffect(inout float4 albedo, inout float3 videoEmission)
+ {
+ float4 albedoBeforeScreen = albedo;
+
+ pixels = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoPixelTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoPixelTexture) * _VideoResolution);
+ globalVideoOn = 0;
+
+ if(_VideoEnableVideoPlayer == 1)
+ {
+ float4 videoTexture = 0;
+
+ if(_VideoPixelateToResolution)
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, round(TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoResolution + .5) / _VideoResolution);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, round(poiMesh.uv[_VideoUVNumber] * _VideoResolution + .5) / _VideoResolution);
+ }
+ }
+ else
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoTiling + _VideoOffset);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, ((poiMesh.uv[_VideoUVNumber] + _Time.x * _VideoPanning) * _VideoTiling) + _VideoOffset);
+ }
+ }
+ if(videoTexture.a == 1)
+ {
+ globalColorToDisplayOnScreen = videoTexture.rgb;
+ globalVideoOn = 1;
+ }
+ }
+
+
+ if(_VideoRepeatVideoTexture == 1)
+ {
+ if(poiMesh.uv[_VideoUVNumber].x > 1 || poiMesh.uv[_VideoUVNumber].x < 0 || poiMesh.uv[_VideoUVNumber].y > 1 || poiMesh.uv[_VideoUVNumber].y < 0)
+ {
+ return;
+ }
+ }
+
+ switch(_VideoType)
+ {
+ case 0: // LCD
+ {
+ calculateLCD(albedo);
+ break;
+ }
+ case 1: // TN
+ {
+ calculateTN(albedo);
+ break;
+ }
+ case 2: // CRT
+ {
+ calculateCRT(albedo);
+ break;
+ }
+ case 3: // OLED
+ {
+ calculateOLED(albedo);
+ break;
+ }
+ case 4: // Gameboy
+ {
+ calculateGameboy(albedo);
+ break;
+ }
+ case 5: // Projector
+ {
+ calculateProjector(albedo);
+ break;
+ }
+ }
+
+ float screenMask = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoMaskTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoMaskTexture) + _Time.x * _VideoMaskPanning);
+ albedo = lerp(albedoBeforeScreen, albedo, screenMask);
+ videoEmission = max(albedo.rgb * screenMask - 1, 0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
new file mode 100644
index 00000000..b8195f11
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3393a954ea1558741b0b1e886f3a7940
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
new file mode 100644
index 00000000..db3d3130
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
@@ -0,0 +1,304 @@
+#ifndef POI_VORONOI
+ #define POI_VORONOI
+
+ #include "CGI_PoiRNG.cginc"
+
+ float _VoronoiSpace;
+ float _VoronoiBlend;
+ float _VoronoiType;
+ float4 _VoronoiColor0;
+ float _VoronoiEmission0;
+ float4 _VoronoiColor1;
+ float _VoronoiEmission1;
+ float2 _VoronoiGradient;
+ float _VoronoiScale;
+ float3 _VoronoiSpeed;
+ float _VoronoiEnableRandomCellColor;
+ float2 _VoronoiRandomMinMaxSaturation;
+ float2 _VoronoiRandomMinMaxBrightness;
+ float3 randomPoint;
+ float _VoronoiEffectsMaterialAlpha;
+
+ POI_TEXTURE_NOSAMPLER(_VoronoiMask);
+ POI_TEXTURE_NOSAMPLER(_VoronoiNoise);
+ float _VoronoiNoiseIntensity;
+
+ float2 inoise(float3 P, float jitter)
+ {
+ float3 Pi = mod(floor(P), 289.0);
+ float3 Pf = frac(P);
+ float3 oi = float3(-1.0, 0.0, 1.0);
+ float3 of = float3(-0.5, 0.5, 1.5);
+ float3 px = Permutation(Pi.x + oi);
+ float3 py = Permutation(Pi.y + oi);
+
+ float3 p, ox, oy, oz, dx, dy, dz;
+ float2 F = 1e6;
+
+ for (int i = 0; i < 3; i ++)
+ {
+ for (int j = 0; j < 3; j ++)
+ {
+ p = Permutation(px[i] + py[j] + Pi.z + oi); // pij1, pij2, pij3
+
+ ox = frac(p * K) - Ko;
+ oy = mod(floor(p * K), 7.0) * K - Ko;
+
+ p = Permutation(p);
+
+ oz = frac(p * K) - Ko;
+
+ dx = Pf.x - of[i] + jitter * ox;
+ dy = Pf.y - of[j] + jitter * oy;
+ dz = Pf.z - of + jitter * oz;
+
+ float3 d = dx * dx + dy * dy + dz * dz; // dij1, dij2 and dij3, squared
+
+ //Find lowest and second lowest distances
+ for (int n = 0; n < 3; n ++)
+ {
+ if (d[n] < F[0])
+ {
+ F[1] = F[0];
+ F[0] = d[n];
+ randomPoint = p;
+ }
+ else if(d[n] < F[1])
+ {
+ F[1] = d[n];
+ }
+ }
+ }
+ }
+
+ return F;
+ }
+
+ float voronoi2D(in float2 x, float scale, float2 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float2 n = floor(x);
+ float2 f = frac(x);
+
+ // first pass: regular voronoi
+ float2 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 g = float2(float(i), float(j));
+ float2 o = random2(n + g);
+ float2 currentPoint = o;
+
+ float2 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint.xy = currentPoint;
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ float2 g = mg + float2(float(q), float(r));
+ float2 o = random2(n + g);
+
+ float2 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ return md;
+ }
+
+ float voronoi3D(in float3 x, float scale, float3 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float3 n = floor(x);
+ float3 f = frac(x);
+
+ // first pass: regular voronoi
+ float3 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ for (int h = -1; h <= 1; h ++)
+ {
+ float3 g = float3(float(h), float(i), float(j));
+ float3 o = random3(n + g);
+ float3 currentPoint = o;
+
+ float3 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint = currentPoint;
+ }
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ for (int p = -2; p <= 2; p ++)
+ {
+ float3 g = mg + float3(float(p), float(q), float(r));
+ float3 o = random3(n + g);
+
+ float3 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ }
+ return md;
+ }
+
+
+
+ // fracal sum, range -1.0 - 1.0
+ float VoronoiNoise_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ float VoronoiNoiseDiff_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[1]) - sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ void applyVoronoi(inout float4 finalColor, inout float3 VoronoiEmission)
+ {
+ float voronoiOctaveNumber = 1;
+ float voronoiOctaveScale = 1;
+ float voronoiOctaveAttenuation = 1;
+ randomPoint = 0;
+ float4 voronoiColor1 = _VoronoiColor1;
+
+ float voronoi = 0;
+
+ float3 position = 0;
+
+
+ if (_VoronoiSpace == 0)
+ {
+ position = poiMesh.localPos;
+ }
+
+ if(_VoronoiSpace == 1)
+ {
+ position = poiMesh.worldPos;
+ }
+
+ if(_VoronoiSpace == 2)
+ {
+ position = float3(poiMesh.uv[0].x, poiMesh.uv[0].y, 0);
+ }
+
+ float mask = POI2D_SAMPLER_PAN(_VoronoiMask, _MainTex, poiMesh.uv[_VoronoiMaskUV], _VoronoiMaskPan).r;
+ float edgeNoise = POI2D_SAMPLER_PAN(_VoronoiNoise, _MainTex, poiMesh.uv[_VoronoiNoiseUV], _VoronoiNoisePan).r * _VoronoiNoiseIntensity;
+
+
+ if(_VoronoiType == 0) // Basic
+ {
+ voronoi = voronoi2D(position.xy, _VoronoiScale, _VoronoiSpeed);
+ }
+
+ if (_VoronoiType == 1) // Diff
+ {
+ voronoi = VoronoiNoiseDiff_Octaves(position, _VoronoiScale, _VoronoiSpeed, voronoiOctaveNumber, voronoiOctaveScale, voronoiOctaveAttenuation, 1, _Time.x);
+ }
+
+ if (_VoronoiType == 2) // Fixed Border
+ {
+ voronoi = voronoi3D(position, _VoronoiScale, _VoronoiSpeed);
+ // isolines
+ //color = c.x * (0.5 + 0.5 * sin(64.0 * c.x)) * 1.0;
+ }
+
+ if (_VoronoiEnableRandomCellColor == 1)
+ {
+ float3 rando = random3(randomPoint);
+ fixed hue = rando.x;
+ fixed saturation = lerp(_VoronoiRandomMinMaxSaturation.x, _VoronoiRandomMinMaxSaturation.y, rando.y);
+ fixed value = lerp(_VoronoiRandomMinMaxBrightness.x, _VoronoiRandomMinMaxBrightness.y, rando.z);
+ float3 hsv = float3(hue, saturation, value);
+
+ voronoiColor1.rgb = HSVtoRGB(hsv);
+ }
+
+ float2 voronoiGradient = _VoronoiGradient;
+ voronoiGradient.xy += edgeNoise;
+ float ramp = smoothstep(voronoiGradient.x, voronoiGradient.y, voronoi);
+
+
+ if(_VoronoiBlend == 0)
+ {
+ float4 voronoiColor = lerp(_VoronoiColor0, voronoiColor1, ramp);
+
+ if(_VoronoiEffectsMaterialAlpha)
+ {
+ finalColor.rgba = lerp(finalColor, voronoiColor, mask);
+ }
+ else
+ {
+ finalColor.rgb = lerp(finalColor.rgb, voronoiColor.rgb, mask * voronoiColor.a);
+ }
+ }
+ float4 voronoiEmissionColor = lerp(_VoronoiColor0 * _VoronoiEmission0, voronoiColor1 * _VoronoiEmission1, ramp);
+ VoronoiEmission = voronoiEmissionColor.rgb * mask * voronoiEmissionColor.a;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
new file mode 100644
index 00000000..0dfd6da6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: da9ebbe5e0332df4383ff66579d16e0c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
new file mode 100644
index 00000000..49c602c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
@@ -0,0 +1,111 @@
+#ifndef POI_WIREFRAME
+ #define POI_WIREFRAME
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_WireframeTexture); float4 _WireframeTexture_ST;
+ float2 _WireframeTexturePan;
+ float _WireframeSmoothing;
+ float _WireframeThickness;
+ float4 _WireframeColor;
+ float _WireframeAlpha;
+ float _WireframeEnable;
+ float _WireframeWaveEnabled;
+ float _WireframeWaveDensity;
+ float _WireframeWaveSpeed;
+ float _WireframeEdgeOpacity;
+ float _WireframeFaceOpacity;
+ half _WireframeEmissionAlpha;
+ float _WireframeEmissionStrength;
+ float _WireframeQuad;
+ float _WireframeUV;
+
+ #ifndef POI_SHADOW
+ void applyWireframe(inout float3 wireframeEmission, inout float4 albedo)
+ {
+
+ if (_WireframeEnable)
+ {
+ float4 colorMap = UNITY_SAMPLE_TEX2D_SAMPLER(_WireframeTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_WireframeUV], _WireframeTexture) + _Time.x * _WireframeTexturePan);
+ float size = _WireframeThickness;
+ half3 width = abs(ddx(poiMesh.barycentricCoordinates)) + abs(ddy(poiMesh.barycentricCoordinates));
+ half3 eF = smoothstep(0, width * size, poiMesh.barycentricCoordinates);
+ half minBary = size > 0 ? min(min(eF.x, eF.y), eF.z): 1;
+
+ float4 wireframeColor = _WireframeColor * colorMap;
+
+ albedo.a *= lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ albedo.rgb = lerp(lerp(albedo.rgb, wireframeColor.rgb, wireframeColor.a), albedo.rgb, minBary);
+ wireframeEmission = wireframeColor.rgb * _WireframeEmissionStrength * (1 - minBary) * _WireframeColor.a;
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle v2f IN[3], inout TriangleStream < v2f > tristream)
+ {
+
+ if(_WireframeQuad)
+ {
+ float e1 = length(IN[0].localPos - IN[1].localPos);
+ float e2 = length(IN[1].localPos - IN[2].localPos);
+ float e3 = length(IN[2].localPos - IN[0].localPos);
+
+ float3 quad = 0;
+ if(e1 > e2 && e1 > e3)
+ quad.y = 1.;
+ else if(e2 > e3 && e2 > e1)
+ quad.x = 1;
+ else
+ quad.z = 1;
+
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0) + quad;
+ IN[1].barycentricCoordinates = fixed3(0, 0, 1) + quad;
+ IN[2].barycentricCoordinates = fixed3(0, 1, 0) + quad;
+ }
+ else
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ }
+
+
+
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #else
+
+ float applyShadowWireframe(float2 uv, float3 barycentricCoordinates, float3 normal, float3 worldPos)
+ {
+
+ if(_WireframeEnable)
+ {
+ float wireframeFadeAlpha = _WireframeAlpha;
+ float3 finalWireframeColor = 0;
+
+ float3 barys;
+ barys.xy = barycentricCoordinates;
+ barys.z = 1 - barys.x - barys.y;
+ float3 deltas = fwidth(barys);
+ float3 smoothing = deltas * _WireframeSmoothing;
+ float wireframeThickness = _WireframeThickness;
+ float3 thickness = deltas * wireframeThickness;
+ barys = smoothstep(thickness, thickness + smoothing, barys);
+ float minBary = min(barys.x, min(barys.y, barys.z));
+
+ return lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle V2FShadow IN[3], inout TriangleStream < V2FShadow > tristream)
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
new file mode 100644
index 00000000..dd3ae6e6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 754a4adb9f948ef4b85ae15383d7f9c6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
new file mode 100644
index 00000000..319de57c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
@@ -0,0 +1,171 @@
+#ifndef POICLUDES
+ #define POICLUDES
+
+ UNITY_DECLARE_TEX2D(_MainTex); float4 _MainTex_ST; float4 _MainTex_TexelSize;
+ sampler2D _PoiGrab;
+ sampler2D _CameraDepthTexture;
+ float _Cutoff;
+ float _AlphaMod;
+
+ //Structs
+ struct appdata
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #ifdef OUTLINE
+ float _LineWidth;
+ float _OutlineEmission;
+ float4 _LineColor;
+ sampler2D _OutlineTexture; float4 _OutlineTexture_ST; float2 _OutlineTexturePan; float _OutlineTextureUV;
+ float4 _OutlineFadeDistance;
+ float4 _OutlineGlobalPan;
+ #endif
+
+ struct PoiLighting
+ {
+ half3 direction;
+ half3 color;
+ fixed attenuation;
+ #ifdef FORWARD_ADD_PASS
+ fixed additiveShadow;
+ #endif
+ half3 directLighting;
+ half3 indirectLighting;
+ half lightMap;
+ half3 rampedLightMap;
+ half3 finalLighting;
+ half3 halfDir;
+ half nDotL;
+ half nDotH;
+ half lDotv;
+ half lDotH;
+ half nDotV;
+ half N0DotV;
+ half diffuseTerm;
+
+ // World normal dot half direction
+ #ifdef POI_VAR_DOTNH
+ half dotNH;
+ #endif
+
+ // Light direction dot half direction
+ #ifdef POI_VAR_DOTLH
+ half dotLH;
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ float4 vDotNL;
+ float3 vColor[4];
+ float4 vCorrectedDotNL;
+ float4 vAttenuation;
+ float4 vAttenuationDotNL;
+ float3 vPosition[4];
+ float3 vDirection[4];
+ float3 vFinalLighting;
+ float3 vHalfDir[4];
+
+ #ifdef POI_VAR_DOTLH
+ half4 vDotLH;
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ half4 vDotNH;
+ #endif
+
+ #endif
+ };
+
+ struct PoiCamera
+ {
+ half3 viewDir;
+ half3 tangentViewDir;
+ half3 forwardDir;
+ half3 worldPos;
+ float viewDotNormal;
+ float distanceToModel;
+ float distanceToVert;
+ float3 reflectionDir;
+ float3 vertexReflectionDir;
+ float2 screenUV;
+ float4 clipPos;
+ #if defined(GRAIN)
+ float4 worldDirection;
+ #endif
+ float4 grabPos;
+ };
+
+ struct PoiMesh
+ {
+ float3 normals[2];
+ float3 tangent;
+ float3 binormal;
+ float3 localPos;
+ float3 worldPos;
+ float3 modelPos;
+ float3 tangentSpaceNormal;
+ float2 uv[5];
+ float4 vertexColor;
+ fixed3 barycentricCoordinates;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV;
+ #endif
+ float isFrontFace;
+ #ifdef FUR
+ float furAlpha;
+ #endif
+ };
+
+ struct PoiTangentData
+ {
+ float3x3 tangentTransform;
+ float3x3 tangentToWorld;
+ };
+
+ struct FragmentCommonData
+ {
+ half3 diffColor, specColor;
+ // Note: smoothness & oneMinusReflectivity for optimization purposes, mostly for DX9 SM2.0 level.
+ // Most of the math is being done on these (1-x) values, and that saves a few precious ALU slots.
+ half oneMinusReflectivity, smoothness;
+ float3 normalWorld;
+ float3 eyeVec;
+ half alpha;
+ float3 posWorld;
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 reflUVW;
+ #endif
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 tangentSpaceNormal;
+ #endif
+ };
+
+ struct Debug
+ {
+ float debug1;
+ float2 debug2;
+ float3 debug3;
+ float4 debug4;
+ };
+
+ static Debug debug;
+ static PoiLighting poiLight;
+ static PoiCamera poiCam;
+ static PoiMesh poiMesh;
+ static UnityGI gi;
+ static FragmentCommonData s;
+ static PoiTangentData poiTData;
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
new file mode 100644
index 00000000..04fe0fd1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e8aa8a542f1499b438f5ceb83ce77405
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
new file mode 100644
index 00000000..df672a5b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: de31d9e67c4440249a96765b28536d01
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
new file mode 100644
index 00000000..3c7e6b0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
@@ -0,0 +1,7648 @@
+Shader "Hidden/.poiyomi/• Poiyomi Toon •/R2Changyu01001Face-d37d2b3e"
+{
+ Properties
+ {
+ [HideInInspector] shader_is_using_thry_editor ("", Float) = 0
+ [HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Toon V7.0.100</color>", Float) = 0
+ [HideInInspector] shader_presets ("poiToonPresets", Float) = 0
+ [HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
+
+ [HideInInspector] footer_youtube ("youtube footer button", Float) = 0
+ [HideInInspector] footer_twitter ("twitter footer button", Float) = 0
+ [HideInInspector] footer_patreon ("patreon footer button", Float) = 0
+ [HideInInspector] footer_discord ("discord footer button", Float) = 0
+ [HideInInspector] footer_github ("github footer button", Float) = 0
+
+ // Keyword to remind users in the VRChat SDK that this material hasn't been locked. Inelegant but it works.
+ [HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Int) = 1
+ [ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Int) = 0
+ [Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Int) = 0
+
+ [ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)]_Mode("Rendering Preset--{on_value_actions:[
+ {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2450}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=1}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2451}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
+ {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:RenderType=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
+ }]}]}", Int) = 0
+ [HideInInspector] m_LockingInfo ("Locking Info--{button_right:{text:Tutorial,action:{type:URL,data:https://youtu.be/asWeDJb5LAo},hover:YouTube},is_hideable:true}", Float) = 0
+ [Helpbox(1)] _HelpBoxLocking ("LOCKING IN THE SHADER WILL DRAMATICALLY INCREASE PERFORMANCE AND DRAMATICALLY LOWER THE FILE SIZE OF AN AVATAR PACKAGE.
+
+ LOCKED IN MATERIALS CANNOT BE ANIMATED WITHOUT SETTING THE SPECIFIC PROPERTY TO DYNAMIC. RIGHT CLICK MATERIAL PROPERTIES YOU WISH TO ANIMATE, A CLOCK ICON WILL APPEAR BESIDE THE PROPERTY SIGNIFYING THAT IT CAN BE ANIMATED.
+
+ FOR MORE INFORMATION ON LOCKING PLEASE WATCH THE LOCKING TUTORIAL IN THE HEADER ABOVE.", Int) = 0
+ [Helpbox(2)] _HelpBoxHideLocking ("TO HIDE THIS CATEGORY SELECT CUSTOM UI AT THE TOP AND UNCHECK THE LOCKING INFO CATEGORY", Float) = 0
+ // Main
+ [HideInInspector] m_mainOptions ("Main", Float) = 0
+ _Color ("Color & Alpha", Color) = (1, 1, 1, 1)
+ _MainTex ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainTextureUV ("UV", Int) = 0
+ _Saturation ("Saturation", Range(-1, 1)) = 0
+ _MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
+ [Normal]_BumpMap ("Normal Map", 2D) = "bump" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _BumpMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_BumpMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ _BumpScale ("Normal Intensity", Range(0, 10)) = 1
+ _AlphaMask ("Alpha Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_AlphaMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AlphaMaskUV ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector] m_start_MainHueShift ("Hue Shift", Float) = 0
+ [HideInInspector][Toggle(COLOR_GRADING_HDR)]_MainHueShiftToggle ("Toggle Hueshift", Float) = 0
+ [ToggleUI]_MainHueShiftReplace ("Replace?", Float) = 1
+ _MainHueShift ("Hue Shift", Range(0, 1)) = 0
+ _MainHueShiftSpeed ("Shift Speed", Float) = 0
+ _MainHueShiftMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainHueShiftMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainHueShiftMaskUV ("UV", Int) = 0
+ [HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
+
+ // RGB Masking
+ [HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
+ [HideInInspector][Toggle(VIGNETTE)]_RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
+ [ToggleUI]_RGBUseVertexColors ("Use Vertex Colors", Float) = 0
+ [ToggleUI]_RGBBlendMultiplicative ("Multiplicative?", Float) = 0
+ _RGBMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBMaskPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBMaskUV ("UV", int) = 0
+ _RedColor ("R Color", Color) = (1, 1, 1, 1)
+ _RedTexure ("R Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBRedPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBRed_UV ("UV", int) = 0
+ _GreenColor ("G Color", Color) = (1, 1, 1, 1)
+ _GreenTexture ("G Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBGreenPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBGreen_UV ("UV", int) = 0
+ _BlueColor ("B Color", Color) = (1, 1, 1, 1)
+ _BlueTexture ("B Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBBluePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBBlue_UV ("UV", int) = 0
+ // RGB MASKED NORMALS
+ [Toggle(GEOM_TYPE_MESH)]_RgbNormalsEnabled ("Enable Normals", Float) = 0
+ [ToggleUI]_RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
+ [Normal]_RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalRPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalRUV ("UV", int) = 0
+ _RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalGPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalGUV ("UV", int) = 0
+ _RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalBPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalBUV ("UV", int) = 0
+ _RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
+
+ // Detail Options
+ [HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(FINALPASS)]_DetailEnabled ("Enable", Float) = 0
+ _DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" { }
+ [HideInInspector][Vector2]_DetailMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailMaskUV ("UV", Int) = 0
+ _DetailTint ("Detail Texture Tint", Color) = (1, 1, 1)
+ _DetailTex ("Detail Texture", 2D) = "gray" { }
+ [HideInInspector][Vector2]_DetailTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailTexUV ("UV", Int) = 0
+ _DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
+ _DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
+ [Normal]_DetailNormalMap ("Detail Normal", 2D) = "bump" { }
+ _DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
+ [HideInInspector][Vector2]_DetailNormalMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailNormalMapUV ("UV", Int) = 0
+ [HideInInspector] m_end_DetailOptions ("Details", Float) = 0
+
+ // Vertex Colors
+ [HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
+ _MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
+ _MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
+
+ //Vertex Manipulations
+ [HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(AUTO_EXPOSURE)]_VertexManipulationsEnabled ("Enabled", Float) = 0
+ [Vector3]_VertexManipulationLocalTranslation ("Local Translation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalRotation ("Local Rotation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalScale ("Local Scale", Vector) = (1, 1, 1, 1)
+ [Vector3]_VertexManipulationWorldTranslation ("World Translation", Vector) = (0, 0, 0, 1)
+ _VertexManipulationHeight ("Vertex Height", Float) = 0
+ _VertexManipulationHeightMask ("Height Map", 2D) = "while" { }
+ [HideInInspector][Vector2]_VertexManipulationHeightPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _VertexManipulationHeightUV ("UV", Int) = 0
+ _VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
+ [ToggleUI]_VertexRoundingEnabled ("Rounding Enabled", Float) = 0
+ _VertexRoundingDivision ("Division Amount", Float) = 500
+ [HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
+
+ // Alpha Options
+ [HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
+ _Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
+ [ToggleUI]_DitheringEnabled ("Enable Dithering", Float) = 0
+ _DitherGradient ("Dither Gradient", Range(0, 1)) = .1
+ [ToggleUI]_ForceOpaque ("Force Opaque", Float) = 0
+ _MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
+ [Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
+ [ToggleUI]_MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
+ _MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
+ [ToggleUI]_AlphaPremultiply ("Alpha Premultiply", Float) = 0
+ _AlphaMod ("Alpha Mod", Range(-1, 1)) = 0.0
+ [HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
+
+ // Decal Texture
+ [HideInInspector] m_start_DecalSection ("Decal", Float) = 0
+ [HideInInspector][Toggle(GEOM_TYPE_BRANCH)]_DecalEnabled ("Enable", Float) = 0
+ _DecalColor ("Color", Color) = (1, 1, 1, 1)
+ _DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _DecalTexture ("Decal", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalTextureUV ("UV", Int) = 0
+ _DecalMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalMaskUV ("UV", Int) = 0
+ [ToggleUI]_DecalTiled ("Tiled?", Float) = 0
+ [Vector2]_DecalScale ("Scale", Vector) = (1, 1, 0, 0)
+ [Vector2]_DecalPosition ("Position", Vector) = (.5, .5, 0, 0)
+ _DecalRotation ("Rotation", Range(0, 360)) = 0
+ _DecalRotationSpeed ("Rotation Speed", Float) = 0
+ _DecalBlendAdd ("Add", Range(0, 1)) = 0
+ _DecalBlendMultiply ("Multiply", Range(0, 1)) = 0
+ _DecalBlendReplace ("Replace", Range(0, 1)) = 0
+ [HideInInspector] m_end_DecalSection ("Decal", Float) = 0
+
+ // Back Face Textures and Emission
+ [HideInInspector] m_start_backFace ("Back Face", Float) = 0
+ [ToggleUI]_BackFaceEnabled ("Enable Back Face Options", Float) = 0
+ _BackFaceColor ("Color", Color) = (1, 1, 1, 1)
+ _BackFaceTexture ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_BackFacePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_BackFaceTextureUV ("UV#", Int) = 0
+ _BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
+ _BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
+ _BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [HideInInspector] m_end_backFace ("Back Face", Float) = 0
+
+ // Lighting
+ [HideInInspector] m_lightingOptions ("Lighting", Float) = 0
+ [HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
+ [Toggle(VIGNETTE_MASKED)]_EnableLighting ("Enable Lighting", Float) = 1
+ [Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Int) = 0
+ _LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
+ [Enum(Ramp Texture, 0, Math Gradient, 1)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Int) = 0
+ [Gradient]_ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" { }
+ _LightingShadowMask ("Ramp Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowMaskUV ("UV", Int) = 0
+ _ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
+ _LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
+ _LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = .5
+ _LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Color) = (1, 1, 1, 1)
+ _ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 1
+ _AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+
+ [HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
+ [Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Int) = 0
+ [ToggleUI]_LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
+ [ToggleUI]_LightingUncapped ("Uncapped Lighting", Float) = 0
+ [ToggleUI]_LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
+ _LightingMonochromatic ("Monochromatic Lighting?", Range(0,1)) = 0
+ _LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
+ _LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
+ [HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
+
+ [HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
+ _LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingDetailShadowsPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingDetailShadowsUV ("UV", Int) = 0
+ _LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
+
+ [HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableAO ("Enable AO", Float) = 0
+ _LightingAOTex ("AO Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingAOTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingAOTexUV ("UV", Int) = 0
+ _AOStrength ("AO Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
+
+ [HideInInspector] m_start_shadowTexture ("Shadow Texture--{reference_property:_UseShadowTexture, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ [HideInInspector][ToggleUI]_UseShadowTexture ("EnableShadowTexture--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ _LightingShadowTexture ("Shadow Texture--{reference_properties:[_LightingShadowTexturePan, _LightingShadowTextureUV], condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_shadowTexture ("Shadow Texture", Float) = 0
+
+ // HSL Lighting
+ [HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
+ _LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
+ _LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
+ _LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
+ _LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
+ [HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
+
+ // point/spot Light Settings
+ [HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
+ [HideInInspector][ToggleUI]_commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
+ [Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Int) = 1
+ _LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
+ _LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = .5
+ _LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = .5
+ _LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
+ [ToggleUI]_LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
+ _LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
+ [Toggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)]_DisableDirectionalInAdd ("No Directional", Float) = 1
+ [HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
+ [HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
+
+ // Subsurface Scattering
+ [HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
+ [Toggle(_TERRAIN_NORMAL_MAP)]_EnableSSS ("Enable Subsurface Scattering", Float) = 0
+ _SSSColor ("Subsurface Color", Color) = (1, 0, 0, 1)
+ _SSSThicknessMap ("Thickness Map", 2D) = "black" { }
+ [HideInInspector][Vector2]_SSSThicknessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SSSThicknessMapUV ("UV", Int) = 0
+ _SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
+ _SSSSCale ("Light Strength", Range(0, 1)) = 0.25
+ _SSSPower ("Light Spread", Range(1, 100)) = 5
+ _SSSDistortion ("Light Distortion", Range(0, 1)) = 1
+ [HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
+
+ // Rim Lighting
+ [HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
+ [Toggle(_GLOSSYREFLECTIONS_OFF)]_EnableRimLighting ("Enable Rim Lighting", Float) = 0
+ [Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Int) = 1
+ [ToggleUI]_RimLightingInvert ("Invert Rim Lighting", Float) = 0
+ _RimLightColor ("Rim Color", Color) = (1, 1, 1, 1)
+ _RimWidth ("Rim Width", Range(0, 1)) = 0.8
+ _RimSharpness ("Rim Sharpness", Range(0, 1)) = .25
+ _RimStrength ("Rim Emission", Range(0, 20)) = 0
+ _RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
+ _RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 0
+ _RimTex ("Rim Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimTexUV ("UV", Int) = 0
+ _RimMask ("Rim Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimMaskUV ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
+ _RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_RimWidthNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimWidthNoiseTextureUV ("UV", Int) = 0
+ _RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
+ [HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
+ _ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
+ _ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = .5
+ _ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = .5
+ [HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
+ [HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
+ [Toggle(_MAPPING_6_FRAMES_LAYOUT)]_EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
+ _RimEnviroMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimEnviroMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimEnviroMaskUV ("UV", Int) = 0
+ _RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
+ _RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
+ _RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
+ _RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
+ _RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
+ [HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
+
+ // Baked Lighting
+ [HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
+ _GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
+ [HideInInspector] DSGI ("DSGI", Float) = 0 //add this property for double sided illumination settings to be shown
+ [HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0 //add this property for lightmap flags settings to be shown
+ [HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
+
+ // Metallics
+ [HideInInspector] m_start_Metallic ("Metallics", Float) = 0
+ [Toggle(_METALLICGLOSSMAP)]_EnableMetallic ("Enable Metallics", Float) = 0
+ _CubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _MetalReflectionTint ("Reflection Tint", Color) = (1, 1, 1)
+ _MetallicTintMap ("Tint Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicTintMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicTintMapUV ("UV", Int) = 0
+ _MetallicMask ("Metallic Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicMaskUV ("UV", Int) = 0
+ _Metallic ("Metallic", Range(0, 1)) = 0
+ _SmoothnessMask ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SmoothnessMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SmoothnessMaskUV ("UV", Int) = 0
+ [ToggleUI]_InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _Smoothness ("Smoothness", Range(0, 1)) = 0
+ [HideInInspector] m_end_Metallic ("Metallics", Float) = 0
+
+ // Clearcoat
+ [HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
+ [Toggle(_COLORCOLOR_ON)]_EnableClearCoat ("Enable Clear Coat", Float) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _ClearCoatNormalToUse ("What Normal?", Int) = 0
+ _ClearCoatCubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_ClearCoatSampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _ClearCoatTint ("Reflection Tint", Color) = (1, 1, 1)
+ _ClearCoatMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatMaskUV ("UV", Int) = 0
+ _ClearCoat ("Clear Coat", Range(0, 1)) = 1
+ _ClearCoatSmoothnessMap ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatSmoothnessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatSmoothnessMapUV ("UV", Int) = 0
+ [ToggleUI]_ClearCoatInvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _ClearCoatSmoothness ("Smoothness", Range(0, 1)) = 0
+ [ToggleUI]_ClearCoatForceLighting ("Force Lighting", Float) = 0
+ [HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
+
+ // First Matcap
+ [HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
+ [Toggle(_COLORADDSUBDIFF_ON)]_MatcapEnable ("Enable Matcap", Float) = 0
+ _MatcapColor ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap ("Matcap", 2D) = "white" { }
+ _MatcapBorder ("Border", Range(0, .5)) = 0.43
+ _MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_MatcapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MatcapMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_MatcapMaskInvert("Invert", Float) = 0
+ _MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _MatcapIntensity ("Intensity", Range(0, 5)) = 1
+ _MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
+ _MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
+ _MatcapAdd ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_matcap ("Matcap", Float) = 0
+
+ // Second Matcap
+ [HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
+ [ToggleUI]_Matcap2Enable ("Enable Matcap 2", Float) = 0
+ _Matcap2Color ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap2 ("Matcap", 2D) = "white" { }
+ _Matcap2Border ("Border", Range(0, .5)) = 0.43
+ _Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_Matcap2MaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _Matcap2MaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_Matcap2MaskInvert("Invert", Float) = 0
+ _Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _Matcap2Intensity ("Intensity", Range(0, 5)) = 1
+ _Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
+ _Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
+ _Matcap2Add ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
+
+ // Specular
+ [HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
+ [Toggle(_SPECGLOSSMAP)]_EnableSpecular ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Int) = 1
+ _SpecularTint ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMapUV ("UV", Int) = 0
+ _SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
+ [Gradient]_SpecularMap ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMapUV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
+ _SpecularMask ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMaskUV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Int) = 1
+ // Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Int) = 0
+ _AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
+ _AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMapUV ("UV", Int) = 0
+ //toon aniso
+ _SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicroUV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacroUV ("UV", Int) = 0
+ // Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
+
+ // Second Specular
+ [HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
+ [ToggleUI]_EnableSpecular1 ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Int) = 1
+ _SpecularTint1 ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMap1UV ("UV", Int) = 0
+ _SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = .75
+ _SpecularMap1 ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMap1UV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
+ _SpecularMask1 ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMask1UV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Int) = 1
+ // Second Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Int) = 0
+ _AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
+ _AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMap1UV ("UV", Int) = 0
+ // Second toon aniso
+ _SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor1 ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicro1UV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacro1UV ("UV", Int) = 0
+ // Second Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
+
+ // First Emission
+ [HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
+ [HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
+ [Toggle(_EMISSION)]_EnableEmission ("Enable Emission", Float) = 0
+ [ToggleUI]_EmissionReplace ("Replace Base Color", Float) = 0
+ [HDR]_EmissionColor ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMapUV ("UV", Int) = 0
+ _EmissionMask ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMaskUV ("UV", Int) = 0
+ _EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
+
+ // Center out emission
+ [HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+
+ // Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor ("VColor as position", float) = 0
+ _EmissiveScroll_Direction ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width ("Width", Float) = 10
+ _EmissiveScroll_Velocity ("Velocity", Float) = 10
+ _EmissiveScroll_Interval ("Interval", Float) = 20
+ _EmissionScrollingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
+
+ // Second Enission
+ [HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
+ [Toggle(EFFECT_HUE_VARIATION)]_EnableEmission1 ("Enable Emission 2", Float) = 0
+ [HDR]_EmissionColor1 ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap1 ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMap1UV ("UV", Int) = 0
+ _EmissionMask1 ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMask1UV ("UV", Int) = 0
+ _EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
+
+ // Second Center Out Enission
+ [HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Second Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve1 ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve1 ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor1 ("VColor as position", float) = 0
+ _EmissiveScroll_Direction1 ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width1 ("Width", Float) = 10
+ _EmissiveScroll_Velocity1 ("Velocity", Float) = 10
+ _EmissiveScroll_Interval1 ("Interval", Float) = 20
+ _EmissionScrollingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
+
+ // Flipbook
+ [HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
+ [Toggle(_SUNDISK_HIGH_QUALITY)]_EnableFlipbook ("Enable Flipbook", Float) = 0
+ [ToggleUI]_FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
+ [TextureArray]_FlipbookTexArray ("Texture Array", 2DArray) = "" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookTexArrayUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookTexArrayPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookMaskUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookColor ("Color & alpha", Color) = (1, 1, 1, 1)
+ _FlipbookTotalFrames ("Total Frames", Int) = 1
+ _FlipbookFPS ("FPS", Float) = 30.0
+ _FlipbookScaleOffset ("Scale | Offset", Vector) = (1, 1, 0, 0)
+ [ToggleUI]_FlipbookTiled ("Tiled?", Float) = 0
+ _FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _FlipbookRotation ("Rotation", Range(0, 360)) = 0
+ _FlipbookRotationSpeed ("Rotation Speed", Float) = 0
+ _FlipbookReplace ("Replace", Range(0, 1)) = 1
+ _FlipbookMultiply ("Multiply", Range(0, 1)) = 0
+ _FlipbookAdd ("Add", Range(0, 1)) = 0
+
+ // Flipbook Manual Control
+ [HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
+ _FlipbookCurrentFrame ("Current Frame", Float) = -1
+ [HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
+ [HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
+
+ // Dissolve
+ [HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
+ [Toggle(DISTORT)]_EnableDissolve ("Enable Dissolve", Float) = 0
+ [Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Int) = 1
+ _DissolveEdgeWidth ("Edge Width", Range(0, .5)) = 0.025
+ _DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
+ _DissolveEdgeColor ("Edge Color", Color) = (1, 1, 1, 1)
+ [Gradient]_DissolveEdgeGradient ("Edge Gradient", 2D) = "white" { }
+ _DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
+ _DissolveTextureColor ("Dissolved Color", Color) = (1, 1, 1, 1)
+ _DissolveToTexture ("Dissolved Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveToTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveToTextureUV ("UV", Int) = 0
+ _DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
+ _DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveNoiseTextureUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertNoise ("Invert?", Float) = 0
+ _DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_DissolveDetailNoisePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveDetailNoiseUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertDetailNoise ("Invert?", Float) = 0
+ _DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
+ _DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
+ _DissolveMask ("Dissolve Mask", 2D) = "white" { }
+ [ToggleUI]_DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
+ [HideInInspector][Vector2]_DissolveMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveMaskInvert ("Invert?", Float) = 0
+ _ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
+ [HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Int) = 2
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Int) = 2
+ [HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
+ [Enum(Local, 0, World, 1)] _DissolveP2PWorldLocal ("World/Local", Int) = 0
+ _DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
+ [Vector3]_DissolveStartPoint ("Start Point", Vector) = (0, -1, 0, 0)
+ [Vector3]_DissolveEndPoint ("End Point", Vector) = (0, 1, 0, 0)
+ [HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
+
+ // Locked in anim sldiers
+ [HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
+ _DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
+ _DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
+ _DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
+ _DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
+ _DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
+ _DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
+ _DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
+ _DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
+ _DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
+ _DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
+ [HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
+ [HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
+
+ // Panosphere
+ [HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+ [Toggle(_DETAIL_MULX2)]_PanoToggle ("Enable Panosphere", Float) = 0
+ [ToggleUI]_PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
+ _PanosphereColor ("Color", Color) = (1, 1, 1, 1)
+ _PanosphereTexture ("Texture", 2D) = "white" { }
+ _PanoMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_PanoMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _PanoMaskUV ("UV", Int) = 0
+ _PanoEmission ("Emission Strength", Range(0, 10)) = 0
+ _PanoBlend ("Alpha", Range(0, 1)) = 0
+ [Vector3]_PanospherePan ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [ToggleUI]_PanoCubeMapToggle ("Use Cubemap", Float) = 0
+ [TextureNoSO]_PanoCubeMap ("CubeMap", Cube) = "" { }
+ [HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+
+ // Glitter
+ [HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
+ [Toggle(_SUNDISK_SIMPLE)]_GlitterEnable ("Enable Glitter?", Float) = 0
+ [Enum(Angle, 0, Linear Emission, 1)]_GlitterMode ("Mode", Int) = 0
+ [Enum(Circle, 0, Square, 1)]_GlitterShape ("Shape", Int) = 0
+ [Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Int) = 0
+ [HDR]_GlitterColor ("Color", Color) = (1, 1, 1)
+ _GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
+ _GlitterColorMap ("Glitter Color Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterColorMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterColorMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_GlitterPan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterMask ("Glitter Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterMaskUV ("UV", Int) = 0
+ _GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterTextureRotation ("Rotation Speed", Float) = 0
+ _GlitterFrequency ("Glitter Density", Float) = 300.0
+ _GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1.0
+ _GlitterSpeed ("Glitter Speed", Float) = 10.0
+ _GlitterSize ("Glitter Size", Range(0, 1)) = .3
+ _GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
+ _GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
+ _GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
+ _GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
+ _GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = .8
+ _GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = .08
+ _glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
+ _GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, .1)) = .0
+
+ // Glitter Random Colors
+ [HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
+ [ToggleUI]_GlitterRandomColors ("Random Colors", Float) = 0
+ [MultiSlider]_GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8, 1, 0, 1)
+ [MultiSlider]_GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8, 1, 0, 1)
+ [ToggleUI]_GlitterRandomSize("Random Size?", Float) = 0
+ [MultiSlider]_GlitterMinMaxSize ("Size Range", Vector) = (0.1, 0.5, 0, 1)
+ [ToggleUI]_GlitterRandomRotation("Random Tex Rotation", Float) = 0
+ [HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
+ [HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
+ _TextGlyphs ("Font Array", 2D) = "black" { }
+ _TextPixelRange ("Pixel Range", Float) = 4.0
+ [Toggle(EFFECT_BUMP)]_TextEnabled ("Text?", Float) = 0
+
+ // FPS
+ [HideInInspector] m_start_TextFPS ("FPS", Float) = 0
+ [ToggleUI]_TextFPSEnabled ("FPS Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Int) = 0
+ _TextFPSColor ("Color", Color) = (1, 1, 1, 1)
+ _TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextFPSOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextFPSRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextFPSScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextFPSPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextFPS ("FPS", Float) = 0
+
+ // POSITION
+ [HideInInspector] m_start_TextPosition ("Position", Float) = 0
+ [ToggleUI]_TextPositionEnabled ("Position Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVertical ("Vertical?", Float) = 0
+ _TextPositionColor ("Color", Color) = (1, 0, 1, 1)
+ _TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextPositionOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextPositionRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextPositionScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextPositionPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextPosition ("Position", Float) = 0
+
+ // INSTANCE TIME
+ [HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
+ [ToggleUI]_TextTimeEnabled ("Time Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Int) = 0
+ _TextTimeColor ("Color", Color) = (1, 0, 1, 1)
+ _TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextTimeOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextTimeRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextTimeScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextTimePadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
+ [HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
+
+ // Mirror Rendering
+ [HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
+ [Toggle(_REQUIRE_UV2)]_EnableMirrorOptions ("Enable Mirror Options", Float) = 0
+ [Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Int) = 0
+ [ToggleUI]_EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
+ _MirrorTexture ("Mirror Tex", 2D) = "white" { }
+ [HideInInspector][Vector2]_MirrorTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MirrorTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
+
+ // Distance Fade
+ [HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
+ _MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
+ _MainFadeTexture ("Fade Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainFadeTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainFadeTextureUV ("UV", Int) = 0
+ [Vector2]_MainDistanceFade ("Distance Fade X to Y", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
+
+ // Angular Fade
+ [HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
+ [Toggle(_SUNDISK_NONE)]_EnableRandom ("Enable Angular Fade", Float) = 0
+ [Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Int) = 0
+ [Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Int) = 0
+ [Vector3]_AngleForwardDirection ("Forward Direction", Vector) = (0, 0, 1, 0)
+ _CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
+ _CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
+ _ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
+ _ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
+ _AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
+
+ // UV Distortion
+ [HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
+ [Toggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
+ _DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_DistortionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _DistortionMaskUV ("UV", Int) = 0
+ _DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" { }
+ _DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" { }
+ _DistortionStrength ("Strength1", Float) = 0.5
+ _DistortionStrength1 ("Strength2", Float) = 0.5
+ [Vector2]_DistortionSpeed ("Speed1", Vector) = (0.5, 0.5, 0, 0)
+ [Vector2]_DistortionSpeed1 ("Speed2", Vector) = (0.5, 0.5, 0, 0)
+ [HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
+
+ // Outline Options
+ [HideInInspector] m_outlineOptions ("Outlines", Float) = 0
+ [ToggleUI]_commentIfZero_EnableOutlinePass ("Enable Outlines", float) = 0
+ [Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)]_OutlineMode ("Mode", Int) = 0
+ _OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
+ _OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
+ _OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1, 0, 0, 0)
+ _OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1, 0, 0, 0)
+ [ToggleUI]_OutlineFixedSize ("Fixed Size?", Float) = 0
+ [Enum(Off, 0, Normals, 1, Mask VC.r, 2)]_OutlineUseVertexColors ("Vertex Color", Float) = 0
+ [ToggleUI]_OutlineLit ("Enable Lighting", Float) = 1
+ _LineWidth ("Width", Float) = 0
+ _LineColor ("Color", Color) = (1, 1, 1, 1)
+ _OutlineEmission ("Outline Emission", Float) = 0
+ _OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineTexturePan ("Outline Texture Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineTextureUV ("UV", Int) = 0
+ _OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineMaskUV ("UV", Int) = 0
+ _OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
+ [HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
+ [Vector2]_OutlineFadeDistance ("Outline distance Fade", Vector) = (0, 0, 0, 0)
+ [Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
+ _OutlineOffsetFactor("Offset Factor", Float) = 0
+ _OutlineOffsetUnits("Offset Units", Float) = 0
+ [HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
+
+ // Parallax Mapping
+ [HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
+ [Toggle(_PARALLAXMAP)]_ParallaxMap ("Enable Parallax FX", Float) = 0
+ [ToggleUI]_ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
+ [ToggleUI]_ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
+ [HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
+ [Vector2]_ParallaxHeightMapPan ("Pan", Vector) = (0, 0, 0, 0)
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Int) = 0
+ _ParallaxHeightMap ("Height Map", 2D) = "black" { }
+ _ParallaxHeightMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxHeightMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxHeightMapMaskUV ("UV", Int) = 0
+ _ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
+ [HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
+ [HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
+ [Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Int) = 0
+ [ToggleUI]_ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
+ _ParallaxInternalMap ("Internal Map", 2D) = "black" { }
+ _ParallaxInternalMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxInternalMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxInternalMapMaskUV ("UV", Int) = 0
+ _ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
+ _ParallaxInternalMinDepth ("Min Depth", Float) = 0
+ _ParallaxInternalMaxDepth ("Max Depth", Float) = 1
+ _ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
+ _ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
+ _ParallaxInternalMinColor ("Min Depth Color", Color) = (1, 1, 1, 1)
+ _ParallaxInternalMaxColor ("Max Depth Color", Color) = (1, 1, 1, 1)
+ [Vector2]_ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [Vector2]_ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
+ [HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
+ _ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
+ [HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
+
+ // Rendering Options
+ [HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
+ [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
+ [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
+ [Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Int) = 1
+ [Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Int) = 15
+ _OffsetFactor ("Offset Factor", Float) = 0.0
+ _OffsetUnits ("Offset Units", Float) = 0.0
+ [ToggleUI]_IgnoreFog ("Ignore Fog", Float) = 0
+ [HideInInspector] Instancing ("Instancing", Float) = 0 //add this property for instancing variants settings to be shown
+
+ // Blending Options
+ [HideInInspector] m_start_blending ("Blending", Float) = 0
+ [Enum(Thry.BlendOp)]_BlendOp ("RGB Blend Op", Int) = 0
+ [Enum(Thry.BlendOp)]_BlendOpAlpha ("Alpha Blend Op", Int) = 0
+ [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Int) = 1
+ [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Int) = 0
+ [HideInInspector] m_end_blending ("Blending", Float) = 0
+
+ // Stencils
+ [HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
+ [IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
+
+ // Outline Stencil
+ [HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
+ [IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
+
+ // Debug Options
+ [HideInInspector] m_start_debugOptions ("Debug", Float) = 0
+ [HideInInspector][Toggle(_COLOROVERLAY_ON)]_DebugEnabled ("Display Debug Info", Float) = 0
+ _VertexUnwrap ("Unwrap", Range(0, 1)) = 0
+ [Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Int) = 0
+ [Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Int) = 0
+ [Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Int) = 0
+ [HideInInspector] m_end_debugOptions ("Debug", Float) = 0
+
+ //[HideInInspector] m_animationToggles ("Animation Support Toggles", Float) = 0
+ //[HelpBox(1)] _AnimationToggleHelp ("You don't need to search through this list. You can enable animation support on any property by right clicking it", Int) = 0
+
+ // Main
+ [HideInInspector]_ColorAnimated ("Color & Alpha", Int) = 0
+ [HideInInspector]_MainTexAnimated ("Texture", Int) = 0
+ [HideInInspector]_MainTex_STAnimated ("Texture Offset/Scale", Int) = 0
+ [HideInInspector]_MainTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_MainVertexColoringAnimated ("Use Vertex Color", Int) = 0
+ [HideInInspector]_MainUseVertexColorAlphaAnimated ("Use Vertex Alpha", Int) = 0
+ [HideInInspector]_MainEmissionStrengthAnimated ("Basic Emission", Int) = 0
+ [HideInInspector]_BumpMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_BumpMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_BumpMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_BumpScaleAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_AlphaMaskAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_AlphaMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AlphaMaskUVAnimated ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector]_MainHueShiftToggleAnimated ("Toggle Hueshift", Int) = 0
+ [HideInInspector]_MainHueShiftReplaceAnimated ("Replace?", Int) = 0
+ [HideInInspector]_MainHueShiftAnimated ("Hue Shift", Int) = 0
+ [HideInInspector]_MainHueShiftSpeedAnimated ("Shift Speed", Int) = 0
+ [HideInInspector]_MainHueShiftMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MainHueShiftMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainHueShiftMaskUVAnimated ("UV", Int) = 0
+
+ // RGB Masking
+ [HideInInspector]_RGBMaskEnabledAnimated ("RGB Mask Enabled", Int) = 0
+ [HideInInspector]_RGBUseVertexColorsAnimated ("Use Vertex Colors", Int) = 0
+ [HideInInspector]_RGBBlendMultiplicativeAnimated ("Multiplicative?", Int) = 0
+ [HideInInspector]_RGBMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RGBMaskPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RedColorAnimated ("R Color", Int) = 0
+ [HideInInspector]_RedTexureAnimated ("R Texture", Int) = 0
+ [HideInInspector]_RGBRedPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBRed_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_GreenColorAnimated ("G Color", Int) = 0
+ [HideInInspector]_GreenTextureAnimated ("G Texture", Int) = 0
+ [HideInInspector]_RGBGreenPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBGreen_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_BlueColorAnimated ("B Color", Int) = 0
+ [HideInInspector]_BlueTextureAnimated ("B Texture", Int) = 0
+ [HideInInspector]_RGBBluePanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBBlue_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_RGBNormalBlendAnimated ("UV", Int) = 0
+
+ // Detail Options
+ [HideInInspector]_DetailMaskAnimated ("Detail Mask (R:Texture, G:Normal)", Int) = 0
+ [HideInInspector]_DetailMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTintAnimated ("Detail Texture Tint", Int) = 0
+ [HideInInspector]_DetailTexAnimated ("Detail Texture", Int) = 0
+ [HideInInspector]_DetailTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTexIntensityAnimated ("Detail Tex Intensity", Int) = 0
+ [HideInInspector]_DetailBrightnessAnimated ("Detail Brightness:", Int) = 0
+ [HideInInspector]_DetailNormalMapAnimated ("Detail Normal", Int) = 0
+ [HideInInspector]_DetailNormalMapScaleAnimated ("Detail Normal Intensity", Int) = 0
+ [HideInInspector]_DetailNormalMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailNormalMapUVAnimated ("UV", Int) = 0
+
+ //Vertex Manipulations
+ [HideInInspector]_VertexManipulationLocalTranslationAnimated ("Local Translation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalRotationAnimated ("Local Rotation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalScaleAnimated ("Local Scale", Int) = 0
+ [HideInInspector]_VertexManipulationWorldTranslationAnimated ("World Translation", Int) = 0
+ [HideInInspector]_VertexManipulationHeightAnimated ("Vertex Height", Int) = 0
+ [HideInInspector]_VertexManipulationHeightMaskAnimated ("Height Map", Int) = 0
+ [HideInInspector]_VertexManipulationHeightPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VertexManipulationHeightUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VertexManipulationHeightBiasAnimated ("Mask Bias", Int) = 0
+ [HideInInspector]_VertexRoundingEnabledAnimated ("Rounding Enabled", Int) = 0
+ [HideInInspector]_VertexRoundingDivisionAnimated ("Division Amount", Int) = 0
+
+ // Alpha Options
+ [HideInInspector]_AlphaModAnimated ("Alpha Mod", Int) = 0
+ [HideInInspector]_CutoffAnimated ("Alpha Cuttoff", Int) = 0
+ [HideInInspector]_DitheringEnabledAnimated ("Enable Dithering", Int) = 0
+ [HideInInspector]_DitherGradientAnimated ("Dither Gradient", Int) = 0
+ [HideInInspector]_ForceOpaqueAnimated ("Force Opaque", Int) = 0
+ [HideInInspector]_MainShadowClipModAnimated ("Shadow Clip Mod", Int) = 0
+ [HideInInspector]_AlphaToMaskAnimated ("Alpha To Coverage", Int) = 0
+ [HideInInspector]_MainAlphaToCoverageAnimated ("Sharpenned A2C", Int) = 0
+ [HideInInspector]_AlphaPremultiplyAnimated ("Alpha Premultiply", Int) = 0
+ [HideInInspector]_MainMipScaleAnimated ("Mip Level Alpha Scale", Int) = 0
+
+ // Decal Texture
+ [HideInInspector]_DecalEnabledAnimated ("Enable", Int) = 0
+ [HideInInspector]_DecalColorAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalEmissionStrengthAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalTextureAnimated ("Decal", Int) = 0
+ [HideInInspector]_DecalTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DecalMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_DecalScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_DecalPositionAnimated ("Position", Int) = 0
+ [HideInInspector]_DecalRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_DecalRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_DecalBlendAddAnimated ("Add", Int) = 0
+ [HideInInspector]_DecalBlendMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_DecalBlendReplaceAnimated ("Replace", Int) = 0
+
+ // Lighting
+ [HideInInspector]_EnableLightingAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LightingModeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingStandardSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_LightingShadingEnabledAnimated ("Enable Shading-",Int) = 0
+ [HideInInspector]_LightingRampTypeAnimated ("Ramp Type", Int) = 0
+ [HideInInspector]_ToonRampAnimated ("Lighting Ramp", Int) = 0
+ [HideInInspector]_LightingShadowMaskAnimated ("Ramp Mask", Int) = 0
+ [HideInInspector]_LightingShadowMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ShadowOffsetAnimated ("Ramp Offset", Int) = 0
+ [HideInInspector]_LightingGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingShadowColorAnimated ("Shadow Tint", Int) = 0
+ [HideInInspector]_ShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_AttenuationMultiplierAnimated ("Unity Shadows", Int) = 0
+ [HideInInspector]_LightingIgnoreAmbientColorAnimated ("Ignore Ambient Color", Int) = 0
+
+ [HideInInspector]_LightingDirectColorModeAnimated ("D Color", Int) = 0
+ [HideInInspector]_LightingIndirectColorModeAnimated ("I Color?", Int) = 0
+ [HideInInspector]_LightingMonochromaticAnimated ("Monochromatic Lighting?", Int) = 0
+ [HideInInspector]_LightingUncappedAnimated ("Uncapped Lighting", Int) = 0
+ [HideInInspector]_LightingOnlyUnityShadowsAnimated ("Only Unity Shadows", Int) = 0
+ [HideInInspector]_LightingMinLightBrightnessAnimated ("Min Brightnes", Int) = 0
+ [HideInInspector]_LightingMinShadowBrightnessRatioAnimated ("Shadow:Light min Ratio", Int) = 0
+
+ [HideInInspector]_LightingDetailShadowsEnabledAnimated ("Enabled Detail Shadows?", Int) = 0
+ [HideInInspector]_LightingDetailShadowsAnimated ("Detail Shadows", Int) = 0
+ [HideInInspector]_LightingDetailShadowsPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingDetailShadowsUVAnimated ("UV", Int) = 0
+ [HideInInspector]_LightingDetailStrengthAnimated ("Detail Strength", Int) = 0
+
+ [HideInInspector]_LightingEnableAOAnimated ("Enable AO", Int) = 0
+ [HideInInspector]_LightingAOTexAnimated ("AO Map", Int) = 0
+ [HideInInspector]_LightingAOTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingAOTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_AOStrengthAnimated ("AO Strength", Range(0, 1)) = 0
+
+ [HideInInspector]_UseShadowTextureAnimated ("EnableShadowTexture", Int) = 0
+ [HideInInspector]_LightingShadowTextureAnimated ("Shadow Texture", Int) = 0
+ [HideInInspector]_LightingShadowTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowTextureUVAnimated ("UV", Int) = 0
+
+ [HideInInspector]_LightingEnableHSLAnimated ("Enabled HSL Lighting", Int) = 0
+ [HideInInspector]_LightingHSLIntensityAnimated ("Shadow HSL Intensity", Int) = 0
+ [HideInInspector]_LightingShadowHueAnimated ("Shadow Hue Change", Int) = 0
+ [HideInInspector]_LightingShadowSaturationAnimated ("Shadow Saturation Change", Int) = 0
+ [HideInInspector]_LightingShadowLightnessAnimated ("Shadow Lightness Change", Int) = 0
+
+ // point/spot Light Settings
+ [HideInInspector]_commentIfZero_LightingAdditiveEnableAnimated ("Enable Additive", Int) = 0
+ [HideInInspector]_LightingAdditiveTypeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingAdditivePassthroughAnimated ("Point Light Passthrough", Int) = 0
+ [HideInInspector]_LightingAdditiveDetailStrengthAnimated ("Detail Shadow Strength", Int) = 0
+ [HideInInspector]_LightingAdditiveLimitIntensityAnimated ("Limit Intensity", Int) = 0
+ [HideInInspector]_LightingAdditiveMaxIntensityAnimated ("Max Intensity", Int) = 0
+
+ // Subsurface Scattering
+ [HideInInspector]_EnableSSSAnimated ("Enable Subsurface Scattering", Int) = 0
+ [HideInInspector]_SSSColorAnimated ("Subsurface Color", Int) = 0
+ [HideInInspector]_SSSThicknessMapAnimated ("Thickness Map", Int) = 0
+ [HideInInspector]_SSSThicknessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SSSThicknessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SSSThicknessModAnimated ("Thickness mod", Int) = 0
+ [HideInInspector]_SSSSCaleAnimated ("Light Strength", Int) = 0
+ [HideInInspector]_SSSPowerAnimated ("Light Spread", Int) = 0
+ [HideInInspector]_SSSDistortionAnimated ("Light Distortion", Int) = 0
+
+ // Rim Lighting
+ [HideInInspector]_EnableRimLightingAnimated ("Enable Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_RimLightingInvertAnimated ("Invert Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightColorAnimated ("Rim Color", Int) = 0
+ [HideInInspector]_RimWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimStrengthAnimated ("Rim Emission", Int) = 0
+ [HideInInspector]_RimBrightenAnimated ("Rim Color Brighten", Int) = 0
+ [HideInInspector]_RimLightColorBiasAnimated ("Rim Color Bias", Int) = 0
+ [HideInInspector]_RimTexAnimated ("Rim Texture", Int) = 0
+ [HideInInspector]_RimTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimMaskAnimated ("Rim Mask", Int) = 0
+ [HideInInspector]_RimMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimMaskUVAnimated ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector]_RimWidthNoiseTextureAnimated ("Rim Width Noise", Int) = 0
+ [HideInInspector]_RimWidthNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimWidthNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimWidthNoiseStrengthAnimated ("Intensity", Int) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector]_ShadowMixAnimated ("Shadow Mix In", Int) = 0
+ [HideInInspector]_ShadowMixThresholdAnimated ("Shadow Mix Threshold", Int) = 0
+ [HideInInspector]_ShadowMixWidthModAnimated ("Shadow Mix Width Mod", Int) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector]_EnableEnvironmentalRimAnimated ("Enable Environmental Rim", Int) = 0
+ [HideInInspector]_RimEnviroMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RimEnviroMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimEnviroMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimEnviroBlurAnimated ("Blur", Int) = 0
+ [HideInInspector]_RimEnviroWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimEnviroSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimEnviroMinBrightnessAnimated ("Min Brightness Threshold", Int) = 0
+ [HideInInspector]_RimEnviroIntensityAnimated ("Intensity", Int) = 0
+
+ // Metallics
+ [HideInInspector]_EnableMetallicAnimated ("Enable Metallics", Int) = 0
+ [HideInInspector]_CubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_SampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_MetalReflectionTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_MetallicTintMapAnimated ("Tint Map", Int) = 0
+ [HideInInspector]_MetallicTintMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicTintMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicMaskAnimated ("Metallic Mask", Int) = 0
+ [HideInInspector]_MetallicMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SmoothnessMaskAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SmoothnessMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_InvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessAnimated ("Smoothness", Int) = 0
+
+ // Clearcoat
+ [HideInInspector]_EnableClearCoatAnimated ("Enable Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatNormalToUseAnimated ("What Normal?", Int) = 0
+ [HideInInspector]_ClearCoatCubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_ClearCoatSampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_ClearCoatTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_ClearCoatMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ClearCoatMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatInvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_ClearCoatForceLightingAnimated ("Force Lighting", Int) = 0
+
+ // First Matcap
+ [HideInInspector]_MatcapEnableAnimated ("Enable Matcap", Int) = 0
+ [HideInInspector]_MatcapColorAnimated ("Color", Int) = 0
+ [HideInInspector]_MatcapAnimated ("Matcap", Int) = 0
+ [HideInInspector]_MatcapBorderAnimated ("Border", Int) = 0
+ [HideInInspector]_MatcapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MatcapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MatcapMaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_MatcapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MatcapEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_MatcapIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_MatcapLightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_MatcapReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_MatcapMultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_MatcapAddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_MatcapNormalAnimated ("Normal to use", Int) = 0
+
+ // Second Matcap
+ [HideInInspector]_Matcap2EnableAnimated ("Enable Matcap 2", Int) = 0
+ [HideInInspector]_Matcap2ColorAnimated ("Color", Int) = 0
+ [HideInInspector]_Matcap2Animated ("Matcap", Int) = 0
+ [HideInInspector]_Matcap2BorderAnimated ("Border", Int) = 0
+ [HideInInspector]_Matcap2MaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_Matcap2MaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_Matcap2MaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_Matcap2MaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_Matcap2EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_Matcap2IntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_Matcap2LightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_Matcap2ReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_Matcap2MultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_Matcap2AddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_Matcap2NormalAnimated ("Normal to use", Int) = 0
+
+ // Specular
+ [HideInInspector]_EnableSpecularAnimated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularTypeAnimated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTintAnimated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMapAnimated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothnessAnimated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMaskAnimated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFromAnimated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangentAnimated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1AlphaAnimated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2AlphaAnimated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1OffsetAnimated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2SmoothnessAnimated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMapAnimated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMapAnimated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStartAnimated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEndAnimated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColorAnimated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirroredAnimated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroAnimated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplierAnimated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroAnimated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplierAnimated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuterAnimated ("Inner/Outer Edge", Int) = 0
+
+ // Second Specular
+ [HideInInspector]_EnableSpecular1Animated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularType1Animated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormal1Animated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTint1Animated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallic1Animated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothness1Animated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMap1Animated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothness1Animated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMask1Animated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFrom1Animated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangent1Animated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1Alpha1Animated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2Alpha1Animated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1Offset1Animated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2Smoothness1Animated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMap1Animated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMap1Animated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStart1Animated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEnd1Animated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColor1Animated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirrored1Animated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1Animated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplier1Animated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1Animated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplier1Animated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuter1Animated ("Inner/Outer Edge", Int) = 0
+
+ // First Emission
+ [HideInInspector]_EnableEmissionAnimated ("Enable Emission", Int) = 0
+ [HideInInspector]_EmissionReplaceAnimated ("Replace Base Color", Int) = 0
+ [HideInInspector]_EmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMapAnimated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMapAnimated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMaskAnimated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabledAnimated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShiftAnimated ("Hue Shift", Int) = 0
+
+ // Center out emission
+ [HideInInspector]_EmissionCenterOutEnabledAnimated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeedAnimated ("Flow Speed", Int) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector]_EnableGITDEmissionAnimated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMeshAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplierAnimated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplierAnimated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLightAnimated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLightAnimated ("Max Lighting", Int) = 0
+
+ // Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_MinAnimated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_MaxAnimated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_VelocityAnimated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffsetAnimated ("Offset", Int) = 0
+
+ // Scrolling Emission
+ [HideInInspector]_ScrollingEmissionAnimated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurveAnimated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurveAnimated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColorAnimated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_DirectionAnimated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_WidthAnimated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_VelocityAnimated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_IntervalAnimated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffsetAnimated ("Offset", Int) = 0
+
+ // Second Enission
+ [HideInInspector]_EnableEmission1Animated ("Enable Emission 2", Int) = 0
+ [HideInInspector]_EmissionColor1Animated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMap1Animated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMap1Animated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMask1Animated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrength1Animated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabled1Animated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShift1Animated ("Hue Shift", Int) = 0
+
+ // Second Center Out Enission
+ [HideInInspector]_EmissionCenterOutEnabled1Animated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeed1Animated ("Flow Speed", Int) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector]_EnableGITDEmission1Animated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMesh1Animated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplier1Animated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplier1Animated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLight1Animated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLight1Animated ("Max Lighting", Int) = 0
+
+ // Second Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_Min1Animated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_Max1Animated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_Velocity1Animated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffset1Animated ("Offset", Int) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector]_ScrollingEmission1Animated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurve1Animated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurve1Animated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColor1Animated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_Direction1Animated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_Width1Animated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_Velocity1Animated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_Interval1Animated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffset1Animated ("Offset", Int) = 0
+
+ // Flipbook
+ [HideInInspector]_EnableFlipbookAnimated ("Enable Flipbook", Int) = 0
+ [HideInInspector]_FlipbookAlphaControlsFinalAlphaAnimated ("Flipbook Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookIntensityControlsAlphaAnimated ("Intensity Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookColorReplacesAnimated ("Color Replaces Flipbook", Int) = 0
+ [HideInInspector]_FlipbookTexArrayAnimated ("Texture Array", Int) = 0
+ [HideInInspector]_FlipbookTexArrayUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookTexArrayPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_FlipbookMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookColorAnimated ("Color & alpha", Int) = 0
+ [HideInInspector]_FlipbookTotalFramesAnimated ("Total Frames", Int) = 0
+ [HideInInspector]_FlipbookFPSAnimated ("FPS", Int) = 0
+ [HideInInspector]_FlipbookScaleOffsetAnimated ("Scale | Offset", Int) = 0
+ [HideInInspector]_FlipbookTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_FlipbookEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_FlipbookRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_FlipbookRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_FlipbookReplaceAnimated ("Replace", Int) = 0
+ [HideInInspector]_FlipbookMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_FlipbookAddAnimated ("Add", Int) = 0
+ [HideInInspector]_FlipbookCurrentFrameAnimated ("Current Frame", Int) = 0
+
+ // Dissolve
+ [HideInInspector]_EnableDissolveAnimated ("Enable Dissolve", Int) = 0
+ [HideInInspector]_DissolveTypeAnimated ("Dissolve Type", Int) = 0
+ [HideInInspector]_DissolveEdgeWidthAnimated ("Edge Width", Int) = 0
+ [HideInInspector]_DissolveEdgeHardnessAnimated ("Edge Hardness", Int) = 0
+ [HideInInspector]_DissolveEdgeColorAnimated ("Edge Color", Int) = 0
+ [HideInInspector]_DissolveEdgeGradientAnimated ("Edge Gradient", Int) = 0
+ [HideInInspector]_DissolveEdgeEmissionAnimated ("Edge Emission", Int) = 0
+ [HideInInspector]_DissolveTextureColorAnimated ("Dissolved Color", Int) = 0
+ [HideInInspector]_DissolveToTextureAnimated ("Dissolved Texture", Int) = 0
+ [HideInInspector]_DissolveToTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveToTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveToEmissionStrengthAnimated ("Dissolved Emission Strength", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureAnimated ("Dissolve Noise", Int) = 0
+ [HideInInspector]_DissolveNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseAnimated ("Dissolve Detail Noise", Int) = 0
+ [HideInInspector]_DissolveDetailNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertDetailNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailStrengthAnimated ("Dissolve Detail Strength", Int) = 0
+ [HideInInspector]_DissolveAlphaAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveUseVertexColorsAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveMaskAnimated ("Dissolve Mask", Int) = 0
+ [HideInInspector]_DissolveMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveMaskInvertAnimated ("Invert?", Int) = 0
+ [HideInInspector]_ContinuousDissolveAnimated ("Continuous Dissolve Speed", Int) = 0
+ [HideInInspector]_DissolveEmissionSideAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_DissolveEmission1SideAnimated ("Emission 2", Int) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector]_DissolveP2PWorldLocalAnimated ("World/Local", Int) = 0
+ [HideInInspector]_DissolveP2PEdgeLengthAnimated ("Edge Length", Int) = 0
+ [HideInInspector]_DissolveStartPointAnimated ("Start Point", Int) = 0
+ [HideInInspector]_DissolveEndPointAnimated ("End Point", Int) = 0
+
+ [HideInInspector]_DissolveAlpha0Animated ("_DissolveAlpha0", Int) = 0
+ [HideInInspector]_DissolveAlpha1Animated ("_DissolveAlpha1", Int) = 0
+ [HideInInspector]_DissolveAlpha2Animated ("_DissolveAlpha2", Int) = 0
+ [HideInInspector]_DissolveAlpha3Animated ("_DissolveAlpha3", Int) = 0
+ [HideInInspector]_DissolveAlpha4Animated ("_DissolveAlpha4", Int) = 0
+ [HideInInspector]_DissolveAlpha5Animated ("_DissolveAlpha5", Int) = 0
+ [HideInInspector]_DissolveAlpha6Animated ("_DissolveAlpha6", Int) = 0
+ [HideInInspector]_DissolveAlpha7Animated ("_DissolveAlpha7", Int) = 0
+ [HideInInspector]_DissolveAlpha8Animated ("_DissolveAlpha8", Int) = 0
+ [HideInInspector]_DissolveAlpha9Animated ("_DissolveAlpha9", Int) = 0
+
+ // Panosphere
+ [HideInInspector]_PanoToggleAnimated ("Enable Panosphere", Int) = 0
+ [HideInInspector]_PanoInfiniteStereoToggleAnimated ("Infinite Stereo", Int) = 0
+ [HideInInspector]_PanosphereColorAnimated ("Color", Int) = 0
+ [HideInInspector]_PanosphereTextureAnimated ("Texture", Int) = 0
+ [HideInInspector]_PanoMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_PanoMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_PanoMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_PanoEmissionAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_PanoBlendAnimated ("Alpha", Int) = 0
+ [HideInInspector]_PanospherePanAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_PanoCubeMapToggleAnimated ("Use Cubemap", Int) = 0
+ [HideInInspector]_PanoCubeMapAnimated ("CubeMap", Int) = 0
+
+ // Glitter
+ [HideInInspector]_GlitterEnableAnimated ("Enable Glitter?", Int) = 0
+ [HideInInspector]_GlitterModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterShapeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterBlendTypeAnimated ("Blend Mode", Int) = 0
+ [HideInInspector]_GlitterColorAnimated ("Color", Int) = 0
+ [HideInInspector]_GlitterUseSurfaceColorAnimated ("Use Surface Color", Int) = 0
+ [HideInInspector]_GlitterColorMapAnimated ("Glitter Color Map", Int) = 0
+ [HideInInspector]_GlitterColorMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterColorMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterTextureAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterRandomRotationAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterFrequencyAnimated ("Glitter Density", Int) = 0
+ [HideInInspector]_GlitterJitterAnimated ("Glitter Jitter", Int) = 0
+ [HideInInspector]_GlitterSpeedAnimated ("Glitter Wobble Speed", Int) = 0
+ [HideInInspector]_GlitterSizeAnimated ("Glitter Size", Int) = 0
+ [HideInInspector]_GlitterContrastAnimated ("Glitter Contrast", Int) = 0
+ [HideInInspector]_GlitterAngleRangeAnimated ("Glitter Angle Range", Int) = 0
+ [HideInInspector]_GlitterMinBrightnessAnimated ("Glitter Min Brightness", Int) = 0
+ [HideInInspector]_GlitterBrightnessAnimated ("Glitter Max Brightness", Int) = 0
+ [HideInInspector]_GlitterBiasAnimated ("Glitter Bias", Int) = 0
+ [HideInInspector]_GlitterCenterSizeAnimated ("center size", Int) = 0
+ [HideInInspector]_GlitterTextureRotationAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_glitterFrequencyLinearEmissiveAnimated ("Frequency", Int) = 0
+ [HideInInspector]_GlitterJaggyFixAnimated ("Jaggy Fix", Int) = 0
+
+ // Glitter Random Colors
+ [HideInInspector]_GlitterRandomColorsAnimated ("Enable", Int) = 0
+ [HideInInspector]_GlitterMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_GlitterMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+ [HideInInspector]_GlitterRandomSizeAnimated ("random Size Toggle", Int) = 0
+ [HideInInspector]_GlitterMinMaxSizeAnimated ("Min Max Random Size", Int) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector]_TextGlyphsAnimated ("Font Array", Int) = 0
+ [HideInInspector]_TextPixelRangeAnimated ("Pixel Range", Int) = 0
+ [HideInInspector]_TextEnabledAnimated ("Text?", Int) = 0
+
+ // FPS
+ [HideInInspector]_TextFPSEnabledAnimated ("FPS Text?", Int) = 0
+ [HideInInspector]_TextFPSUVAnimated ("FPS UV", Int) = 0
+ [HideInInspector]_TextFPSColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextFPSEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextFPSOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextFPSRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextFPSScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextFPSPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // POSITION
+ [HideInInspector]_TextPositionEnabledAnimated ("Position Text?", Int) = 0
+ [HideInInspector]_TextPositionUVAnimated ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVerticalAnimated ("Vertical?", Int) = 0
+ [HideInInspector]_TextPositionColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextPositionEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextPositionOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextPositionRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextPositionScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextPositionPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // INSTANCE TIME
+ [HideInInspector]_TextTimeEnabledAnimated ("Time Text?", Int) = 0
+ [HideInInspector]_TextTimeUVAnimated ("Time UV", Int) = 0
+ [HideInInspector]_TextTimeColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextTimeEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextTimeOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextTimeRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextTimeScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextTimePaddingAnimated ("Padding Reduction", Int) = 0
+
+ // Mirror Rendering
+ [HideInInspector]_EnableMirrorOptionsAnimated ("Enable Mirror Options", Int) = 0
+ [HideInInspector]_MirrorAnimated ("Show in mirror", Int) = 0
+ [HideInInspector]_EnableMirrorTextureAnimated ("Enable Mirror Texture", Int) = 0
+ [HideInInspector]_MirrorTextureAnimated ("Mirror Tex", Int) = 0
+ [HideInInspector]_MirrorTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MirrorTextureUVAnimated ("UV", Int) = 0
+
+ // Distance Fade
+ [HideInInspector]_MainMinAlphaAnimated ("Minimum Alpha", Int) = 0
+ [HideInInspector]_MainFadeTextureAnimated ("Fade Mask", Int) = 0
+ [HideInInspector]_MainFadeTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainFadeTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MainDistanceFadeAnimated ("Distance Fade X to Y", Int) = 0
+
+ // Angular Fade
+ [HideInInspector]_EnableRandomAnimated ("Enable Angular Fade", Int) = 0
+ [HideInInspector]_AngleTypeAnimated ("Angle Type", Int) = 0
+ [HideInInspector]_AngleCompareToAnimated ("Model or Vert Positon", Int) = 0
+ [HideInInspector]_AngleForwardDirectionAnimated ("Forward Direction", Int) = 0
+ [HideInInspector]_CameraAngleMinAnimated ("Camera Angle Min", Int) = 0
+ [HideInInspector]_CameraAngleMaxAnimated ("Camera Angle Max", Int) = 0
+ [HideInInspector]_ModelAngleMinAnimated ("Model Angle Min", Int) = 0
+ [HideInInspector]_ModelAngleMaxAnimated ("Model Angle Max", Int) = 0
+ [HideInInspector]_AngleMinAlphaAnimated ("Min Alpha", Int) = 0
+
+ // UV Distortion
+ [HideInInspector]_EnableDistortionAnimated ("Enabled?", Int) = 0
+ [HideInInspector]_DistortionMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DistortionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DistortionMaskUVAnimated ("Distortion Mask UV", Int) = 0
+ [HideInInspector]_DistortionFlowTextureAnimated ("Distortion Texture 1", Int) = 0
+ [HideInInspector]_DistortionFlowTexture1Animated ("Distortion Texture 2", Int) = 0
+ [HideInInspector]_DistortionStrengthAnimated ("Strength1", Int) = 0
+ [HideInInspector]_DistortionStrength1Animated ("Strength2", Int) = 0
+ [HideInInspector]_DistortionSpeedAnimated ("Speed1", Int) = 0
+ [HideInInspector]_DistortionSpeed1Animated ("Speed2", Int) = 0
+
+ // Video Options
+ [HideInInspector]_EnableVideoAnimated ("Enable Video", Int) = 0
+ [HideInInspector]_VideoUVNumberAnimated ("Screen UV#", Int) = 0
+ [HideInInspector]_VideoTypeAnimated ("Screen Type", Int) = 0
+ [HideInInspector]_VideoBacklightAnimated ("Brightness", Int) = 0
+ [HideInInspector]_VideoPixelTextureAnimated ("Pixel Texture", Int) = 0
+ [HideInInspector]_VideoResolutionAnimated ("Resolution", Int) = 0
+ [HideInInspector]_VideoMaskTextureAnimated ("Mask", Int) = 0
+ [HideInInspector]_VideoMaskPanningAnimated ("Mask Pan Speed", Int) = 0
+ [HideInInspector]_VideoEnableVideoPlayerAnimated ("Enable Video Player", Int) = 0
+ [HideInInspector]_VideoPixelateToResolutionAnimated ("Pixelate To Resolution", Int) = 0
+ [HideInInspector]_VideoRepeatVideoTextureAnimated ("Clamp To UV", Int) = 0
+ [HideInInspector]_VideoPanningAnimated ("Panning Speed", Int) = 0
+ [HideInInspector]_VideoTilingAnimated ("Tiling", Int) = 0
+ [HideInInspector]_VideoOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_VideoSaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_VideoContrastAnimated ("Contrast boost", Int) = 0
+ [HideInInspector]_VideoEnableDebugAnimated ("Enable Debug", Int) = 0
+ [HideInInspector]_VideoDebugTextureAnimated ("Video Debug Tex", Int) = 0
+ [HideInInspector]_VideoCRTRefreshRateAnimated ("Refresh Rate", Int) = 0
+ [HideInInspector]_VideoCRTPixelEnergizedTimeAnimated ("Pixel Fade Time", Int) = 0
+ [HideInInspector]_VideoGameboyRampAnimated ("Color Ramp", Int) = 0
+
+ // TouchFX
+ [HideInInspector]_EnableBulgeAnimated ("Bulge", Int) = 0
+ [HideInInspector]_BulgeMaskAnimated ("Bulge Mask", Int) = 0
+ [HideInInspector]_BuldgeFadeLengthAnimated ("Touch Distance", Int) = 0
+ [HideInInspector]_BuldgeHeightAnimated ("Bulge Height", Int) = 0
+
+ [HideInInspector]_EnableTouchGlowAnimated ("Enable Touch Glow", Int) = 0
+ [HideInInspector]_DepthGradientTextureUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientBlendAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGlowColorAnimated ("Depth Glow Color", Int) = 0
+ [HideInInspector]_DepthGradientAnimated ("Depth Gradient", Int) = 0
+ [HideInInspector]_DepthMaskAnimated ("Depth Mask", Int) = 0
+ [HideInInspector]_DepthGlowEmissionAnimated ("Depth Glow Emission", Int) = 0
+ [HideInInspector]_FadeLengthAnimated ("Fade Length", Int) = 0
+ [HideInInspector]_DepthAlphaMinAnimated ("Alpha Min", Int) = 0
+ [HideInInspector]_DepthAlphaMaxAnimated ("Alpha Max", Int) = 0
+
+ // Hologram
+ [HideInInspector]_EnableHoloAnimated ("Enable Hologram Alpha", Int) = 0
+ [HideInInspector]_HoloAlphaMapAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_HoloCoordinateSpaceAnimated ("Coordinate Space", Int) = 0
+ [HideInInspector]_HoloDirectionAnimated ("Scroll Direction", Int) = 0
+ [HideInInspector]_HoloLineDensityAnimated ("Line Density", Int) = 0
+ [HideInInspector]_HoloScrollSpeedAnimated ("Scroll Speed", Int) = 0
+ [HideInInspector]_HoloFresnelAlphaAnimated ("Intensity", Int) = 0
+ [HideInInspector]_HoloRimSharpnessAnimated ("Sharpness", Int) = 0
+ [HideInInspector]_HoloRimWidthAnimated ("Width", Int) = 0
+
+ // GrabPass
+ [HideInInspector]_GrabPassUseAlphaAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabPassBlendFactorAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabSrcBlendAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabDstBlendAnimated ("Destination Blend", Int) = 0
+ [HideInInspector]_RefractionEnabledAnimated ("Enable Refraction,", Int) = 0
+ [HideInInspector]_RefractionIndexAnimated ("Refraction", Int) = 0
+ [HideInInspector]_RefractionChromaticAberattionAnimated ("Chromatic Aberration", Int) = 0
+ [HideInInspector]_EnableBlurAnimated ("Enable Blur", Int) = 0
+ [HideInInspector]_GrabBlurDistanceAnimated ("Blur Distance", Int) = 0
+ [HideInInspector]_GrabBlurQualityAnimated ("Blur Quality", Int) = 0
+ [HideInInspector]_GrabBlurDirectionsAnimated ("Blur Direction", Int) = 0
+
+ // Iridescence
+ [HideInInspector]_EnableIridescenceAnimated ("Enable Iridescence", Int) = 0
+ [HideInInspector]_IridescenceRampAnimated ("Ramp", Int) = 0
+ [HideInInspector]_IridescenceNormalToggleAnimated ("Custom Normals?", Int) = 0
+ [HideInInspector]_IridescenceNormalMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_IridescenceMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_IridescenceNormalIntensityAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_IridescenceNormalUVAnimated ("Normal UV", Int) = 0
+ [HideInInspector]_IridescenceMaskUVAnimated ("Mask UV", Int) = 0
+ [HideInInspector]_IridescenceNormalSelectionAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_IridescenceIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_IridescenceAddBlendAnimated ("Blend Add", Int) = 0
+ [HideInInspector]_IridescenceReplaceBlendAnimated ("Blend Replace", Int) = 0
+ [HideInInspector]_IridescenceMultiplyBlendAnimated ("Blend Multiply", Int) = 0
+ [HideInInspector]_IridescenceEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_IridescenceTimeAnimated ("When To Run", Int) = 0
+
+ // Vertex Glitching
+ [HideInInspector]_EnableVertexGlitchAnimated ("Enable Vertex Glitching", Int) = 0
+ [HideInInspector]_VertexGlitchFrequencyAnimated ("Glitch Interval", Int) = 0
+ [HideInInspector]_VertexGlitchThresholdAnimated ("Glitch Threshold", Int) = 0
+ [HideInInspector]_VertexGlitchStrengthAnimated ("Glitch Strength", Int) = 0
+
+ // Spawn In Effects
+ [HideInInspector]_EnableScifiSpawnInAnimated ("Enable Sci Fi Spawn", Int) = 0
+ [HideInInspector]_SpawnInNoiseAnimated ("Spawn Noise", Int) = 0
+ [HideInInspector]_SpawnInNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_SpawnInAlphaAnimated ("Spawn Alpha", Int) = 0
+ [HideInInspector]_SpawnInGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_SpawnInGradientFinishAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_SpawnInEmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_SpawnInEmissionOffsetAnimated ("Emission Width", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetAnimated ("Vertex Offset Speed", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetOffsetAnimated ("vert width", Int) = 0
+
+ // Voronoi
+ [HideInInspector]_VoronoiTypeAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiSpaceAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiBlendAnimated ("Blend", Int) = 0
+ [HideInInspector]_EnableVoronoiAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiEffectsMaterialAlphaAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_VoronoiMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseAnimated ("Edge Noise", Int) = 0
+ [HideInInspector]_VoronoiNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_VoronoiColor0Animated ("Color 0", Int) = 0
+ [HideInInspector]_VoronoiEmission0Animated ("Emission 0", Int) = 0
+ [HideInInspector]_VoronoiColor1Animated ("Color 1", Int) = 0
+ [HideInInspector]_VoronoiEmission1Animated ("Emission 1", Int) = 0
+ [HideInInspector]_VoronoiGradientAnimated ("Gradient", Int) = 0
+ [HideInInspector]_VoronoiScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_VoronoiSpeedAnimated ("Speed", Int) = 0
+ [HideInInspector]_VoronoiEnableRandomCellColorAnimated ("Rando Cell Col", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+
+ // Blacklight mask
+ [HideInInspector]_BlackLightMaskEnabledAnimated ("Black Light Mask Enabled", Int) = 0
+ [HideInInspector]_BlackLightMaskKeysAnimated ("Mask Keys", Int) = 0
+ [HideInInspector]_BlackLightMaskStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_BlackLightMaskEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_BlackLightMaskDebugAnimated ("Visualize", Int) = 0
+ [HideInInspector]_BlackLightMaskMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_BlackLightMaskClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcapAnimated ("Matcap 1", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcap2Animated ("Matcap 2", Int) = 0
+ [HideInInspector]_BlackLightMaskEmissionAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_BlackLightMaskEmission2Animated ("Emission 2", Int) = 0
+ [HideInInspector]_BlackLightMaskFlipbookAnimated ("Flipbook", Int) = 0
+ [HideInInspector]_BlackLightMaskDissolveAnimated ("Dissolve", Int) = 0
+ [HideInInspector]_BlackLightMaskPanosphereAnimated ("Panosphere", Int) = 0
+ [HideInInspector]_BlackLightMaskGlitterAnimated ("Glitter", Int) = 0
+ [HideInInspector]_BlackLightMaskIridescenceAnimated ("Iridescence", Int) = 0
+
+ // Outline Options
+ [HideInInspector]_OutlineModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_OutlineFixedSizeAnimated ("Fixed Size?", Int) = 0
+ [HideInInspector]_OutlineUseVertexColorsAnimated ("V Color", Int) = 0
+ [HideInInspector]_OutlineLitAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LineWidthAnimated ("Width", Int) = 0
+ [HideInInspector]_LineColorAnimated ("Color", Int) = 0
+ [HideInInspector]_OutlineTintMixAnimated ("Tint Mix", Int) = 0
+ [HideInInspector]_OutlineEmissionAnimated ("Outline Emission", Int) = 0
+ [HideInInspector]_OutlineTextureAnimated ("Outline Texture", Int) = 0
+ [HideInInspector]_OutlineMaskAnimated ("Outline Mask", Int) = 0
+ [HideInInspector]_OutlineTexturePanAnimated ("Outline Texture Pan", Int) = 0
+ [HideInInspector]_OutlineShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_OutlineRimLightBlendAnimated ("Rim Light Blend", Int) = 0
+ [HideInInspector]_OutlinePersonaDirectionAnimated ("directional Offset XY", Int) = 0
+ [HideInInspector]_OutlineDropShadowOffsetAnimated ("Drop Direction XY", Int) = 0
+ [HideInInspector]_OutlineFadeDistanceAnimated ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetFactor ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetUnits ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineCullAnimated ("Cull", Int) = 0
+
+ // Parallax Mapping
+ [HideInInspector]_ParallaxMapAnimated ("Enable Parallax FX", Int) = 0
+ [HideInInspector]_ParallaxHeightMapEnabledAnimated ("Enable Parallax Height", Int) = 0
+ [HideInInspector]_ParallaxInternalMapEnabledAnimated ("Enable Parallax Internal", Int) = 0
+ [HideInInspector]_ParallaxHeightMapPanAnimated ("Pan", Int) = 0
+ [HideInInspector]_ParallaxUVAnimated ("Parallax UV", Int) = 0
+ [HideInInspector]_ParallaxHeightMapAnimated ("Height Map", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxStrengthAnimated ("Parallax Strength", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightmapModeAnimated ("Parallax Mode", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightFromAlphaAnimated ("HeightFromAlpha", Int) = 0
+ [HideInInspector]_ParallaxInternalMapAnimated ("Internal Map", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxInternalIterationsAnimated ("Parallax Internal Iterations", Int) = 0
+ [HideInInspector]_ParallaxInternalMinDepthAnimated ("Min Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxDepthAnimated ("Max Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMinFadeAnimated ("Min Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxFadeAnimated ("Max Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMinColorAnimated ("Min Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxColorAnimated ("Max Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalPanSpeedAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_ParallaxInternalPanDepthSpeedAnimated ("Per Level Speed Multiplier", Int) = 0
+ [HideInInspector]_ParallaxBiasAnimated ("Parallax Bias (0.42)", Int) = 0
+
+ // Rendering Options
+ [HideInInspector]_CullAnimated ("Cull", Int) = 0
+ [HideInInspector]_ZTestAnimated ("ZTest", Int) = 0
+ [HideInInspector]_ZWriteAnimated ("ZWrite", Int) = 0
+ [HideInInspector]_ColorMaskAnimated ("Color Mask", Int) = 0
+ [HideInInspector]_OffsetFactorAnimated ("Offset Factor", Int) = 0
+ [HideInInspector]_OffsetUnitsAnimated ("Offset Units", Int) = 0
+ [HideInInspector]_IgnoreFogAnimated ("Ignore Fog", Int) = 0
+
+ // Blending Options
+ [HideInInspector]_BlendOpAnimated ("RGB Blend Op", Int) = 0
+ [HideInInspector]_BlendOpAlphaAnimated ("Alpha Blend Op", Int) = 0
+ [HideInInspector]_SrcBlendAnimated ("RGB Source Blend", Int) = 0
+ [HideInInspector]_DstBlendAnimated ("RGB Destination Blend", Int) = 0
+
+ // Stencils
+ [HideInInspector]_StencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_StencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_StencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_StencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_StencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_StencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_StencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Outline Stencil
+ [HideInInspector]_OutlineStencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_OutlineStencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_OutlineStencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_OutlineStencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_OutlineStencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Debug Options
+ [HideInInspector]_VertexUnwrapAnimated ("Unwrap", Range(0, 1)) = 0
+ [HideInInspector]_DebugMeshDataAnimated ("Mesh Data", Int) = 0
+ [HideInInspector]_DebugLightingDataAnimated ("Lighting Data", Int) = 0
+ [HideInInspector]_DebugCameraDataAnimated ("Camera Data", Int) = 0
+ }
+
+
+ //originalEditorCustomEditor "PoiToon"
+ CustomEditor "Thry.ShaderEditor"
+ SubShader
+ {
+ Tags { "RenderType" = "Opaque" "Queue" = "Geometry" }
+
+// //EnableOutlinePass
+// Pass
+// {
+// Name "Outline"
+// Tags { "LightMode" = "ForwardBase" }
+// Stencil
+// {
+// Ref [_OutlineStencilRef]
+// ReadMask [_OutlineStencilReadMask]
+// WriteMask [_OutlineStencilWriteMask]
+// Comp [_OutlineStencilCompareFunction]
+// Pass [_OutlineStencilPassOp]
+// Fail [_OutlineStencilFailOp]
+// ZFail [_OutlineStencilZFailOp]
+// }
+// ZTest [_ZTest]
+// ColorMask [_ColorMask]
+// Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
+// BlendOp [_BlendOp], [_BlendOpAlpha]
+// Blend [_SrcBlend] [_DstBlend]
+// ZWrite [_ZWrite]
+// AlphaToMask [_AlphaToMask]
+// Cull [_OutlineCull]
+// CGPROGRAM
+//
+// #pragma target 5.0
+// #define FORWARD_BASE_PASS
+// #define OUTLINE
+// float _Mode;
+// // patreon Additive
+// // Black Light Mask
+//// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+// // voronoi
+//// #pragma shader_feature CHROMATIC_ABERRATION
+// // UV Distortion
+//// #pragma shader_feature USER_LUT
+// // Vertex Offsets
+//// #pragma shader_feature AUTO_EXPOSURE
+// // Mirror
+//// #pragma shader_feature _REQUIRE_UV2
+// // Random
+//// #pragma shader_feature _SUNDISK_NONE
+// // Dissolve
+//// #pragma shader_feature DISTORT
+// // Lighting
+//// #pragma shader_feature VIGNETTE_MASKED
+// #pragma multi_compile_fwdbase
+// #pragma fragmentoption ARB_precision_hint_fastest
+// #pragma multi_compile_fog
+// #pragma multi_compile_instancing
+// #pragma vertex vert
+// #pragma fragment frag
+// #include "../Includes/CGI_PoiPassOutline.cginc"
+// ENDCG
+//
+// }
+ //EnableOutlinePass
+
+ Pass
+ {
+ Name "MainPass"
+ Tags { "LightMode" = "ForwardBase" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ AlphaToMask [_AlphaToMask]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend [_SrcBlend] [_DstBlend]
+
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_BASE_PASS
+ float _Mode;
+ // Base Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ #pragma multi_compile _ VERTEXLIGHT_ON
+ // patreon Base
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Grab Pass Blur
+// #pragma shader_feature CHROMATIC_ABERRATION_LOW
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Touch Color
+// #pragma shader_feature GRAIN
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdbase
+ #pragma fragmentoption ARB_precision_hint_fastest
+ #pragma multi_compile_fog
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+
+ //LightingAdditiveEnable
+ Pass
+ {
+ Name "ForwardAddPass"
+ Tags { "LightMode" = "ForwardAdd" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ ZWrite Off
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend One One
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_ADD_PASS
+ float _Mode;
+ // Add Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ // patreon Additive
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+// #pragma shader_feature _PARALLAX_MAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Disable Directionals
+// #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdadd_fullshadows
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ //LightingAdditiveEnable
+
+ //LightingCastShadows
+ Pass
+ {
+ Name "ShadowCasterPass"
+ Tags { "LightMode" = "ShadowCaster" }
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ AlphaToMask Off
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_SHADOW
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Dissolve
+// #pragma shader_feature DISTORT
+ #pragma multi_compile_instancing
+ #pragma vertex vertShadowCaster
+ #pragma fragment fragShadowCaster
+ #include "../Includes/CGI_PoiPassShadow.cginc"
+ ENDCG
+
+ }
+ //LightingCastShadows
+
+ Pass
+ {
+ Tags { "LightMode" = "Meta" }
+ Cull Off
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_META_PASS
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
new file mode 100644
index 00000000..4424dce4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Face-d37d2b3e/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 37e66a8573d638243adf7f13575675bc
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06.meta
new file mode 100644
index 00000000..caee8d2f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 28479d4ca44005548ab0fefe5211a9c6
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets.meta
new file mode 100644
index 00000000..e7ff3eff
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 3cf69bb4f717c964d8f53347c11db0eb
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders.meta
new file mode 100644
index 00000000..b01e949a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 1fbe17fe10fabe3489b37d6761eaa14b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders.meta
new file mode 100644
index 00000000..a46d253c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 1865b1fb9aee0a84dbe2e7649892e7be
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon.meta
new file mode 100644
index 00000000..2dacb099
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: c9aff0b5660c22c49be05b76316acb76
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
new file mode 100644
index 00000000..96a99a1d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: eb945cc82b2c8e844a2f80af79b0530c
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
new file mode 100644
index 00000000..44c6fbc2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_ALPHA_TO_COVERAGE
+ #define POI_ALPHA_TO_COVERAGE
+
+ half _MainMipScale;
+ float _MainAlphaToCoverage;
+
+ float CalcMipLevel(float2 texture_coord)
+ {
+ float2 dx = ddx(texture_coord);
+ float2 dy = ddy(texture_coord);
+ float delta_max_sqr = max(dot(dx, dx), dot(dy, dy));
+
+ return 0.5 * log2(delta_max_sqr);
+ }
+
+ void ApplyAlphaToCoverage(inout float4 finalColor)
+ {
+ // Force Model Opacity to 1 if desired
+
+ if (float(0) == 1)
+ {
+
+ if(float(0))
+ {
+ // rescale alpha by mip level
+ finalColor.a *= 1 + max(0, CalcMipLevel(poiMesh.uv[0] * float4(0.0009765625,0.0009765625,1024,1024).zw)) * float(0.25);
+ // rescale alpha by partial derivative
+ finalColor.a = (finalColor.a - float(0.5)) / max(fwidth(finalColor.a), 0.0001) + float(0.5);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
new file mode 100644
index 00000000..4da0485a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ddca5dfe21cd23d49ac97e8ebbe82bb0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
new file mode 100644
index 00000000..e529136f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_BACKFACE
+ #define POI_BACKFACE
+
+ float _BackFaceEnabled;
+ float _BackFaceTextureUV;
+ float _BackFaceDetailIntensity;
+ float _BackFaceEmissionStrength;
+ float2 _BackFacePanning;
+ float _BackFaceHueShift;
+ float4 _BackFaceColor;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
+
+ float3 BackFaceColor;
+ void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
+ {
+ backFaceEmission = 0;
+ BackFaceColor = 0;
+
+ if (float(0))
+ {
+ if(!poiMesh.isFrontFace)
+ {
+ albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ backFaceDetailIntensity = float(1);
+ BackFaceColor = albedo.rgb;
+ mixedHueShift = float(0);
+ backFaceEmission = BackFaceColor * float(0);
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
new file mode 100644
index 00000000..b0644bd4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b8c216a59ec107f42a417010e5885154
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
new file mode 100644
index 00000000..750364ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
@@ -0,0 +1,54 @@
+#ifndef POI_BLACKLIGHT
+ #define POI_BLACKLIGHT
+
+ float4 _BlackLightMaskStart;
+ float4 _BlackLightMaskEnd;
+ float4 _BlackLightMaskKeys;
+ float _BlackLightMaskDebug;
+ float _BlackLightMaskDissolve;
+ float _BlackLightMaskMetallic;
+ float _BlackLightMaskClearCoat;
+ float _BlackLightMaskMatcap;
+ float _BlackLightMaskMatcap2;
+ float _BlackLightMaskEmission;
+ float _BlackLightMaskEmission2;
+ float _BlackLightMaskFlipbook;
+ float _BlackLightMaskPanosphere;
+ float _BlackLightMaskIridescence;
+
+ half _BlackLightMaskGlitter;
+
+ half4 blackLightMask;
+
+ void createBlackLightMask()
+ {
+ blackLightMask = 0;
+ #ifdef VERTEXLIGHT_ON
+
+ for (int lightIndex = 0; lightIndex < 4; lightIndex ++)
+ {
+ float3 lightPos = float3(unity_4LightPosX0[lightIndex], unity_4LightPosY0[lightIndex], unity_4LightPosZ0[lightIndex]);
+ if (!distance(unity_LightColor[lightIndex].rgb, float3(0, 0, 0)))
+ {
+ for (int maskIndex = 0; maskIndex < 4; maskIndex ++)
+ {
+ float4 comparison = _BlackLightMaskKeys;
+ if(unity_LightColor[lightIndex].a == comparison[maskIndex])
+ {
+ blackLightMask[maskIndex] = max(blackLightMask[maskIndex], smoothstep(_BlackLightMaskEnd[maskIndex], _BlackLightMaskStart[maskIndex], distance(poiMesh.worldPos, lightPos)));
+ }
+ }
+ }
+ }
+ #endif
+ }
+#endif
+
+/*
+#ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskDissolve != 4)
+ {
+ blackLightMask[mask];
+ }
+#endif
+*/
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
new file mode 100644
index 00000000..795ea501
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9048d709901cac243bbae3e26f821d2e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
new file mode 100644
index 00000000..f87ae6dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
@@ -0,0 +1,39 @@
+#ifndef POI_BLENDING
+ #define POI_BLENDING
+
+ /*
+ 0: Zero float4(0.0, 0.0, 0.0, 0.0),
+ 1: One float4(1.0, 1.0, 1.0, 1.0),
+ 2: DstColor destinationColor,
+ 3: SrcColor sourceColor,
+ 4: OneMinusDstColor float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ 5: SrcAlpha sourceColor.aaaa,
+ 6: OneMinusSrcColor float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ 7: DstAlpha destinationColor.aaaa,
+ 8: OneMinusDstAlpha float4(1.0, 1.0, 1.0, 1.0) - destinationColor.,
+ 9: SrcAlphaSaturate saturate(sourceColor.aaaa),
+ 10: OneMinusSrcAlpha float4(1.0, 1.0, 1.0, 1.0) - sourceColor.aaaa,
+ */
+
+ float4 poiBlend(const float sourceFactor, const float4 sourceColor, const float destinationFactor, const float4 destinationColor, const float4 blendFactor)
+ {
+ float4 sA = 1-blendFactor;
+ const float4 blendData[11] = {
+ float4(0.0, 0.0, 0.0, 0.0),
+ float4(1.0, 1.0, 1.0, 1.0),
+ destinationColor,
+ sourceColor,
+ float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sA,
+ saturate(sourceColor.aaaa),
+ 1 - sA,
+ };
+
+ return lerp(blendData[sourceFactor] * sourceColor + blendData[destinationFactor] * destinationColor,sourceColor, sA);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
new file mode 100644
index 00000000..81c51b1f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2931dd6c1ae9c854cb89554a5c63177f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
new file mode 100644
index 00000000..6e4db3fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_BULGE
+ #define POI_BULGE
+
+
+ sampler2D _BulgeMask;
+ float _BuldgeFadeLength;
+ float _BuldgeHeight;
+
+ void bulgyWolgy(inout v2f o)
+ {
+ float depth = DecodeFloatRG(tex2Dlod(_CameraDepthTexture, float4(o.grabPos.xy / o.grabPos.w, 0, 0)));
+ float bulgeMask = tex2Dlod(_BulgeMask, float4(o.uv0.xy, 0, 0));
+ depth = Linear01Depth(depth);
+
+ float intersect = 0;
+ if (depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(o.pos.z / o.pos.w));
+ if(diff > 0)
+ {
+ intersect = 1 - smoothstep(0, _ProjectionParams.w * _BuldgeFadeLength, diff);
+ }
+ }
+ float4 offset = intersect * _BuldgeHeight * float4(o.normal, 0);
+
+ offset = IsInMirror() ? 0: offset;
+ offset *= bulgeMask;
+
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos) + offset;
+ o.localPos = mul(unity_WorldToObject, o.worldPos);
+ o.pos = UnityObjectToClipPos(o.localPos);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
new file mode 100644
index 00000000..0b038f1e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3201d9beec63de54883adea2284aec22
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
new file mode 100644
index 00000000..5adf7340
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
@@ -0,0 +1,108 @@
+#ifndef POI_CLEARCOAT
+ #define POI_CLEARCOAT
+
+ samplerCUBE _ClearCoatCubeMap;
+ float _ClearCoatSampleWorld;
+ POI_TEXTURE_NOSAMPLER(_ClearCoatMask);
+ POI_TEXTURE_NOSAMPLER(_ClearCoatSmoothnessMap);
+ float _ClearCoatInvertSmoothness;
+ float _ClearCoat;
+ float _ClearCoatSmoothness;
+ float3 _ClearCoatTint;
+ float _ClearCoatNormalToUse;
+ float _ClearCoatForceLighting;
+ float lighty_clear_boy_uwu_var;
+
+
+ float3 CalculateClearCoatEnvironmentalReflections()
+ {
+ float3 reflectionColor;
+
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_ClearCoatSmoothnessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+ if (float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ float roughness = 1 - smoothnessMap;
+
+ lighty_clear_boy_uwu_var = 0;
+
+ float3 reflectedDir = float(0) == 0 ? poiCam.vertexReflectionDir: poiCam.reflectionDir;
+
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool no_probe = unity_SpecCube0_HDR.a == 0 && envSample.a == 0;
+
+
+ if(float(0) == 0 && no_probe == 0)
+ {
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflectionColor = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflectionColor = probe0;
+ }
+ }
+ else
+ {
+ lighty_clear_boy_uwu_var = 1;
+ reflectionColor = texCUBElod(_ClearCoatCubeMap, float4(reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+ }
+
+ if(float(0))
+ {
+ lighty_clear_boy_uwu_var = 1;
+ }
+
+ return reflectionColor * float4(1,1,1,1);
+ }
+
+ void calculateAndApplyClearCoat(inout float4 finalColor)
+ {
+ half clearCoatMap = POI2D_SAMPLER_PAN(_ClearCoatMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskClearCoat != 4)
+ {
+ clearCoatMap *= blackLightMask[_BlackLightMaskClearCoat];
+ }
+ #endif
+
+ half3 reflectionColor = CalculateClearCoatEnvironmentalReflections();
+
+ float NormalDotView = abs(dot(float(1), float(0) == 0 ? poiLight.N0DotV: poiLight.nDotV).r);
+ #ifdef POI_LIGHTING
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var), clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ //finalColor.rgb += reflectionColor;
+ //finalColor.rgb = finalColor.rgb * (1- (reflectionColor.r + reflectionColor.g + reflectionColor.b)/3) + reflectionColor * clearCoatMap * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var);
+ #else
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor, clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
new file mode 100644
index 00000000..6a4278ea
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c0b4f95a93b490a47b039a7a568cd4f1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
new file mode 100644
index 00000000..687dc443
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
@@ -0,0 +1,262 @@
+#ifndef POI_COLOR
+ #define POI_COLOR
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ static const float Epsilon = 1e-10;
+ // The weights of RGB contributions to luminance.
+ // Should sum to unity.
+ static const float3 HCYwts = float3(0.299, 0.587, 0.114);
+ static const float HCLgamma = 3;
+ static const float HCLy0 = 100;
+ static const float HCLmaxL = 0.530454533953517; // == exp(HCLgamma / HCLy0) - 0.5
+ static const float3 wref = float3(1.0, 1.0, 1.0);
+ #define TAU 6.28318531
+
+ float3 HUEtoRGB(in float H)
+ {
+ float R = abs(H * 6 - 3) - 1;
+ float G = 2 - abs(H * 6 - 2);
+ float B = 2 - abs(H * 6 - 4);
+ return saturate(float3(R, G, B));
+ }
+
+ float3 RGBtoHCV(in float3 RGB)
+ {
+ // Based on work by Sam Hocevar and Emil Persson
+ float4 P = (RGB.g < RGB.b) ? float4(RGB.bg, -1.0, 2.0 / 3.0): float4(RGB.gb, 0.0, -1.0 / 3.0);
+ float4 Q = (RGB.r < P.x) ? float4(P.xyw, RGB.r): float4(RGB.r, P.yzx);
+ float C = Q.x - min(Q.w, Q.y);
+ float H = abs((Q.w - Q.y) / (6 * C + Epsilon) + Q.z);
+ return float3(H, C, Q.x);
+ }
+
+ float3 HSVtoRGB(in float3 HSV)
+ {
+ float3 RGB = HUEtoRGB(HSV.x);
+ return((RGB - 1) * HSV.y + 1) * HSV.z;
+ }
+
+ float3 RGBtoHSV(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float S = HCV.y / (HCV.z + Epsilon);
+ return float3(HCV.x, S, HCV.z);
+ }
+
+ float3 HSLtoRGB(in float3 HSL)
+ {
+ float3 RGB = HUEtoRGB(HSL.x);
+ float C = (1 - abs(2 * HSL.z - 1)) * HSL.y;
+ return(RGB - 0.5) * C + HSL.z;
+ }
+
+ float3 RGBtoHSL(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float L = HCV.z - HCV.y * 0.5;
+ float S = HCV.y / (1 - abs(L * 2 - 1) + Epsilon);
+ return float3(HCV.x, S, L);
+ }
+
+ float3 HCYtoRGB(in float3 HCY)
+ {
+
+
+ float3 RGB = HUEtoRGB(HCY.x);
+ float Z = dot(RGB, HCYwts);
+ if (HCY.z < Z)
+ {
+ HCY.y *= HCY.z / Z;
+ }
+ else if(Z < 1)
+ {
+ HCY.y *= (1 - HCY.z) / (1 - Z);
+ }
+ return(RGB - Z) * HCY.y + HCY.z;
+ }
+
+ float3 RGBtoHCY(in float3 RGB)
+ {
+ // Corrected by David Schaeffer
+ float3 HCV = RGBtoHCV(RGB);
+ float Y = dot(RGB, HCYwts);
+ float Z = dot(HUEtoRGB(HCV.x), HCYwts);
+ if (Y < Z)
+ {
+ HCV.y *= Z / (Epsilon + Y);
+ }
+ else
+ {
+ HCV.y *= (1 - Z) / (Epsilon + 1 - Y);
+ }
+ return float3(HCV.x, HCV.y, Y);
+ }
+
+ float3 HCLtoRGB(in float3 HCL)
+ {
+ float3 RGB = 0;
+ if(HCL.z != 0)
+ {
+ float H = HCL.x;
+ float C = HCL.y;
+ float L = HCL.z * HCLmaxL;
+ float Q = exp((1 - C / (2 * L)) * (HCLgamma / HCLy0));
+ float U = (2 * L - C) / (2 * Q - 1);
+ float V = C / Q;
+ float A = (H + min(frac(2 * H) / 4, frac(-2 * H) / 8)) * pi * 2;
+ float T;
+ H *= 6;
+ if(H <= 0.999)
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.g = T / (1 + T);
+ }
+ else if(H <= 1.001)
+ {
+ RGB.r = 1;
+ RGB.g = 1;
+ }
+ else if(H <= 2)
+ {
+ T = tan(A);
+ RGB.r = (1 + T) / T;
+ RGB.g = 1;
+ }
+ else if(H <= 3)
+ {
+ T = tan(A);
+ RGB.g = 1;
+ RGB.b = 1 + T;
+ }
+ else if(H <= 3.999)
+ {
+ T = tan(A);
+ RGB.g = 1 / (1 + T);
+ RGB.b = 1;
+ }
+ else if(H <= 4.001)
+ {
+ RGB.g = 0;
+ RGB.b = 1;
+ }
+ else if(H <= 5)
+ {
+ T = tan(A);
+ RGB.r = -1 / T;
+ RGB.b = 1;
+ }
+ else
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.b = -T;
+ }
+ RGB = RGB * V + U;
+ }
+ return RGB;
+ }
+
+ float3 RGBtoHCL(in float3 RGB)
+ {
+ float3 HCL;
+ float H = 0;
+ float U = min(RGB.r, min(RGB.g, RGB.b));
+ float V = max(RGB.r, max(RGB.g, RGB.b));
+ float Q = HCLgamma / HCLy0;
+ HCL.y = V - U;
+ if(HCL.y != 0)
+ {
+ H = atan2(RGB.g - RGB.b, RGB.r - RGB.g) / pi;
+ Q *= U / V;
+ }
+ Q = exp(Q);
+ HCL.x = frac(H / 2 - min(frac(H), frac(-H)) / 6);
+ HCL.y *= Q;
+ HCL.z = lerp(-U, V, Q) / (HCLmaxL * 2);
+ return HCL;
+ }
+
+ //HSL MODIFT
+ float3 ModifyViaHSL(float3 color, float3 HSLMod)
+ {
+ float3 colorHSL = RGBtoHSL(color);
+ colorHSL.r = frac(colorHSL.r + HSLMod.r);
+ colorHSL.g = saturate(colorHSL.g + HSLMod.g);
+ colorHSL.b = saturate(colorHSL.b + HSLMod.b);
+ return HSLtoRGB(colorHSL);
+ }
+
+ float3 hueShift(float3 col, float hueAdjust)
+ {
+ hueAdjust *= 2 * pi;
+ const float3 k = float3(0.57735, 0.57735, 0.57735);
+ half cosAngle = cos(hueAdjust);
+ return col * cosAngle + cross(k, col) * sin(hueAdjust) + k * dot(k, col) * (1.0 - cosAngle);
+ }
+
+ float3 poiSaturation(float3 In, float Saturation)
+ {
+ float luma = dot(In, float3(0.2126729, 0.7151522, 0.0721750));
+ return luma.xxx + Saturation.xxx * (In - luma.xxx);
+ }
+ // LCH
+ float xyzF(float t)
+ {
+ return lerp(pow(t, 1. / 3.), 7.787037 * t + 0.139731, step(t, 0.00885645));
+ }
+ float xyzR(float t)
+ {
+ return lerp(t * t * t, 0.1284185 * (t - 0.139731), step(t, 0.20689655));
+ }
+ float3 rgb2lch(in float3 c)
+ {
+ c = mul(float3x3(0.4124, 0.3576, 0.1805,
+ 0.2126, 0.7152, 0.0722,
+ 0.0193, 0.1192, 0.9505), c);
+ c.x = xyzF(c.x / wref.x);
+ c.y = xyzF(c.y / wref.y);
+ c.z = xyzF(c.z / wref.z);
+ float3 lab = float3(max(0., 116.0 * c.y - 16.0), 500.0 * (c.x - c.y), 200.0 * (c.y - c.z));
+ return float3(lab.x, length(float2(lab.y, lab.z)), atan2(lab.z, lab.y));
+ }
+
+ float3 lch2rgb(in float3 c)
+ {
+ c = float3(c.x, cos(c.z) * c.y, sin(c.z) * c.y);
+
+ float lg = 1. / 116. * (c.x + 16.);
+ float3 xyz = float3(wref.x * xyzR(lg + 0.002 * c.y),
+ wref.y * xyzR(lg),
+ wref.z * xyzR(lg - 0.005 * c.z));
+
+ float3 rgb = mul(float3x3(3.2406, -1.5372, -0.4986,
+ - 0.9689, 1.8758, 0.0415,
+ 0.0557, -0.2040, 1.0570), xyz);
+
+ return rgb;
+ }
+
+ //cheaply lerp around a circle
+ float lerpAng(in float a, in float b, in float x)
+ {
+ float ang = fmod(fmod((a - b), TAU) + pi * 3., TAU) - pi;
+ return ang * x + b;
+ }
+
+ //Linear interpolation between two colors in Lch space
+ float3 lerpLch(in float3 a, in float3 b, in float x)
+ {
+ float hue = lerpAng(a.z, b.z, x);
+ return float3(lerp(b.xy, a.xy, x), hue);
+ }
+
+ float3 poiExpensiveColorBlend(float3 col1, float3 col2, float alpha)
+ {
+ return lch2rgb(lerpLch(rgb2lch(col1), rgb2lch(col2), alpha));
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
new file mode 100644
index 00000000..dd0a1fe3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8ff45826c7181254c8a0c2255a9cd4a4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
new file mode 100644
index 00000000..cd354f85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
@@ -0,0 +1,249 @@
+#ifndef POI_DATA
+ #define POI_DATA
+
+ float _ParallaxBias;
+ float _LightingAdditiveLimitIntensity;
+ float _LightingAdditiveMaxIntensity;
+ POI_TEXTURE_NOSAMPLER(_BumpMap);
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailMask);
+ POI_TEXTURE_NOSAMPLER(_DetailNormalMap);
+ float _DetailNormalMapScale;
+ #endif
+ float _BumpScale;
+
+ void calculateAttenuation(v2f i)
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if defined(POINT) || defined(SPOT)
+ POI_LIGHT_ATTENUATION(attenuation, shadow, i, i.worldPos.xyz)
+ poiLight.additiveShadow = shadow;
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ poiLight.additiveShadow == 0;
+ #endif
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ // fix for rare bug where light atten is 0 when there is no directional light in the scene
+ #ifdef FORWARD_BASE_PASS
+ if (all(_LightColor0.rgb == 0.0))
+ {
+ attenuation = 1.0;
+ }
+ #endif
+ #endif
+ poiLight.attenuation = attenuation;
+ }
+
+ void calculateVertexLightingData(in v2f i)
+ {
+ #ifdef VERTEXLIGHT_ON
+ float4 toLightX = unity_4LightPosX0 - i.worldPos.x;
+ float4 toLightY = unity_4LightPosY0 - i.worldPos.y;
+ float4 toLightZ = unity_4LightPosZ0 - i.worldPos.z;
+ float4 lengthSq = 0;
+ lengthSq += toLightX * toLightX;
+ lengthSq += toLightY * toLightY;
+ lengthSq += toLightZ * toLightZ;
+
+ float4 lightAttenSq = unity_4LightAtten0;
+ float4 atten = 1.0 / (1.0 + lengthSq * lightAttenSq);
+ float4 vLightWeight = saturate(1 - (lengthSq * lightAttenSq / 25));
+ poiLight.vAttenuation = min(atten, vLightWeight * vLightWeight);
+
+ poiLight.vDotNL = 0;
+ poiLight.vDotNL += toLightX * poiMesh.normals[1].x;
+ poiLight.vDotNL += toLightY * poiMesh.normals[1].y;
+ poiLight.vDotNL += toLightZ * poiMesh.normals[1].z;
+
+ float4 corr = rsqrt(lengthSq);
+ poiLight.vDotNL = max(0, poiLight.vDotNL * corr);
+ poiLight.vAttenuationDotNL = poiLight.vAttenuation * poiLight.vDotNL;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vPosition[index] = float3(unity_4LightPosX0[index], unity_4LightPosY0[index], unity_4LightPosZ0[index]);
+
+ float3 vertexToLightSource = poiLight.vPosition[index] - poiMesh.worldPos;
+ poiLight.vDirection[index] = normalize(vertexToLightSource);
+ //poiLight.vAttenuationDotNL[index] = 1.0 / (1.0 + unity_4LightAtten0[index] * poiLight.vDotNL[index]);
+ poiLight.vColor[index] = unity_LightColor[index].rgb;
+
+ if (float(0) == 1)
+ {
+ float intensity = max(0.001, (0.299 * poiLight.vColor[index].r + 0.587 * poiLight.vColor[index].g + 0.114 * poiLight.vColor[index].b));
+ poiLight.vColor[index] = min(poiLight.vColor[index], poiLight.vColor[index] / (intensity / float(1)));
+ }
+ poiLight.vHalfDir[index] = Unity_SafeNormalize(poiLight.vDirection[index] + poiCam.viewDir);
+ poiLight.vDotNL[index] = dot(poiMesh.normals[1], -poiLight.vDirection[index]);
+ poiLight.vCorrectedDotNL[index] = .5 * (poiLight.vDotNL[index] + 1);
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.vDotLH[index] = saturate(dot(poiLight.vDirection[index], poiLight.vHalfDir[index]));
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.vDotNH[index] = saturate(dot(poiMesh.normals[1], poiLight.vHalfDir[index]));
+ #endif
+ }
+ #endif
+ }
+
+ void calculateLightingData(in v2f i)
+ {
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ float3 magic = max(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb;
+ poiLight.color = magic + normalLight;
+ #else
+ #ifdef FORWARD_ADD_PASS
+ poiLight.color = _LightColor0.rgb;
+
+
+ if (float(0) == 1)
+ {
+ float additiveLightIntensity = max(0.001, (0.299 * poiLight.color.r + 0.587 * poiLight.color.g + 0.114 * poiLight.color.b));
+ poiLight.color = min(poiLight.color, poiLight.color / (additiveLightIntensity / float(1)));
+ }
+ #endif
+ #endif
+
+ #ifdef FORWARD_BASE_PASS
+ poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ #else
+ #if defined(POINT) || defined(SPOT)
+ poiLight.direction = normalize(_WorldSpaceLightPos0.xyz - i.worldPos);
+ #else
+ poiLight.direction = _WorldSpaceLightPos0;
+ #endif
+ #endif
+
+ poiLight.halfDir = normalize(poiLight.direction + poiCam.viewDir);
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.dotNH = saturate(dot(poiMesh.normals[1], poiLight.halfDir));
+ #endif
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.dotLH = saturate(dot(poiLight.direction, poiLight.halfDir));
+ #endif
+
+ poiLight.nDotV = dot(poiMesh.normals[1], poiCam.viewDir);
+ poiLight.N0DotV = dot(poiMesh.normals[0], poiCam.viewDir);
+ poiLight.nDotL = dot(poiMesh.normals[1], poiLight.direction);
+ poiLight.nDotH = dot(poiMesh.normals[1], poiLight.halfDir);
+ poiLight.lDotv = dot(poiLight.direction, poiCam.viewDir);
+ poiLight.lDotH = dot(poiLight.direction, poiLight.halfDir);
+ }
+
+ float3 CreateBinormal(float3 normal, float3 tangent, float binormalSign)
+ {
+ return cross(normal, tangent.xyz) * (binormalSign * unity_WorldTransformParams.w);
+ }
+
+ void InitializeMeshData(inout v2f i, uint facing)
+ {
+ poiMesh.isFrontFace = facing;
+ poiMesh.normals[0] = normalize(i.normal);
+ poiMesh.binormal = CreateBinormal(i.normal, i.tangent.xyz, i.tangent.w);
+ poiMesh.tangent = i.tangent.xyz;
+
+ #ifndef OUTLINE
+ if(!poiMesh.isFrontFace)
+ {
+ poiMesh.normals[0] *= -1;
+ poiMesh.tangent *= -1;
+ poiMesh.binormal *= -1;
+ }
+ #endif
+
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+ poiMesh.barycentricCoordinates = i.barycentricCoordinates;
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ #ifdef POI_UV_DISTORTION
+ poiMesh.uv[4] = calculateDistortionUV(i.uv0.xy);
+ #else
+ poiMesh.uv[4] = poiMesh.uv[0];
+ #endif
+
+ poiMesh.vertexColor = i.vertexColor;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ poiMesh.lightmapUV = i.lightmapUV;
+ #endif
+ poiMesh.modelPos = i.modelPos;
+
+ #ifdef FUR
+ poiMesh.furAlpha = i.furAlpha;
+ #endif
+ }
+
+ void initializeCamera(v2f i)
+ {
+ poiCam.viewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
+ poiCam.forwardDir = getCameraForward();
+ poiCam.worldPos = _WorldSpaceCameraPos;
+ poiCam.distanceToModel = distance(poiMesh.modelPos, poiCam.worldPos);
+ poiCam.distanceToVert = distance(poiMesh.worldPos, poiCam.worldPos);
+ poiCam.grabPos = i.grabPos;
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ poiCam.clipPos = i.pos;
+ #if defined(GRAIN)
+ poiCam.worldDirection = i.worldDirection;
+ #endif
+
+ poiCam.tangentViewDir = normalize(i.tangentViewDir);
+ poiCam.tangentViewDir.xy /= (poiCam.tangentViewDir.z + float(0.42));
+ }
+
+ void calculateTangentData()
+ {
+ poiTData.tangentTransform = float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]);
+ poiTData.tangentToWorld = transpose(float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]));
+ }
+
+ void CalculateReflectionData()
+ {
+ #if defined(_METALLICGLOSSMAP) || defined(_COLORCOLOR_ON)
+ poiCam.reflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[1]);
+ poiCam.vertexReflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[0]);
+ #endif
+ }
+
+ void calculateNormals(inout half3 detailMask)
+ {
+ half3 mainNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_BumpMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ #ifdef FINALPASS
+ detailMask = POI2D_SAMPLER_PAN(_DetailMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(1) > 0)
+ {
+ half3 detailNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_DetailNormalMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1) * detailMask.g);
+ poiMesh.tangentSpaceNormal = BlendNormals(mainNormal, detailNormal);
+ }
+ else
+ {
+ poiMesh.tangentSpaceNormal = mainNormal;
+ }
+ #else
+ poiMesh.tangentSpaceNormal = mainNormal;
+ #endif
+
+ #ifdef POI_RGBMASK
+ calculateRGBNormals(poiMesh.tangentSpaceNormal);
+ #endif
+
+ poiMesh.normals[1] = normalize(
+ poiMesh.tangentSpaceNormal.x * poiMesh.tangent +
+ poiMesh.tangentSpaceNormal.y * poiMesh.binormal +
+ poiMesh.tangentSpaceNormal.z * poiMesh.normals[0]
+ );
+
+ poiCam.viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[1]));
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
new file mode 100644
index 00000000..9c02ae7a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8447d41d27a5baf4b95362ac5fc84318
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
new file mode 100644
index 00000000..125d2cd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
@@ -0,0 +1,107 @@
+#ifndef POI_DEBUG
+ #define POI_DEBUG
+
+ float _DebugEnabled;
+ float _DebugMeshData;
+ float _DebugLightingData;
+ float _DebugCameraData;
+
+ void displayDebugInfo(inout float4 finalColor)
+ {
+
+ if (float(0) != 0)
+ {
+ //Mesh Data
+ if (float(0) == 1)
+ {
+ finalColor.rgb = poiMesh.normals[0];
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiMesh.normals[1];
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiMesh.tangent;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiMesh.binormal;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiMesh.localPos;
+ return;
+ }
+
+ #ifdef POI_LIGHTING
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiLight.attenuation;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiLight.directLighting;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiLight.indirectLighting;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiLight.lightMap;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiLight.rampedLightMap;
+ return;
+ }
+ else if(float(0) == 6)
+ {
+ finalColor.rgb = poiLight.finalLighting;
+ return;
+ }
+ else if(float(0) == 7)
+ {
+ finalColor.rgb = poiLight.nDotL;
+ return;
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiCam.viewDir;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiCam.tangentViewDir;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiCam.forwardDir;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiCam.worldPos;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiCam.viewDotNormal;
+ return;
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
new file mode 100644
index 00000000..fae6d069
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 105d43a01ca7bde4da3a26c94450aa6d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
new file mode 100644
index 00000000..280fcbc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_DECAL
+ #define POI_DECAL
+
+ POI_TEXTURE_NOSAMPLER(_DecalTexture);
+ POI_TEXTURE_NOSAMPLER(_DecalMask);
+ float4 _DecalColor;
+ fixed _DecalTiled;
+ fixed _DecalBlendAdd;
+ fixed _DecalBlendMultiply;
+ fixed _DecalBlendReplace;
+ half _DecalRotation;
+ half2 _DecalScale;
+ half2 _DecalPosition;
+ half _DecalRotationSpeed;
+ float _DecalEmissionStrength;
+
+ void applyDecal(inout float4 albedo, inout float3 decalEmission)
+ {
+ float2 uv = poiMesh.uv[float(0)];
+ float2 decalCenter = float4(0.5,0.5,0,0);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - decalCenter.x) * cs - (uv.y - decalCenter.y) * sn + decalCenter.x, (uv.x - decalCenter.x) * sn + (uv.y - decalCenter.y) * cs + decalCenter.y);
+ uv = remap(uv, float2(0, 0) - float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float2(0, 0), float2(1, 1));
+
+ half decalAlpha = 1;
+ //float2 uv = TRANSFORM_TEX(poiMesh.uv[float(0)], _DecalTexture) + _Time.x * float4(0,0,0,0);
+ float4 decalColor = POI2D_SAMPLER_PAN(_DecalTexture, _MainTex, uv, float4(0,0,0,0)) * float4(1,1,1,1);
+ decalAlpha *= POI2D_SAMPLER_PAN(_DecalMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if (!float(0))
+ {
+ if(uv.x > 1 || uv.y > 1 || uv.x < 0 || uv.y < 0)
+ {
+ decalAlpha = 0;
+ }
+ }
+
+ if(float(0))
+ {
+ albedo.rgb = lerp(albedo.rgb, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb *= lerp(1, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb += decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+ albedo = saturate(albedo);
+ decalEmission = decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
new file mode 100644
index 00000000..46be83d0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f99207838307c064ab45fc402e6a5f20
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
new file mode 100644
index 00000000..9b70067a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
@@ -0,0 +1,21 @@
+#ifndef POI_DEFINES
+ #define POI_DEFINES
+
+ #define DielectricSpec float4(0.04, 0.04, 0.04, 1.0 - 0.04)
+
+ #ifdef _SPECGLOSSMAP // Specular
+ #ifndef POI_VAR_DOTNH
+ #define POI_VAR_DOTNH
+ #endif
+ #ifndef POI_VAR_DOTLH
+ #define POI_VAR_DOTLH
+ #endif
+ #endif
+
+ #ifdef VIGNETTE_MASKED // Lighting
+ #ifndef POI_VAR_DOTNL
+ #define POI_VAR_DOTNL
+ #endif
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
new file mode 100644
index 00000000..984e52fe
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: da65bd82514aeaa4791f1ca8065654c2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
new file mode 100644
index 00000000..828460bc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
@@ -0,0 +1,112 @@
+#ifndef POI_DEPTH_COLOR
+ #define POI_DEPTH_COLOR
+
+ float4 _DepthGlowColor;
+ float _DepthGlowEmission;
+ float _FadeLength;
+ float _DepthAlphaMin;
+ float _DepthAlphaMax;
+ POI_TEXTURE_NOSAMPLER(_DepthGradient);
+ POI_TEXTURE_NOSAMPLER(_DepthMask);
+ float _DepthGradientTextureUV;
+ float _DepthGradientBlend;
+
+ /*
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, float4 worldDirection, float4 clipPos)
+ {
+ float3 touchEmission = 0;
+ if (!IsInMirror())
+ {
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+ float depth = DecodeFloatRG(tex2Dproj(_CameraDepthTexture, worldDirection));
+ depth = Linear01Depth(depth);
+ if(depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(clipPos.z));
+ float intersect = 0;
+ if(diff > 0)
+ {
+ intersect = clamp(1 - smoothstep(0, _ProjectionParams.w * fadeLength, diff), 0, 1);
+ }
+ half4 depthGradient = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthGradient, _MainTex, intersect);
+ half3 depthMask = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthMask, _MainTex, poiMesh.uv[0]);
+ half3 depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+ }
+ }
+ depthTouchEmission = touchEmission;
+ }
+ */
+
+ inline float CorrectedLinearEyeDepth(float z, float B)
+ {
+ return 1.0 / (z / PM._34 + B);
+ }
+
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, in float4 worldDirection)
+ {
+ float3 touchEmission = 0;
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+
+ float perspectiveDivide = 1.0f / poiCam.clipPos.w;
+ float4 direction = worldDirection * perspectiveDivide;
+ float2 screenPos = poiCam.grabPos.xy * perspectiveDivide;
+ float z = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, screenPos);
+
+ #if UNITY_REVERSED_Z
+ if (z == 0)
+ #else
+ if(z == 1)
+ #endif
+ return;
+
+ float depth = CorrectedLinearEyeDepth(z, direction.w);
+ float3 worldpos = direction * depth + _WorldSpaceCameraPos.xyz;
+ /*
+ finalColor.rgb = frac(worldpos);
+ return;
+ */
+
+ float diff = distance(worldpos, poiMesh.worldPos);
+ float intersect = 0;
+ intersect = clamp(1 - smoothstep(0, fadeLength, diff), 0, 1);
+ half3 depthMask = POI2D_SAMPLER_PAN(_DepthMask, _MainTex, poiMesh.uv[_DepthMaskUV], _DepthMaskPan);
+
+ half4 depthGradient = 0;
+ half3 depthColor = 0;
+
+
+ if (_DepthGradientTextureUV == 0)
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, float2(intersect, intersect), _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ }
+ else
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, poiMesh.uv[_DepthGradientUV], _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb * intersect;
+ }
+
+
+ if(_DepthGradientBlend == 0) // rpelace
+ {
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ }
+ else if(_DepthGradientBlend == 1) // add
+ {
+ finalColor.rgb += depthColor * intersect * depthMask;
+ }
+ else if(_DepthGradientBlend == 2) // multiply
+ {
+ finalColor.rgb *= lerp(1, depthColor, intersect * depthMask);
+ }
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect * depthMask);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+
+ depthTouchEmission = touchEmission;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
new file mode 100644
index 00000000..25ef85a8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: af0b5fbbeb531724ca54f7f85851e2f0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
new file mode 100644
index 00000000..13175f00
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
@@ -0,0 +1,171 @@
+#ifndef POI_DISSOLVE
+ #define POI_DISSOLVE
+
+ float _DissolveType;
+ float _DissolveEdgeWidth;
+ float4 _DissolveEdgeColor;
+ sampler2D _DissolveEdgeGradient; float4 _DissolveEdgeGradient_ST;
+ float _DissolveEdgeEmission;
+ float4 _DissolveTextureColor;
+
+ POI_TEXTURE_NOSAMPLER(_DissolveToTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveNoiseTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveDetailNoise);
+ POI_TEXTURE_NOSAMPLER(_DissolveMask);
+
+ float _DissolveMaskInvert;
+ float _DissolveAlpha;
+ float _ContinuousDissolve;
+ float _DissolveDetailStrength;
+ float _DissolveEdgeHardness;
+ float _DissolveInvertNoise;
+ float _DissolveInvertDetailNoise;
+ float _DissolveToEmissionStrength;
+
+ // Point to Point
+ float _DissolveP2PWorldLocal;
+ float _DissolveP2PEdgeLength;
+ float4 _DissolveStartPoint;
+ float4 _DissolveEndPoint;
+
+ // World Dissolve
+ float _DissolveWorldShape;
+ float4 _DissolveShapePosition;
+ float4 _DissolveShapeRotation;
+ float _DissolveShapeScale;
+ float _DissolveInvertShape;
+ float _DissolveShapeEdgeLength;
+
+ float _DissolveAlpha0;
+ float _DissolveAlpha1;
+ float _DissolveAlpha2;
+ float _DissolveAlpha3;
+ float _DissolveAlpha4;
+ float _DissolveAlpha5;
+ float _DissolveAlpha6;
+ float _DissolveAlpha7;
+ float _DissolveAlpha8;
+ float _DissolveAlpha9;
+
+ // Masking
+ float _DissolveEmissionSide;
+ float _DissolveEmission1Side;
+ float _DissolveUseVertexColors;
+
+ float4 edgeColor;
+ float edgeAlpha;
+ float dissolveAlpha;
+ float4 dissolveToTexture;
+ //Globals
+
+
+ void calculateDissolve(inout float4 albedo, inout float3 dissolveEmission)
+ {
+
+ float dissolveMask = POI2D_SAMPLER_PAN(_DissolveMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+
+ if (float(0))
+ {
+ // Vertex Color Imprecision hype
+ dissolveMask = ceil(poiMesh.vertexColor.g * 100000) / 100000;
+ }
+
+ dissolveToTexture = POI2D_SAMPLER_PAN(_DissolveToTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ float dissolveNoiseTexture = POI2D_SAMPLER_PAN(_DissolveNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ float da = float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0);
+ da = saturate(da);
+
+ float dds = float(0.1);
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskDissolve != 4)
+ {
+ dissolveMask *= blackLightMask[_BlackLightMaskDissolve];
+ }
+ #endif
+
+ if(float(0))
+ {
+ dissolveMask = 1 - dissolveMask;
+ }
+
+ float dissolveDetailNoise = POI2D_SAMPLER_PAN(_DissolveDetailNoise, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(0))
+ {
+ dissolveNoiseTexture = 1 - dissolveNoiseTexture;
+ }
+ if(float(0))
+ {
+ dissolveDetailNoise = 1 - dissolveDetailNoise;
+ }
+ if(float(0) != 0)
+ {
+ da = sin(_Time.y * float(0)) * .5 + .5;
+ }
+ da *= dissolveMask;
+ dissolveAlpha = da;
+ edgeAlpha = 0;
+
+
+ if(float(1) == 1) // Basic
+ {
+ da = remap(da, 0, 1, -float(0.025), 1);
+ dissolveAlpha = da;
+ //Adjust detail strength to avoid artifacts
+ dds *= smoothstep(1, .99, da);
+ float noise = saturate(dissolveNoiseTexture - dissolveDetailNoise * dds);
+
+ noise = saturate(noise + 0.001);
+ //noise = remap(noise, 0, 1, float(0.025), 1 - float(0.025));
+ dissolveAlpha = dissolveAlpha >= noise;
+ edgeAlpha = remapClamped(noise, da + float(0.025), da, 0, 1) * (1 - dissolveAlpha);
+ }
+ else if (float(1) == 2) // Point to Point
+ {
+ float3 direction;
+ float3 currentPos;
+ float distanceTo = 0;
+ direction = normalize(float4(0,1,0,0) - float4(0,-1,0,0));
+ currentPos = lerp(float4(0,-1,0,0), float4(0,1,0,0), dissolveAlpha);
+ if (float(0) == 0)
+ {
+ distanceTo = dot(poiMesh.localPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ else
+ {
+ distanceTo = dot(poiMesh.worldPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ }
+
+ albedo = lerp(albedo, dissolveToTexture, dissolveAlpha);
+
+
+ if(float(0.025))
+ {
+ edgeColor = tex2D(_DissolveEdgeGradient, TRANSFORM_TEX(float2(edgeAlpha, edgeAlpha), _DissolveEdgeGradient)) * float4(1,1,1,1);
+ albedo.rgb = lerp(albedo.rgb, edgeColor.rgb, smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+ dissolveEmission = lerp(0, dissolveToTexture * float(0), dissolveAlpha) + lerp(0, edgeColor.rgb * float(0), smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
new file mode 100644
index 00000000..19f457c7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 98eaae1d0b017c642a7a0e3605d40c9a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
new file mode 100644
index 00000000..91efad39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_DITHERING
+ #define POI_DITHERING
+ fixed _DitheringEnabled;
+ fixed _DitherGradient;
+
+ half calcDither(half2 grabPos)
+ {
+ half dither = Dither8x8Bayer(fmod(grabPos.x, 8), fmod(grabPos.y, 8));
+ return dither;
+ }
+
+ #ifndef POI_SHADOW
+ void applyDithering(inout float4 finalColor)
+ {
+
+ if (float(0))
+ {
+ half dither = calcDither(poiCam.screenUV.xy);
+ finalColor.a = finalColor.a - (dither * (1 - finalColor.a) * float(0.1));
+ }
+ }
+ #else
+ void applyShadowDithering(inout float alpha, float2 screenUV)
+ {
+
+ if(float(0))
+ {
+ half dither = calcDither(screenUV);
+ alpha = alpha - (dither * (1 - alpha) * float(0.1));
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
new file mode 100644
index 00000000..5e94369b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c53a1708283ca794d8c1a10940ca53c5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
new file mode 100644
index 00000000..4888c2ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
@@ -0,0 +1,240 @@
+#ifndef POI_EMISSION
+ #define POI_EMISSION
+
+ float4 _EmissionColor;
+ POI_TEXTURE_NOSAMPLER(_EmissionMap);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve); float4 _EmissionScrollingCurve_ST;
+ float _EmissionBaseColorAsMap;
+ float _EmissionStrength;
+ float _EnableEmission;
+ float _EmissionHueShift;
+ float4 _EmissiveScroll_Direction;
+ float _EmissiveScroll_Width;
+ float _EmissiveScroll_Velocity;
+ float _EmissiveScroll_Interval;
+ float _EmissionBlinkingEnabled;
+ float _EmissiveBlink_Min;
+ float _EmissiveBlink_Max;
+ float _EmissiveBlink_Velocity;
+ float _ScrollingEmission;
+ float _EnableGITDEmission;
+ float _GITDEMinEmissionMultiplier;
+ float _GITDEMaxEmissionMultiplier;
+ float _GITDEMinLight;
+ float _GITDEMaxLight;
+ float _GITDEWorldOrMesh;
+ float _EmissionCenterOutEnabled;
+ float _EmissionCenterOutSpeed;
+ float _EmissionHueShiftEnabled;
+ float _EmissionBlinkingOffset;
+ float _EmissionScrollingOffset;
+
+ float4 _EmissionColor1;
+ #ifdef EFFECT_HUE_VARIATION
+ POI_TEXTURE_NOSAMPLER(_EmissionMap1);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask1);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve1); float4 _EmissionScrollingCurve1_ST;
+ #endif
+ float _EmissionBaseColorAsMap1;
+ float _EmissionStrength1;
+ float _EnableEmission1;
+ float _EmissionHueShift1;
+ float4 _EmissiveScroll_Direction1;
+ float _EmissiveScroll_Width1;
+ float _EmissiveScroll_Velocity1;
+ float _EmissiveScroll_Interval1;
+ float _EmissionBlinkingEnabled1;
+ float _EmissiveBlink_Min1;
+ float _EmissiveBlink_Max1;
+ float _EmissiveBlink_Velocity1;
+ float _ScrollingEmission1;
+ float _EnableGITDEmission1;
+ float _GITDEMinEmissionMultiplier1;
+ float _GITDEMaxEmissionMultiplier1;
+ float _GITDEMinLight1;
+ float _GITDEMaxLight1;
+ float _GITDEWorldOrMesh1;
+ float _EmissionCenterOutEnabled1;
+ float _EmissionCenterOutSpeed1;
+ float _EmissionHueShiftEnabled1;
+ float _EmissionBlinkingOffset1;
+ float _EmissionScrollingOffset1;
+
+ float _EmissionReplace;
+
+ float _EmissionScrollingVertexColor;
+ float _EmissionScrollingVertexColor1;
+
+ float _EmissionScrollingUseCurve;
+ float _EmissionScrollingUseCurve1;
+
+ float calculateGlowInTheDark(in float minLight, in float maxLight, in float minEmissionMultiplier, in float maxEmissionMultiplier, in float enabled)
+ {
+ float glowInTheDarkMultiplier = 1;
+
+ if (enabled)
+ {
+ #ifdef POI_LIGHTING
+ float3 lightValue = float(0) ? poiLight.finalLighting.rgb: poiLight.directLighting.rgb;
+ float gitdeAlpha = (clamp(poiMax(lightValue), minLight, maxLight) - minLight) / (maxLight - minLight);
+ glowInTheDarkMultiplier = lerp(minEmissionMultiplier, maxEmissionMultiplier, gitdeAlpha);
+ #endif
+ }
+ return glowInTheDarkMultiplier;
+ }
+
+ float calculateScrollingEmission(in float3 direction, in float velocity, in float interval, in float scrollWidth, float offset, float3 position)
+ {
+ float phase = 0;
+ phase = dot(position, direction);
+ phase -= (_Time.y + offset) * velocity;
+ phase /= interval;
+ phase -= floor(phase);
+ phase = saturate(phase);
+ return(pow(phase, scrollWidth) + pow(1 - phase, scrollWidth * 4)) * 0.5;
+ }
+
+ float calculateBlinkingEmission(in float blinkMin, in float blinkMax, in float blinkVelocity, float offset)
+ {
+ float amplitude = (blinkMax - blinkMin) * 0.5f;
+ float base = blinkMin + amplitude;
+ return sin((_Time.y + offset) * blinkVelocity) * amplitude + base;
+ }
+
+ float3 calculateEmissionNew(in float4 baseColor, inout float4 finalColor)
+ {
+ // First Emission
+ float3 emission0 = 0;
+ float emissionStrength0 = float(0);
+ float3 emissionColor0 = 0;
+
+ float glowInTheDarkMultiplier0 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor0 = POI2D_SAMPLER_PAN(_EmissionMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+ else
+ {
+ emissionColor0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve) + (dot(pos, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength0 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos);
+ }
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor0 = hueShift(emissionColor0, float(0) * float(0));
+ float emissionMask0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask) + _Time.x * float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission != 4)
+ {
+ emissionMask0 *= blackLightMask[_BlackLightMaskEmission];
+ }
+ #endif
+
+ emissionStrength0 *= glowInTheDarkMultiplier0 * emissionMask0;
+ emission0 = emissionStrength0 * emissionColor0;
+
+ #ifdef POI_DISSOLVE
+
+ if(float(2) != 2)
+ {
+ emission0 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+
+ // Second Emission
+ float3 emission1 = 0;
+ float emissionStrength1 = 0;
+ float3 emissionColor1 = 0;
+
+ #ifdef EFFECT_HUE_VARIATION
+ emissionStrength1 = float(0);
+ float glowInTheDarkMultiplier1 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor1 = POI2D_SAMPLER_PAN(_EmissionMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ emissionColor1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap1, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)).rgb * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos1 = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos1 = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength1 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve1) + (dot(pos1, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength1 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos1);
+ }
+ }
+
+ if(float(0))
+ {
+ emissionStrength1 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor1 = hueShift(emissionColor1, float(0) * float(0));
+ float emissionMask1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask1) + _Time.x * float4(0,0,0,0));
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission2 != 4)
+ {
+ emissionMask1 *= blackLightMask[_BlackLightMaskEmission2];
+ }
+ #endif
+ emissionStrength1 *= glowInTheDarkMultiplier1 * emissionMask1;
+ emission1 = emissionStrength1 * emissionColor1;
+
+ #ifdef POI_DISSOLVE
+ if(float(2) != 2)
+ {
+ emission1 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+ #endif
+ finalColor.rgb = lerp(finalColor.rgb, saturate(emissionColor0 + emissionColor1), saturate(emissionStrength0 + emissionStrength1) * float(0) * poiMax(emission0 + emission1));
+
+ return emission0 + emission1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
new file mode 100644
index 00000000..60c06d05
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 168ecf6e9e683494ea4cdb55f7ca4e51
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
new file mode 100644
index 00000000..1e9188ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
@@ -0,0 +1,43 @@
+#ifndef POI_ENVIRONMENTAL_RIM
+ #define POI_ENVIRONMENTAL_RIM
+
+ //enviro rim
+ float _EnableEnvironmentalRim;
+ POI_TEXTURE_NOSAMPLER(_RimEnviroMask);
+ float _RimEnviroBlur;
+ float _RimEnviroMinBrightness;
+ float _RimEnviroWidth;
+ float _RimEnviroSharpness;
+ float _RimEnviroIntensity;
+
+ float3 calculateEnvironmentalRimLighting(in float4 albedo)
+ {
+ float enviroRimAlpha = saturate(1 - smoothstep(min(float(0), float(0.45)), float(0.45), poiCam.viewDotNormal));
+ float(0.7) *= 1.7 - 0.7 * float(0.7);
+
+ float3 enviroRimColor = 0;
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if (interpolator < 0.99999)
+ {
+ //Probe 1
+ float4 reflectionData0 = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor0 = DecodeHDR(reflectionData0, unity_SpecCube0_HDR);
+
+ //Probe 2
+ float4 reflectionData1 = UNITY_SAMPLE_TEXCUBE_SAMPLER_LOD(unity_SpecCube1, unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor1 = DecodeHDR(reflectionData1, unity_SpecCube1_HDR);
+
+ enviroRimColor = lerp(reflectionColor1, reflectionColor0, interpolator);
+ }
+ else
+ {
+ float4 reflectionData = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ enviroRimColor = DecodeHDR(reflectionData, unity_SpecCube0_HDR);
+ }
+
+ half enviroMask = poiMax(POI2D_SAMPLER_PAN(_RimEnviroMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb);
+ return lerp(0, max(0, (enviroRimColor - float(0)) * albedo.rgb), enviroRimAlpha).rgb * enviroMask * float(1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
new file mode 100644
index 00000000..fc3f81ee
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a3d4c5e89ecf91e4ea4d77496a31df01
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
new file mode 100644
index 00000000..0ed89b59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
@@ -0,0 +1,153 @@
+#ifndef POI_FLIPBOOK
+ #define POI_FLIPBOOK
+
+ UNITY_DECLARE_TEX2DARRAY(_FlipbookTexArray); float4 _FlipbookTexArray_ST;
+ float4 _FlipbookColor;
+ float _FlipbookFPS;
+ float _FlipbookTotalFrames;
+ float4 _FlipbookScaleOffset;
+ float _FlipbookTiled;
+ float _FlipbookCurrentFrame;
+ float _FlipbookEmissionStrength;
+ float _FlipbookRotation;
+ float _EnableFlipbook;
+ float _FlipbookTexArrayUV;
+ float _FlipbookAlphaControlsFinalAlpha;
+ float _FlipbookRotationSpeed;
+ float _FlipbookIntensityControlsAlpha;
+ float _FlipbookColorReplaces;
+ float2 _FlipbookTexArrayPan;
+
+ // blending
+ float _FlipbookReplace;
+ float _FlipbookMultiply;
+ float _FlipbookAdd;
+ POI_TEXTURE_NOSAMPLER(_FlipbookMask);
+
+ // anim
+ float _FlipbookMovementType;
+ float4 _FlipbookStartEndOffset;
+ float _FlipbookMovementSpeed;
+
+ // Global
+ float4 flipBookPixel;
+ float4 flipBookPixelMultiply;
+ float flipBookMask;
+
+ #ifndef POI_SHADOW
+
+ void applyFlipbook(inout float4 finalColor, inout float3 flipbookEmission)
+ {
+ flipBookMask = POI2D_SAMPLER_PAN(_FlipbookMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float2 uv = frac(poiMesh.uv[float(0)]);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ // 2d rotation
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ if (float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipBookPixel = 0;
+ return;
+ }
+ }
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ flipBookPixel = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipBookPixel.a = poiMax(flipBookPixel.rgb);
+ }
+
+ if(float(0))
+ {
+ flipBookPixel.rgb = float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ flipBookPixel.rgb *= float4(1,1,1,1).rgb;
+ }
+
+ #ifdef POI_BLACKLIGHT
+
+ if(_BlackLightMaskFlipbook != 4)
+ {
+ flipBookMask *= blackLightMask[_BlackLightMaskFlipbook];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * float(1) * flipBookMask);
+ finalColor.rgb = finalColor + flipBookPixel.rgb * float(0) * flipBookMask;
+ finalColor.rgb = finalColor * lerp(1, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * flipBookMask * float(0));
+
+
+ if(float(0))
+ {
+ finalColor.a = lerp(finalColor.a, flipBookPixel.a * float4(1,1,1,1).a, flipBookMask);
+ }
+ flipbookEmission = lerp(0, flipBookPixel.rgb * float(0), flipBookPixel.a * float4(1,1,1,1).a * flipBookMask);
+ }
+
+ #else
+
+ float applyFlipbookAlphaToShadow(float2 uv)
+ {
+
+ if(float(0))
+ {
+ float flipbookShadowAlpha = 0;
+
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float theta = radians(float(0));
+
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ half4 flipbookColor = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipbookColor.a = poiMax(flipbookColor.rgb);
+ }
+
+
+ if(float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipbookColor.a = 0;
+ }
+ }
+ return flipbookColor.a * float4(1,1,1,1).a;
+ }
+ return 1;
+ }
+
+ #endif
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
new file mode 100644
index 00000000..96c1cae8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 00afadcc06a4bba4e863c7a20de815d3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
new file mode 100644
index 00000000..aa950e7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
@@ -0,0 +1,376 @@
+#ifndef POIFRAG
+ #define POIFRAG
+
+ float _MainEmissionStrength;
+ float _IgnoreFog;
+ half _GIEmissionMultiplier;
+ float _IridescenceTime;
+ float _AlphaToMask;
+ float _ForceOpaque;
+ float _commentIfZero_EnableGrabpass;
+ float _AlphaPremultiply;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+ float _commentIfZero_LightingAdditiveEnable;
+
+ float4 frag(v2f i, uint facing: SV_IsFrontFace): SV_Target
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if !defined(POI_LIGHTING)
+ return 0;
+ #endif
+ #if defined(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A) && defined(DIRECTIONAL)
+ return 0;
+ #endif
+ #endif
+ #ifdef FORWARD_ADD_PASS
+
+ if (float(1) == 0)
+ {
+ return 0;
+ }
+ #endif
+ UNITY_SETUP_INSTANCE_ID(i);
+ // Color
+ float4 albedo = 1;
+ float4 finalColor = 1;
+
+ // Lighting
+ float bakedCubemap = 0; // Whether or not metallic should run before or after lighting multiplication
+ float3 finalSpecular0 = 0;
+ float3 finalSpecular1 = 0;
+ float3 finalSSS = 0;
+ fixed lightingAlpha = 1;
+ float3 finalEnvironmentalRim = 0;
+
+ // Emissions
+ float3 finalEmission = 0;
+ float3 finalLighting = 1;
+ float3 IridescenceEmission = 0;
+ float3 spawnInEmission = 0;
+ float3 voronoiEmission = 0;
+ float3 matcapEmission = 0;
+ float3 depthTouchEmission = 0;
+ float3 decalEmission = 0;
+ float3 glitterEmission = 0;
+ float3 panosphereEmission = 0;
+ float3 backFaceEmission = 0;
+ float3 dissolveEmission = 0;
+ float3 rimLightEmission = 0;
+ float3 flipbookEmission = 0;
+ float3 textOverlayEmission = 0;
+ float3 videoEmission = 0;
+ /**********************************************************************
+ Initialize the base data that's needed everywhere else in the shader
+ **********************************************************************/
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+
+ #ifdef POI_BLACKLIGHT
+ createBlackLightMask();
+
+ if (_BlackLightMaskDebug)
+ {
+ return float4(blackLightMask.rgb, 1);
+ }
+ #endif
+
+ // This has to happen in the initializbecause it alters UV data globally
+ #ifdef POI_PARALLAX
+ calculateandApplyParallax();
+ #endif
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+ calculateVertexLightingData(i);
+ /**********************************************************************
+ Calculate Light Maps
+ **********************************************************************/
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ /**********************************************************************
+ Calculate Color Data
+ **********************************************************************/
+
+ initTextureData(albedo, mainTexture, backFaceEmission, dissolveEmission, detailMask);
+
+ #ifdef POI_DECAL
+ applyDecal(albedo, decalEmission);
+ #endif
+
+
+ #ifdef POI_IRIDESCENCE
+
+ if (_IridescenceTime == 0)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VORONOI
+ applyVoronoi(albedo, voronoiEmission);
+ #endif
+
+ #ifdef POI_MSDF
+ ApplyTextOverlayColor(albedo, textOverlayEmission);
+ #endif
+
+ #ifdef POI_ENVIRONMENTAL_RIM
+ finalEnvironmentalRim = calculateEnvironmentalRimLighting(albedo);
+ #endif
+
+ #if defined(POI_METAL) || defined(POI_CLEARCOAT)
+ CalculateReflectionData();
+ #endif
+
+ #ifdef POI_DATA
+ distanceFade(albedo);
+ #endif
+
+ #ifdef POI_RANDOM
+ albedo.a *= i.angleAlpha;
+ #endif
+
+ #ifdef MATCAP
+ applyMatcap(albedo, matcapEmission);
+ #endif
+
+ #ifdef PANOSPHERE
+ applyPanosphereColor(albedo, panosphereEmission);
+ #endif
+
+ #ifdef POI_FLIPBOOK
+ applyFlipbook(albedo, flipbookEmission);
+ #endif
+
+ #ifdef POI_GLITTER
+ applyGlitter(albedo, glitterEmission);
+ #endif
+
+ #ifdef POI_RIM
+ applyRimLighting(albedo, rimLightEmission);
+ #endif
+
+ #ifdef POI_DEPTH_COLOR
+ applyDepthColor(albedo, depthTouchEmission, finalEmission, i.worldDirection);
+ #endif
+
+ #ifdef POI_IRIDESCENCE
+
+ if(_IridescenceTime == 1)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VIDEO
+ applyScreenEffect(albedo, videoEmission);
+ #endif
+
+ applySpawnIn(albedo, spawnInEmission, poiMesh.uv[0], poiMesh.localPos);
+
+ /**********************************************************************
+ Handle a few alpha options
+ **********************************************************************/
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 0)
+ {
+ applyDithering(albedo);
+ }
+ }
+
+ albedo.a = max(float(0), albedo.a);
+
+
+ if(float(0) >= 1)
+ {
+ clip(albedo.a - float(0.5));
+ }
+
+
+ if(float(0))
+ {
+ albedo.rgb *= saturate(albedo.a + 0.0000000001);
+ }
+
+ /**********************************************************************
+ Lighting Time :)
+ **********************************************************************/
+
+ #ifdef POI_LIGHTING
+ finalLighting = calculateFinalLighting(albedo.rgb, finalColor);
+
+ #ifdef SUBSURFACE
+ finalSSS = calculateSubsurfaceScattering();
+ #endif
+ #endif
+
+ float4 finalColorBeforeLighting = albedo;
+ finalColor = finalColorBeforeLighting;
+
+ #ifdef POI_SPECULAR
+ finalSpecular0 = calculateSpecular(finalColorBeforeLighting);
+ #endif
+ #ifdef POI_PARALLAX
+ calculateAndApplyInternalParallax(finalColor);
+ #endif
+
+ #ifdef POI_ALPHA_TO_COVERAGE
+ ApplyAlphaToCoverage(finalColor);
+ #endif
+
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 1)
+ {
+ applyDithering(finalColor);
+ }
+ }
+
+ #ifdef POI_METAL
+ calculateMetallicness();
+ bool probeExists = shouldMetalHappenBeforeLighting();
+
+ if(!probeExists)
+ {
+ ApplyMetallicsFake(finalColor, albedo);
+ }
+ #endif
+
+ #ifdef POI_LIGHTING
+ #if defined(FORWARD_ADD_PASS) && defined(POI_METAL)
+ finalLighting *= 1 - metalicMap;
+ #endif
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ finalColor.rgb *= finalLighting + poiLight.vFinalLighting;
+ #else
+ finalColor.rgb *= finalLighting;
+ #endif
+
+ #ifdef POI_METAL
+
+ if(probeExists)
+ {
+ ApplyMetallics(finalColor, albedo);
+ }
+ #endif
+
+ finalColor.rgb += finalSpecular0 + finalEnvironmentalRim + finalSSS;
+
+ #ifdef FORWARD_BASE_PASS
+ #ifdef POI_CLEARCOAT
+ calculateAndApplyClearCoat(finalColor);
+ #endif
+ #endif
+
+ finalColor.a = saturate(finalColor.a);
+
+ /**********************************************************************
+ Add Up all the emission values :D
+ **********************************************************************/
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ finalEmission += finalColorBeforeLighting.rgb * float(0) * albedo.a;
+ finalEmission += wireframeEmission;
+ finalEmission += IridescenceEmission;
+ finalEmission += spawnInEmission;
+ finalEmission += voronoiEmission;
+ finalEmission += matcapEmission;
+ finalEmission += depthTouchEmission;
+ finalEmission += decalEmission;
+ finalEmission += glitterEmission;
+ finalEmission += panosphereEmission;
+ finalEmission += backFaceEmission;
+ finalEmission += rimLightEmission;
+ finalEmission += flipbookEmission;
+ finalEmission += videoEmission;
+ finalEmission += textOverlayEmission;
+ finalEmission += dissolveEmission;
+ #ifdef POI_EMISSION
+ finalEmission += calculateEmissionNew(finalColorBeforeLighting, finalColor);
+ #endif
+ #endif
+
+ /**********************************************************************
+ Meta Pass Hype :D
+ **********************************************************************/
+ #ifdef POI_META_PASS
+ UnityMetaInput meta;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, meta);
+ meta.Emission = finalEmission * float(1);
+ meta.Albedo = saturate(finalColor.rgb);
+ #ifdef POI_SPECULAR
+ meta.SpecularColor = poiLight.color.rgb * float4(1,1,1,1).rgb * lerp(1, albedo.rgb, float(0)) * float4(1,1,1,1).a;
+ #else
+ meta.SpecularColor = poiLight.color.rgb * albedo.rgb;
+ #endif
+ return UnityMetaFragment(meta);
+ #endif
+
+ /**********************************************************************
+ Apply Emission to finalColor
+ **********************************************************************/
+ finalColor.rgb += finalEmission;
+
+ /**********************************************************************
+ Grabpass features
+ **********************************************************************/
+
+
+ if (_commentIfZero_EnableGrabpass)
+ {
+ applyGrabEffects(finalColor);
+ }
+
+ /**********************************************************************
+ Unity Fog
+ **********************************************************************/
+ #ifdef FORWARD_BASE_PASS
+
+ if (float(0) == 0)
+ {
+ UNITY_APPLY_FOG(i.fogCoord, finalColor);
+ }
+ #endif
+
+ #ifdef FORWARD_ADD_PASS
+ if(float(0) > 0)
+ {
+ finalColor.rgb *= finalColor.a;
+ }
+ #endif
+
+
+ if(float(0) == 0)
+ {
+ finalColor.a = 1;
+ }
+
+ #ifdef FORWARD_ADD_PASS
+ //finalColor.rgb = smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5));
+ #endif
+
+ #ifdef POI_DEBUG
+ displayDebugInfo(finalColor);
+ #endif
+
+ //finalColor.rgb = frac(finalColor.rgb);
+ return finalColor;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
new file mode 100644
index 00000000..c2b18624
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 85423e80943dea945988455e54e2f275
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
new file mode 100644
index 00000000..8d260cdf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_FUR
+ #define POI_FUR
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurTexture); float4 _FurTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurHeightMap); float4 _FurHeightMap_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurMask); float4 _FurMask_ST;
+ float _FurAO;
+ float4 _FurColor;
+ float _FurLayers;
+ float _FurMinDistance;
+ float _FurMaxDistance;
+ float _FurHeightMapMin;
+ float _FurHeightMapMax;
+ float _FurDebug;
+ float _AoRampMin;
+ float _AoRampMax;
+ float _FurTipAlpha;
+ float _FurFadeStart;
+
+ //globals
+ half furHeightMap;
+ half furMask;
+
+ void calculateFur()
+ {
+
+ furHeightMap = UNITY_SAMPLE_TEX2D_SAMPLER(_FurHeightMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurHeightMap)).x;
+ furHeightMap = remap(furHeightMap, 0, _FurHeightMapMax, _FurHeightMapMin, 1);
+ furMask = poiMax(UNITY_SAMPLE_TEX2D_SAMPLER(_FurMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurMask)).xyz);
+ half3 furTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_FurTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurTexture));
+ clip(furHeightMap - poiMesh.furAlpha);
+ clip(furMask - poiMesh.furAlpha);
+
+ albedo.rgb = lerp(mainTexture.rgb, furTexture.rgb * _FurColor.rgb, ceil(poiMesh.furAlpha));
+ float aoRampMax = _AoRampMax - (1 - furMask);
+ albedo.rgb *= lerp(1, smoothstep(_AoRampMin, aoRampMax, furHeightMap), _FurAO);
+
+ albedo.a *= smoothstep(1.01, _FurTipAlpha, remapClamped(poiMesh.furAlpha, _FurFadeStart, 1, 0, 1)) + float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
new file mode 100644
index 00000000..42601440
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c0510cdbfc5b2a143ae4a435fa550bb5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
new file mode 100644
index 00000000..032f3b08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
@@ -0,0 +1,37 @@
+float _FurLength;
+float _FurGravityStrength;
+
+[instance(4)]
+[maxvertexcount(20)]
+void geomFur(triangle v2f IN[3], inout TriangleStream < v2f > tristream, uint InstanceID : SV_GSInstanceID)
+{
+ float4 fur_worldPos[3];
+ v2f o_fur[3];
+ float3 offset = (float3(0, -1, 0) * (_FurLength*.9) *_FurGravityStrength);
+
+ for (int i = 0; i < 3; i++)
+ {
+ if (InstanceID == 0) {
+ IN[i].furAlpha = 0;
+ tristream.Append(IN[i]);
+ }
+ o_fur[i] = IN[i];
+ fur_worldPos[i] = float4(IN[i].worldPos + IN[i].normal * _FurLength, 1);
+ }
+ if (InstanceID == 0) {
+ tristream.RestartStrip();
+ }
+ int Total_FurLayers = clamp(floor(_FurLayers * (1 - smoothstep(_FurMinDistance, _FurMaxDistance, distance(IN[0].worldPos, getCameraPosition())))), min(1, _FurLayers), _FurLayers);
+
+ int startLayer = max(int(InstanceID) * 6 - 1, 0);
+ for (int layer = startLayer; layer < Total_FurLayers; layer++) {
+ for (int i = 0; i < 3; i++) {
+ o_fur[i].furAlpha = float(layer) / Total_FurLayers;
+ o_fur[i].worldPos = float4(lerp(IN[i].worldPos, fur_worldPos[i] + offset * o_fur[i].furAlpha, o_fur[i].furAlpha),1);
+ o_fur[i].pos = UnityWorldToClipPos(o_fur[i].worldPos);
+ o_fur[i].furAlpha += .01;
+ tristream.Append(o_fur[i]);
+ }
+ tristream.RestartStrip();
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
new file mode 100644
index 00000000..e23e1de6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 07d461267c669e14e89cfcdf7bfccc3b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
new file mode 100644
index 00000000..e31b6498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
@@ -0,0 +1,232 @@
+#ifndef POI_GLITTER
+ #define POI_GLITTER
+
+ half3 _GlitterColor;
+ POI_TEXTURE_NOSAMPLER(_GlitterMask);
+ float2 _GlitterPan;
+ POI_TEXTURE_NOSAMPLER(_GlitterColorMap);
+ POI_TEXTURE_NOSAMPLER(_GlitterTexture);
+ half _GlitterSpeed;
+ half _GlitterBrightness;
+ float _GlitterFrequency;
+ float _GlitterJitter;
+ half _GlitterSize;
+ half _GlitterContrast;
+ half _GlitterAngleRange;
+ half _GlitterMinBrightness;
+ half _GlitterBias;
+ float _GlitterRandomColors;
+ float2 _GlitterMinMaxSaturation;
+ float2 _GlitterMinMaxBrightness;
+ fixed _GlitterUseSurfaceColor;
+ float _GlitterBlendType;
+ float _GlitterMode;
+ float _GlitterShape;
+ float _GlitterCenterSize;
+ float _glitterFrequencyLinearEmissive;
+ float _GlitterJaggyFix;
+ float _GlitterRandomRotation;
+ float _GlitterTextureRotation;
+ float4 _GlitterMinMaxSize;
+ float _GlitterRandomSize;
+
+
+ float3 randomFloat3(float2 Seed, float maximum)
+ {
+ return(.5 + float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed), float2(12.9898, 78.233))) * 43758.5453)
+ ) * .5) * (maximum);
+ }
+
+ float3 randomFloat3Range(float2 Seed, float Range)
+ {
+ return(float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1) * Range;
+ }
+
+ float3 randomFloat3WiggleRange(float2 Seed, float Range)
+ {
+ float3 rando = (float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1);
+ float speed = 1 + float(10);
+ return float3(sin((_Time.x + rando.x * pi) * speed), sin((_Time.x + rando.y * pi) * speed), sin((_Time.x + rando.z * pi) * speed)) * Range;
+ }
+
+ void Unity_RandomRange_float(float2 Seed, float Min, float Max, out float Out)
+ {
+ float randomno = frac(sin(dot(Seed, float2(12.9898, 78.233))) * 43758.5453);
+ Out = lerp(Min, Max, randomno);
+ }
+
+ float3 RandomColorFromPoint(float2 rando)
+ {
+ fixed hue = random2(rando.x + rando.y).x;
+ fixed saturation = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.x);
+ fixed value = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.y);
+ float3 hsv = float3(hue, saturation, value);
+ return HSVtoRGB(hsv);
+ }
+
+ void applyGlitter(inout float4 albedo, inout float3 glitterEmission)
+ {
+
+
+ // Scale
+ float2 st = poiMesh.uv[0] * float(300);
+
+ // Tile the space
+ float2 i_st = floor(st);
+ float2 f_st = frac(st);
+
+ float m_dist = 10.; // minimun distance
+ float2 m_point = 0; // minimum point
+ float2 randoPoint = 0;
+ float2 dank;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 neighbor = float2(i, j);
+ float2 pos = random2(i_st + neighbor);
+ float2 rando = pos;
+ pos = 0.5 + 0.5 * sin(float(1) * 6.2831 * pos);
+ float2 diff = neighbor + pos - f_st;
+ float dist = length(diff);
+
+ if (dist < m_dist)
+ {
+ dank = diff;
+ m_dist = dist;
+ m_point = pos;
+ randoPoint = rando;
+ }
+ }
+ }
+
+ float randomFromPoint = random(randoPoint);
+
+ float size = float(0.3);
+
+ if(float(0))
+ {
+ size = remapClamped(randomFromPoint, 0, 1, float4(0.1,0.5,0,1).x, float4(0.1,0.5,0,1).y);
+ }
+
+
+ // Assign a color using the closest point position
+ //color += dot(m_point, float2(.3, .6));
+
+ // Add distance field to closest point center
+ // color.g = m_dist;
+
+ // Show isolines
+ //color -= abs(sin(40.0 * m_dist)) * 0.07;
+
+ // Draw cell center
+ half glitterAlpha = 1;
+ switch(float(0))
+ {
+ case 0: //circle
+ glitterAlpha = (1. - step(size, m_dist));
+ break;
+ case 1: //sqaure
+ float jaggyFix = pow(poiCam.distanceToVert, 2) * float(0);
+
+
+ if (float(0))
+ {
+ float2 center = float2(0, 0);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ dank = float2((dank.x - center.x) * cs - (dank.y - center.y) * sn + center.x, (dank.x - center.x) * sn + (dank.y - center.y) * cs + center.y);
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ else
+ {
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ break;
+ }
+
+ float3 finalGlitter = 0;
+
+ switch(float(0))
+ {
+ case 0:
+ float3 randomRotation = 0;
+
+ if(float(10) > 0)
+ {
+ randomRotation = randomFloat3WiggleRange(randoPoint, float(90));
+ }
+ else
+ {
+ randomRotation = randomFloat3Range(randoPoint, float(90));
+ }
+ float3 norm = poiMesh.normals[0];
+
+ float3 glitterReflectionDirection = normalize(mul(poiRotationMatrixFromAngles(randomRotation), norm));
+ finalGlitter = lerp(0, float(0) * glitterAlpha, glitterAlpha) + max(pow(saturate(dot(lerp(glitterReflectionDirection, poiCam.viewDir, float(0.8)), poiCam.viewDir)), float(300)), 0);
+ finalGlitter *= glitterAlpha;
+ break;
+ case 1:
+ float offset = random(randoPoint);
+ float brightness = sin((_Time.x + offset) * float(10)) * float(20) - (float(20) - 1);
+ finalGlitter = max(float(0) * glitterAlpha, brightness * glitterAlpha * smoothstep(0, 1, 1 - m_dist * float(0.08) * 10));
+ break;
+ }
+
+
+ half3 glitterColor = float4(1,1,1,1);
+ glitterColor *= lerp(1, albedo, float(0));
+ glitterColor *= POI2D_SAMPLER_PAN(_GlitterColorMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+
+ float2 uv = remapClamped(dank, -size, size, 0, 1);
+
+ if(float(0) && !float(0))
+ {
+ float2 fakeUVCenter = float2(.5, .5);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - fakeUVCenter.x) * cs - (uv.y - fakeUVCenter.y) * sn + fakeUVCenter.x, (uv.x - fakeUVCenter.x) * sn + (uv.y - fakeUVCenter.y) * cs + fakeUVCenter.y);
+ }
+ float4 glitterTexture = POI2D_SAMPLER_PAN(_GlitterTexture, _MainTex, uv, float4(0,0,0,0));
+ //float4 glitterTexture = _GlitterTexture.SampleGrad(sampler_MainTex, frac(uv), ddx(uv), ddy(uv));
+ glitterColor *= glitterTexture.rgb;
+ float glitterMask = POI2D_SAMPLER_PAN(_GlitterMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskGlitter != 4)
+ {
+ glitterMask *= blackLightMask[_BlackLightMaskGlitter];
+ }
+ #endif
+
+ if(float(0))
+ {
+ glitterColor *= RandomColorFromPoint(random2(randoPoint.x + randoPoint.y));
+ }
+
+
+ if(float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, finalGlitter * glitterColor * float(3), finalGlitter * glitterTexture.a * glitterMask);
+ glitterEmission = finalGlitter * glitterColor * max(0, (float(3) - 1) * glitterTexture.a) * glitterMask;
+ }
+ else
+ {
+ glitterEmission = finalGlitter * glitterColor * float(3) * glitterTexture.a * glitterMask;
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
new file mode 100644
index 00000000..d2fbb5f1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e4df7f6494a24b94780222b4e45cfca2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
new file mode 100644
index 00000000..060cb720
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
@@ -0,0 +1,127 @@
+#ifndef POI_GRAB
+ #define POI_GRAB
+
+ float _RefractionIndex;
+ float _RefractionOpacity;
+ float _RefractionChromaticAberattion;
+ float _RefractionEnabled;
+ float _GrabSrcBlend;
+ float _GrabDstBlend;
+ float _GrabPassUseAlpha;
+ float _GrabPassBlendFactor;
+ float _GrabBlurDistance;
+ float _GrabBlurQuality;
+ float _GrabBlurDirections;
+ POI_TEXTURE_NOSAMPLER(_GrabPassBlendMap);
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RefractionOpacityMask); float4 _RefractionOpacityMask_ST;
+
+ float4 blur(float2 uv)
+ {
+ float two_pi = 6.28318530718;
+
+ float2 radius = _GrabBlurDistance / _ScreenParams.xy * 100; // Arbitrary constant to match old blur
+ float quality = floor(_GrabBlurQuality);
+ float directions = floor(_GrabBlurDirections);
+
+ // Pixel colour
+ float4 color = tex2D(_PoiGrab, uv);
+
+ float deltaAngle = two_pi / directions;
+ float deltaQuality = 1.0 / quality;
+ for (int i = 0; i < directions; i ++)
+ {
+ for (int j = 0; j < quality; j ++)
+ {
+ float angle = deltaAngle * i + j;
+ float offset = deltaQuality * (j + 1);
+ color += tex2D(_PoiGrab, uv + float2(cos(angle), sin(angle)) * radius * offset);
+ }
+ }
+
+ // Output to screen
+ color /= quality * directions + 1;
+ return color;
+ }
+
+ inline float4 Refraction(float indexOfRefraction, float chromaticAberration, float2 projectedGrabPos)
+ {
+ float4 refractionColor;
+ float3 worldViewDir = normalize(UnityWorldSpaceViewDir(poiMesh.worldPos));
+ float3 refractionOffset = ((((indexOfRefraction - 1.0) * mul(UNITY_MATRIX_V, float4(poiMesh.normals[1], 0.0))) * (1.0 / (poiCam.grabPos.z + 1.0))) * (1.0 - dot(poiMesh.normals[1], worldViewDir)));
+ float2 cameraRefraction = float2(refractionOffset.x, - (refractionOffset.y * _ProjectionParams.x));
+
+
+ if (_RefractionChromaticAberattion > 0)
+ {
+ float4 redAlpha = tex2D(_PoiGrab, (projectedGrabPos + cameraRefraction));
+ float green = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 - chromaticAberration)))).g;
+ float blue = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 + chromaticAberration)))).b;
+ refractionColor = float4(redAlpha.r, green, blue, redAlpha.a);
+ }
+ else
+ {
+ float2 refractedGrab = projectedGrabPos + cameraRefraction;
+
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refractionColor = blur(refractedGrab);
+ #else
+ refractionColor = tex2D(_PoiGrab, (refractedGrab));
+ #endif
+ }
+ return refractionColor;
+ }
+
+ void calculateRefraction(float2 projectedGrabPos, inout float4 finalColor)
+ {
+ float3 refraction = 1;
+
+ if(_RefractionEnabled == 1)
+ {
+ refraction = Refraction(_RefractionIndex, _RefractionChromaticAberattion, projectedGrabPos).rgb;
+ }
+ else
+ {
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refraction = blur(projectedGrabPos);
+ #else
+ refraction = tex2Dproj(_PoiGrab, poiCam.grabPos);
+ #endif
+ }
+
+ float blendFactor = _GrabPassBlendFactor * POI2D_SAMPLER_PAN(_GrabPassBlendMap, _MainTex, poiMesh.uv[_GrabPassBlendMapUV], _GrabPassBlendMapPan).r;
+
+ if(_GrabPassUseAlpha)
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor * (1 - finalColor.a));
+ finalColor.a = 1;
+ }
+ else
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor);
+ }
+ }
+
+ float2 calculateGrabPosition()
+ {
+ float4 grabPos = poiCam.grabPos;
+ #if UNITY_UV_STARTS_AT_TOP
+ float scale = -1.0;
+ #else
+ float scale = 1.0;
+ #endif
+ float halfPosW = grabPos.w * 0.5;
+ grabPos.y = (grabPos.y - halfPosW) * _ProjectionParams.x * scale + halfPosW;
+ #if SHADER_API_D3D9 || SHADER_API_D3D11
+ grabPos.w += 0.00000000001;
+ #endif
+ return(grabPos / grabPos.w).xy;
+ }
+
+ void applyGrabEffects(inout float4 finalColor)
+ {
+ float2 projectedGrabPos = calculateGrabPosition();
+ calculateRefraction(projectedGrabPos, finalColor);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
new file mode 100644
index 00000000..b6aa4410
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9075a19383835d14787d0f3a8e736123
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
new file mode 100644
index 00000000..9ae9e754
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
@@ -0,0 +1,338 @@
+#ifndef POI_HELPER
+ #define POI_HELPER
+
+ #include "CGI_PoiColors.cginc"
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float linearSin(float x)
+ {
+ return pow(min(cos(pi * x / 2.0), 1.0 - abs(x)), 1.0);
+ }
+
+ float random(float2 p)
+ {
+ return frac(sin(dot(p, float2(12.9898, 78.2383))) * 43758.5453123);
+ }
+
+ float2 random2(float2 p)
+ {
+ return frac(sin(float2(dot(p, float2(127.1, 311.7)), dot(p, float2(269.5, 183.3)))) * 43758.5453);
+ }
+
+ float3 random3(float3 p)
+ {
+ return frac(sin(float3(dot(p, float3(127.1, 311.7, 248.6)), dot(p, float3(269.5, 183.3, 423.3)), dot(p, float3(248.3, 315.9, 184.2)))) * 43758.5453);
+ }
+
+ float3 mod(float3 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+ float2 mod(float2 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+
+ //1/7
+ #define K 0.142857142857
+ //3/7
+ #define Ko 0.428571428571
+
+ // Permutation polynomial: (34x^2 + x) mod 289
+ float3 Permutation(float3 x)
+ {
+ return mod((34.0 * x + 1.0) * x, 289.0);
+ }
+
+ bool IsInMirror()
+ {
+ return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f;
+ }
+
+ float3 BoxProjection(float3 direction, float3 position, float4 cubemapPosition, float3 boxMin, float3 boxMax)
+ {
+ #if UNITY_SPECCUBE_BOX_PROJECTION
+
+ if (cubemapPosition.w > 0)
+ {
+ float3 factors = ((direction > 0 ? boxMax: boxMin) - position) / direction;
+ float scalar = min(min(factors.x, factors.y), factors.z);
+ direction = direction * scalar + (position - cubemapPosition);
+ }
+ #endif
+ return direction;
+ }
+
+ // Camera
+ float3 getCameraPosition()
+ {
+ #ifdef USING_STEREO_MATRICES
+ return lerp(unity_StereoWorldSpaceCameraPos[0], unity_StereoWorldSpaceCameraPos[1], 0.5);
+ #endif
+ return _WorldSpaceCameraPos;
+ }
+
+ float3 getCameraForward()
+ {
+ #if UNITY_SINGLE_PASS_STEREO
+ float3 p1 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 0, 1));
+ #else
+ float3 p1 = mul(unity_CameraToWorld, float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_CameraToWorld, float4(0, 0, 0, 1));
+ #endif
+ return normalize(p2 - p1);
+ }
+
+ float3 grayscale_vector_node()
+ {
+ return float3(0, 0.3823529, 0.01845836);
+ }
+
+ float3 grayscale_for_light()
+ {
+ return float3(0.298912, 0.586611, 0.114478);
+ }
+
+ //Math Operators
+
+ float remap(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float2 remap(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float3 remap(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float4 remap(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float remapClamped(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float2 remapClamped(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float3 remapClamped(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float4 remapClamped(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float poiMax(float2 i)
+ {
+ return max(i.x, i.y);
+ }
+
+ float poiMax(float3 i)
+ {
+ return max(max(i.x, i.y), i.z);
+ }
+
+ float poiMax(float4 i)
+ {
+ return max(max(max(i.x, i.y), i.z), i.w);
+ }
+
+ float4x4 poiAngleAxisRotationMatrix(float angle, float3 axis)
+ {
+ axis = normalize(axis);
+ float s = sin(angle);
+ float c = cos(angle);
+ float oc = 1.0 - c;
+
+ return float4x4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
+ oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
+ oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
+ 0.0, 0.0, 0.0, 1.0);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float x, float y, float z)
+ {
+ float angleX = radians(x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float3 angles)
+ {
+ float angleX = radians(angles.x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(angles.y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(angles.z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+#endif
+
+half2 calcScreenUVs(half4 grabPos)
+{
+ half2 uv = grabPos / (grabPos.w + 0.0000000001);
+ #if UNITY_SINGLE_PASS_STEREO
+ uv.xy *= half2(_ScreenParams.x * 2, _ScreenParams.y);
+ #else
+ uv.xy *= _ScreenParams.xy;
+ #endif
+
+ return uv;
+}
+
+float inverseLerp(float A, float B, float T)
+{
+ return(T - A) / (B - A);
+}
+
+float inverseLerp2(float2 a, float2 b, float2 value)
+{
+ float2 AB = b - a;
+ float2 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp3(float3 a, float3 b, float3 value)
+{
+ float3 AB = b - a;
+ float3 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp4(float4 a, float4 b, float4 value)
+{
+ float4 AB = b - a;
+ float4 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+// Dithering
+inline half Dither8x8Bayer(int x, int y)
+{
+ const half dither[ 64 ] = {
+ 1, 49, 13, 61, 4, 52, 16, 64,
+ 33, 17, 45, 29, 36, 20, 48, 32,
+ 9, 57, 5, 53, 12, 60, 8, 56,
+ 41, 25, 37, 21, 44, 28, 40, 24,
+ 3, 51, 15, 63, 2, 50, 14, 62,
+ 35, 19, 47, 31, 34, 18, 46, 30,
+ 11, 59, 7, 55, 10, 58, 6, 54,
+ 43, 27, 39, 23, 42, 26, 38, 22
+ };
+ int r = y * 8 + x;
+ return dither[r] / 64;
+}
+
+// UV Manipulation
+float2 TransformUV(half2 offset, half rotation, half2 scale, float2 uv)
+{
+ float theta = radians(rotation);
+ scale = 1 - scale;
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 centerPoint = offset + .5;
+ uv = float2((uv.x - centerPoint.x) * cs - (uv.y - centerPoint.y) * sn + centerPoint.x, (uv.x - centerPoint.x) * sn + (uv.y - centerPoint.y) * cs + centerPoint.y);
+
+ return remap(uv, float2(0, 0) + offset + (scale * .5), float2(1, 1) + offset - (scale * .5), float2(0, 0), float2(1, 1));
+}
+
+bool isVR()
+{
+ // USING_STEREO_MATRICES
+ #if UNITY_SINGLE_PASS_STEREO
+ return true;
+ #else
+ return false;
+ #endif
+}
+
+bool isVRHandCamera()
+{
+ return !isVR() && abs(UNITY_MATRIX_V[0].y) > 0.0000005;
+}
+
+bool isDesktop()
+{
+ return !isVRHandCamera();
+}
+
+bool isVRHandCameraPreview()
+{
+ return isVRHandCamera() && _ScreenParams.y == 720;
+}
+
+bool isVRHandCameraPicture()
+{
+ return isVRHandCamera() && _ScreenParams.y == 1080;
+}
+
+bool isPanorama()
+{
+ // Crude method
+ // FOV=90=camproj=[1][1]
+ return unity_CameraProjection[1][1] == 1 && _ScreenParams.x == 1075 && _ScreenParams.y == 1025;
+}
+
+float3 calculateluminance(float3 color)
+{
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
new file mode 100644
index 00000000..73147279
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ef0d67a60de96fe4d8213c5c2b5b99e8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
new file mode 100644
index 00000000..6ee66d3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
@@ -0,0 +1,36 @@
+#ifndef POI_HOLOGRAM
+ #define POI_HOLOGRAM
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_HoloAlphaMap); float4 _HoloAlphaMap_ST;
+ float _HoloCoordinateSpace; // 0 World, 1 Local, 2 UV
+ float3 _HoloDirection;
+ float _HoloScrollSpeed;
+ float _HoloLineDensity;
+
+ fixed _HoloFresnelAlpha;
+ fixed _HoloRimSharpness;
+ fixed _HoloRimWidth;
+ void ApplyHoloAlpha(inout float4 color)
+ {
+ float uv = 0;
+
+ if (_HoloCoordinateSpace == 0)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.worldPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 1)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.localPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 2)
+ {
+ uv = dot(_HoloDirection, poiMesh.uv[0] * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+ float holoRim = saturate(1 - smoothstep(min(_HoloRimSharpness, _HoloRimWidth), _HoloRimWidth, poiCam.viewDotNormal));
+ holoRim = abs(lerp(1, holoRim, _HoloFresnelAlpha));
+ color.a *= UNITY_SAMPLE_TEX2D_SAMPLER(_HoloAlphaMap, _MainTex, uv).r * holoRim;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
new file mode 100644
index 00000000..1afde0f6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: dca25dfb1bb583b44bca02c2af085347
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
new file mode 100644
index 00000000..bcea8ccc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
@@ -0,0 +1,61 @@
+#ifndef POI_IRIDESCENCE
+ #define POI_IRIDESCENCE
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceRamp); float4 _IridescenceRamp_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceMask); float4 _IridescenceMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceNormalMap); float4 _IridescenceNormalMap_ST;
+ float _IridescenceNormalUV;
+ float _IridescenceMaskUV;
+ float _IridescenceNormalSelection;
+ float _IridescenceNormalIntensity;
+ float _IridescenceNormalToggle;
+ float _IridescenceIntensity;
+ fixed _IridescenceAddBlend;
+ fixed _IridescenceReplaceBlend;
+ fixed _IridescenceMultiplyBlend;
+ float _IridescenceEmissionStrength;
+
+ //global
+
+ float3 calculateNormal(float3 baseNormal)
+ {
+ float3 normal = UnpackScaleNormal(UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceNormalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceNormalUV], _IridescenceNormalMap)), _IridescenceNormalIntensity);
+ return normalize(
+ normal.x * poiMesh.tangent +
+ normal.y * poiMesh.binormal +
+ normal.z * baseNormal
+ );
+ }
+
+ void applyIridescence(inout float4 albedo, inout float3 IridescenceEmission)
+ {
+ float3 normal = poiMesh.normals[_IridescenceNormalSelection];
+
+ // Use custom normal map
+
+ if (_IridescenceNormalToggle)
+ {
+ normal = calculateNormal(normal);
+ }
+
+ float ndotv = dot(normal, poiCam.viewDir);
+
+ float4 iridescenceColor = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceRamp, _MainTex, 1 - abs(ndotv));
+ float4 iridescenceMask = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceMaskUV], _IridescenceMask));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskIridescence != 4)
+ {
+ iridescenceMask *= blackLightMask[_BlackLightMaskIridescence];
+ }
+ #endif
+
+
+ albedo.rgb = lerp(albedo.rgb, saturate(iridescenceColor.rgb * _IridescenceIntensity), iridescenceColor.a * _IridescenceReplaceBlend * iridescenceMask);
+ albedo.rgb += saturate(iridescenceColor.rgb * _IridescenceIntensity * iridescenceColor.a * _IridescenceAddBlend * iridescenceMask);
+ albedo.rgb *= saturate(lerp(1, iridescenceColor.rgb * _IridescenceIntensity, iridescenceColor.a * _IridescenceMultiplyBlend * iridescenceMask));
+
+ IridescenceEmission = saturate(iridescenceColor.rgb * _IridescenceIntensity) * iridescenceColor.a * iridescenceMask * _IridescenceEmissionStrength;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
new file mode 100644
index 00000000..120562f7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7158e470d7f0fcb4e9f4d55378160eb9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
new file mode 100644
index 00000000..8f35cb62
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
@@ -0,0 +1,668 @@
+
+#ifndef POI_LIGHTING
+ #define POI_LIGHTING
+
+ float _LightingShadingEnabled;
+ float _LightingRampType;
+ float _LightingIgnoreAmbientColor;
+ float _UseShadowTexture;
+ float _LightingEnableAO;
+ float _LightingDetailShadowsEnabled;
+
+ float _LightingOnlyUnityShadows;
+ float _LightingMode;
+ float _ForceLightDirection;
+ float _ShadowStrength;
+ float _OutlineShadowStrength;
+ float _ShadowOffset;
+ float3 _LightDirection;
+ float _ForceShadowStrength;
+ float _CastedShadowSmoothing;
+ float _AttenuationMultiplier;
+ float _EnableLighting;
+ float _LightingControlledUseLightColor;
+ fixed _LightingStandardSmoothness;
+ fixed _LightingStandardControlsToon;
+ fixed _LightingMinLightBrightness;
+ float _LightingUseShadowRamp;
+ float _LightingMinShadowBrightnessRatio;
+ UNITY_DECLARE_TEX2D(_ToonRamp);
+ fixed _LightingMonochromatic;
+
+ fixed _LightingGradientStart;
+ fixed _LightingGradientEnd;
+ float3 _LightingShadowColor;
+ POI_TEXTURE_NOSAMPLER(_LightingShadowTexture);
+ float _AOStrength;
+ fixed _LightingDetailStrength;
+ fixed _LightingAdditiveDetailStrength;
+ fixed _LightingNoIndirectMultiplier;
+ fixed _LightingNoIndirectThreshold;
+ float _LightingUncapped;
+
+ float _LightingDirectColorMode;
+ float _LightingIndirectColorMode;
+ float _LightingAdditiveType;
+ fixed _LightingAdditiveGradientStart;
+ fixed _LightingAdditiveGradientEnd;
+ fixed _LightingAdditivePassthrough;
+ float _LightingDirectAdjustment;
+ float _LightingIndirect;
+ // HSL JUNK
+ float _LightingEnableHSL;
+ float _LightingShadowHue;
+ float _LightingShadowSaturation;
+ float _LightingShadowLightness;
+ float _LightingHSLIntensity;
+ /*
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ToonRamp3);
+ half _LightingShadowStrength3;
+ half _ShadowOffset3;
+ */
+
+ half4 shadowStrength;
+
+ POI_TEXTURE_NOSAMPLER(_LightingDetailShadows);
+ POI_TEXTURE_NOSAMPLER(_LightingAOTex);
+ POI_TEXTURE_NOSAMPLER(_LightingShadowMask);
+
+ /*
+ * MIT License
+ *
+ * Copyright (c) 2018 s-ilent
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+ /*
+ * Silent's code starts here
+ */
+
+ float shEvaluateDiffuseL1Geomerics_local(float L0, float3 L1, float3 n)
+ {
+ // average energy
+ float R0 = max(0, L0);
+
+ // avg direction of incoming light
+ float3 R1 = 0.5f * L1;
+
+ // directional brightness
+ float lenR1 = length(R1);
+
+ // linear angle between normal and direction 0-1
+ //float q = 0.5f * (1.0f + dot(R1 / lenR1, n));
+ //float q = dot(R1 / lenR1, n) * 0.5 + 0.5;
+ float q = dot(normalize(R1), n) * 0.5 + 0.5;
+ q = saturate(q); // Thanks to ScruffyRuffles for the bug identity.
+
+ // power for q
+ // lerps from 1 (linear) to 3 (cubic) based on directionality
+ float p = 1.0f + 2.0f * lenR1 / R0;
+
+ // dynamic range constant
+ // should vary between 4 (highly directional) and 0 (ambient)
+ float a = (1.0f - lenR1 / R0) / (1.0f + lenR1 / R0);
+
+ return R0 * (a + (1.0f - a) * (p + 1.0f) * pow(q, p));
+ }
+
+ half3 BetterSH9(half4 normal)
+ {
+ float3 indirect;
+ float3 L0 = float3(unity_SHAr.w, unity_SHAg.w, unity_SHAb.w) + float3(unity_SHBr.z, unity_SHBg.z, unity_SHBb.z) / 3.0;
+ indirect.r = shEvaluateDiffuseL1Geomerics_local(L0.r, unity_SHAr.xyz, normal);
+ indirect.g = shEvaluateDiffuseL1Geomerics_local(L0.g, unity_SHAg.xyz, normal);
+ indirect.b = shEvaluateDiffuseL1Geomerics_local(L0.b, unity_SHAb.xyz, normal);
+ indirect = max(0, indirect);
+ indirect += SHEvalLinearL2(normal);
+ return indirect;
+ }
+
+ float3 BetterSH9(float3 normal)
+ {
+ return BetterSH9(float4(normal, 1));
+ }
+
+ /*
+ * Standard stuff starts here
+ */
+ UnityLight CreateLight(float3 normal, fixed detailShadowMap)
+ {
+ UnityLight light;
+ light.dir = poiLight.direction;
+ light.color = saturate(_LightColor0.rgb * lerp(1, poiLight.attenuation, float(0)) * detailShadowMap);
+ light.ndotl = DotClamped(normal, poiLight.direction);
+ return light;
+ }
+
+ float FadeShadows(float attenuation)
+ {
+ #if HANDLE_SHADOWS_BLENDING_IN_GI || ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ // UNITY_LIGHT_ATTENUATION doesn't fade shadows for us.
+
+ #if ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ attenuation = lerp(1, poiLight.attenuation, float(0));
+ #endif
+
+ float viewZ = dot(_WorldSpaceCameraPos - poiMesh.worldPos, UNITY_MATRIX_V[2].xyz);
+ float shadowFadeDistance = UnityComputeShadowFadeDistance(poiMesh.worldPos, viewZ);
+ float shadowFade = UnityComputeShadowFade(shadowFadeDistance);
+ float bakedAttenuation = UnitySampleBakedOcclusion(poiMesh.lightmapUV.xy, poiMesh.worldPos);
+ attenuation = UnityMixRealtimeAndBakedShadows(
+ attenuation, bakedAttenuation, shadowFade
+ );
+ #endif
+
+ return attenuation;
+ }
+
+ void ApplySubtractiveLighting(inout UnityIndirect indirectLight)
+ {
+ #if SUBTRACTIVE_LIGHTING
+ poiLight.attenuation = FadeShadows(lerp(1, poiLight.attenuation, float(0)));
+
+ float ndotl = saturate(dot(i.normal, _WorldSpaceLightPos0.xyz));
+ float3 shadowedLightEstimate = ndotl * (1 - poiLight.attenuation) * _LightColor0.rgb;
+ float3 subtractedLight = indirectLight.diffuse - shadowedLightEstimate;
+ subtractedLight = max(subtractedLight, unity_ShadowColor.rgb);
+ subtractedLight = lerp(subtractedLight, indirectLight.diffuse, _LightShadowData.x);
+ indirectLight.diffuse = min(subtractedLight, indirectLight.diffuse);
+ #endif
+ }
+
+ float3 weightedBlend(float3 layer1, float3 layer2, float2 weights)
+ {
+ return(weights.x * layer1 + weights.y * layer2) / (weights.x + weights.y);
+ }
+
+ UnityIndirect CreateIndirectLight(float3 normal)
+ {
+ UnityIndirect indirectLight;
+ indirectLight.diffuse = 0;
+ indirectLight.specular = 0;
+
+ #if defined(FORWARD_BASE_PASS)
+ #if defined(LIGHTMAP_ON)
+ indirectLight.diffuse = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap, poiMesh.lightmapUV.xy));
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 lightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_LightmapInd, unity_Lightmap, poiMesh.lightmapUV.xy
+ );
+ indirectLight.diffuse = DecodeDirectionalLightmap(
+ indirectLight.diffuse, lightmapDirection, normal
+ );
+ #endif
+ ApplySubtractiveLighting(indirectLight);
+ #endif
+
+ #if defined(DYNAMICLIGHTMAP_ON)
+ float3 dynamicLightDiffuse = DecodeRealtimeLightmap(
+ UNITY_SAMPLE_TEX2D(unity_DynamicLightmap, poiMesh.lightmapUV.zw)
+ );
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 dynamicLightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_DynamicDirectionality, unity_DynamicLightmap,
+ poiMesh.lightmapUV.zw
+ );
+ indirectLight.diffuse += DecodeDirectionalLightmap(
+ dynamicLightDiffuse, dynamicLightmapDirection, normal
+ );
+ #else
+ indirectLight.diffuse += dynamicLightDiffuse;
+ #endif
+ #endif
+
+ #if !defined(LIGHTMAP_ON) && !defined(DYNAMICLIGHTMAP_ON)
+ #if UNITY_LIGHT_PROBE_PROXY_VOLUME
+ if (unity_ProbeVolumeParams.x == 1)
+ {
+ indirectLight.diffuse = SHEvalLinearL0L1_SampleProbeVolume(
+ float4(normal, 1), poiMesh.worldPos
+ );
+ indirectLight.diffuse = max(0, indirectLight.diffuse);
+ #if defined(UNITY_COLORSPACE_GAMMA)
+ indirectLight.diffuse = LinearToGammaSpace(indirectLight.diffuse);
+ #endif
+ }
+ else
+ {
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ }
+ #else
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ #endif
+ #endif
+
+ float3 reflectionDir = reflect(-poiCam.viewDir, normal);
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = 1 - float(0);
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+ #if UNITY_SPECCUBE_BLENDING
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ indirectLight.specular = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ indirectLight.specular = probe0;
+ }
+ #else
+ indirectLight.specular = probe0;
+ #endif
+ float occlusion = 1;
+
+ if(float(0))
+ {
+ occlusion = lerp(1, POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ }
+
+ indirectLight.diffuse *= occlusion;
+ indirectLight.diffuse = max(indirectLight.diffuse, float(0));
+ indirectLight.specular *= occlusion;
+ #endif
+
+ return indirectLight;
+ }
+
+ /*
+ * Poiyomi's cool as heck code starts here :smug:
+ */
+
+ half PoiDiffuse(half NdotV, half NdotL, half LdotH)
+ {
+ half fd90 = 0.5 + 2 * LdotH * LdotH * SmoothnessToPerceptualRoughness(.5);
+ // Two schlick fresnel term
+ half lightScatter = (1 + (fd90 - 1) * Pow5(1 - NdotL));
+ half viewScatter = (1 + (fd90 - 1) * Pow5(1 - NdotV));
+
+ return lightScatter * viewScatter;
+ }
+
+ float3 ShadeSH9Indirect()
+ {
+ return ShadeSH9(half4(0.0, -1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Direct()
+ {
+ return ShadeSH9(half4(0.0, 1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Normal(float3 normalDirection)
+ {
+ return ShadeSH9(half4(normalDirection, 1.0));
+ }
+
+ half3 GetSHLength()
+ {
+ half3 x, x1;
+ x.r = length(unity_SHAr);
+ x.g = length(unity_SHAg);
+ x.b = length(unity_SHAb);
+ x1.r = length(unity_SHBr);
+ x1.g = length(unity_SHBg);
+ x1.b = length(unity_SHBb);
+ return x + x1;
+ }
+
+ float3 calculateRealisticLighting(float4 colorToLight, fixed detailShadowMap)
+ {
+ return UNITY_BRDF_PBS(1, 0, 0, float(0), poiMesh.normals[1], poiCam.viewDir, CreateLight(poiMesh.normals[1], detailShadowMap), CreateIndirectLight(poiMesh.normals[1]));
+ }
+
+ void calculateBasePassLightMaps()
+ {
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ float AOMap = 1;
+ float AOStrength = 1;
+ float3 lightColor = poiLight.color;
+ /*
+ * Generate Basic Light Maps
+ */
+
+ bool lightExists = false;
+ if (all(_LightColor0.rgb >= 0.002))
+ {
+ lightExists = true;
+ }
+ #ifndef OUTLINE
+
+ if(float(0))
+ {
+ AOMap = POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ AOStrength = float(1);
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ if (lightExists)
+ {
+ lightColor = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+ }
+ else
+ {
+ lightColor = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ }
+
+ //lightColor = magic * magiratio + normalLight * normaRatio;
+ //lightColor = magic + normalLight;
+ #endif
+ #endif
+
+ float3 grayscale_vector = float3(.33333, .33333, .33333);
+ float3 ShadeSH9Plus = GetSHLength();
+ float3 ShadeSH9Minus = BetterSH9(float4(0, 0, 0, 1));
+
+ shadowStrength = 1;
+ #ifndef OUTLINE
+ shadowStrength = POI2D_SAMPLER_PAN(_LightingShadowMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(1);
+ #else
+ shadowStrength = float(1);
+ #endif
+
+ float bw_lightColor = dot(lightColor, grayscale_vector);
+ float bw_directLighting = (((poiLight.nDotL * 0.5 + 0.5) * bw_lightColor * lerp(1, poiLight.attenuation, float(0))) + dot(ShadeSH9Normal(poiMesh.normals[1]), grayscale_vector));
+ float bw_bottomIndirectLighting = dot(ShadeSH9Minus, grayscale_vector);
+ float bw_topIndirectLighting = dot(ShadeSH9Plus, grayscale_vector);
+ float lightDifference = ((bw_topIndirectLighting + bw_lightColor) - bw_bottomIndirectLighting);
+
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(0))
+ {
+ poiLight.lightMap = poiLight.attenuation;
+ }
+ else
+ {
+ poiLight.lightMap = smoothstep(0, lightDifference, bw_directLighting - bw_bottomIndirectLighting);
+ }
+ poiLight.lightMap *= detailShadow;
+
+ /*
+ * Decide on light colors
+ */
+
+ float3 indirectLighting = 0;
+ float3 directLighting = 0;
+
+
+
+
+ if (float(0) == 1)
+ {
+ indirectLighting = BetterSH9(float4(poiMesh.normals[0], 1));
+ }
+ else
+ {
+ indirectLighting = ShadeSH9Minus;
+ }
+
+ poiLight.directLighting = lightColor;
+ poiLight.indirectLighting = indirectLighting;
+
+
+ if(float(0) == 0)
+ {
+ float3 magic = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+
+ float magiLumi = calculateluminance(magic);
+ float normaLumi = calculateluminance(normalLight);
+ float maginormalumi = magiLumi + normaLumi;
+
+ float magiratio = magiLumi / maginormalumi;
+ float normaRatio = normaLumi / maginormalumi;
+
+ float target = calculateluminance(magic * magiratio + normalLight * normaRatio);
+ float3 properLightColor = magic + normalLight;
+ float properLuminance = calculateluminance(magic + normalLight);
+ directLighting = properLightColor * max(0.0001, (target / properLuminance));
+ }
+ else
+ {
+ directLighting = lightColor;
+ }
+
+
+ if(!float(0))
+ {
+ float directluminance = calculateluminance(directLighting);
+ float indirectluminance = calculateluminance(indirectLighting);
+ directLighting = min(directLighting, directLighting / max(0.0001, (directluminance / 1)));
+ indirectLighting = min(indirectLighting, indirectLighting / max(0.0001, (indirectluminance / 1)));
+ }
+
+ directLighting = lerp(directLighting, dot(directLighting, float3(0.299, 0.587, 0.114)), float(0));
+ indirectLighting = lerp(indirectLighting, dot(indirectLighting, float3(0.299, 0.587, 0.114)), float(0));
+
+ if(max(max(indirectLighting.x, indirectLighting.y), indirectLighting.z) <= _LightingNoIndirectThreshold && max(max(directLighting.x, directLighting.y), directLighting.z) >= 0)
+ {
+ indirectLighting = directLighting * _LightingNoIndirectMultiplier;
+ }
+
+
+ if(float(0))
+ {
+ float directluminance = clamp(directLighting.r * 0.299 + directLighting.g * 0.587 + directLighting.b * 0.114, 0, 1);
+ if(directluminance > 0)
+ {
+ indirectLighting = max(0.001, indirectLighting);
+ }
+ float indirectluminance = clamp(indirectLighting.r * 0.299 + indirectLighting.g * 0.587 + indirectLighting.b * 0.114, 0, 1);
+ float targetluminance = directluminance * float(0);
+ if(indirectluminance < targetluminance)
+ {
+ indirectLighting = indirectLighting / max(0.0001, indirectluminance / targetluminance);
+ }
+ }
+
+ /*
+ * Create Shade Maps
+ */
+
+ if (float(0))
+ {
+ switch(float(0))
+ {
+ case 0: // Ramp Texture
+ {
+ poiLight.rampedLightMap = lerp(1, UNITY_SAMPLE_TEX2D(_ToonRamp, poiLight.lightMap + float(0)), shadowStrength.r);
+
+ if (float(0))
+ {
+ poiLight.finalLighting = lerp(poiLight.rampedLightMap * directLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ else
+ {
+ poiLight.finalLighting = lerp(indirectLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ }
+ break;
+ case 1: // Math Gradient
+ {
+ poiLight.rampedLightMap = saturate(1 - smoothstep(float(0) - .000001, float(0.5), 1 - poiLight.lightMap));
+ float3 shadowColor = float4(1,1,1,1);
+
+ if (float(0))
+ {
+ shadowColor = 1;
+ }
+
+ if(float(0))
+ {
+ poiLight.finalLighting = lerp((directLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ else
+ {
+ poiLight.finalLighting = lerp((indirectLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ }
+ break;
+ }
+ }
+ else
+ {
+ poiLight.rampedLightMap = 1 - smoothstep(0, .5, 1 - poiLight.lightMap);
+ poiLight.finalLighting = directLighting;
+ }
+
+ if(!float(0))
+ {
+ poiLight.finalLighting = saturate(poiLight.finalLighting);
+ }
+ //poiLight.finalLighting *= .8;
+ #endif
+ }
+
+ void applyShadowTexture(inout float4 albedo)
+ {
+
+ if (float(0) && float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, POI2D_SAMPLER_PAN(_LightingShadowTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1), (1 - poiLight.rampedLightMap) * shadowStrength);
+ }
+ }
+
+ float3 calculateNonImportantLighting(float attenuation, float attenuationDotNL, float3 albedo, float3 lightColor, half dotNL)
+ {
+ fixed detailShadow = 1;
+
+ if(float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ return lightColor * attenuationDotNL * detailShadow;
+ }
+ else
+ {
+ return lerp(lightColor * attenuation, lightColor * float(0.5) * attenuation, smoothstep(float(0), float(0.5), dotNL)) * detailShadow;
+ }
+ }
+
+
+ float3 calculateFinalLighting(inout float3 albedo, float4 finalColor)
+ {
+ float3 finalLighting = 1;
+ // Additive Lighting
+ #ifdef FORWARD_ADD_PASS
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ finalLighting = poiLight.color * poiLight.attenuation * max(0, poiLight.nDotL) * detailShadow;
+ }
+ else
+ {
+ #if defined(POINT) || defined(SPOT)
+ finalLighting = lerp(poiLight.color * max(poiLight.additiveShadow, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * poiLight.attenuation * detailShadow;
+ #else
+ finalLighting = lerp(poiLight.color * max(poiLight.attenuation, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * detailShadow;
+ #endif
+ }
+ #endif
+
+ // Base and Meta Lighting
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ #ifdef VERTEXLIGHT_ON
+ poiLight.vFinalLighting = 0;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vFinalLighting += calculateNonImportantLighting(poiLight.vAttenuation[index], poiLight.vAttenuationDotNL[index], albedo, poiLight.vColor[index], poiLight.vCorrectedDotNL[index]);
+ }
+ #endif
+
+ switch(float(0))
+ {
+ case 0: // Toon Lighting
+ {
+ // HSL Shading
+
+ if (float(0))
+ {
+ float3 HSLMod = float3(float(0.5) * 2 - 1, float(0.5) * 2 - 1, float(0.5) * 2 - 1) * (1 - poiLight.rampedLightMap);
+ albedo = lerp(albedo.rgb, ModifyViaHSL(albedo.rgb, HSLMod), float(1));
+ }
+
+ // Normal Shading
+
+ if (float(0) > 0)
+ {
+ poiLight.finalLighting = max(0.001, poiLight.finalLighting);
+ float finalluminance = calculateluminance(poiLight.finalLighting);
+ finalLighting = max(poiLight.finalLighting, poiLight.finalLighting / max(0.0001, (finalluminance / float(0))));
+ }
+ else
+ {
+ finalLighting = poiLight.finalLighting;
+ }
+ }
+ break;
+ case 1: // realistic
+ {
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ float3 realisticLighting = calculateRealisticLighting(finalColor, detailShadow).rgb;
+ finalLighting = lerp(realisticLighting, dot(realisticLighting, float3(0.299, 0.587, 0.114)), float(0));
+ }
+ break;
+ }
+ #endif
+ return finalLighting;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
new file mode 100644
index 00000000..4a5c64e7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9a390c7191372fc4bb66db4f404ca606
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
new file mode 100644
index 00000000..c23736df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
@@ -0,0 +1,243 @@
+#ifndef POI_MSDF
+ #define POI_MSDF
+
+ sampler2D _TextGlyphs;
+ float4 _TextGlyphs_ST;
+ float4 _TextGlyphs_TexelSize;
+ float _TextFPSUV;
+ float _TextTimeUV;
+ float _TextPositionUV;
+ float _TextPixelRange;
+
+ float _TextFPSEnabled;
+ float _TextPositionEnabled;
+ float _TextTimeEnabled;
+
+
+ float4 _TextFPSColor;
+ half _TextFPSEmissionStrength;
+ fixed4 _TextFPSPadding;
+ half2 _TextFPSOffset;
+ half2 _TextFPSScale;
+ half _TextFPSRotation;
+
+ fixed _TextPositionVertical;
+ float4 _TextPositionColor;
+ half _TextPositionEmissionStrength;
+ fixed4 _TextPositionPadding;
+ half2 _TextPositionOffset;
+ half2 _TextPositionScale;
+ half _TextPositionRotation;
+
+ float4 _TextTimeColor;
+ half _TextTimeEmissionStrength;
+ fixed4 _TextTimePadding;
+ half2 _TextTimeOffset;
+ half2 _TextTimeScale;
+ half _TextTimeRotation;
+
+ #define glyphWidth 0.0625
+
+ #define ASCII_LEFT_PARENTHESIS 40
+ #define ASCII_RIGHT_PARENTHESIS 41
+ #define ASCII_POSITIVE 43
+ #define ASCII_PERIOD 46
+ #define ASCII_NEGATIVE 45
+ #define ASCII_COMMA 44
+ #define ASCII_E 69
+ #define ASCII_F 70
+ #define ASCII_I 73
+ #define ASCII_M 77
+ #define ASCII_O 79
+ #define ASCII_P 80
+ #define ASCII_S 83
+ #define ASCII_T 54
+ #define ASCII_SEMICOLON 58
+
+ float3 globalTextEmission;
+
+ half2 getAsciiCoordinate(float index)
+ {
+ return half2((index - 1) / 16, 1 - ((floor(index / 16 - glyphWidth)) / 16));
+ }
+
+ float median(float r, float g, float b)
+ {
+ return max(min(r, g), min(max(r, g), b));
+ }
+
+ void ApplyPositionText(inout float4 albedo, float2 uv)
+ {
+ float3 cameraPos = clamp(getCameraPosition(), -999, 999);
+ float3 absCameraPos = abs(cameraPos);
+ float totalCharacters = 20;
+ float positionArray[20];
+ positionArray[0] = cameraPos.x >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[1] = floor((absCameraPos.x * .01) % 10) + 48;
+ positionArray[2] = floor((absCameraPos.x * .1) % 10) + 48;
+ positionArray[3] = floor(absCameraPos.x % 10) + 48;
+ positionArray[4] = ASCII_PERIOD;
+ positionArray[5] = floor((absCameraPos.x * 10) % 10) + 48;
+ positionArray[6] = ASCII_COMMA;
+ positionArray[7] = cameraPos.y >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[8] = floor((absCameraPos.y * .01) % 10) + 48;
+ positionArray[9] = floor((absCameraPos.y * .1) % 10) + 48;
+ positionArray[10] = floor(absCameraPos.y % 10) + 48;
+ positionArray[11] = ASCII_PERIOD;
+ positionArray[12] = floor((absCameraPos.y * 10) % 10) + 48;
+ positionArray[13] = ASCII_COMMA;
+ positionArray[14] = cameraPos.z >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[15] = floor((absCameraPos.z * .01) % 10) + 48;
+ positionArray[16] = floor((absCameraPos.z * .1) % 10) + 48;
+ positionArray[17] = floor(absCameraPos.z % 10) + 48;
+ positionArray[18] = ASCII_PERIOD;
+ positionArray[19] = floor((absCameraPos.z * 10) % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if (uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(positionArray[currentCharacter]);
+
+ float2 startUV = float2(1 / totalCharacters * currentCharacter, 0);
+ float2 endUV = float2(1 / totalCharacters * (currentCharacter + 1), 1);
+
+ fixed4 textPositionPadding = float4(0,0,0,0);
+ textPositionPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, startUV, endUV, float2(glyphPos.x + textPositionPadding.x, glyphPos.y - glyphWidth + textPositionPadding.y), float2(glyphPos.x + glyphWidth - textPositionPadding.z, glyphPos.y - textPositionPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textPositionPadding.z - .001 || uv.x < glyphPos.x + textPositionPadding.x + .001 || uv.y > glyphPos.y - textPositionPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textPositionPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTimeText(inout float4 albedo, float2 uv)
+ {
+ float instanceTime = _Time.y;
+ float hours = instanceTime / 3600;
+ float minutes = (instanceTime / 60) % 60;
+ float seconds = instanceTime % 60;
+ float totalCharacters = 8;
+ float timeArray[8];
+ timeArray[0] = floor((hours * .1) % 10) + 48;
+ timeArray[1] = floor(hours % 10) + 48;
+ timeArray[2] = ASCII_SEMICOLON;
+ timeArray[3] = floor((minutes * .1) % 10) + 48;
+ timeArray[4] = floor(minutes % 10) + 48;
+ timeArray[5] = ASCII_SEMICOLON;
+ timeArray[6] = floor((seconds * .1) % 10) + 48;
+ timeArray[7] = floor(seconds % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(timeArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+ fixed4 textTimePadding = float4(0,0,0,0);
+ textTimePadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textTimePadding.x, glyphPos.y - glyphWidth + textTimePadding.y), float2(glyphPos.x + glyphWidth - textTimePadding.z, glyphPos.y - textTimePadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textTimePadding.z - .001 || uv.x < glyphPos.x + textTimePadding.x + .001 || uv.y > glyphPos.y - textTimePadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textTimePadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyFPSText(inout float4 albedo, float2 uv)
+ {
+ float smoothDeltaTime = clamp(unity_DeltaTime.w, 0, 999);
+ float totalCharacters = 7;
+ float fpsArray[7];
+ fpsArray[0] = ASCII_F;
+ fpsArray[1] = ASCII_P;
+ fpsArray[2] = ASCII_S;
+ fpsArray[3] = ASCII_SEMICOLON;
+ fpsArray[4] = floor((smoothDeltaTime * .01) % 10) + 48;
+ fpsArray[5] = floor((smoothDeltaTime * .1) % 10) + 48;
+ fpsArray[6] = floor(smoothDeltaTime % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(fpsArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+
+ fixed4 textFPSPadding = float4(0,0,0,0);
+ textFPSPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textFPSPadding.x, glyphPos.y - glyphWidth + textFPSPadding.y), float2(glyphPos.x + glyphWidth - textFPSPadding.z, glyphPos.y - textFPSPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textFPSPadding.z - .001 || uv.x < glyphPos.x + textFPSPadding.x + .001 || uv.y > glyphPos.y - textFPSPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textFPSPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,1,1,1).rgb, opacity * float4(1,1,1,1).a);
+ globalTextEmission += float4(1,1,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTextOverlayColor(inout float4 albedo, inout float3 textOverlayEmission)
+ {
+ globalTextEmission = 0;
+ half positionalOpacity = 0;
+ #ifdef EFFECT_BUMP
+
+ if(float(0))
+ {
+ ApplyFPSText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyPositionText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyTimeText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ textOverlayEmission = globalTextEmission;
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
new file mode 100644
index 00000000..08211c21
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 211f82e0b3cffe84c8e77ed40700a14e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
new file mode 100644
index 00000000..ecac0805
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
@@ -0,0 +1,33 @@
+#ifndef POI_MACROS
+ #define POI_MACROS
+
+ #define POI_TEXTURE_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_TEXTURE(tex) UNITY_DECLARE_TEX2D(tex##); float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_NORMAL_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV; float tex##Scale
+
+ #define POI2D_SAMPLER_PAN(tex, texSampler, uv, pan) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D_SAMPLER(tex, texSampler, uv) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex)))
+ #define POI2D_PAN(tex, uv, pan) (tex2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D(tex, uv) (tex2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D(tex, uv) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D_PAN(tex, uv, pan) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+
+ #ifdef POINT
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ unityShadowCoord3 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1)).xyz; \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = tex2D(_LightTexture0, dot(lightCoord, lightCoord).rr).r;
+ #endif
+
+ #ifdef SPOT
+ #if !defined(UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS)
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1))
+ #else
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = input._LightCoord
+ #endif
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ DECLARE_LIGHT_COORD(input, worldPos); \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = (lightCoord.z > 0) * UnitySpotCookie(lightCoord) * UnitySpotAttenuate(lightCoord.xyz);
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
new file mode 100644
index 00000000..e797bc7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c3b6b221ce5d35148a335a1ada352e72
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
new file mode 100644
index 00000000..270384af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
@@ -0,0 +1,147 @@
+#ifndef POI_MAINTEXTURE
+ #define POI_MAINTEXTURE
+
+
+
+ POI_TEXTURE_NOSAMPLER(_AlphaMask);
+ POI_TEXTURE_NOSAMPLER(_MainFadeTexture);
+ float4 _Color;
+ float _MainVertexColoring;
+ float _MainUseVertexColorAlpha;
+ float _Saturation;
+ float2 _MainDistanceFade;
+ half _MainMinAlpha;
+ float _MainHueShift;
+ #ifdef COLOR_GRADING_HDR
+ POI_TEXTURE_NOSAMPLER(_MainHueShiftMask);
+ float _MainHueShiftToggle;
+ float _MainHueShiftSpeed;
+ float _MainHueShiftReplace;
+ #endif
+
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailTex);
+ half _DetailTexIntensity;
+ half3 _DetailTint;
+ float _DetailBrightness;
+ #endif
+ //globals
+ float alphaMask;
+ half3 diffColor;
+
+ #include "CGI_PoiBackFace.cginc"
+
+ float3 wireframeEmission;
+
+ inline FragmentCommonData SpecularSetup(float4 i_tex, inout float4 albedo)
+ {
+ half4 specGloss = 0;
+ half3 specColor = specGloss.rgb;
+ half smoothness = specGloss.a;
+
+ half oneMinusReflectivity;
+ diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specColor, /*out*/ oneMinusReflectivity);
+
+ FragmentCommonData o = (FragmentCommonData)0;
+ o.diffColor = diffColor;
+ o.specColor = specColor;
+ o.oneMinusReflectivity = oneMinusReflectivity;
+ o.smoothness = smoothness;
+ return o;
+ }
+
+ inline FragmentCommonData FragmentSetup(float4 i_tex, half3 i_viewDirForParallax, float3 i_posWorld, inout float4 albedo)
+ {
+ i_tex = i_tex;
+
+ FragmentCommonData o = SpecularSetup(i_tex, albedo);
+ o.normalWorld = float4(0, 0, 0, 1);
+ o.eyeVec = poiCam.viewDir;
+ o.posWorld = i_posWorld;
+
+ // NOTE: shader relies on pre-multiply alpha-blend (float(1) = One, float(0) = OneMinusSrcAlpha)
+ o.diffColor = PreMultiplyAlpha(o.diffColor, 1, o.oneMinusReflectivity, /*out*/ o.alpha);
+ return o;
+ }
+
+ void initTextureData(inout float4 albedo, inout float4 mainTexture, inout float3 backFaceEmission, inout float3 dissolveEmission, in half3 detailMask)
+ {
+ dissolveEmission = 0;
+
+ #if (defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ #endif
+
+ alphaMask = POI2D_SAMPLER_PAN(_AlphaMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ mainTexture.a *= alphaMask;
+
+ #ifndef POI_SHADOW
+ albedo = float4(lerp(mainTexture.rgb, dot(mainTexture.rgb, float3(0.3, 0.59, 0.11)), -float(0)) * max(float4(1,1,1,1).rgb, float3(0.000000001, 0.000000001, 0.000000001)) * lerp(1, GammaToLinearSpace(poiMesh.vertexColor.rgb), float(0)), mainTexture.a * max(float4(1,1,1,1).a, 0.0000001));
+
+ #ifdef POI_LIGHTING
+ applyShadowTexture(albedo);
+ #endif
+
+ albedo *= lerp(1, poiMesh.vertexColor.a, float(0));
+ #ifdef POI_RGBMASK
+ albedo.rgb = calculateRGBMask(albedo.rgb);
+ #endif
+
+ albedo.a = saturate(float(0) + albedo.a);
+
+ wireframeEmission = 0;
+ #ifdef POI_WIREFRAME
+ applyWireframe(wireframeEmission, albedo);
+ #endif
+ float backFaceDetailIntensity = 1;
+
+ float mixedHueShift = float(0);
+ applyBackFaceTexture(backFaceDetailIntensity, mixedHueShift, albedo, backFaceEmission);
+
+ #ifdef POI_FUR
+ calculateFur();
+ #endif
+
+ #ifdef COLOR_GRADING_HDR
+ float hueShiftAlpha = POI2D_SAMPLER_PAN(_MainHueShiftMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if(float(1))
+ {
+ albedo.rgb = lerp(albedo.rgb, hueShift(albedo.rgb, mixedHueShift + float(0) * _Time.x), hueShiftAlpha);
+ }
+ else
+ {
+ albedo.rgb = hueShift(albedo.rgb, frac((mixedHueShift - (1 - hueShiftAlpha) + float(0) * _Time.x)));
+ }
+ #endif
+ #ifdef FINALPASS
+ half3 detailTexture = POI2D_SAMPLER_PAN(_DetailTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb * float4(1,1,1,1).rgb;
+ albedo.rgb *= LerpWhiteTo(detailTexture * float(1) * unity_ColorSpaceDouble.rgb, detailMask.r * float(1) * backFaceDetailIntensity);
+ #endif
+ albedo.rgb = saturate(albedo.rgb);
+
+ #ifdef POI_HOLOGRAM
+ ApplyHoloAlpha(albedo);
+ #endif
+
+ s = FragmentSetup(float4(poiMesh.uv[0], 1, 1), poiCam.viewDir, poiMesh.worldPos, albedo);
+ #endif
+
+ #ifdef DISTORT
+ calculateDissolve(albedo, dissolveEmission);
+ #endif
+ }
+
+ void distanceFade(inout float4 albedo)
+ {
+ half fadeMap = POI2D_SAMPLER_PAN(_MainFadeTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(fadeMap)
+ {
+ half fadeValue = max(smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, poiCam.distanceToVert), float(0));
+ albedo.a *= fadeValue;
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
new file mode 100644
index 00000000..b031a203
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 91e26720929f3f14ba4f99e19ec2b1e5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
new file mode 100644
index 00000000..3aa6d6b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
@@ -0,0 +1,115 @@
+#ifndef MATCAP
+ #define MATCAP
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap); float4 _Matcap_ST;
+ POI_TEXTURE_NOSAMPLER(_MatcapMask);
+ float _MatcapMaskInvert;
+ float _MatcapBorder;
+ float4 _MatcapColor;
+ float _MatcapIntensity;
+ float _MatcapReplace;
+ float _MatcapMultiply;
+ float _MatcapAdd;
+ float _MatcapEnable;
+ float _MatcapLightMask;
+ float _MatcapEmissionStrength;
+ float _MatcapNormal;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap2);float4 _Matcap2_ST;
+ POI_TEXTURE_NOSAMPLER(_Matcap2Mask);
+ float _Matcap2MaskInvert;
+ float _Matcap2Border;
+ float4 _Matcap2Color;
+ float _Matcap2Intensity;
+ float _Matcap2Replace;
+ float _Matcap2Multiply;
+ float _Matcap2Add;
+ float _Matcap2Enable;
+ float _Matcap2LightMask;
+ float _Matcap2EmissionStrength;
+ float _Matcap2Normal;
+
+ void blendMatcap(inout float4 finalColor, float add, float multiply, float replace, float4 matcapColor, float matcapMask, inout float3 matcapEmission, float emissionStrength
+ #ifdef POI_LIGHTING
+ , float matcapLightMask
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , uint blackLightMaskIndex
+ #endif
+ )
+ {
+ #ifdef POI_LIGHTING
+ if (matcapLightMask)
+ {
+ matcapMask *= lerp(1, poiLight.rampedLightMap, matcapLightMask);
+ }
+ #endif
+ #ifdef POI_BLACKLIGHT
+ if(blackLightMaskIndex != 4)
+ {
+ matcapMask *= blackLightMask[blackLightMaskIndex];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor.rgb, matcapColor.rgb, replace * matcapMask * matcapColor.a);
+ finalColor.rgb *= lerp(1, matcapColor.rgb, multiply * matcapMask * matcapColor.a);
+ finalColor.rgb += matcapColor.rgb * add * matcapMask * matcapColor.a;
+ matcapEmission += matcapColor.rgb * emissionStrength * matcapMask * matcapColor.a;
+ }
+
+ void applyMatcap(inout float4 finalColor, inout float3 matcapEmission)
+ {
+ float4 matcap = 0;
+ float matcapMask = 0;
+ float4 matcap2 = 0;
+ float matcap2Mask = 0;
+
+ // Both matcaps use the same coordinates
+ half3 worldViewUp = normalize(half3(0, 1, 0) - poiCam.viewDir * dot(poiCam.viewDir, half3(0, 1, 0)));
+ half3 worldViewRight = normalize(cross(poiCam.viewDir, worldViewUp));
+
+ // Matcap 1
+ half2 matcapUV = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+
+ matcap = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap, _MainTex, TRANSFORM_TEX(matcapUV, _Matcap)) * float4(1,1,1,1);
+ matcap.rgb *= float(1);
+ matcapMask = POI2D_SAMPLER_PAN(_MatcapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if (float(0))
+ {
+ matcapMask = 1 - matcapMask;
+ }
+
+ blendMatcap(finalColor, float(0), float(0), float(1), matcap, matcapMask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap
+ #endif
+ );
+
+ // Matcap 2
+
+ if (float(0))
+ {
+ half2 matcapUV2 = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+ matcap2 = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap2, _MainTex, TRANSFORM_TEX(matcapUV2, _Matcap2)) * float4(1,1,1,1);
+ matcap2.rgb *= float(1);
+ matcap2Mask = POI2D_SAMPLER_PAN(_Matcap2Mask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(float(0))
+ {
+ matcap2Mask = 1 - matcap2Mask;
+ }
+ blendMatcap(finalColor, float(0), float(0), float(0), matcap2, matcap2Mask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap2
+ #endif
+ );
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
new file mode 100644
index 00000000..6a4567f5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 24f04c69d6316b341b1e1f3bf494129b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
new file mode 100644
index 00000000..b2d07a38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
@@ -0,0 +1,104 @@
+/*
+MIT License
+
+Copyright (c) 2019 wraikny
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+VertexTransformShader is dependent on:
+*/
+
+#ifndef POI_MATH
+ #define POI_MATH
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float4 quaternion_conjugate(float4 v)
+ {
+ return float4(
+ v.x, -v.yzw
+ );
+ }
+
+ float4 quaternion_mul(float4 v1, float4 v2)
+ {
+ float4 result1 = (v1.x * v2 + v1 * v2.x);
+
+ float4 result2 = float4(
+ - dot(v1.yzw, v2.yzw),
+ cross(v1.yzw, v2.yzw)
+ );
+
+ return float4(result1 + result2);
+ }
+
+ // angle : radians
+ float4 get_quaternion_from_angle(float3 axis, float angle)
+ {
+ return float4(
+ cos(angle / 2.0),
+ normalize(axis) * sin(angle / 2.0)
+ );
+ }
+
+ float4 quaternion_from_vector(float3 inVec)
+ {
+ return float4(0.0, inVec);
+ }
+
+ float degree_to_radius(float degree)
+ {
+ return(
+ degree / 180.0 * pi
+ );
+ }
+
+ float3 rotate_with_quaternion(float3 inVec, float3 rotation)
+ {
+ float4 qx = get_quaternion_from_angle(float3(1, 0, 0), degree_to_radius(rotation.x));
+ float4 qy = get_quaternion_from_angle(float3(0, 1, 0), degree_to_radius(rotation.y));
+ float4 qz = get_quaternion_from_angle(float3(0, 0, 1), degree_to_radius(rotation.z));
+
+ #define MUL3(A, B, C) quaternion_mul(quaternion_mul((A), (B)), (C))
+ float4 quaternion = normalize(MUL3(qx, qy, qz));
+ float4 conjugate = quaternion_conjugate(quaternion);
+
+ float4 inVecQ = quaternion_from_vector(inVec);
+
+ float3 rotated = (
+ MUL3(quaternion, inVecQ, conjugate)
+ ).yzw;
+
+ return rotated;
+ }
+
+ float4 transform(float4 input, float4 pos, float4 rotation, float4 scale)
+ {
+ input.rgb *= (scale.xyz * scale.w);
+ input = float4(
+ rotate_with_quaternion(input.xyz, rotation.xyz * rotation.w)
+ + (pos.xyz * pos.w),
+ input.w
+ );
+ return input;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
new file mode 100644
index 00000000..38be08dd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b8b8b5202b65bff4a98ea6ec48a35278
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
new file mode 100644
index 00000000..916f65eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
@@ -0,0 +1,130 @@
+#ifndef POI_METAL
+ #define POI_METAL
+
+ samplerCUBE _CubeMap;
+ float _SampleWorld;
+ POI_TEXTURE_NOSAMPLER(_MetallicMask);
+ POI_TEXTURE_NOSAMPLER(_SmoothnessMask);
+ float _Metallic;
+ float _InvertSmoothness;
+ float _Smoothness;
+ float _EnableMetallic;
+ float3 _MetalReflectionTint;
+ POI_TEXTURE_NOSAMPLER(_MetallicTintMap);
+
+ float3 finalreflections;
+ float metalicMap;
+ float3 reflection;
+ float roughness;
+ float lighty_boy_uwu_var;
+
+ bool shouldMetalHappenBeforeLighting()
+ {
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool probeExists = !(unity_SpecCube0_HDR.a == 0 && envSample.a == 0);
+ return probeExists && !float(0);
+ }
+
+ float3 fresnelRelflection(in float4 albedo)
+ {
+ half3 dotNV = 1 - abs(poiLight.nDotV);
+ half f = dotNV * dotNV * dotNV * dotNV;
+ //f *= i_sold.fresnel;
+ return lerp(lerp(DielectricSpec.rgb, albedo.rgb, metalicMap), saturate(1 - roughness + metalicMap), f);
+ }
+
+ void calculateMetallicness()
+ {
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ }
+
+ void ApplyMetallics(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflection = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflection = probe0;
+ }
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+
+ void ApplyMetallicsFake(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+ reflection = texCUBElod(_CubeMap, float4(poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
new file mode 100644
index 00000000..76a69463
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a7df6b87403e90043853a60e0da4243d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
new file mode 100644
index 00000000..8bb16398
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
@@ -0,0 +1,77 @@
+#ifndef POI_MIRROR
+ #define POI_MIRROR
+
+ float _Mirror;
+ float _EnableMirrorTexture;
+ POI_TEXTURE_NOSAMPLER(_MirrorTexture);
+
+
+ void applyMirrorRenderVert(inout float4 vertex)
+ {
+
+ if (float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ void applyMirrorRenderFrag()
+ {
+
+ if(float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ #if(defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ void applyMirrorTexture(inout float4 mainTexture)
+ {
+
+ if(float(0))
+ {
+ if(IsInMirror())
+ {
+ mainTexture = POI2D_SAMPLER_PAN(_MirrorTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ }
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
new file mode 100644
index 00000000..eb228c9a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4e06bb52ff0b7344b90ed493364a3f9f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
new file mode 100644
index 00000000..62e63c91
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
@@ -0,0 +1,107 @@
+float _OutlineRimLightBlend;
+float _OutlineLit;
+float _OutlineTintMix;
+float2 _MainTexPan;
+float _MainTextureUV;
+
+float4 frag(v2f i, uint facing: SV_IsFrontFace): COLOR
+{
+ float4 finalColor = 1;
+
+ if (float(0))
+ {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ float3 finalEmission = 0;
+ float4 albedo = 1;
+
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ float3 uselessData0;
+ float3 uselessData1;
+ initTextureData(albedo, mainTexture, uselessData0, uselessData1, detailMask);
+
+
+ fixed4 col = mainTexture;
+ float alphaMultiplier = smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(getCameraPosition(), i.worldPos));
+ float OutlineMask = tex2D(_OutlineMask, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0)).r;
+ clip(OutlineMask * float(0) - 0.001);
+
+ col = col * 0.00000000001 + tex2D(_OutlineTexture, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineTexture) + _Time.x * float4(0,0,0,0) );
+ col.a *= albedo.a;
+ col.a *= alphaMultiplier;
+
+ #ifdef POI_RANDOM
+ col.a *= i.angleAlpha;
+ #endif
+
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ col.a *= float4(1,1,1,1).a;
+
+
+ if(float(0) == 1)
+ {
+ applyDithering(col);
+ }
+
+ clip(col.a - float(0.5));
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+
+ if(float(0) == 1)
+ {
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ col.rgb = mainTexture.rgb;
+ }
+ else if(float(0) == 2)
+ {
+ col.rgb = lerp(col.rgb, poiLight.color, float(0));
+ }
+ col.rgb *= float4(1,1,1,1).rgb;
+
+ if(float(0) == 1)
+ {
+ col.rgb = lerp(col.rgb, mainTexture.rgb, float(0));
+ }
+
+ finalColor = col;
+
+ #ifdef POI_LIGHTING
+
+ if(float(1))
+ {
+ finalColor.rgb *= calculateFinalLighting(finalColor.rgb, finalColor);
+ }
+ #endif
+ finalColor.rgb += (col.rgb * float(0));
+ }
+ else
+ {
+ clip(-1);
+ }
+ return finalColor;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
new file mode 100644
index 00000000..dfcad16c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: dbe4290377813294882c4431b8758fc8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
new file mode 100644
index 00000000..900e9e43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
@@ -0,0 +1,105 @@
+#ifndef OutlineVert
+ #define OutlineVert
+
+ #include "CGI_PoiV2F.cginc"
+
+ float _OutlineMode;
+ float4 _OutlinePersonaDirection;
+ float4 _OutlineDropShadowOffset;
+ float _OutlineUseVertexColors;
+ float _OutlineFixedSize;
+ float _commentIfZero_EnableOutlinePass;
+
+ sampler2D _OutlineMask; float4 _OutlineMask_ST; float2 _OutlineMaskPan; float _OutlineMaskUV;
+ v2f vert(appdata v)
+ {
+
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+
+ float2 uvArray[4];
+ uvArray[0] = o.uv0.xy;
+ uvArray[1] = o.uv0.zw;
+ uvArray[2] = o.uv1.xy;
+ uvArray[3] = o.uv1.zw;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ o.uv0.xy = v.uv0 + _OutlineGlobalPan.xy * _Time.y;
+ float outlineMask = 1;
+
+ outlineMask = poiMax(tex2Dlod(_OutlineMask, float4(TRANSFORM_TEX(uvArray[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0), 0, 0)).rgb);
+
+ if (float(0) == 2)
+ {
+ outlineMask *= v.color.r;
+ }
+
+
+ if(float(0) != 1)
+ {
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ }
+ else
+ {
+ o.normal = UnityObjectToWorldNormal(v.color);
+ }
+
+
+ half offsetMultiplier = 1;
+ half distanceOffset = 1;
+
+ if(float(0))
+ {
+ distanceOffset *= distance(_WorldSpaceCameraPos, mul(unity_ObjectToWorld, v.vertex).xyz);
+ }
+
+ float3 offset = o.normal * (float(0) * float(0) / 100) * outlineMask * distanceOffset;
+
+
+ if(float(0) == 2)
+ {
+ float3 lightDirection = poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ offsetMultiplier = saturate(dot(lightDirection, o.normal));
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 3)
+ {
+ half3 viewNormal = mul((float3x3)UNITY_MATRIX_V, o.normal);
+ offsetMultiplier = saturate(dot(viewNormal.xy, normalize(float4(1,0,0,0).xy)));
+
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 4)
+ {
+ offset = mul((float3x3)transpose(UNITY_MATRIX_V), float4(1,0,0,0));
+ offset *= distanceOffset;
+ }
+
+ o.worldPos = mul(unity_ObjectToWorld, v.vertex) + float4(offset, 0);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.pos = UnityWorldToClipPos(o.worldPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0);
+ UNITY_TRANSFER_FOG(o, o.pos);
+ return o;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
new file mode 100644
index 00000000..c0b6b4eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ff513f8dbee01404c900abc67b52626d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
new file mode 100644
index 00000000..da64a89d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
@@ -0,0 +1,63 @@
+#ifndef PANOSPHERE
+ #define PANOSPHERE
+
+ sampler2D _PanosphereTexture; float4 _PanosphereTexture_ST;
+ POI_TEXTURE_NOSAMPLER(_PanoMask);
+ float _PanoEmission;
+ float _PanoBlend;
+ float4 _PanosphereColor;
+ float3 _PanospherePan;
+ float _PanoToggle;
+ float _PanoCubeMapToggle;
+ float _PanoInfiniteStereoToggle;
+ samplerCUBE _PanoCubeMap; half4 _PanoCubeMap_HDR;
+
+ float3 panoColor;
+ float panoMask;
+
+ float2 projectIt(float3 coords)
+ {
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude + _Time.y * float4(0,0,0,0).x, latitude + _Time.y * float4(0,0,0,0).y) * float2(1.0 / UNITY_PI, 1.0 / UNITY_PI);
+ sphereCoords = float2(1.0, 1.0) - sphereCoords;
+ return(sphereCoords + float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).xy) * float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).zw;
+ }
+
+ void applyPanosphereColor(inout float4 albedo, inout float3 panosphereEmission)
+ {
+ panoMask = POI2D_SAMPLER_PAN(_PanoMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskPanosphere != 4)
+ {
+ panoMask *= blackLightMask[_BlackLightMaskPanosphere];
+ }
+ #endif
+
+
+ if(float(0))
+ {
+ float3 cubeUV = mul(poiRotationMatrixFromAngles(float4(0,0,0,0).xyz * _Time.y), float4(-poiCam.viewDir, 1));
+ half4 cubemap = texCUBE(_PanoCubeMap, cubeUV);
+ panoColor = DecodeHDR(cubemap, _PanoCubeMap_HDR);
+ }
+ else
+ {
+ float2 uv = projectIt(normalize(lerp(getCameraPosition().xyz, poiCam.worldPos.xyz, float(0)) - poiMesh.worldPos.xyz) * - 1);
+
+ float2 ddxuv = ddx(uv);
+ float2 ddyuv = ddy(uv);
+ if(any(fwidth(uv) > .5))
+ {
+ ddxuv = ddyuv = 0.001;
+ }
+ panoColor = tex2D(_PanosphereTexture, TRANSFORM_TEX(uv, _PanosphereTexture), ddxuv, ddyuv).rgb * float4(1,1,1,1).rgb;
+ }
+ panosphereEmission = panoColor * float(0) * panoMask * float(0);
+ albedo.rgb = lerp(albedo.rgb, panoColor, float(0) * panoMask);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
new file mode 100644
index 00000000..7a11c4e2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 01425d1147bfeb245b9d5d381cb16653
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
new file mode 100644
index 00000000..6cd94900
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
@@ -0,0 +1,143 @@
+#ifndef POI_PARALLAX
+ #define POI_PARALLAX
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxHeightMap); float4 _ParallaxHeightMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxHeightMapMask);
+ float2 _ParallaxHeightMapPan;
+ float _ParallaxStrength;
+ float _ParallaxHeightMapEnabled;
+ float _ParallaxUV;
+
+ //Internal
+ float _ParallaxInternalMapEnabled;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxInternalMap); float4 _ParallaxInternalMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxInternalMapMask);
+ float _ParallaxInternalIterations;
+ float _ParallaxInternalMinDepth;
+ float _ParallaxInternalMaxDepth;
+ float _ParallaxInternalMinFade;
+ float _ParallaxInternalMaxFade;
+ float4 _ParallaxInternalMinColor;
+ float4 _ParallaxInternalMaxColor;
+ float4 _ParallaxInternalPanSpeed;
+ float4 _ParallaxInternalPanDepthSpeed;
+ float _ParallaxInternalHeightmapMode;
+ float _ParallaxInternalHeightFromAlpha;
+
+ float GetParallaxHeight(float2 uv)
+ {
+ return clamp(UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxHeightMap, _MainTex, TRANSFORM_TEX(uv, _ParallaxHeightMap) + _Time.x * float4(0,0,0,0)).g, 0, .99999);
+ }
+ /*
+ float2 ParallaxOffset(float2 viewDir)
+ {
+ float height = GetParallaxHeight();
+ height -= 0.5;
+ height *= float(0);
+ return viewDir * height;
+ }
+ */
+ float2 ParallaxRaymarching(float2 viewDir)
+ {
+ float2 uvOffset = 0;
+ float stepSize = 0.1;
+ float2 uvDelta = viewDir * (stepSize * float(0));
+
+ float stepHeight = 1;
+ float surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)]);
+
+
+ float2 prevUVOffset = uvOffset;
+ float prevStepHeight = stepHeight;
+ float prevSurfaceHeight = surfaceHeight;
+
+ for (int i = 1; i < 10 && stepHeight > surfaceHeight; i ++)
+ {
+ prevUVOffset = uvOffset;
+ prevStepHeight = stepHeight;
+ prevSurfaceHeight = surfaceHeight;
+
+ uvOffset -= uvDelta;
+ stepHeight -= stepSize;
+ surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)] + uvOffset);
+ }
+
+ float prevDifference = prevStepHeight - prevSurfaceHeight;
+ float difference = surfaceHeight - stepHeight;
+ float t = prevDifference / (prevDifference + difference);
+ uvOffset = prevUVOffset -uvDelta * t;
+
+ return uvOffset *= POI2D_SAMPLER_PAN(_ParallaxHeightMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+
+ void calculateandApplyParallax()
+ {
+
+ if (float(0))
+ {
+ float2 parallaxOffset = ParallaxRaymarching(poiCam.tangentViewDir.xy);
+
+ if(float(0) == 0)
+ {
+ poiMesh.uv[0] += parallaxOffset;
+ }
+
+ if(float(0) == 1)
+ {
+ poiMesh.uv[1] += parallaxOffset;
+ }
+
+ if(float(0) == 2)
+ {
+ poiMesh.uv[2] += parallaxOffset;
+ }
+
+ if(float(0) == 3)
+ {
+ poiMesh.uv[3] += parallaxOffset;
+ }
+ }
+ }
+
+ void calculateAndApplyInternalParallax(inout float4 finalColor)
+ {
+ #if defined(_PARALLAXMAP)
+
+ if(float(0))
+ {
+ float3 parallax = 0;
+
+ for (int j = float(1); j > 0; j --)
+ {
+ float ratio = (float)j / float(1);
+ float2 parallaxOffset = _Time.y * (float4(0,0,0,0) + (1 - ratio) * float4(0,0,0,0));
+ float fade = lerp(float(0), float(1), ratio);
+ float4 parallaxColor = UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxInternalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _ParallaxInternalMap) + lerp(float(0), float(1), ratio) * - poiCam.tangentViewDir.xy + parallaxOffset);
+ float3 parallaxTint = lerp(float4(1,1,1,1), float4(1,1,1,1), ratio);
+ float parallaxHeight;
+ if(float(0))
+ {
+ parallaxTint *= parallaxColor.rgb;
+ parallaxHeight = parallaxColor.a;
+ }
+ else
+ {
+ parallaxHeight = parallaxColor.r;
+ }
+ //float parallaxColor *= lerp(float4(1,1,1,1), float4(1,1,1,1), 1 - ratio);
+
+ if (float(0) == 1)
+ {
+ parallax = lerp(parallax, parallaxTint * fade, parallaxHeight >= 1 - ratio);
+ }
+ else
+ {
+ parallax += parallaxTint * parallaxHeight * fade;
+ }
+ }
+ //parallax /= float(1);
+ finalColor.rgb += parallax * POI2D_SAMPLER_PAN(_ParallaxInternalMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
new file mode 100644
index 00000000..d1cc4e69
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b16696c04360ae64ca1f44614db0687f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
new file mode 100644
index 00000000..81230e8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
@@ -0,0 +1,233 @@
+/*
+USED---------------------------------------------
+"_PARALLAXMAP",
+"_REQUIRE_UV2",
+"_SUNDISK_NONE",
+"_DETAIL_MULX2",
+"_GLOSSYREFLECTIONS_OFF",
+"_METALLICGLOSSMAP",
+"_COLORADDSUBDIFF_ON",
+"_SPECGLOSSMAP",
+"_TERRAIN_NORMAL_MAP",
+"_SUNDISK_SIMPLE",
+"_EMISSION",
+"_COLORCOLOR_ON",
+"_COLOROVERLAY_ON",
+"_ALPHAMODULATE_ON",
+"_SUNDISK_HIGH_QUALITY",
+"_MAPPING_6_FRAMES_LAYOUT",
+"_NORMALMAP"
+"EFFECT_BUMP",
+"BLOOM",
+"BLOOM_LOW",
+"GRAIN",
+"DEPTH_OF_FIELD",
+"USER_LUT",
+"CHROMATIC_ABERRATION_LOW",
+"BLOOM_LENS_DIRT",
+"_FADING_ON",
+"CHROMATIC_ABERRATION",
+"DISTORT",
+"GEOM_TYPE_BRANCH",
+"_SPECULARHIGHLIGHTS_OFF",
+"_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A",
+"EFFECT_HUE_VARIATION",
+"GEOM_TYPE_LEAF",
+"GEOM_TYPE_MESH",
+"FINALPASS",
+"AUTO_EXPOSURE"
+"VIGNETTE",
+"VIGNETTE_MASKED",
+"COLOR_GRADING_HDR",
+
+UNUSED-------------------------------------------
+"_ALPHABLEND_ON",
+"_ALPHAPREMULTIPLY_ON",
+"_ALPHATEST_ON",
+"GEOM_TYPE_BRANCH_DETAIL",
+"GEOM_TYPE_FROND",
+"PIXELSNAP_ON",
+"SOFTPARTICLES_ON",
+"DITHERING",
+"TONEMAPPING_NEUTRAL",
+"TONEMAPPING_FILMIC",
+"TONEMAPPING_ACES",
+"TONEMAPPING_CUSTOM",
+"DEPTH_OF_FIELD_COC_VIEW",
+"COLOR_GRADING",
+"COLOR_GRADING_LOG_VIEW",
+"VIGNETTE_CLASSIC",
+"COLOR_GRADING_HDR_3D",
+
+DO NOT USE -----------------------------------------
+"BILLBOARD_FACE_CAMERA_POS",
+*/
+
+
+#ifndef POI_PASS
+ #define POI_PASS
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #ifdef POI_META_PASS
+ #include "UnityMetaPass.cginc"
+ #endif
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+
+ #include "CGI_PoiSpawnInVert.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+
+ #ifdef BLOOM_LOW
+ #include "CGI_PoiBulge.cginc"
+ #endif
+
+ #include "CGI_PoiVert.cginc"
+
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+
+ #include "CGI_PoiDithering.cginc"
+
+ #ifdef _PARALLAXMAP
+ #include "CGI_PoiParallax.cginc"
+ #endif
+
+ #ifdef USER_LUT
+ #include "CGI_PoiUVDistortion.cginc"
+ #endif
+
+ #ifdef VIGNETTE
+ #include "CGI_PoiRGBMask.cginc"
+ #endif
+
+ #include "CGI_PoiData.cginc"
+
+ #ifdef _SPECULARHIGHLIGHTS_OFF
+ #include "CGI_PoiBlackLight.cginc"
+ #endif
+
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+
+ #ifdef DEPTH_OF_FIELD
+ #include "CGI_PoiHologram.cginc"
+ #endif
+
+ #ifdef BLOOM_LENS_DIRT
+ #include "CGI_PoiIridescence.cginc"
+ #endif
+
+
+ #ifdef FUR
+ #include "CGI_PoiFur.cginc"
+ #include "CGI_PoiGeomFur.cginc"
+ #endif
+
+ #ifdef VIGNETTE_MASKED
+ #include "CGI_PoiLighting.cginc"
+ #endif
+
+ #include "CGI_PoiMainTex.cginc"
+
+ #ifdef GEOM_TYPE_BRANCH
+ #include "CGI_PoiDecal.cginc"
+ #endif
+
+ #ifdef CHROMATIC_ABERRATION
+ #include "CGI_PoiVoronoi.cginc"
+ #endif
+
+ #ifdef _DETAIL_MULX2
+ #include "CGI_PoiPanosphere.cginc"
+ #endif
+
+ #ifdef EFFECT_BUMP
+ #include "CGI_PoiMSDF.cginc"
+ #endif
+
+ #ifdef GRAIN
+ #include "CGI_PoiDepthColor.cginc"
+ #endif
+
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _GLOSSYREFLECTIONS_OFF
+ #include "CGI_PoiRimLighting.cginc"
+ #endif
+
+ #ifdef _MAPPING_6_FRAMES_LAYOUT
+ #include "CGI_PoiEnvironmentalRimLighting.cginc"
+ #endif
+
+ #ifdef _METALLICGLOSSMAP
+ #include "CGI_PoiMetal.cginc"
+ #endif
+
+ #ifdef _COLORADDSUBDIFF_ON
+ #include "CGI_PoiMatcap.cginc"
+ #endif
+
+ #ifdef _SPECGLOSSMAP
+ #include "CGI_PoiSpecular.cginc"
+ #endif
+
+ #ifdef BLOOM
+ #include "CGI_PoiVideo.cginc"
+ #endif
+
+ #ifdef _TERRAIN_NORMAL_MAP
+ #include "CGI_PoiSubsurfaceScattering.cginc"
+ #endif
+
+ #include "CGI_PoiBlending.cginc"
+ #include "CGI_PoiGrab.cginc"
+
+ #ifdef _SUNDISK_SIMPLE
+ #include "CGI_PoiGlitter.cginc"
+ #endif
+
+ #ifdef _EMISSION
+ #include "CGI_PoiEmission.cginc"
+ #endif
+
+ #ifdef _COLORCOLOR_ON
+ #include "CGI_PoiClearCoat.cginc"
+ #endif
+
+ #include "CGI_PoiAlphaToCoverage.cginc"
+
+ #ifdef _COLOROVERLAY_ON
+ #include "CGI_PoiDebug.cginc"
+ #endif
+ #include "CGI_PoiFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
new file mode 100644
index 00000000..5d4bcc83
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c6529cc4a8ea7f94d83105aafaa3754b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
new file mode 100644
index 00000000..5e365972
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
@@ -0,0 +1,26 @@
+#ifndef POI_PASS_OUTLINE
+ #define POI_PASS_OUTLINE
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiOutlineVert.cginc"
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiLighting.cginc"
+ #include "CGI_PoiMainTex.cginc"
+ #include "CGI_PoiData.cginc"
+ #include "CGI_PoiDithering.cginc"
+ #include "CGI_PoiOutlineFrag.cginc"
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
new file mode 100644
index 00000000..55315f52
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0cf3b6558ab9996498ea24658e5e44e0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
new file mode 100644
index 00000000..d21a5d4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
@@ -0,0 +1,44 @@
+#ifndef POI_PASS_SHADOW
+ #define POI_PASS_SHADOW
+
+ #pragma multi_compile_shadowcaster
+ #include "UnityCG.cginc"
+ #include "UnityShaderVariables.cginc"
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiShadowIncludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiMirror.cginc"
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+ #include "CGI_PoiData.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+ #include "CGI_PoiDithering.cginc"
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+ #include "CGI_PoiSpawnInVert.cginc"
+ #include "CGI_PoiShadowVert.cginc"
+ #include "CGI_PoiShadowFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
new file mode 100644
index 00000000..afac5d26
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 10795545059d9984b96365fadbe0fcb5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
new file mode 100644
index 00000000..d4cd1697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
@@ -0,0 +1,131 @@
+#ifndef POI_RGBMASK
+ #define POI_RGBMASK
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RGBMask); float4 _RGBMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RedTexure); float4 _RedTexure_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_GreenTexture); float4 _GreenTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BlueTexture); float4 _BlueTexture_ST;
+
+ #ifdef GEOM_TYPE_MESH
+ POI_NORMAL_NOSAMPLER(_RgbNormalR);
+ POI_NORMAL_NOSAMPLER(_RgbNormalG);
+ POI_NORMAL_NOSAMPLER(_RgbNormalB);
+ float _RgbNormalsEnabled;
+ #endif
+
+ float4 _RedColor;
+ float4 _GreenColor;
+ float4 _BlueColor;
+
+ float4 _RGBMaskPanning;
+ float4 _RGBRedPanning;
+ float4 _RGBGreenPanning;
+ float4 _RGBBluePanning;
+
+ float _RGBBlendMultiplicative;
+
+ float _RGBMaskUV;
+ float _RGBRed_UV;
+ float _RGBGreen_UV;
+ float _RGBBlue_UV;
+ float _RGBUseVertexColors;
+ float _RGBNormalBlend;
+
+ static float3 rgbMask;
+
+ void calculateRGBNormals(inout half3 mainTangentSpaceNormal)
+ {
+ #ifdef GEOM_TYPE_MESH
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+
+ if(float(0))
+ {
+
+ if(float(0) == 0)
+ {
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.r);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.g);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.b);
+ }
+ return;
+ }
+ else
+ {
+ half3 newNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0) * rgbMask.r);
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.g);
+ normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.b);
+ mainTangentSpaceNormal = BlendNormals(newNormal, mainTangentSpaceNormal);
+ return;
+ }
+ }
+ #endif
+ }
+
+ float3 calculateRGBMask(float3 baseColor)
+ {
+ //If RGB normals are in use this data will already exist
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+ float4 red = POI2D_SAMPLER_PAN(_RedTexure, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 green = POI2D_SAMPLER_PAN(_GreenTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 blue = POI2D_SAMPLER_PAN(_BlueTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+
+ if(float(0))
+ {
+ float3 RGBColor = 1;
+ RGBColor = lerp(RGBColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ baseColor *= RGBColor;
+ }
+ else
+ {
+ baseColor = lerp(baseColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ }
+
+ return baseColor;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
new file mode 100644
index 00000000..a54f4939
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1a2de6ca9f5e39344abb3d8f7a76f335
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
new file mode 100644
index 00000000..137ef6de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
@@ -0,0 +1,4 @@
+#ifndef POI_RNG
+ #define POI_RNG
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
new file mode 100644
index 00000000..84785db2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e850da0e0dfeae244a919a0fdeb9662c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
new file mode 100644
index 00000000..11f3eea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_RANDOM
+ #define POI_RANDOM
+
+ float _EnableRandom;
+ float m_start_Angle;
+ float _AngleType;
+ float3 _AngleForwardDirection;
+ float _CameraAngleMin;
+ float _CameraAngleMax;
+ float _ModelAngleMin;
+ float _ModelAngleMax;
+ float _AngleMinAlpha;
+ float _AngleCompareTo;
+
+ float ApplyAngleBasedRendering(float3 modelPos, float3 worldPos)
+ {
+ half cameraAngleMin = float(45) / 180;
+ half cameraAngleMax = float(90) / 180;
+ half modelAngleMin = float(45) / 180;
+ half modelAngleMax = float(90) / 180;
+ float3 pos = float(0) == 0 ? modelPos : worldPos;
+ half3 cameraToModelDirection = normalize(pos - getCameraPosition());
+ half3 modelForwardDirection = normalize(mul(unity_ObjectToWorld, normalize(float4(0,0,1,0))));
+ half cameraLookAtModel = remapClamped(.5 * dot(cameraToModelDirection, getCameraForward()) + .5, cameraAngleMax, cameraAngleMin, 0, 1);
+ half modelLookAtCamera = remapClamped(.5 * dot(-cameraToModelDirection, modelForwardDirection) + .5, modelAngleMax, modelAngleMin, 0, 1);
+ if (float(0) == 0)
+ {
+ return max(cameraLookAtModel, float(0));
+ }
+ else if(float(0) == 1)
+ {
+ return max(modelLookAtCamera, float(0));
+ }
+ else if(float(0) == 2)
+ {
+ return max(cameraLookAtModel * modelLookAtCamera, float(0));
+ }
+ return 1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
new file mode 100644
index 00000000..10b39d11
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 301d68355982d64449ed6a37307611b6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
new file mode 100644
index 00000000..d4571c0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
@@ -0,0 +1,47 @@
+#ifndef POI_RIM
+ #define POI_RIM
+
+ float4 _RimLightColor;
+ float _RimLightingInvert;
+ float _RimWidth;
+ float _RimStrength;
+ float _RimSharpness;
+ float _RimLightColorBias;
+ float _ShadowMix;
+ float _ShadowMixThreshold;
+ float _ShadowMixWidthMod;
+ float _EnableRimLighting;
+ float _RimBrighten;
+ float _RimLightNormal;
+
+ POI_TEXTURE_NOSAMPLER(_RimTex);
+ POI_TEXTURE_NOSAMPLER(_RimMask);
+ POI_TEXTURE_NOSAMPLER(_RimWidthNoiseTexture);
+
+ float _RimWidthNoiseStrength;
+
+ float4 rimColor = float4(0, 0, 0, 0);
+ float rim = 0;
+
+ void applyRimLighting(inout float4 albedo, inout float3 rimLightEmission)
+ {
+ float rimNoise = POI2D_SAMPLER_PAN(_RimWidthNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimNoise = (rimNoise - .5) * float(0.1);
+
+ float viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+
+ if (float(0))
+ {
+ viewDotNormal = 1 - abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+ }
+ float rimWidth = float(0.8);
+ rimWidth -= rimNoise;
+ float rimMask = POI2D_SAMPLER_PAN(_RimMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimColor = POI2D_SAMPLER_PAN(_RimTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ rimWidth = max(lerp(rimWidth, rimWidth * lerp(0, 1, poiLight.lightMap - float(0.5)) * float(0.5), float(0)),0);
+ rim = 1 - smoothstep(min(float(0.25), rimWidth), rimWidth, viewDotNormal);
+ rim *= float4(1,1,1,1).a * rimColor.a * rimMask;
+ rimLightEmission = rim * lerp(albedo, rimColor, float(0)) * float(0);
+ albedo.rgb = lerp(albedo.rgb, lerp(albedo.rgb, rimColor, float(0)) + lerp(albedo.rgb, rimColor, float(0)) * float(0), rim);
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
new file mode 100644
index 00000000..66b4b7af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4e97381280b2d4245ad9b048eba9da86
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
new file mode 100644
index 00000000..16701f61
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
@@ -0,0 +1,116 @@
+#ifndef SHADOW_FRAG
+ #define SHADOW_FRAG
+
+ float2 _MainDistanceFade;
+ float _ForceOpaque;
+ float _MainShadowClipMod;
+ float2 _AlphaMaskPan;
+ float _AlphaMaskUV;
+ sampler3D _DitherMaskLOD;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+
+ half4 fragShadowCaster(
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ V2FShadow i, uint facing: SV_IsFrontFace
+ #endif
+ ): SV_Target
+ {
+ poiMesh.uv[0] = i.uv;
+ poiMesh.uv[1] = i.uv1;
+ poiMesh.uv[2] = i.uv2;
+ poiMesh.uv[3] = i.uv3;
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+
+
+ //Possible Bug with clip
+ float clipValue = clamp(float(0.5) + float(0), - .001, 1.001);
+
+ poiMesh.vertexColor = saturate(i.vertexColor);
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+ #if defined(UNITY_STANDARD_USE_SHADOW_UVS)
+
+ half4 alpha = mainTexture;
+
+
+ if (float(0))
+ {
+ if(IsInMirror())
+ {
+ alpha.a = UNITY_SAMPLE_TEX2D_SAMPLER(_MirrorTexture, _MainTex, TRANSFORM_TEX(i.uv, _MirrorTexture)).a;
+ }
+ }
+
+
+ alpha.a *= smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(i.modelPos, _WorldSpaceCameraPos));
+ half alphaMask = POI2D_PAN(_AlphaMask, poiMesh.uv[float(0)], float4(0,0,0,0));
+ alpha.a *= alphaMask;
+ alpha.a *= float4(1,1,1,1).a + .0001;
+ alpha.a += float(0);
+ alpha.a = saturate(alpha.a);
+
+
+ if(float(0) == 0)
+ {
+ alpha.a = 1;
+ }
+
+
+ if(float(0) == 1)
+ {
+ applyShadowDithering(alpha.a, calcScreenUVs(i.grabPos).xy);
+ }
+
+ #ifdef POI_DISSOLVE
+ float3 fakeEmission = 1;
+ calculateDissolve(alpha, fakeEmission);
+ #endif
+
+ if(float(0) == 1)
+ {
+ clip(alpha.a - 0.001);
+ }
+
+ /*
+ return poiMesh.vertexColor.g;
+
+ #ifdef POI_RANDOM
+ alpha.a *= i.angleAlpha;
+ #endif
+
+
+ if(float(0) >= 1)
+ {
+ applySpawnInShadow(uv[0], i.localPos);
+
+ #if defined(POI_FLIPBOOK)
+ alpha.a *= applyFlipbookAlphaToShadow(uv[float(0)]);
+ #endif
+ }
+ */
+
+ if (float(0) == 1)
+ {
+ clip(alpha.a - clipValue);
+ }
+
+
+ if(float(0) > 1)
+ {
+ float dither = tex3D(_DitherMaskLOD, float3(i.pos.xy * .25, alpha.a * 0.9375)).a;
+ clip(dither - 0.01);
+ }
+
+ #endif
+ SHADOW_CASTER_FRAGMENT(i)
+ }
+
+ #endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
new file mode 100644
index 00000000..8870dcd2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cfcb2950590eab848898e55d23b4c382
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
new file mode 100644
index 00000000..fd8f19a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
@@ -0,0 +1,41 @@
+#ifndef SHADOW_INCLUDES
+ #define SHADOW_INCLUDES
+
+ #define UNITY_STANDARD_USE_SHADOW_UVS 1
+
+ float4 _Color;
+ sampler2D _AlphaMask; float4 _AlphaMask_ST;
+
+ struct VertexInputShadow
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ struct V2FShadow
+ {
+ V2F_SHADOW_CASTER_NOPOS
+ float4 pos: SV_POSITION;
+ float2 uv: TEXCOORD1;
+ float2 uv1: TEXCOORD2;
+ float2 uv2: TEXCOORD3;
+ float2 uv3: TEXCOORD4;
+ float3 modelPos: TEXCOORD5;
+ float4 worldPos: TEXCOORD6;
+ float4 localPos: TEXCOORD7;
+ float3 angleAlpha: TEXCOORD8;
+ float4 grabPos: TEXCOORD9;
+ fixed3 barycentricCoordinates: TEXCOORD10;
+ float4 vertexColor: TEXCOORD11;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
new file mode 100644
index 00000000..fa21b2c5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7768173323f40754e8865c57146fc571
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
new file mode 100644
index 00000000..f0b7184a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
@@ -0,0 +1,80 @@
+float _EnableTouchGlow;
+float _EnableBulge;
+float _VertexManipulationHeightUV;
+
+V2FShadow vertShadowCaster(VertexInputShadow v)
+{
+ V2FShadow o;
+ UNITY_SETUP_INSTANCE_ID(v);
+
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(V2FShadow, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.uv = v.uv0;
+ o.uv1 = v.uv1;
+ o.uv2 = v.uv2;
+ o.uv3 = v.uv3;
+
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, v.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.vertexColor = v.color;
+
+
+ if(_EnableTouchGlow || _EnableBulge)
+ {
+ o.pos = UnityObjectToClipPos(float3(0, 0, -5));
+ o.localPos.xyz = float3(0, 0, -5);
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ }
+
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+
+ o.pos = UnityClipSpaceShadowCasterPos(o.localPos, v.normal);
+ o.pos = UnityApplyLinearShadowBias(o.pos);
+
+ return o;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
new file mode 100644
index 00000000..f569741d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 5f6a73465f053504c91e4fa6d6b09595
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
new file mode 100644
index 00000000..0c18d1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+ #endif
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_SpawnInNoise); float4 _SpawnInNoise_ST;
+
+ float calculateGradientValueFrag(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnIn(inout float4 finalColor, inout float3 spawnInEmission, float2 uv, float3 localPos)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ spawnInEmission = saturate(inverseGradient + _SpawnInAlpha + _SpawnInEmissionOffset +noise - 1) * _SpawnInEmissionColor;
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+
+ void applySpawnInShadow(float2 uv, float3 localPos)
+ {
+
+ if(_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float alpha = gradient - _SpawnInAlpha - noise + length(_SpawnInVertOffset);
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
new file mode 100644
index 00000000..72087d0d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 68abc66e10ca85c45b3fb950ca4cc7df
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
new file mode 100644
index 00000000..fdcc457f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
@@ -0,0 +1,40 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+
+ #endif
+ //sampler2D _SpawnInNoiseVert; float4 _SpawnInNoiseVert_ST;
+
+ float calculateGradientValueVert(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnInVert(inout float4 worldPos, inout float4 localPos, float2 uv)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = 0;
+ float gradient = calculateGradientValueVert(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ worldPos.xyz += saturate(inverseGradient + _SpawnInAlpha + _SpawnInVertOffsetOffset -1) * float3(0, _SpawnInVertOffset, 0);
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+ //float noise = tex2Dlod(_SpawnInNoise, float4(TRANSFORM_TEX(uv, _SpawnInNoise))).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
new file mode 100644
index 00000000..1cc2571d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 78cc215bab77eef4dbd4ff8be561862c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
new file mode 100644
index 00000000..f5287465
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
@@ -0,0 +1,488 @@
+#ifndef POI_SPECULAR
+ #define POI_SPECULAR
+ float _SpecWhatTangent;
+ float _SpecularType;
+ float _SmoothnessFrom;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap);
+ fixed _CenterOutSpecColor;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro);
+ float _SpecularAnisoJitterMirrored;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoFakeUV);
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask);
+ float _SpecularAnisoJitterMicroMultiplier;
+ float _SpecularAnisoJitterMacroMultiplier;
+ float4 _SpecularTint;
+ float _SpecularSmoothness;
+ float _Spec1Offset;
+ float _Spec1JitterStrength;
+ float _Spec2Smoothness;
+ float _Spec2Offset;
+ float _Spec2JitterStrength;
+ float _AnisoUseTangentMap;
+ float _AnisoSpec1Alpha;
+ float _AnisoSpec2Alpha;
+ float _SpecularInvertSmoothness;
+ half _SpecularMetallic;
+ float _SpecularNormal;
+ float _SpecularNormal1;
+ // Toon
+ fixed _SpecularToonStart;
+ fixed _SpecularToonEnd;
+ half4 _SpecularToonInnerOuter;
+
+ float _EnableSpecular1;
+ float _SpecWhatTangent1;
+ float _SpecularType1;
+ float _SmoothnessFrom1;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro1);
+ float _SpecularAnisoJitterMirrored1;
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask1);
+ float _SpecularAnisoJitterMicroMultiplier1;
+ float _SpecularAnisoJitterMacroMultiplier1;
+ float4 _SpecularTint1;
+ float _SpecularSmoothness1;
+ float _Spec1Offset1;
+ float _Spec1JitterStrength1;
+ float _Spec2Smoothness1;
+ float _Spec2Offset1;
+ float _Spec2JitterStrength1;
+ float _AnisoUseTangentMap1;
+ float _AnisoSpec1Alpha1;
+ float _AnisoSpec2Alpha1;
+ float _SpecularInvertSmoothness1;
+ half _SpecularMetallic1;
+ // Toon
+ half4 _SpecularToonInnerOuter1;
+ fixed _SpecularToonStart1;
+ fixed _SpecularToonEnd1;
+
+ UnityIndirect ZeroIndirect()
+ {
+ UnityIndirect ind;
+ ind.diffuse = 0;
+ ind.specular = 0;
+ return ind;
+ }
+
+ // From unity just putting it here in case I want to mod it
+ half4 poiRealisticSpecular(half3 diffColor, half3 specColor, half oneMinusReflectivity, half smoothness,
+ float3 normal, float3 halfDir,
+ UnityLight light, UnityIndirect gi)
+ {
+ float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
+ #define UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV 0
+
+ #if UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV
+ half shiftAmount = dot(normal, poiCam.viewDir);
+ normal = shiftAmount < 0.0f ? normal + poiCam.viewDir * (-shiftAmount + 1e-5f): normal;
+ float nv = saturate(dot(normal, poiCam.viewDir));
+ #else
+ half nv = abs(dot(normal, poiCam.viewDir));
+ #endif
+
+ float nl = saturate(dot(normal, light.dir));
+ float nh = saturate(dot(normal, halfDir));
+
+ half lv = saturate(dot(light.dir, poiCam.viewDir));
+ half lh = saturate(dot(light.dir, halfDir));
+
+ half diffuseTerm = DisneyDiffuse(nv, nl, lh, perceptualRoughness) * nl;
+
+ float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
+
+ roughness = max(roughness, 0.002);
+ float V = SmithJointGGXVisibilityTerm(nl, nv, roughness);
+ float D = GGXTerm(nh, roughness);
+
+ float specularTerm = V * D * UNITY_PI;
+
+ #ifdef UNITY_COLORSPACE_GAMMA
+ specularTerm = sqrt(max(1e-4h, specularTerm));
+ #endif
+
+ specularTerm = max(0, specularTerm * nl);
+ #if defined(_POI_SPECULARHIGHLIGHTS_OFF)
+ specularTerm = 0.0;
+ #endif
+
+ half surfaceReduction;
+ #ifdef UNITY_COLORSPACE_GAMMA
+ surfaceReduction = 1.0 - 0.28 * roughness * perceptualRoughness;
+ #else
+ surfaceReduction = 1.0 / (roughness * roughness + 1.0);
+ #endif
+
+ specularTerm *= any(specColor) ? 1.0: 0.0;
+
+ half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
+ half3 color = diffColor * (gi.diffuse + light.color * diffuseTerm)
+ + specularTerm * light.color * FresnelTerm(specColor, lh)
+ + surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, nv);
+
+ return half4(color, 1);
+ }
+
+ half3 calculateRealisticSpecular(float4 albedo, float2 uv, float4 specularTint, float specularSmoothness, float invertSmoothness, float mixAlbedoWithTint, float4 specularMap, float3 specularLight, float3 normal, float attenuation, float3 lightDirection, float nDotL, float3 halfDir)
+ {
+ half oneMinusReflectivity;
+ half3 finalSpecular;
+ UnityLight unityLight;
+ unityLight.color = specularLight;
+ unityLight.dir = lightDirection;
+ unityLight.ndotl = nDotL;
+
+
+ if (float(1) == 0)
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularMap.rgb * specularTint.rgb, /*out*/ oneMinusReflectivity);
+ finalSpecular = poiRealisticSpecular(diffColor, specularMap.rgb, oneMinusReflectivity, specularMap.a * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ else
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularTint.rgb, /*out*/ oneMinusReflectivity);
+ float smoothness = max(max(specularMap.r, specularMap.g), specularMap.b);
+ finalSpecular = poiRealisticSpecular(diffColor, 1, oneMinusReflectivity, smoothness * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ finalSpecular *= lerp(1, albedo.rgb, mixAlbedoWithTint);
+ return finalSpecular;
+ }
+
+ half3 calculateToonSpecular(float4 albedo, float2 uv, float2 specularToonInnerOuter, float specularMixAlbedoIntoTint, float smoothnessFrom, float4 specularMap, float3 specularLight, float3 normal, float3 halfDir, float attenuation)
+ {
+ half3 finalSpecular = smoothstep(1 - specularToonInnerOuter.y, 1 - specularToonInnerOuter.x, dot(halfDir, normal)) * specularLight;
+
+ if (smoothnessFrom == 0)
+ {
+ finalSpecular.rgb *= specularMap.rgb * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ finalSpecular *= specularMap.a;
+ }
+ else
+ {
+ finalSpecular *= specularMap.r * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+ return finalSpecular;
+ }
+
+ float3 strandSpecular(float TdotL, float TdotV, float specPower, float nDotL)
+ {
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+ float Specular = saturate(nDotL) * pow(saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV), specPower);
+ half normalization = sqrt((specPower + 1) * ((specPower) + 1)) / (8 * pi);
+ Specular *= normalization;
+ return Specular;
+ }
+
+ half3 AnisotropicSpecular(
+ float specWhatTangent, float anisoUseTangentMap, float specularSmoothness, float spec2Smoothness,
+ float anisoSpec1Alpha, float anisoSpec2Alpha, float4 specularTint, float specularMixAlbedoIntoTint, float4 specularMap, float3 specularLight, float3 lightDirection, float3 halfDir, float nDotL, float jitter, float4 packedTangentMap, in float4 albedo)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ tangentDirectionMap += float(0) +jitter;
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+ half specPower = RoughnessToSpecPower(1.0 - specularSmoothness * specularMap.a);
+ half spec2Power = RoughnessToSpecPower(1.0 - spec2Smoothness * specularMap.a);
+ half Specular = 0;
+
+ float3 spec = strandSpecular(TdotL, TdotV, specPower, nDotL) * anisoSpec1Alpha;
+ float3 spec2 = strandSpecular(TdotL, TdotV, spec2Power, nDotL) * anisoSpec2Alpha;
+
+ return max(spec, spec2) * specularMap.rgb * specularTint.a * specularLight * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+
+ inline float3 toonAnisoSpecular(float specWhatTangent, float anisoUseTangentMap, float3 lightDirection, float halfDir, float4 specularMap, float nDotL, fixed gradientStart, fixed gradientEnd, float4 specColor, float4 finalColor, fixed metallic, float jitter, float mirrored, float4 packedTangentMap)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ if (!mirrored)
+ {
+ tangentDirectionMap += jitter;
+ }
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+
+ float specular = saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV);
+
+ fixed smoothAlpha = specular;
+ if(mirrored)
+ {
+ smoothAlpha = max(specular - jitter, 0);
+ }
+
+ specular = smoothstep(gradientStart, gradientEnd, smoothAlpha);
+
+ /*
+
+ if(_CenterOutSpecColor)
+ {
+ specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, clamp(float2(specular, specular), 0.01, .99), float4(0,0,0,0));
+ }
+ */
+
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+
+ return saturate(nDotL) * specular * poiLight.color * specColor * specularMap.rgb * lerp(1, finalColor, metallic) * specularMap.a;
+ }
+
+ inline float SpecularHQ(half roughness, half dotNH, half dotLH)
+ {
+ roughness = saturate(roughness);
+ roughness = max((roughness * roughness), 0.002);
+ half roughnessX2 = roughness * roughness;
+
+ half denom = dotNH * dotNH * (roughnessX2 - 1.0) + 1.0f;
+ half D = roughnessX2 / (3.14159 * denom * denom);
+
+ half k = roughness / 2.0f;
+ half k2 = k * k;
+ half invK2 = 1.0f - k2;
+
+ half vis = rcp(dotLH * dotLH * invK2 + k2);
+
+ float specTerm = vis * D;
+
+ return specTerm;
+ }
+
+ float3 calculateNewSpecular(in float3 specularMap, uint colorFrom, in float4 albedo, in float3 specularTint, in float specularMetallic, in float specularSmoothness, in half dotNH, in half dotLH, in float3 lightColor, in float attenuation)
+ {
+ float3 specColor = specularTint;
+ float metallic = specularMetallic;
+ float roughness = 1 - specularSmoothness;
+ float perceptualRoughness = roughness;
+ //float reflectInverse = DielectricSpec.a - metallic * DielectricSpec.a;
+ //float reflectivity = 1.0h - reflectInverse;
+ float3 specMapColor = lerp(specularMap, 1, colorFrom);
+ float3 specularColor = lerp(DielectricSpec.rgb * specMapColor, lerp(specularMap, albedo.rgb, colorFrom), metallic);
+ //albedo.rgb *= reflectInverse;
+ return clamp(specularColor * lightColor * attenuation * specularTint * SpecularHQ(perceptualRoughness, dotNH, dotLH), 0, lightColor * specularTint);
+ }
+
+ float3 calculateSpecular(in float4 albedo)
+ {
+ half3 finalSpecular = 0;
+ half3 finalSpecular1 = 0;
+ float4 realisticAlbedo = albedo;
+ float4 realisticAlbedo1 = albedo;
+ float4 specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half metallic = POI2D_SAMPLER_PAN(_SpecularMetallicMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ half specularMask = POI2D_SAMPLER_PAN(_SpecularMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float attenuation = saturate(poiLight.nDotL);
+ #ifdef POI_LIGHTING
+
+ if (float(0) && float(0) == 0 && float(0) == 1)
+ {
+ attenuation = poiLight.rampedLightMap;
+ }
+ #endif
+
+
+ if(float(1) == 1) // Realistic
+ {
+ if (float(1) == 1)
+ {
+ specularMap.a = specularMap.r;
+ specularMap.rgb = 1;
+ }
+
+ if(float(0))
+ {
+ specularMap.a = 1 - specularMap.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, attenuation);
+ #else
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic, jitter, float(0), packedTangentMap);
+ finalSpecular *= attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular += calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic, float(1), specularMap, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += AnisotropicSpecular(float(0), float(0), float(1), float(0), float(1), float(1), float4(1,1,1,1), metallic, specularMap, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular *= float4(1,1,1,1);
+ finalSpecular *= attenuation;
+ }
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+
+ finalSpecular *= float4(1,1,1,1).a;
+ finalSpecular = finalSpecular.rgb;
+ finalSpecular *= specularMask;
+
+
+ if (float(0))
+ {
+ float4 specularMap1 = POI2D_SAMPLER_PAN(_SpecularMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half specularMask1 = POI2D_SAMPLER_PAN(_SpecularMask1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ half metallic1 = POI2D_SAMPLER_PAN(_SpecularMetallicMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ float attenuation = poiLight.attenuation;
+
+ if(float(1) == 1) // Realistic
+ {
+
+ if (float(1) == 1)
+ {
+ specularMap1.a = specularMap1.r;
+ specularMap1.rgb = 1;
+ }
+ else
+ {
+ realisticAlbedo1.rgb = specularMap1.rgb;
+ }
+
+
+ if(float(0))
+ {
+ specularMap1.a = 1 - specularMap1.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, saturate(poiLight.nDotL));
+ #else
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap1, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic1, jitter, float(0), packedTangentMap);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular1 = calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic1, float(1), specularMap1, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular1 *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 = AnisotropicSpecular(float(0), float(0), float(0.75), float(0), float(1), float(1), float4(1,1,1,1), metallic1, specularMap1, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular1 *= float4(1,1,1,1);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ // Non Important Lights
+ #ifdef VERTEXLIGHT_ON
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular1 += calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+ #endif
+
+ finalSpecular1 *= float4(1,1,1,1).a;
+ finalSpecular1 = finalSpecular1.rgb;
+ finalSpecular1 *= specularMask1;
+ }
+ return finalSpecular + finalSpecular1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
new file mode 100644
index 00000000..5cc7d171
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8c41616088604a04a97098af85ae1c27
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
new file mode 100644
index 00000000..b7c21c01
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
@@ -0,0 +1,28 @@
+#ifndef SUBSURFACE
+ #define SUBSURFACE
+
+ float _SSSThicknessMod;
+ float _SSSSCale;
+ float _SSSPower;
+ float _SSSDistortion;
+ float4 _SSSColor;
+ float _EnableSSS;
+
+ POI_TEXTURE_NOSAMPLER(_SSSThicknessMap);
+
+ float3 calculateSubsurfaceScattering()
+ {
+ float SSS = 1 - POI2D_SAMPLER_PAN(_SSSThicknessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ half3 vLTLight = poiLight.direction + poiMesh.normals[0] * float(1);
+ half flTDot = pow(saturate(dot(poiCam.viewDir, -vLTLight)), float(5)) * float(0.25);
+ #ifdef FORWARD_BASE_PASS
+ half3 fLT = (flTDot) * saturate(SSS + - 1 * float(0));
+ #else
+ half3 fLT = poiLight.attenuation * (flTDot) * saturate(SSS + - 1 * float(0));
+ #endif
+
+ return fLT * poiLight.color * float4(1,0,0,1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
new file mode 100644
index 00000000..cf0ec94f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 726bddc2de2097949bd7816f7f73f084
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
new file mode 100644
index 00000000..4912473d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
@@ -0,0 +1,117 @@
+#ifndef POI_TESSELLATION
+ #define POI_TESSELLATION
+
+ float _TessellationPhongStrength;
+ float _TessellationEdgeLength;
+ float _TessellationExtrusionAmount;
+ float _TessellationUniform;
+
+ struct TessellationControlPoint
+ {
+ float4 vertex: INTERNALTESSPOS;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ };
+
+ struct TessellationFactors
+ {
+ float edge[3]: SV_TessFactor;
+ float inside: SV_InsideTessFactor;
+ };
+
+ TessellationControlPoint poiTessellationVert(appdata v)
+ {
+ TessellationControlPoint p;
+ p.vertex = v.vertex;
+ p.normal = v.normal;
+ p.tangent = v.tangent;
+ p.color = v.color;
+ p.uv0 = v.uv0;
+ p.uv1 = v.uv1;
+ p.uv2 = v.uv2;
+ p.uv3 = v.uv3;
+ return p;
+ }
+
+ float TessellationEdgeFactor(float3 p0, float3 p1)
+ {
+ #ifndef _FADING_ON
+ float edgeLength = distance(p0, p1);
+
+ float3 edgeCenter = (p0 + p1) * 0.5;
+ float viewDistance = distance(edgeCenter, _WorldSpaceCameraPos);
+
+ return edgeLength * _ScreenParams.y /
+ (_TessellationEdgeLength * viewDistance);
+ #else
+ return _TessellationUniform;
+ #endif
+ }
+
+ TessellationFactors poiPatchConst(
+ InputPatch < TessellationControlPoint, 3 > patch
+ )
+ {
+
+ TessellationFactors f;
+ float3 p0 = mul(unity_ObjectToWorld, patch[0].vertex).xyz;
+ float3 p1 = mul(unity_ObjectToWorld, patch[1].vertex).xyz;
+ float3 p2 = mul(unity_ObjectToWorld, patch[2].vertex).xyz;
+ f.edge[0] = TessellationEdgeFactor(p1, p2);
+ f.edge[1] = TessellationEdgeFactor(p2, p0);
+ f.edge[2] = TessellationEdgeFactor(p0, p1);
+ f.inside = (TessellationEdgeFactor(p1, p2) +
+ TessellationEdgeFactor(p2, p0) +
+ TessellationEdgeFactor(p0, p1)) * (1 / 3.0);
+ return f;
+ }
+
+ [UNITY_domain("tri")]
+ [UNITY_outputcontrolpoints(3)]
+ [UNITY_outputtopology("triangle_cw")]
+ [UNITY_partitioning("fractional_odd")]
+ [UNITY_patchconstantfunc("poiPatchConst")]
+ TessellationControlPoint poiHull(
+ InputPatch < TessellationControlPoint, 3 > patch,
+ uint id: SV_OutputControlPointID
+ )
+ {
+ return patch[id];
+ }
+
+ [UNITY_domain("tri")]
+ v2f poiDomain(
+ TessellationFactors factors,
+ OutputPatch < TessellationControlPoint, 3 > patch,
+ float3 barycentricCoordinates: SV_DomainLocation
+ )
+ {
+ appdata data;
+
+ #define MY_DOMAIN_PROGRAM_INTERPOLATE(fieldName) data.fieldName = patch[0].fieldName * barycentricCoordinates.x + patch[1].fieldName * barycentricCoordinates.y + patch[2].fieldName * barycentricCoordinates.z;
+
+ MY_DOMAIN_PROGRAM_INTERPOLATE(vertex)
+ float3 pp[3];
+ for (int i = 0; i < 3; ++ i)
+ {
+ pp[i] = data.vertex.xyz - patch[i].normal * (dot(data.vertex.xyz, patch[i].normal) - dot(patch[i].vertex.xyz, patch[i].normal));
+ }
+ data.vertex.xyz = _TessellationPhongStrength * (pp[0] * barycentricCoordinates.x + pp[1] * barycentricCoordinates.y + pp[2] * barycentricCoordinates.z) + (1.0f - _TessellationPhongStrength) * data.vertex.xyz;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(normal)
+ data.vertex.xyz += data.normal.xyz * _TessellationExtrusionAmount;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(tangent)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(color)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv0)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv1)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv2)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv3)
+
+ return vert(data);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
new file mode 100644
index 00000000..9c622b5a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 549e38a3e9284b248855710655a83e40
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
new file mode 100644
index 00000000..38d5fd75
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_UV_DISTORTION
+ #define POI_UV_DISTORTION
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture); float4 _DistortionFlowTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture1); float4 _DistortionFlowTexture1_ST;
+ POI_TEXTURE_NOSAMPLER(_DistortionMask);
+
+ float _DistortionStrength;
+ float _DistortionStrength1;
+ float2 _DistortionSpeed;
+ float2 _DistortionSpeed1;
+
+ float2 getTorusUv(float2 uv)
+ {
+ // translated to hlsl from https://www.shadertoy.com/view/Md3Bz7
+ // http://web.cs.ucdavis.edu/~amenta/s12/findnorm.pdf
+ float phi = 6.28318530718f * uv.x;
+ float theta = 6.28318530718f * uv.y;
+ float3 c = cos(float3(phi, phi + 1.57079632679f, theta));
+ float2 result = float2(c.x * c.z, -c.y * c.z);
+ return result * 0.5 + 0.5;
+ }
+
+ float2 calculateDistortionUV(float2 uv)
+ {
+ half distortionMask = POI2D_SAMPLER_PAN(_DistortionMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flowVector = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ float4 flowVector1 = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture1, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture1) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ flowVector *= float(0.5);
+ flowVector1 *= float(0.5);
+ return uv + ((flowVector.xy + flowVector1.xy) / 2) * distortionMask;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
new file mode 100644
index 00000000..c743296f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 06f87084c85482c4590b5020b00c4295
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
new file mode 100644
index 00000000..0e29a179
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_V2F
+ #define POI_V2F
+
+ struct v2f
+ {
+ float4 pos: SV_POSITION;
+ float4 uv0: TEXCOORD0;
+ float4 uv1: TEXCOORD1;
+ float3 normal: TEXCOORD2;
+ float3 tangentViewDir: TEXCOORD3;
+ float4 tangent: TEXCOORD4;
+ float4 worldPos: TEXCOORD5;
+ float4 localPos: TEXCOORD6;
+ float4 grabPos: TEXCOORD7;
+ float3 barycentricCoordinates: TEXCOORD8;
+ #if defined(GRAIN)
+ float4 worldDirection: TEXCOORD9;
+ #endif
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV: TEXCOORD10;
+ #endif
+ float3 modelPos: TEXCOORD11;
+ float angleAlpha: TEXCOORD12;
+ float4 vertexColor: TEXCOORD14;
+ #ifdef FUR
+ float furAlpha: TEXCOORD15;
+ #endif
+ UNITY_SHADOW_COORDS(16)
+ UNITY_FOG_COORDS(17)
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ UNITY_VERTEX_OUTPUT_STEREO
+ };
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
new file mode 100644
index 00000000..affffabc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6961140935a07cf44a0247eb55821fa0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
new file mode 100644
index 00000000..1558e937
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
@@ -0,0 +1,126 @@
+#ifndef POI_VERT
+ #define POI_VERT
+
+ float _VertexManipulationHeightUV;
+ float _VertexUnwrap;
+
+ #define PM UNITY_MATRIX_P
+
+ inline float4 CalculateFrustumCorrection()
+ {
+ float x1 = -PM._31 / (PM._11 * PM._34);
+ float x2 = -PM._32 / (PM._22 * PM._34);
+ return float4(x1, x2, 0, PM._33 / PM._34 + x1 * PM._13 + x2 * PM._23);
+ }
+
+ v2f vert(appdata v)
+ {
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ #ifdef _COLOROVERLAY_ON
+ v.vertex.xyz = lerp(v.vertex.xyz, float3(v.uv0.x - .5, v.uv0.y - .5, 0), float(0));
+ #endif
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.tangent, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ #ifdef _REQUIRE_UV2 //POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ TANGENT_SPACE_ROTATION;
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ //o.localPos.x *= -1;
+ //o.localPos.xz += sin(o.localPos.y * 100 + _Time.y * 5) * .0025;
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, o.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+ o.vertexColor = v.color;
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.tangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
+
+ #ifdef POI_BULGE
+ bulgyWolgy(o);
+ #endif
+
+
+ o.angleAlpha = 1;
+ #ifdef _SUNDISK_NONE //POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ #if defined(LIGHTMAP_ON)
+ o.lightmapUV.xy = v.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
+ #endif
+ #ifdef DYNAMICLIGHTMAP_ON
+ o.lightmapUV.zw = v.uv2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0.xy);
+ UNITY_TRANSFER_FOG(o, o.pos);
+
+ #if defined(_PARALLAXMAP) // POI_PARALLAX
+ v.tangent.xyz = normalize(v.tangent.xyz);
+ v.normal = normalize(v.normal);
+ float3x3 objectToTangent = float3x3(
+ v.tangent.xyz,
+ cross(v.normal, v.tangent.xyz) * v.tangent.w,
+ v.normal
+ );
+ o.tangentViewDir = mul(objectToTangent, ObjSpaceViewDir(v.vertex));
+ #endif
+
+ #ifdef POI_META_PASS
+ o.pos = UnityMetaVertexPosition(v.vertex, v.uv1.xy, v.uv2.xy, unity_LightmapST, unity_DynamicLightmapST);
+ #endif
+
+ #if defined(GRAIN)
+ float4 worldDirection;
+
+ worldDirection.xyz = o.worldPos.xyz - _WorldSpaceCameraPos;
+ worldDirection.w = dot(o.pos, CalculateFrustumCorrection());
+ o.worldDirection = worldDirection;
+ #endif
+
+ return o;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
new file mode 100644
index 00000000..29654f83
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d92ca0c3d77dd9d4cb52b7a3797379dc
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
new file mode 100644
index 00000000..94c16148
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
@@ -0,0 +1,93 @@
+#ifndef POI_VERTEX_MANIPULATION
+ #define POI_VERTEX_MANIPULATION
+
+ #include "CGI_PoiMath.cginc"
+
+ float4 _VertexManipulationLocalTranslation;
+ float4 _VertexManipulationLocalRotation;
+ float4 _VertexManipulationLocalScale;
+ float4 _VertexManipulationWorldTranslation;
+
+ float _VertexManipulationHeight;
+ float _VertexManipulationHeightBias;
+ sampler2D _VertexManipulationHeightMask; float4 _VertexManipulationHeightMask_ST;
+ float2 _VertexManipulationHeightPan;
+
+
+ //Vertex Glitching
+ float _EnableVertexGlitch;
+ sampler2D _VertexGlitchMap; float4 _VertexGlitchMap_ST;
+ float _VertexGlitchThreshold;
+ float _VertexGlitchFrequency;
+ float _VertexGlitchStrength;
+ // Rounding
+ float _VertexRoundingDivision;
+ float _VertexRoundingEnabled;
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 tangent, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ tangent.xyz = rotate_with_quaternion(tangent.xyz, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyWorldVertexTransformation(inout float4 worldPos, inout float4 localPos, inout float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyWorldVertexTransformationShadow(inout float4 worldPos, inout float4 localPos, float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyVertexRounding(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if (float(0))
+ {
+ worldPos.xyz = (ceil(worldPos * float(500)) / float(500)) - 1 / float(500) * .5;
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+ void applyVertexGlitching(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if(_EnableVertexGlitch)
+ {
+ float3 forward = getCameraPosition() - mul(unity_ObjectToWorld, float4(0, 0, 0, 1)).xyz;
+ forward.y = 0;
+ forward = normalize(forward);
+ float3 glitchDirection = normalize(cross(float3(0, 1, 0), forward));
+ float glitchAmount = frac(sin(dot(_Time.xy + worldPos.y, float2(12.9898, 78.233))) * 43758.5453123) * 2 - 1;
+ /*
+ float uvl = worldPos.y * _VertexGlitchDensity + _Time.x * _VertexGlitchMapPanSpeed;
+ float uvr = worldPos.y * _VertexGlitchDensity - _Time.x * _VertexGlitchMapPanSpeed;
+ float glitchAmountLeft = tex2Dlod(_VertexGlitchMap, float4(uvl, uvl, 0, 0)).r;
+ float glitchAmountRight = -tex2Dlod(_VertexGlitchMap, float4(uvr, uvr, 0, 0)).r;
+ float glitchAmount = glitchAmountLeft + glitchAmountRight;
+ */
+ float time = _Time.y * _VertexGlitchFrequency;
+ float randomGlitch = (sin(time) + sin(2.2 * time + 5.52) + sin(2.9 * time + 0.93) + sin(4.6 * time + 8.94)) / 4;
+ worldPos.xyz += glitchAmount * glitchDirection * (_VertexGlitchStrength * .01) * step(_VertexGlitchThreshold, randomGlitch);
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+#endif
+//
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
new file mode 100644
index 00000000..d8021242
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 916c0619a7722334b838b7119b91bc48
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
new file mode 100644
index 00000000..ec2d37e4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
@@ -0,0 +1,266 @@
+#ifndef POI_VIDEO
+ #define POI_VIDEO
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoPixelTexture); float4 _VideoPixelTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoMaskTexture); float4 _VideoMaskTexture_ST;
+
+ float _VideoUVNumber;
+ float _VideoType;
+ float3 pixels;
+ float2 _VideoResolution;
+ sampler2D _VideoGameboyRamp;
+ half _VideoBacklight;
+ half _VideoCRTRefreshRate;
+ half _VideoCRTPixelEnergizedTime;
+ half _VideoEnableVideoPlayer;
+ half _VideoRepeatVideoTexture;
+ half _VideoPixelateToResolution;
+ float2 _VideoMaskPanning;
+ // Video Settings
+ half _VideoSaturation;
+ half _VideoContrast;
+ float2 _VideoTiling;
+ float2 _VideoOffset;
+ float2 _VideoPanning;
+ //Debug
+ half _VideoEnableDebug;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoDebugTexture); float4 _VideoDebugTexture_ST;
+
+
+ sampler2D _VRChat_VideoPlayer;
+ float4 _VRChat_VideoPlayer_TexelSize;
+
+ float4 globalVideoPlayerColor;
+ float3 globalColorToDisplayOnScreen;
+ float globalVideoOn;
+
+ float3 applyBacklight(float3 albedo, half backlightStrength)
+ {
+ return max(backlightStrength, albedo.rgb);
+ }
+
+ float3 applyViewAngleTN(float3 albedo)
+ {
+ float3 reflectionVector = normalize(reflect(poiCam.viewDir.rgb, poiMesh.normals[1].rgb));
+ float upwardShift = dot(reflectionVector, poiMesh.binormal);
+ upwardShift = pow(upwardShift, 1);
+ float sideShift = dot(reflectionVector, poiMesh.tangent);
+ sideShift *= pow(sideShift, 3);
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = LinearToGammaSpace(albedo);
+ #endif
+ albedo = saturate(lerp(half3(0.5, 0.5, 0.5), albedo, upwardShift + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = GammaToLinearSpace(albedo);
+ #endif
+ albedo = (lerp(albedo, albedo.gbr, sideShift));
+ return albedo;
+ }
+
+ float calculateCRTPixelBrightness()
+ {
+ float totalPixels = _VideoResolution.x * _VideoResolution.y;
+ float2 uvPixel = float2((floor((1 - poiMesh.uv[_VideoUVNumber].y) * _VideoResolution.y)) / _VideoResolution.y, (floor(poiMesh.uv[_VideoUVNumber].x * _VideoResolution.x)) / _VideoResolution.x);
+ float currentPixelNumber = _VideoResolution.x * (_VideoResolution.y * uvPixel.x) + _VideoResolution.y * uvPixel.y;
+ float currentPixelAlpha = currentPixelNumber / totalPixels;
+ half electronBeamAlpha = frac(_Time.y * _VideoCRTRefreshRate);
+ float electronBeamPixelNumber = totalPixels * electronBeamAlpha;
+
+ float DistanceInPixelsFromCurrentElectronBeamPixel = 0;
+ if (electronBeamPixelNumber >= currentPixelNumber)
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber - currentPixelNumber;
+ }
+ else
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber + (totalPixels - currentPixelNumber);
+ }
+ float CRTFrameTime = 1 / _VideoCRTRefreshRate;
+ float timeSincecurrentPixelWasHitByElectronBeam = (DistanceInPixelsFromCurrentElectronBeamPixel / totalPixels);
+
+ return saturate(_VideoCRTPixelEnergizedTime - timeSincecurrentPixelWasHitByElectronBeam);
+ }
+
+ void applyContrastSettings(inout float3 pixel)
+ {
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = LinearToGammaSpace(pixel);
+ #endif
+ pixel = saturate(lerp(half3(0.5, 0.5, 0.5), pixel, _VideoContrast + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = GammaToLinearSpace(pixel);
+ #endif
+ }
+
+ void applySaturationSettings(inout float3 pixel)
+ {
+ pixel = lerp(pixel.rgb, dot(pixel.rgb, float3(0.3, 0.59, 0.11)), -_VideoSaturation);
+ }
+
+ void applyVideoSettings(inout float3 pixel)
+ {
+ applySaturationSettings(pixel);
+ applyContrastSettings(pixel);
+ }
+
+ void calculateLCD(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateTN(inout float4 albedo)
+ {
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ globalColorToDisplayOnScreen = applyViewAngleTN(globalColorToDisplayOnScreen);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateCRT(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ float brightness = calculateCRTPixelBrightness();
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * brightness * _VideoBacklight;
+ }
+ void calculateOLED(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateGameboy(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ half brightness = saturate((globalColorToDisplayOnScreen.r + globalColorToDisplayOnScreen.g + globalColorToDisplayOnScreen.b) * .3333333);
+ albedo.rgb = tex2D(_VideoGameboyRamp, brightness);
+ }
+ void calculateProjector(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+
+ float3 projectorColor = albedo * globalColorToDisplayOnScreen * _VideoBacklight;
+ albedo.r = clamp(projectorColor.r, albedo.r, 1000);
+ albedo.g = clamp(projectorColor.g, albedo.g, 1000);
+ albedo.b = clamp(projectorColor.b, albedo.b, 1000);
+ }
+
+ void applyScreenEffect(inout float4 albedo, inout float3 videoEmission)
+ {
+ float4 albedoBeforeScreen = albedo;
+
+ pixels = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoPixelTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoPixelTexture) * _VideoResolution);
+ globalVideoOn = 0;
+
+ if(_VideoEnableVideoPlayer == 1)
+ {
+ float4 videoTexture = 0;
+
+ if(_VideoPixelateToResolution)
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, round(TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoResolution + .5) / _VideoResolution);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, round(poiMesh.uv[_VideoUVNumber] * _VideoResolution + .5) / _VideoResolution);
+ }
+ }
+ else
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoTiling + _VideoOffset);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, ((poiMesh.uv[_VideoUVNumber] + _Time.x * _VideoPanning) * _VideoTiling) + _VideoOffset);
+ }
+ }
+ if(videoTexture.a == 1)
+ {
+ globalColorToDisplayOnScreen = videoTexture.rgb;
+ globalVideoOn = 1;
+ }
+ }
+
+
+ if(_VideoRepeatVideoTexture == 1)
+ {
+ if(poiMesh.uv[_VideoUVNumber].x > 1 || poiMesh.uv[_VideoUVNumber].x < 0 || poiMesh.uv[_VideoUVNumber].y > 1 || poiMesh.uv[_VideoUVNumber].y < 0)
+ {
+ return;
+ }
+ }
+
+ switch(_VideoType)
+ {
+ case 0: // LCD
+ {
+ calculateLCD(albedo);
+ break;
+ }
+ case 1: // TN
+ {
+ calculateTN(albedo);
+ break;
+ }
+ case 2: // CRT
+ {
+ calculateCRT(albedo);
+ break;
+ }
+ case 3: // OLED
+ {
+ calculateOLED(albedo);
+ break;
+ }
+ case 4: // Gameboy
+ {
+ calculateGameboy(albedo);
+ break;
+ }
+ case 5: // Projector
+ {
+ calculateProjector(albedo);
+ break;
+ }
+ }
+
+ float screenMask = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoMaskTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoMaskTexture) + _Time.x * _VideoMaskPanning);
+ albedo = lerp(albedoBeforeScreen, albedo, screenMask);
+ videoEmission = max(albedo.rgb * screenMask - 1, 0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
new file mode 100644
index 00000000..f18a7a2d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 91ca6655b6a1d1147886819e0edacdbb
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
new file mode 100644
index 00000000..db3d3130
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
@@ -0,0 +1,304 @@
+#ifndef POI_VORONOI
+ #define POI_VORONOI
+
+ #include "CGI_PoiRNG.cginc"
+
+ float _VoronoiSpace;
+ float _VoronoiBlend;
+ float _VoronoiType;
+ float4 _VoronoiColor0;
+ float _VoronoiEmission0;
+ float4 _VoronoiColor1;
+ float _VoronoiEmission1;
+ float2 _VoronoiGradient;
+ float _VoronoiScale;
+ float3 _VoronoiSpeed;
+ float _VoronoiEnableRandomCellColor;
+ float2 _VoronoiRandomMinMaxSaturation;
+ float2 _VoronoiRandomMinMaxBrightness;
+ float3 randomPoint;
+ float _VoronoiEffectsMaterialAlpha;
+
+ POI_TEXTURE_NOSAMPLER(_VoronoiMask);
+ POI_TEXTURE_NOSAMPLER(_VoronoiNoise);
+ float _VoronoiNoiseIntensity;
+
+ float2 inoise(float3 P, float jitter)
+ {
+ float3 Pi = mod(floor(P), 289.0);
+ float3 Pf = frac(P);
+ float3 oi = float3(-1.0, 0.0, 1.0);
+ float3 of = float3(-0.5, 0.5, 1.5);
+ float3 px = Permutation(Pi.x + oi);
+ float3 py = Permutation(Pi.y + oi);
+
+ float3 p, ox, oy, oz, dx, dy, dz;
+ float2 F = 1e6;
+
+ for (int i = 0; i < 3; i ++)
+ {
+ for (int j = 0; j < 3; j ++)
+ {
+ p = Permutation(px[i] + py[j] + Pi.z + oi); // pij1, pij2, pij3
+
+ ox = frac(p * K) - Ko;
+ oy = mod(floor(p * K), 7.0) * K - Ko;
+
+ p = Permutation(p);
+
+ oz = frac(p * K) - Ko;
+
+ dx = Pf.x - of[i] + jitter * ox;
+ dy = Pf.y - of[j] + jitter * oy;
+ dz = Pf.z - of + jitter * oz;
+
+ float3 d = dx * dx + dy * dy + dz * dz; // dij1, dij2 and dij3, squared
+
+ //Find lowest and second lowest distances
+ for (int n = 0; n < 3; n ++)
+ {
+ if (d[n] < F[0])
+ {
+ F[1] = F[0];
+ F[0] = d[n];
+ randomPoint = p;
+ }
+ else if(d[n] < F[1])
+ {
+ F[1] = d[n];
+ }
+ }
+ }
+ }
+
+ return F;
+ }
+
+ float voronoi2D(in float2 x, float scale, float2 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float2 n = floor(x);
+ float2 f = frac(x);
+
+ // first pass: regular voronoi
+ float2 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 g = float2(float(i), float(j));
+ float2 o = random2(n + g);
+ float2 currentPoint = o;
+
+ float2 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint.xy = currentPoint;
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ float2 g = mg + float2(float(q), float(r));
+ float2 o = random2(n + g);
+
+ float2 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ return md;
+ }
+
+ float voronoi3D(in float3 x, float scale, float3 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float3 n = floor(x);
+ float3 f = frac(x);
+
+ // first pass: regular voronoi
+ float3 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ for (int h = -1; h <= 1; h ++)
+ {
+ float3 g = float3(float(h), float(i), float(j));
+ float3 o = random3(n + g);
+ float3 currentPoint = o;
+
+ float3 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint = currentPoint;
+ }
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ for (int p = -2; p <= 2; p ++)
+ {
+ float3 g = mg + float3(float(p), float(q), float(r));
+ float3 o = random3(n + g);
+
+ float3 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ }
+ return md;
+ }
+
+
+
+ // fracal sum, range -1.0 - 1.0
+ float VoronoiNoise_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ float VoronoiNoiseDiff_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[1]) - sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ void applyVoronoi(inout float4 finalColor, inout float3 VoronoiEmission)
+ {
+ float voronoiOctaveNumber = 1;
+ float voronoiOctaveScale = 1;
+ float voronoiOctaveAttenuation = 1;
+ randomPoint = 0;
+ float4 voronoiColor1 = _VoronoiColor1;
+
+ float voronoi = 0;
+
+ float3 position = 0;
+
+
+ if (_VoronoiSpace == 0)
+ {
+ position = poiMesh.localPos;
+ }
+
+ if(_VoronoiSpace == 1)
+ {
+ position = poiMesh.worldPos;
+ }
+
+ if(_VoronoiSpace == 2)
+ {
+ position = float3(poiMesh.uv[0].x, poiMesh.uv[0].y, 0);
+ }
+
+ float mask = POI2D_SAMPLER_PAN(_VoronoiMask, _MainTex, poiMesh.uv[_VoronoiMaskUV], _VoronoiMaskPan).r;
+ float edgeNoise = POI2D_SAMPLER_PAN(_VoronoiNoise, _MainTex, poiMesh.uv[_VoronoiNoiseUV], _VoronoiNoisePan).r * _VoronoiNoiseIntensity;
+
+
+ if(_VoronoiType == 0) // Basic
+ {
+ voronoi = voronoi2D(position.xy, _VoronoiScale, _VoronoiSpeed);
+ }
+
+ if (_VoronoiType == 1) // Diff
+ {
+ voronoi = VoronoiNoiseDiff_Octaves(position, _VoronoiScale, _VoronoiSpeed, voronoiOctaveNumber, voronoiOctaveScale, voronoiOctaveAttenuation, 1, _Time.x);
+ }
+
+ if (_VoronoiType == 2) // Fixed Border
+ {
+ voronoi = voronoi3D(position, _VoronoiScale, _VoronoiSpeed);
+ // isolines
+ //color = c.x * (0.5 + 0.5 * sin(64.0 * c.x)) * 1.0;
+ }
+
+ if (_VoronoiEnableRandomCellColor == 1)
+ {
+ float3 rando = random3(randomPoint);
+ fixed hue = rando.x;
+ fixed saturation = lerp(_VoronoiRandomMinMaxSaturation.x, _VoronoiRandomMinMaxSaturation.y, rando.y);
+ fixed value = lerp(_VoronoiRandomMinMaxBrightness.x, _VoronoiRandomMinMaxBrightness.y, rando.z);
+ float3 hsv = float3(hue, saturation, value);
+
+ voronoiColor1.rgb = HSVtoRGB(hsv);
+ }
+
+ float2 voronoiGradient = _VoronoiGradient;
+ voronoiGradient.xy += edgeNoise;
+ float ramp = smoothstep(voronoiGradient.x, voronoiGradient.y, voronoi);
+
+
+ if(_VoronoiBlend == 0)
+ {
+ float4 voronoiColor = lerp(_VoronoiColor0, voronoiColor1, ramp);
+
+ if(_VoronoiEffectsMaterialAlpha)
+ {
+ finalColor.rgba = lerp(finalColor, voronoiColor, mask);
+ }
+ else
+ {
+ finalColor.rgb = lerp(finalColor.rgb, voronoiColor.rgb, mask * voronoiColor.a);
+ }
+ }
+ float4 voronoiEmissionColor = lerp(_VoronoiColor0 * _VoronoiEmission0, voronoiColor1 * _VoronoiEmission1, ramp);
+ VoronoiEmission = voronoiEmissionColor.rgb * mask * voronoiEmissionColor.a;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
new file mode 100644
index 00000000..48349fbe
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f98391b70354ee74d83f789389999180
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
new file mode 100644
index 00000000..49c602c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
@@ -0,0 +1,111 @@
+#ifndef POI_WIREFRAME
+ #define POI_WIREFRAME
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_WireframeTexture); float4 _WireframeTexture_ST;
+ float2 _WireframeTexturePan;
+ float _WireframeSmoothing;
+ float _WireframeThickness;
+ float4 _WireframeColor;
+ float _WireframeAlpha;
+ float _WireframeEnable;
+ float _WireframeWaveEnabled;
+ float _WireframeWaveDensity;
+ float _WireframeWaveSpeed;
+ float _WireframeEdgeOpacity;
+ float _WireframeFaceOpacity;
+ half _WireframeEmissionAlpha;
+ float _WireframeEmissionStrength;
+ float _WireframeQuad;
+ float _WireframeUV;
+
+ #ifndef POI_SHADOW
+ void applyWireframe(inout float3 wireframeEmission, inout float4 albedo)
+ {
+
+ if (_WireframeEnable)
+ {
+ float4 colorMap = UNITY_SAMPLE_TEX2D_SAMPLER(_WireframeTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_WireframeUV], _WireframeTexture) + _Time.x * _WireframeTexturePan);
+ float size = _WireframeThickness;
+ half3 width = abs(ddx(poiMesh.barycentricCoordinates)) + abs(ddy(poiMesh.barycentricCoordinates));
+ half3 eF = smoothstep(0, width * size, poiMesh.barycentricCoordinates);
+ half minBary = size > 0 ? min(min(eF.x, eF.y), eF.z): 1;
+
+ float4 wireframeColor = _WireframeColor * colorMap;
+
+ albedo.a *= lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ albedo.rgb = lerp(lerp(albedo.rgb, wireframeColor.rgb, wireframeColor.a), albedo.rgb, minBary);
+ wireframeEmission = wireframeColor.rgb * _WireframeEmissionStrength * (1 - minBary) * _WireframeColor.a;
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle v2f IN[3], inout TriangleStream < v2f > tristream)
+ {
+
+ if(_WireframeQuad)
+ {
+ float e1 = length(IN[0].localPos - IN[1].localPos);
+ float e2 = length(IN[1].localPos - IN[2].localPos);
+ float e3 = length(IN[2].localPos - IN[0].localPos);
+
+ float3 quad = 0;
+ if(e1 > e2 && e1 > e3)
+ quad.y = 1.;
+ else if(e2 > e3 && e2 > e1)
+ quad.x = 1;
+ else
+ quad.z = 1;
+
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0) + quad;
+ IN[1].barycentricCoordinates = fixed3(0, 0, 1) + quad;
+ IN[2].barycentricCoordinates = fixed3(0, 1, 0) + quad;
+ }
+ else
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ }
+
+
+
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #else
+
+ float applyShadowWireframe(float2 uv, float3 barycentricCoordinates, float3 normal, float3 worldPos)
+ {
+
+ if(_WireframeEnable)
+ {
+ float wireframeFadeAlpha = _WireframeAlpha;
+ float3 finalWireframeColor = 0;
+
+ float3 barys;
+ barys.xy = barycentricCoordinates;
+ barys.z = 1 - barys.x - barys.y;
+ float3 deltas = fwidth(barys);
+ float3 smoothing = deltas * _WireframeSmoothing;
+ float wireframeThickness = _WireframeThickness;
+ float3 thickness = deltas * wireframeThickness;
+ barys = smoothstep(thickness, thickness + smoothing, barys);
+ float minBary = min(barys.x, min(barys.y, barys.z));
+
+ return lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle V2FShadow IN[3], inout TriangleStream < V2FShadow > tristream)
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
new file mode 100644
index 00000000..dac9adc0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1fa98cc8100c35a4ba5e5e99a83fef32
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
new file mode 100644
index 00000000..319de57c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
@@ -0,0 +1,171 @@
+#ifndef POICLUDES
+ #define POICLUDES
+
+ UNITY_DECLARE_TEX2D(_MainTex); float4 _MainTex_ST; float4 _MainTex_TexelSize;
+ sampler2D _PoiGrab;
+ sampler2D _CameraDepthTexture;
+ float _Cutoff;
+ float _AlphaMod;
+
+ //Structs
+ struct appdata
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #ifdef OUTLINE
+ float _LineWidth;
+ float _OutlineEmission;
+ float4 _LineColor;
+ sampler2D _OutlineTexture; float4 _OutlineTexture_ST; float2 _OutlineTexturePan; float _OutlineTextureUV;
+ float4 _OutlineFadeDistance;
+ float4 _OutlineGlobalPan;
+ #endif
+
+ struct PoiLighting
+ {
+ half3 direction;
+ half3 color;
+ fixed attenuation;
+ #ifdef FORWARD_ADD_PASS
+ fixed additiveShadow;
+ #endif
+ half3 directLighting;
+ half3 indirectLighting;
+ half lightMap;
+ half3 rampedLightMap;
+ half3 finalLighting;
+ half3 halfDir;
+ half nDotL;
+ half nDotH;
+ half lDotv;
+ half lDotH;
+ half nDotV;
+ half N0DotV;
+ half diffuseTerm;
+
+ // World normal dot half direction
+ #ifdef POI_VAR_DOTNH
+ half dotNH;
+ #endif
+
+ // Light direction dot half direction
+ #ifdef POI_VAR_DOTLH
+ half dotLH;
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ float4 vDotNL;
+ float3 vColor[4];
+ float4 vCorrectedDotNL;
+ float4 vAttenuation;
+ float4 vAttenuationDotNL;
+ float3 vPosition[4];
+ float3 vDirection[4];
+ float3 vFinalLighting;
+ float3 vHalfDir[4];
+
+ #ifdef POI_VAR_DOTLH
+ half4 vDotLH;
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ half4 vDotNH;
+ #endif
+
+ #endif
+ };
+
+ struct PoiCamera
+ {
+ half3 viewDir;
+ half3 tangentViewDir;
+ half3 forwardDir;
+ half3 worldPos;
+ float viewDotNormal;
+ float distanceToModel;
+ float distanceToVert;
+ float3 reflectionDir;
+ float3 vertexReflectionDir;
+ float2 screenUV;
+ float4 clipPos;
+ #if defined(GRAIN)
+ float4 worldDirection;
+ #endif
+ float4 grabPos;
+ };
+
+ struct PoiMesh
+ {
+ float3 normals[2];
+ float3 tangent;
+ float3 binormal;
+ float3 localPos;
+ float3 worldPos;
+ float3 modelPos;
+ float3 tangentSpaceNormal;
+ float2 uv[5];
+ float4 vertexColor;
+ fixed3 barycentricCoordinates;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV;
+ #endif
+ float isFrontFace;
+ #ifdef FUR
+ float furAlpha;
+ #endif
+ };
+
+ struct PoiTangentData
+ {
+ float3x3 tangentTransform;
+ float3x3 tangentToWorld;
+ };
+
+ struct FragmentCommonData
+ {
+ half3 diffColor, specColor;
+ // Note: smoothness & oneMinusReflectivity for optimization purposes, mostly for DX9 SM2.0 level.
+ // Most of the math is being done on these (1-x) values, and that saves a few precious ALU slots.
+ half oneMinusReflectivity, smoothness;
+ float3 normalWorld;
+ float3 eyeVec;
+ half alpha;
+ float3 posWorld;
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 reflUVW;
+ #endif
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 tangentSpaceNormal;
+ #endif
+ };
+
+ struct Debug
+ {
+ float debug1;
+ float2 debug2;
+ float3 debug3;
+ float4 debug4;
+ };
+
+ static Debug debug;
+ static PoiLighting poiLight;
+ static PoiCamera poiCam;
+ static PoiMesh poiMesh;
+ static UnityGI gi;
+ static FragmentCommonData s;
+ static PoiTangentData poiTData;
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
new file mode 100644
index 00000000..eda38efa
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a04f299179605f941a66e7976bfc6abd
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
new file mode 100644
index 00000000..22e434ef
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: cb0f9d6ed7e1aee4f9e70d5a440eb747
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
new file mode 100644
index 00000000..e1945b5c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
@@ -0,0 +1,7648 @@
+Shader "Hidden/.poiyomi/• Poiyomi Toon •/R2Changyu01001Hair-582d4d06"
+{
+ Properties
+ {
+ [HideInInspector] shader_is_using_thry_editor ("", Float) = 0
+ [HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Toon V7.0.100</color>", Float) = 0
+ [HideInInspector] shader_presets ("poiToonPresets", Float) = 0
+ [HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
+
+ [HideInInspector] footer_youtube ("youtube footer button", Float) = 0
+ [HideInInspector] footer_twitter ("twitter footer button", Float) = 0
+ [HideInInspector] footer_patreon ("patreon footer button", Float) = 0
+ [HideInInspector] footer_discord ("discord footer button", Float) = 0
+ [HideInInspector] footer_github ("github footer button", Float) = 0
+
+ // Keyword to remind users in the VRChat SDK that this material hasn't been locked. Inelegant but it works.
+ [HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Int) = 1
+ [ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Int) = 0
+ [Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Int) = 0
+
+ [ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)]_Mode("Rendering Preset--{on_value_actions:[
+ {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2450}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=1}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2451}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
+ {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:RenderType=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
+ }]}]}", Int) = 0
+ [HideInInspector] m_LockingInfo ("Locking Info--{button_right:{text:Tutorial,action:{type:URL,data:https://youtu.be/asWeDJb5LAo},hover:YouTube},is_hideable:true}", Float) = 0
+ [Helpbox(1)] _HelpBoxLocking ("LOCKING IN THE SHADER WILL DRAMATICALLY INCREASE PERFORMANCE AND DRAMATICALLY LOWER THE FILE SIZE OF AN AVATAR PACKAGE.
+
+ LOCKED IN MATERIALS CANNOT BE ANIMATED WITHOUT SETTING THE SPECIFIC PROPERTY TO DYNAMIC. RIGHT CLICK MATERIAL PROPERTIES YOU WISH TO ANIMATE, A CLOCK ICON WILL APPEAR BESIDE THE PROPERTY SIGNIFYING THAT IT CAN BE ANIMATED.
+
+ FOR MORE INFORMATION ON LOCKING PLEASE WATCH THE LOCKING TUTORIAL IN THE HEADER ABOVE.", Int) = 0
+ [Helpbox(2)] _HelpBoxHideLocking ("TO HIDE THIS CATEGORY SELECT CUSTOM UI AT THE TOP AND UNCHECK THE LOCKING INFO CATEGORY", Float) = 0
+ // Main
+ [HideInInspector] m_mainOptions ("Main", Float) = 0
+ _Color ("Color & Alpha", Color) = (1, 1, 1, 1)
+ _MainTex ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainTextureUV ("UV", Int) = 0
+ _Saturation ("Saturation", Range(-1, 1)) = 0
+ _MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
+ [Normal]_BumpMap ("Normal Map", 2D) = "bump" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _BumpMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_BumpMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ _BumpScale ("Normal Intensity", Range(0, 10)) = 1
+ _AlphaMask ("Alpha Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_AlphaMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AlphaMaskUV ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector] m_start_MainHueShift ("Hue Shift", Float) = 0
+ [HideInInspector][Toggle(COLOR_GRADING_HDR)]_MainHueShiftToggle ("Toggle Hueshift", Float) = 0
+ [ToggleUI]_MainHueShiftReplace ("Replace?", Float) = 1
+ _MainHueShift ("Hue Shift", Range(0, 1)) = 0
+ _MainHueShiftSpeed ("Shift Speed", Float) = 0
+ _MainHueShiftMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainHueShiftMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainHueShiftMaskUV ("UV", Int) = 0
+ [HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
+
+ // RGB Masking
+ [HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
+ [HideInInspector][Toggle(VIGNETTE)]_RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
+ [ToggleUI]_RGBUseVertexColors ("Use Vertex Colors", Float) = 0
+ [ToggleUI]_RGBBlendMultiplicative ("Multiplicative?", Float) = 0
+ _RGBMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBMaskPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBMaskUV ("UV", int) = 0
+ _RedColor ("R Color", Color) = (1, 1, 1, 1)
+ _RedTexure ("R Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBRedPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBRed_UV ("UV", int) = 0
+ _GreenColor ("G Color", Color) = (1, 1, 1, 1)
+ _GreenTexture ("G Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBGreenPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBGreen_UV ("UV", int) = 0
+ _BlueColor ("B Color", Color) = (1, 1, 1, 1)
+ _BlueTexture ("B Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBBluePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBBlue_UV ("UV", int) = 0
+ // RGB MASKED NORMALS
+ [Toggle(GEOM_TYPE_MESH)]_RgbNormalsEnabled ("Enable Normals", Float) = 0
+ [ToggleUI]_RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
+ [Normal]_RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalRPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalRUV ("UV", int) = 0
+ _RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalGPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalGUV ("UV", int) = 0
+ _RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalBPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalBUV ("UV", int) = 0
+ _RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
+
+ // Detail Options
+ [HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(FINALPASS)]_DetailEnabled ("Enable", Float) = 0
+ _DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" { }
+ [HideInInspector][Vector2]_DetailMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailMaskUV ("UV", Int) = 0
+ _DetailTint ("Detail Texture Tint", Color) = (1, 1, 1)
+ _DetailTex ("Detail Texture", 2D) = "gray" { }
+ [HideInInspector][Vector2]_DetailTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailTexUV ("UV", Int) = 0
+ _DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
+ _DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
+ [Normal]_DetailNormalMap ("Detail Normal", 2D) = "bump" { }
+ _DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
+ [HideInInspector][Vector2]_DetailNormalMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailNormalMapUV ("UV", Int) = 0
+ [HideInInspector] m_end_DetailOptions ("Details", Float) = 0
+
+ // Vertex Colors
+ [HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
+ _MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
+ _MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
+
+ //Vertex Manipulations
+ [HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(AUTO_EXPOSURE)]_VertexManipulationsEnabled ("Enabled", Float) = 0
+ [Vector3]_VertexManipulationLocalTranslation ("Local Translation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalRotation ("Local Rotation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalScale ("Local Scale", Vector) = (1, 1, 1, 1)
+ [Vector3]_VertexManipulationWorldTranslation ("World Translation", Vector) = (0, 0, 0, 1)
+ _VertexManipulationHeight ("Vertex Height", Float) = 0
+ _VertexManipulationHeightMask ("Height Map", 2D) = "while" { }
+ [HideInInspector][Vector2]_VertexManipulationHeightPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _VertexManipulationHeightUV ("UV", Int) = 0
+ _VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
+ [ToggleUI]_VertexRoundingEnabled ("Rounding Enabled", Float) = 0
+ _VertexRoundingDivision ("Division Amount", Float) = 500
+ [HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
+
+ // Alpha Options
+ [HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
+ _Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
+ [ToggleUI]_DitheringEnabled ("Enable Dithering", Float) = 0
+ _DitherGradient ("Dither Gradient", Range(0, 1)) = .1
+ [ToggleUI]_ForceOpaque ("Force Opaque", Float) = 0
+ _MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
+ [Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
+ [ToggleUI]_MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
+ _MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
+ [ToggleUI]_AlphaPremultiply ("Alpha Premultiply", Float) = 0
+ _AlphaMod ("Alpha Mod", Range(-1, 1)) = 0.0
+ [HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
+
+ // Decal Texture
+ [HideInInspector] m_start_DecalSection ("Decal", Float) = 0
+ [HideInInspector][Toggle(GEOM_TYPE_BRANCH)]_DecalEnabled ("Enable", Float) = 0
+ _DecalColor ("Color", Color) = (1, 1, 1, 1)
+ _DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _DecalTexture ("Decal", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalTextureUV ("UV", Int) = 0
+ _DecalMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalMaskUV ("UV", Int) = 0
+ [ToggleUI]_DecalTiled ("Tiled?", Float) = 0
+ [Vector2]_DecalScale ("Scale", Vector) = (1, 1, 0, 0)
+ [Vector2]_DecalPosition ("Position", Vector) = (.5, .5, 0, 0)
+ _DecalRotation ("Rotation", Range(0, 360)) = 0
+ _DecalRotationSpeed ("Rotation Speed", Float) = 0
+ _DecalBlendAdd ("Add", Range(0, 1)) = 0
+ _DecalBlendMultiply ("Multiply", Range(0, 1)) = 0
+ _DecalBlendReplace ("Replace", Range(0, 1)) = 0
+ [HideInInspector] m_end_DecalSection ("Decal", Float) = 0
+
+ // Back Face Textures and Emission
+ [HideInInspector] m_start_backFace ("Back Face", Float) = 0
+ [ToggleUI]_BackFaceEnabled ("Enable Back Face Options", Float) = 0
+ _BackFaceColor ("Color", Color) = (1, 1, 1, 1)
+ _BackFaceTexture ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_BackFacePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_BackFaceTextureUV ("UV#", Int) = 0
+ _BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
+ _BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
+ _BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [HideInInspector] m_end_backFace ("Back Face", Float) = 0
+
+ // Lighting
+ [HideInInspector] m_lightingOptions ("Lighting", Float) = 0
+ [HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
+ [Toggle(VIGNETTE_MASKED)]_EnableLighting ("Enable Lighting", Float) = 1
+ [Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Int) = 0
+ _LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
+ [Enum(Ramp Texture, 0, Math Gradient, 1)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Int) = 0
+ [Gradient]_ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" { }
+ _LightingShadowMask ("Ramp Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowMaskUV ("UV", Int) = 0
+ _ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
+ _LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
+ _LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = .5
+ _LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Color) = (1, 1, 1, 1)
+ _ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 1
+ _AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+
+ [HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
+ [Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Int) = 0
+ [ToggleUI]_LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
+ [ToggleUI]_LightingUncapped ("Uncapped Lighting", Float) = 0
+ [ToggleUI]_LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
+ _LightingMonochromatic ("Monochromatic Lighting?", Range(0,1)) = 0
+ _LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
+ _LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
+ [HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
+
+ [HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
+ _LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingDetailShadowsPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingDetailShadowsUV ("UV", Int) = 0
+ _LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
+
+ [HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableAO ("Enable AO", Float) = 0
+ _LightingAOTex ("AO Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingAOTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingAOTexUV ("UV", Int) = 0
+ _AOStrength ("AO Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
+
+ [HideInInspector] m_start_shadowTexture ("Shadow Texture--{reference_property:_UseShadowTexture, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ [HideInInspector][ToggleUI]_UseShadowTexture ("EnableShadowTexture--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ _LightingShadowTexture ("Shadow Texture--{reference_properties:[_LightingShadowTexturePan, _LightingShadowTextureUV], condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_shadowTexture ("Shadow Texture", Float) = 0
+
+ // HSL Lighting
+ [HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
+ _LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
+ _LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
+ _LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
+ _LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
+ [HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
+
+ // point/spot Light Settings
+ [HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
+ [HideInInspector][ToggleUI]_commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
+ [Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Int) = 1
+ _LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
+ _LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = .5
+ _LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = .5
+ _LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
+ [ToggleUI]_LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
+ _LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
+ [Toggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)]_DisableDirectionalInAdd ("No Directional", Float) = 1
+ [HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
+ [HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
+
+ // Subsurface Scattering
+ [HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
+ [Toggle(_TERRAIN_NORMAL_MAP)]_EnableSSS ("Enable Subsurface Scattering", Float) = 0
+ _SSSColor ("Subsurface Color", Color) = (1, 0, 0, 1)
+ _SSSThicknessMap ("Thickness Map", 2D) = "black" { }
+ [HideInInspector][Vector2]_SSSThicknessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SSSThicknessMapUV ("UV", Int) = 0
+ _SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
+ _SSSSCale ("Light Strength", Range(0, 1)) = 0.25
+ _SSSPower ("Light Spread", Range(1, 100)) = 5
+ _SSSDistortion ("Light Distortion", Range(0, 1)) = 1
+ [HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
+
+ // Rim Lighting
+ [HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
+ [Toggle(_GLOSSYREFLECTIONS_OFF)]_EnableRimLighting ("Enable Rim Lighting", Float) = 0
+ [Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Int) = 1
+ [ToggleUI]_RimLightingInvert ("Invert Rim Lighting", Float) = 0
+ _RimLightColor ("Rim Color", Color) = (1, 1, 1, 1)
+ _RimWidth ("Rim Width", Range(0, 1)) = 0.8
+ _RimSharpness ("Rim Sharpness", Range(0, 1)) = .25
+ _RimStrength ("Rim Emission", Range(0, 20)) = 0
+ _RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
+ _RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 0
+ _RimTex ("Rim Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimTexUV ("UV", Int) = 0
+ _RimMask ("Rim Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimMaskUV ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
+ _RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_RimWidthNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimWidthNoiseTextureUV ("UV", Int) = 0
+ _RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
+ [HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
+ _ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
+ _ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = .5
+ _ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = .5
+ [HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
+ [HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
+ [Toggle(_MAPPING_6_FRAMES_LAYOUT)]_EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
+ _RimEnviroMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimEnviroMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimEnviroMaskUV ("UV", Int) = 0
+ _RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
+ _RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
+ _RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
+ _RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
+ _RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
+ [HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
+
+ // Baked Lighting
+ [HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
+ _GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
+ [HideInInspector] DSGI ("DSGI", Float) = 0 //add this property for double sided illumination settings to be shown
+ [HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0 //add this property for lightmap flags settings to be shown
+ [HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
+
+ // Metallics
+ [HideInInspector] m_start_Metallic ("Metallics", Float) = 0
+ [Toggle(_METALLICGLOSSMAP)]_EnableMetallic ("Enable Metallics", Float) = 0
+ _CubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _MetalReflectionTint ("Reflection Tint", Color) = (1, 1, 1)
+ _MetallicTintMap ("Tint Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicTintMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicTintMapUV ("UV", Int) = 0
+ _MetallicMask ("Metallic Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicMaskUV ("UV", Int) = 0
+ _Metallic ("Metallic", Range(0, 1)) = 0
+ _SmoothnessMask ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SmoothnessMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SmoothnessMaskUV ("UV", Int) = 0
+ [ToggleUI]_InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _Smoothness ("Smoothness", Range(0, 1)) = 0
+ [HideInInspector] m_end_Metallic ("Metallics", Float) = 0
+
+ // Clearcoat
+ [HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
+ [Toggle(_COLORCOLOR_ON)]_EnableClearCoat ("Enable Clear Coat", Float) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _ClearCoatNormalToUse ("What Normal?", Int) = 0
+ _ClearCoatCubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_ClearCoatSampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _ClearCoatTint ("Reflection Tint", Color) = (1, 1, 1)
+ _ClearCoatMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatMaskUV ("UV", Int) = 0
+ _ClearCoat ("Clear Coat", Range(0, 1)) = 1
+ _ClearCoatSmoothnessMap ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatSmoothnessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatSmoothnessMapUV ("UV", Int) = 0
+ [ToggleUI]_ClearCoatInvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _ClearCoatSmoothness ("Smoothness", Range(0, 1)) = 0
+ [ToggleUI]_ClearCoatForceLighting ("Force Lighting", Float) = 0
+ [HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
+
+ // First Matcap
+ [HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
+ [Toggle(_COLORADDSUBDIFF_ON)]_MatcapEnable ("Enable Matcap", Float) = 0
+ _MatcapColor ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap ("Matcap", 2D) = "white" { }
+ _MatcapBorder ("Border", Range(0, .5)) = 0.43
+ _MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_MatcapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MatcapMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_MatcapMaskInvert("Invert", Float) = 0
+ _MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _MatcapIntensity ("Intensity", Range(0, 5)) = 1
+ _MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
+ _MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
+ _MatcapAdd ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_matcap ("Matcap", Float) = 0
+
+ // Second Matcap
+ [HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
+ [ToggleUI]_Matcap2Enable ("Enable Matcap 2", Float) = 0
+ _Matcap2Color ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap2 ("Matcap", 2D) = "white" { }
+ _Matcap2Border ("Border", Range(0, .5)) = 0.43
+ _Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_Matcap2MaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _Matcap2MaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_Matcap2MaskInvert("Invert", Float) = 0
+ _Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _Matcap2Intensity ("Intensity", Range(0, 5)) = 1
+ _Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
+ _Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
+ _Matcap2Add ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
+
+ // Specular
+ [HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
+ [Toggle(_SPECGLOSSMAP)]_EnableSpecular ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Int) = 1
+ _SpecularTint ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMapUV ("UV", Int) = 0
+ _SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
+ [Gradient]_SpecularMap ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMapUV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
+ _SpecularMask ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMaskUV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Int) = 1
+ // Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Int) = 0
+ _AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
+ _AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMapUV ("UV", Int) = 0
+ //toon aniso
+ _SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicroUV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacroUV ("UV", Int) = 0
+ // Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
+
+ // Second Specular
+ [HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
+ [ToggleUI]_EnableSpecular1 ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Int) = 1
+ _SpecularTint1 ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMap1UV ("UV", Int) = 0
+ _SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = .75
+ _SpecularMap1 ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMap1UV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
+ _SpecularMask1 ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMask1UV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Int) = 1
+ // Second Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Int) = 0
+ _AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
+ _AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMap1UV ("UV", Int) = 0
+ // Second toon aniso
+ _SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor1 ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicro1UV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacro1UV ("UV", Int) = 0
+ // Second Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
+
+ // First Emission
+ [HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
+ [HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
+ [Toggle(_EMISSION)]_EnableEmission ("Enable Emission", Float) = 0
+ [ToggleUI]_EmissionReplace ("Replace Base Color", Float) = 0
+ [HDR]_EmissionColor ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMapUV ("UV", Int) = 0
+ _EmissionMask ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMaskUV ("UV", Int) = 0
+ _EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
+
+ // Center out emission
+ [HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+
+ // Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor ("VColor as position", float) = 0
+ _EmissiveScroll_Direction ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width ("Width", Float) = 10
+ _EmissiveScroll_Velocity ("Velocity", Float) = 10
+ _EmissiveScroll_Interval ("Interval", Float) = 20
+ _EmissionScrollingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
+
+ // Second Enission
+ [HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
+ [Toggle(EFFECT_HUE_VARIATION)]_EnableEmission1 ("Enable Emission 2", Float) = 0
+ [HDR]_EmissionColor1 ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap1 ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMap1UV ("UV", Int) = 0
+ _EmissionMask1 ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMask1UV ("UV", Int) = 0
+ _EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
+
+ // Second Center Out Enission
+ [HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Second Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve1 ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve1 ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor1 ("VColor as position", float) = 0
+ _EmissiveScroll_Direction1 ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width1 ("Width", Float) = 10
+ _EmissiveScroll_Velocity1 ("Velocity", Float) = 10
+ _EmissiveScroll_Interval1 ("Interval", Float) = 20
+ _EmissionScrollingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
+
+ // Flipbook
+ [HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
+ [Toggle(_SUNDISK_HIGH_QUALITY)]_EnableFlipbook ("Enable Flipbook", Float) = 0
+ [ToggleUI]_FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
+ [TextureArray]_FlipbookTexArray ("Texture Array", 2DArray) = "" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookTexArrayUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookTexArrayPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookMaskUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookColor ("Color & alpha", Color) = (1, 1, 1, 1)
+ _FlipbookTotalFrames ("Total Frames", Int) = 1
+ _FlipbookFPS ("FPS", Float) = 30.0
+ _FlipbookScaleOffset ("Scale | Offset", Vector) = (1, 1, 0, 0)
+ [ToggleUI]_FlipbookTiled ("Tiled?", Float) = 0
+ _FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _FlipbookRotation ("Rotation", Range(0, 360)) = 0
+ _FlipbookRotationSpeed ("Rotation Speed", Float) = 0
+ _FlipbookReplace ("Replace", Range(0, 1)) = 1
+ _FlipbookMultiply ("Multiply", Range(0, 1)) = 0
+ _FlipbookAdd ("Add", Range(0, 1)) = 0
+
+ // Flipbook Manual Control
+ [HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
+ _FlipbookCurrentFrame ("Current Frame", Float) = -1
+ [HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
+ [HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
+
+ // Dissolve
+ [HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
+ [Toggle(DISTORT)]_EnableDissolve ("Enable Dissolve", Float) = 0
+ [Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Int) = 1
+ _DissolveEdgeWidth ("Edge Width", Range(0, .5)) = 0.025
+ _DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
+ _DissolveEdgeColor ("Edge Color", Color) = (1, 1, 1, 1)
+ [Gradient]_DissolveEdgeGradient ("Edge Gradient", 2D) = "white" { }
+ _DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
+ _DissolveTextureColor ("Dissolved Color", Color) = (1, 1, 1, 1)
+ _DissolveToTexture ("Dissolved Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveToTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveToTextureUV ("UV", Int) = 0
+ _DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
+ _DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveNoiseTextureUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertNoise ("Invert?", Float) = 0
+ _DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_DissolveDetailNoisePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveDetailNoiseUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertDetailNoise ("Invert?", Float) = 0
+ _DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
+ _DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
+ _DissolveMask ("Dissolve Mask", 2D) = "white" { }
+ [ToggleUI]_DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
+ [HideInInspector][Vector2]_DissolveMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveMaskInvert ("Invert?", Float) = 0
+ _ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
+ [HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Int) = 2
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Int) = 2
+ [HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
+ [Enum(Local, 0, World, 1)] _DissolveP2PWorldLocal ("World/Local", Int) = 0
+ _DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
+ [Vector3]_DissolveStartPoint ("Start Point", Vector) = (0, -1, 0, 0)
+ [Vector3]_DissolveEndPoint ("End Point", Vector) = (0, 1, 0, 0)
+ [HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
+
+ // Locked in anim sldiers
+ [HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
+ _DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
+ _DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
+ _DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
+ _DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
+ _DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
+ _DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
+ _DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
+ _DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
+ _DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
+ _DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
+ [HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
+ [HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
+
+ // Panosphere
+ [HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+ [Toggle(_DETAIL_MULX2)]_PanoToggle ("Enable Panosphere", Float) = 0
+ [ToggleUI]_PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
+ _PanosphereColor ("Color", Color) = (1, 1, 1, 1)
+ _PanosphereTexture ("Texture", 2D) = "white" { }
+ _PanoMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_PanoMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _PanoMaskUV ("UV", Int) = 0
+ _PanoEmission ("Emission Strength", Range(0, 10)) = 0
+ _PanoBlend ("Alpha", Range(0, 1)) = 0
+ [Vector3]_PanospherePan ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [ToggleUI]_PanoCubeMapToggle ("Use Cubemap", Float) = 0
+ [TextureNoSO]_PanoCubeMap ("CubeMap", Cube) = "" { }
+ [HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+
+ // Glitter
+ [HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
+ [Toggle(_SUNDISK_SIMPLE)]_GlitterEnable ("Enable Glitter?", Float) = 0
+ [Enum(Angle, 0, Linear Emission, 1)]_GlitterMode ("Mode", Int) = 0
+ [Enum(Circle, 0, Square, 1)]_GlitterShape ("Shape", Int) = 0
+ [Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Int) = 0
+ [HDR]_GlitterColor ("Color", Color) = (1, 1, 1)
+ _GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
+ _GlitterColorMap ("Glitter Color Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterColorMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterColorMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_GlitterPan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterMask ("Glitter Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterMaskUV ("UV", Int) = 0
+ _GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterTextureRotation ("Rotation Speed", Float) = 0
+ _GlitterFrequency ("Glitter Density", Float) = 300.0
+ _GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1.0
+ _GlitterSpeed ("Glitter Speed", Float) = 10.0
+ _GlitterSize ("Glitter Size", Range(0, 1)) = .3
+ _GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
+ _GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
+ _GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
+ _GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
+ _GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = .8
+ _GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = .08
+ _glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
+ _GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, .1)) = .0
+
+ // Glitter Random Colors
+ [HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
+ [ToggleUI]_GlitterRandomColors ("Random Colors", Float) = 0
+ [MultiSlider]_GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8, 1, 0, 1)
+ [MultiSlider]_GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8, 1, 0, 1)
+ [ToggleUI]_GlitterRandomSize("Random Size?", Float) = 0
+ [MultiSlider]_GlitterMinMaxSize ("Size Range", Vector) = (0.1, 0.5, 0, 1)
+ [ToggleUI]_GlitterRandomRotation("Random Tex Rotation", Float) = 0
+ [HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
+ [HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
+ _TextGlyphs ("Font Array", 2D) = "black" { }
+ _TextPixelRange ("Pixel Range", Float) = 4.0
+ [Toggle(EFFECT_BUMP)]_TextEnabled ("Text?", Float) = 0
+
+ // FPS
+ [HideInInspector] m_start_TextFPS ("FPS", Float) = 0
+ [ToggleUI]_TextFPSEnabled ("FPS Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Int) = 0
+ _TextFPSColor ("Color", Color) = (1, 1, 1, 1)
+ _TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextFPSOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextFPSRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextFPSScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextFPSPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextFPS ("FPS", Float) = 0
+
+ // POSITION
+ [HideInInspector] m_start_TextPosition ("Position", Float) = 0
+ [ToggleUI]_TextPositionEnabled ("Position Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVertical ("Vertical?", Float) = 0
+ _TextPositionColor ("Color", Color) = (1, 0, 1, 1)
+ _TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextPositionOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextPositionRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextPositionScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextPositionPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextPosition ("Position", Float) = 0
+
+ // INSTANCE TIME
+ [HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
+ [ToggleUI]_TextTimeEnabled ("Time Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Int) = 0
+ _TextTimeColor ("Color", Color) = (1, 0, 1, 1)
+ _TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextTimeOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextTimeRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextTimeScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextTimePadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
+ [HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
+
+ // Mirror Rendering
+ [HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
+ [Toggle(_REQUIRE_UV2)]_EnableMirrorOptions ("Enable Mirror Options", Float) = 0
+ [Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Int) = 0
+ [ToggleUI]_EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
+ _MirrorTexture ("Mirror Tex", 2D) = "white" { }
+ [HideInInspector][Vector2]_MirrorTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MirrorTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
+
+ // Distance Fade
+ [HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
+ _MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
+ _MainFadeTexture ("Fade Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainFadeTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainFadeTextureUV ("UV", Int) = 0
+ [Vector2]_MainDistanceFade ("Distance Fade X to Y", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
+
+ // Angular Fade
+ [HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
+ [Toggle(_SUNDISK_NONE)]_EnableRandom ("Enable Angular Fade", Float) = 0
+ [Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Int) = 0
+ [Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Int) = 0
+ [Vector3]_AngleForwardDirection ("Forward Direction", Vector) = (0, 0, 1, 0)
+ _CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
+ _CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
+ _ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
+ _ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
+ _AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
+
+ // UV Distortion
+ [HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
+ [Toggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
+ _DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_DistortionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _DistortionMaskUV ("UV", Int) = 0
+ _DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" { }
+ _DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" { }
+ _DistortionStrength ("Strength1", Float) = 0.5
+ _DistortionStrength1 ("Strength2", Float) = 0.5
+ [Vector2]_DistortionSpeed ("Speed1", Vector) = (0.5, 0.5, 0, 0)
+ [Vector2]_DistortionSpeed1 ("Speed2", Vector) = (0.5, 0.5, 0, 0)
+ [HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
+
+ // Outline Options
+ [HideInInspector] m_outlineOptions ("Outlines", Float) = 0
+ [ToggleUI]_commentIfZero_EnableOutlinePass ("Enable Outlines", float) = 0
+ [Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)]_OutlineMode ("Mode", Int) = 0
+ _OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
+ _OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
+ _OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1, 0, 0, 0)
+ _OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1, 0, 0, 0)
+ [ToggleUI]_OutlineFixedSize ("Fixed Size?", Float) = 0
+ [Enum(Off, 0, Normals, 1, Mask VC.r, 2)]_OutlineUseVertexColors ("Vertex Color", Float) = 0
+ [ToggleUI]_OutlineLit ("Enable Lighting", Float) = 1
+ _LineWidth ("Width", Float) = 0
+ _LineColor ("Color", Color) = (1, 1, 1, 1)
+ _OutlineEmission ("Outline Emission", Float) = 0
+ _OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineTexturePan ("Outline Texture Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineTextureUV ("UV", Int) = 0
+ _OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineMaskUV ("UV", Int) = 0
+ _OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
+ [HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
+ [Vector2]_OutlineFadeDistance ("Outline distance Fade", Vector) = (0, 0, 0, 0)
+ [Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
+ _OutlineOffsetFactor("Offset Factor", Float) = 0
+ _OutlineOffsetUnits("Offset Units", Float) = 0
+ [HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
+
+ // Parallax Mapping
+ [HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
+ [Toggle(_PARALLAXMAP)]_ParallaxMap ("Enable Parallax FX", Float) = 0
+ [ToggleUI]_ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
+ [ToggleUI]_ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
+ [HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
+ [Vector2]_ParallaxHeightMapPan ("Pan", Vector) = (0, 0, 0, 0)
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Int) = 0
+ _ParallaxHeightMap ("Height Map", 2D) = "black" { }
+ _ParallaxHeightMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxHeightMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxHeightMapMaskUV ("UV", Int) = 0
+ _ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
+ [HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
+ [HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
+ [Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Int) = 0
+ [ToggleUI]_ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
+ _ParallaxInternalMap ("Internal Map", 2D) = "black" { }
+ _ParallaxInternalMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxInternalMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxInternalMapMaskUV ("UV", Int) = 0
+ _ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
+ _ParallaxInternalMinDepth ("Min Depth", Float) = 0
+ _ParallaxInternalMaxDepth ("Max Depth", Float) = 1
+ _ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
+ _ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
+ _ParallaxInternalMinColor ("Min Depth Color", Color) = (1, 1, 1, 1)
+ _ParallaxInternalMaxColor ("Max Depth Color", Color) = (1, 1, 1, 1)
+ [Vector2]_ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [Vector2]_ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
+ [HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
+ _ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
+ [HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
+
+ // Rendering Options
+ [HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
+ [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
+ [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
+ [Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Int) = 1
+ [Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Int) = 15
+ _OffsetFactor ("Offset Factor", Float) = 0.0
+ _OffsetUnits ("Offset Units", Float) = 0.0
+ [ToggleUI]_IgnoreFog ("Ignore Fog", Float) = 0
+ [HideInInspector] Instancing ("Instancing", Float) = 0 //add this property for instancing variants settings to be shown
+
+ // Blending Options
+ [HideInInspector] m_start_blending ("Blending", Float) = 0
+ [Enum(Thry.BlendOp)]_BlendOp ("RGB Blend Op", Int) = 0
+ [Enum(Thry.BlendOp)]_BlendOpAlpha ("Alpha Blend Op", Int) = 0
+ [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Int) = 1
+ [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Int) = 0
+ [HideInInspector] m_end_blending ("Blending", Float) = 0
+
+ // Stencils
+ [HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
+ [IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
+
+ // Outline Stencil
+ [HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
+ [IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
+
+ // Debug Options
+ [HideInInspector] m_start_debugOptions ("Debug", Float) = 0
+ [HideInInspector][Toggle(_COLOROVERLAY_ON)]_DebugEnabled ("Display Debug Info", Float) = 0
+ _VertexUnwrap ("Unwrap", Range(0, 1)) = 0
+ [Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Int) = 0
+ [Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Int) = 0
+ [Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Int) = 0
+ [HideInInspector] m_end_debugOptions ("Debug", Float) = 0
+
+ //[HideInInspector] m_animationToggles ("Animation Support Toggles", Float) = 0
+ //[HelpBox(1)] _AnimationToggleHelp ("You don't need to search through this list. You can enable animation support on any property by right clicking it", Int) = 0
+
+ // Main
+ [HideInInspector]_ColorAnimated ("Color & Alpha", Int) = 0
+ [HideInInspector]_MainTexAnimated ("Texture", Int) = 0
+ [HideInInspector]_MainTex_STAnimated ("Texture Offset/Scale", Int) = 0
+ [HideInInspector]_MainTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_MainVertexColoringAnimated ("Use Vertex Color", Int) = 0
+ [HideInInspector]_MainUseVertexColorAlphaAnimated ("Use Vertex Alpha", Int) = 0
+ [HideInInspector]_MainEmissionStrengthAnimated ("Basic Emission", Int) = 0
+ [HideInInspector]_BumpMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_BumpMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_BumpMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_BumpScaleAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_AlphaMaskAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_AlphaMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AlphaMaskUVAnimated ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector]_MainHueShiftToggleAnimated ("Toggle Hueshift", Int) = 0
+ [HideInInspector]_MainHueShiftReplaceAnimated ("Replace?", Int) = 0
+ [HideInInspector]_MainHueShiftAnimated ("Hue Shift", Int) = 0
+ [HideInInspector]_MainHueShiftSpeedAnimated ("Shift Speed", Int) = 0
+ [HideInInspector]_MainHueShiftMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MainHueShiftMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainHueShiftMaskUVAnimated ("UV", Int) = 0
+
+ // RGB Masking
+ [HideInInspector]_RGBMaskEnabledAnimated ("RGB Mask Enabled", Int) = 0
+ [HideInInspector]_RGBUseVertexColorsAnimated ("Use Vertex Colors", Int) = 0
+ [HideInInspector]_RGBBlendMultiplicativeAnimated ("Multiplicative?", Int) = 0
+ [HideInInspector]_RGBMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RGBMaskPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RedColorAnimated ("R Color", Int) = 0
+ [HideInInspector]_RedTexureAnimated ("R Texture", Int) = 0
+ [HideInInspector]_RGBRedPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBRed_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_GreenColorAnimated ("G Color", Int) = 0
+ [HideInInspector]_GreenTextureAnimated ("G Texture", Int) = 0
+ [HideInInspector]_RGBGreenPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBGreen_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_BlueColorAnimated ("B Color", Int) = 0
+ [HideInInspector]_BlueTextureAnimated ("B Texture", Int) = 0
+ [HideInInspector]_RGBBluePanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBBlue_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_RGBNormalBlendAnimated ("UV", Int) = 0
+
+ // Detail Options
+ [HideInInspector]_DetailMaskAnimated ("Detail Mask (R:Texture, G:Normal)", Int) = 0
+ [HideInInspector]_DetailMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTintAnimated ("Detail Texture Tint", Int) = 0
+ [HideInInspector]_DetailTexAnimated ("Detail Texture", Int) = 0
+ [HideInInspector]_DetailTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTexIntensityAnimated ("Detail Tex Intensity", Int) = 0
+ [HideInInspector]_DetailBrightnessAnimated ("Detail Brightness:", Int) = 0
+ [HideInInspector]_DetailNormalMapAnimated ("Detail Normal", Int) = 0
+ [HideInInspector]_DetailNormalMapScaleAnimated ("Detail Normal Intensity", Int) = 0
+ [HideInInspector]_DetailNormalMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailNormalMapUVAnimated ("UV", Int) = 0
+
+ //Vertex Manipulations
+ [HideInInspector]_VertexManipulationLocalTranslationAnimated ("Local Translation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalRotationAnimated ("Local Rotation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalScaleAnimated ("Local Scale", Int) = 0
+ [HideInInspector]_VertexManipulationWorldTranslationAnimated ("World Translation", Int) = 0
+ [HideInInspector]_VertexManipulationHeightAnimated ("Vertex Height", Int) = 0
+ [HideInInspector]_VertexManipulationHeightMaskAnimated ("Height Map", Int) = 0
+ [HideInInspector]_VertexManipulationHeightPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VertexManipulationHeightUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VertexManipulationHeightBiasAnimated ("Mask Bias", Int) = 0
+ [HideInInspector]_VertexRoundingEnabledAnimated ("Rounding Enabled", Int) = 0
+ [HideInInspector]_VertexRoundingDivisionAnimated ("Division Amount", Int) = 0
+
+ // Alpha Options
+ [HideInInspector]_AlphaModAnimated ("Alpha Mod", Int) = 0
+ [HideInInspector]_CutoffAnimated ("Alpha Cuttoff", Int) = 0
+ [HideInInspector]_DitheringEnabledAnimated ("Enable Dithering", Int) = 0
+ [HideInInspector]_DitherGradientAnimated ("Dither Gradient", Int) = 0
+ [HideInInspector]_ForceOpaqueAnimated ("Force Opaque", Int) = 0
+ [HideInInspector]_MainShadowClipModAnimated ("Shadow Clip Mod", Int) = 0
+ [HideInInspector]_AlphaToMaskAnimated ("Alpha To Coverage", Int) = 0
+ [HideInInspector]_MainAlphaToCoverageAnimated ("Sharpenned A2C", Int) = 0
+ [HideInInspector]_AlphaPremultiplyAnimated ("Alpha Premultiply", Int) = 0
+ [HideInInspector]_MainMipScaleAnimated ("Mip Level Alpha Scale", Int) = 0
+
+ // Decal Texture
+ [HideInInspector]_DecalEnabledAnimated ("Enable", Int) = 0
+ [HideInInspector]_DecalColorAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalEmissionStrengthAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalTextureAnimated ("Decal", Int) = 0
+ [HideInInspector]_DecalTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DecalMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_DecalScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_DecalPositionAnimated ("Position", Int) = 0
+ [HideInInspector]_DecalRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_DecalRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_DecalBlendAddAnimated ("Add", Int) = 0
+ [HideInInspector]_DecalBlendMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_DecalBlendReplaceAnimated ("Replace", Int) = 0
+
+ // Lighting
+ [HideInInspector]_EnableLightingAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LightingModeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingStandardSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_LightingShadingEnabledAnimated ("Enable Shading-",Int) = 0
+ [HideInInspector]_LightingRampTypeAnimated ("Ramp Type", Int) = 0
+ [HideInInspector]_ToonRampAnimated ("Lighting Ramp", Int) = 0
+ [HideInInspector]_LightingShadowMaskAnimated ("Ramp Mask", Int) = 0
+ [HideInInspector]_LightingShadowMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ShadowOffsetAnimated ("Ramp Offset", Int) = 0
+ [HideInInspector]_LightingGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingShadowColorAnimated ("Shadow Tint", Int) = 0
+ [HideInInspector]_ShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_AttenuationMultiplierAnimated ("Unity Shadows", Int) = 0
+ [HideInInspector]_LightingIgnoreAmbientColorAnimated ("Ignore Ambient Color", Int) = 0
+
+ [HideInInspector]_LightingDirectColorModeAnimated ("D Color", Int) = 0
+ [HideInInspector]_LightingIndirectColorModeAnimated ("I Color?", Int) = 0
+ [HideInInspector]_LightingMonochromaticAnimated ("Monochromatic Lighting?", Int) = 0
+ [HideInInspector]_LightingUncappedAnimated ("Uncapped Lighting", Int) = 0
+ [HideInInspector]_LightingOnlyUnityShadowsAnimated ("Only Unity Shadows", Int) = 0
+ [HideInInspector]_LightingMinLightBrightnessAnimated ("Min Brightnes", Int) = 0
+ [HideInInspector]_LightingMinShadowBrightnessRatioAnimated ("Shadow:Light min Ratio", Int) = 0
+
+ [HideInInspector]_LightingDetailShadowsEnabledAnimated ("Enabled Detail Shadows?", Int) = 0
+ [HideInInspector]_LightingDetailShadowsAnimated ("Detail Shadows", Int) = 0
+ [HideInInspector]_LightingDetailShadowsPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingDetailShadowsUVAnimated ("UV", Int) = 0
+ [HideInInspector]_LightingDetailStrengthAnimated ("Detail Strength", Int) = 0
+
+ [HideInInspector]_LightingEnableAOAnimated ("Enable AO", Int) = 0
+ [HideInInspector]_LightingAOTexAnimated ("AO Map", Int) = 0
+ [HideInInspector]_LightingAOTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingAOTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_AOStrengthAnimated ("AO Strength", Range(0, 1)) = 0
+
+ [HideInInspector]_UseShadowTextureAnimated ("EnableShadowTexture", Int) = 0
+ [HideInInspector]_LightingShadowTextureAnimated ("Shadow Texture", Int) = 0
+ [HideInInspector]_LightingShadowTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowTextureUVAnimated ("UV", Int) = 0
+
+ [HideInInspector]_LightingEnableHSLAnimated ("Enabled HSL Lighting", Int) = 0
+ [HideInInspector]_LightingHSLIntensityAnimated ("Shadow HSL Intensity", Int) = 0
+ [HideInInspector]_LightingShadowHueAnimated ("Shadow Hue Change", Int) = 0
+ [HideInInspector]_LightingShadowSaturationAnimated ("Shadow Saturation Change", Int) = 0
+ [HideInInspector]_LightingShadowLightnessAnimated ("Shadow Lightness Change", Int) = 0
+
+ // point/spot Light Settings
+ [HideInInspector]_commentIfZero_LightingAdditiveEnableAnimated ("Enable Additive", Int) = 0
+ [HideInInspector]_LightingAdditiveTypeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingAdditivePassthroughAnimated ("Point Light Passthrough", Int) = 0
+ [HideInInspector]_LightingAdditiveDetailStrengthAnimated ("Detail Shadow Strength", Int) = 0
+ [HideInInspector]_LightingAdditiveLimitIntensityAnimated ("Limit Intensity", Int) = 0
+ [HideInInspector]_LightingAdditiveMaxIntensityAnimated ("Max Intensity", Int) = 0
+
+ // Subsurface Scattering
+ [HideInInspector]_EnableSSSAnimated ("Enable Subsurface Scattering", Int) = 0
+ [HideInInspector]_SSSColorAnimated ("Subsurface Color", Int) = 0
+ [HideInInspector]_SSSThicknessMapAnimated ("Thickness Map", Int) = 0
+ [HideInInspector]_SSSThicknessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SSSThicknessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SSSThicknessModAnimated ("Thickness mod", Int) = 0
+ [HideInInspector]_SSSSCaleAnimated ("Light Strength", Int) = 0
+ [HideInInspector]_SSSPowerAnimated ("Light Spread", Int) = 0
+ [HideInInspector]_SSSDistortionAnimated ("Light Distortion", Int) = 0
+
+ // Rim Lighting
+ [HideInInspector]_EnableRimLightingAnimated ("Enable Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_RimLightingInvertAnimated ("Invert Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightColorAnimated ("Rim Color", Int) = 0
+ [HideInInspector]_RimWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimStrengthAnimated ("Rim Emission", Int) = 0
+ [HideInInspector]_RimBrightenAnimated ("Rim Color Brighten", Int) = 0
+ [HideInInspector]_RimLightColorBiasAnimated ("Rim Color Bias", Int) = 0
+ [HideInInspector]_RimTexAnimated ("Rim Texture", Int) = 0
+ [HideInInspector]_RimTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimMaskAnimated ("Rim Mask", Int) = 0
+ [HideInInspector]_RimMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimMaskUVAnimated ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector]_RimWidthNoiseTextureAnimated ("Rim Width Noise", Int) = 0
+ [HideInInspector]_RimWidthNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimWidthNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimWidthNoiseStrengthAnimated ("Intensity", Int) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector]_ShadowMixAnimated ("Shadow Mix In", Int) = 0
+ [HideInInspector]_ShadowMixThresholdAnimated ("Shadow Mix Threshold", Int) = 0
+ [HideInInspector]_ShadowMixWidthModAnimated ("Shadow Mix Width Mod", Int) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector]_EnableEnvironmentalRimAnimated ("Enable Environmental Rim", Int) = 0
+ [HideInInspector]_RimEnviroMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RimEnviroMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimEnviroMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimEnviroBlurAnimated ("Blur", Int) = 0
+ [HideInInspector]_RimEnviroWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimEnviroSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimEnviroMinBrightnessAnimated ("Min Brightness Threshold", Int) = 0
+ [HideInInspector]_RimEnviroIntensityAnimated ("Intensity", Int) = 0
+
+ // Metallics
+ [HideInInspector]_EnableMetallicAnimated ("Enable Metallics", Int) = 0
+ [HideInInspector]_CubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_SampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_MetalReflectionTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_MetallicTintMapAnimated ("Tint Map", Int) = 0
+ [HideInInspector]_MetallicTintMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicTintMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicMaskAnimated ("Metallic Mask", Int) = 0
+ [HideInInspector]_MetallicMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SmoothnessMaskAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SmoothnessMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_InvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessAnimated ("Smoothness", Int) = 0
+
+ // Clearcoat
+ [HideInInspector]_EnableClearCoatAnimated ("Enable Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatNormalToUseAnimated ("What Normal?", Int) = 0
+ [HideInInspector]_ClearCoatCubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_ClearCoatSampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_ClearCoatTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_ClearCoatMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ClearCoatMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatInvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_ClearCoatForceLightingAnimated ("Force Lighting", Int) = 0
+
+ // First Matcap
+ [HideInInspector]_MatcapEnableAnimated ("Enable Matcap", Int) = 0
+ [HideInInspector]_MatcapColorAnimated ("Color", Int) = 0
+ [HideInInspector]_MatcapAnimated ("Matcap", Int) = 0
+ [HideInInspector]_MatcapBorderAnimated ("Border", Int) = 0
+ [HideInInspector]_MatcapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MatcapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MatcapMaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_MatcapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MatcapEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_MatcapIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_MatcapLightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_MatcapReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_MatcapMultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_MatcapAddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_MatcapNormalAnimated ("Normal to use", Int) = 0
+
+ // Second Matcap
+ [HideInInspector]_Matcap2EnableAnimated ("Enable Matcap 2", Int) = 0
+ [HideInInspector]_Matcap2ColorAnimated ("Color", Int) = 0
+ [HideInInspector]_Matcap2Animated ("Matcap", Int) = 0
+ [HideInInspector]_Matcap2BorderAnimated ("Border", Int) = 0
+ [HideInInspector]_Matcap2MaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_Matcap2MaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_Matcap2MaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_Matcap2MaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_Matcap2EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_Matcap2IntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_Matcap2LightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_Matcap2ReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_Matcap2MultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_Matcap2AddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_Matcap2NormalAnimated ("Normal to use", Int) = 0
+
+ // Specular
+ [HideInInspector]_EnableSpecularAnimated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularTypeAnimated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTintAnimated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMapAnimated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothnessAnimated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMaskAnimated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFromAnimated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangentAnimated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1AlphaAnimated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2AlphaAnimated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1OffsetAnimated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2SmoothnessAnimated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMapAnimated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMapAnimated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStartAnimated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEndAnimated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColorAnimated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirroredAnimated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroAnimated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplierAnimated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroAnimated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplierAnimated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuterAnimated ("Inner/Outer Edge", Int) = 0
+
+ // Second Specular
+ [HideInInspector]_EnableSpecular1Animated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularType1Animated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormal1Animated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTint1Animated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallic1Animated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothness1Animated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMap1Animated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothness1Animated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMask1Animated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFrom1Animated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangent1Animated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1Alpha1Animated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2Alpha1Animated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1Offset1Animated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2Smoothness1Animated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMap1Animated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMap1Animated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStart1Animated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEnd1Animated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColor1Animated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirrored1Animated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1Animated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplier1Animated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1Animated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplier1Animated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuter1Animated ("Inner/Outer Edge", Int) = 0
+
+ // First Emission
+ [HideInInspector]_EnableEmissionAnimated ("Enable Emission", Int) = 0
+ [HideInInspector]_EmissionReplaceAnimated ("Replace Base Color", Int) = 0
+ [HideInInspector]_EmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMapAnimated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMapAnimated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMaskAnimated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabledAnimated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShiftAnimated ("Hue Shift", Int) = 0
+
+ // Center out emission
+ [HideInInspector]_EmissionCenterOutEnabledAnimated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeedAnimated ("Flow Speed", Int) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector]_EnableGITDEmissionAnimated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMeshAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplierAnimated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplierAnimated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLightAnimated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLightAnimated ("Max Lighting", Int) = 0
+
+ // Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_MinAnimated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_MaxAnimated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_VelocityAnimated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffsetAnimated ("Offset", Int) = 0
+
+ // Scrolling Emission
+ [HideInInspector]_ScrollingEmissionAnimated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurveAnimated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurveAnimated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColorAnimated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_DirectionAnimated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_WidthAnimated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_VelocityAnimated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_IntervalAnimated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffsetAnimated ("Offset", Int) = 0
+
+ // Second Enission
+ [HideInInspector]_EnableEmission1Animated ("Enable Emission 2", Int) = 0
+ [HideInInspector]_EmissionColor1Animated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMap1Animated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMap1Animated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMask1Animated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrength1Animated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabled1Animated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShift1Animated ("Hue Shift", Int) = 0
+
+ // Second Center Out Enission
+ [HideInInspector]_EmissionCenterOutEnabled1Animated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeed1Animated ("Flow Speed", Int) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector]_EnableGITDEmission1Animated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMesh1Animated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplier1Animated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplier1Animated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLight1Animated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLight1Animated ("Max Lighting", Int) = 0
+
+ // Second Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_Min1Animated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_Max1Animated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_Velocity1Animated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffset1Animated ("Offset", Int) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector]_ScrollingEmission1Animated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurve1Animated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurve1Animated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColor1Animated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_Direction1Animated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_Width1Animated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_Velocity1Animated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_Interval1Animated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffset1Animated ("Offset", Int) = 0
+
+ // Flipbook
+ [HideInInspector]_EnableFlipbookAnimated ("Enable Flipbook", Int) = 0
+ [HideInInspector]_FlipbookAlphaControlsFinalAlphaAnimated ("Flipbook Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookIntensityControlsAlphaAnimated ("Intensity Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookColorReplacesAnimated ("Color Replaces Flipbook", Int) = 0
+ [HideInInspector]_FlipbookTexArrayAnimated ("Texture Array", Int) = 0
+ [HideInInspector]_FlipbookTexArrayUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookTexArrayPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_FlipbookMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookColorAnimated ("Color & alpha", Int) = 0
+ [HideInInspector]_FlipbookTotalFramesAnimated ("Total Frames", Int) = 0
+ [HideInInspector]_FlipbookFPSAnimated ("FPS", Int) = 0
+ [HideInInspector]_FlipbookScaleOffsetAnimated ("Scale | Offset", Int) = 0
+ [HideInInspector]_FlipbookTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_FlipbookEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_FlipbookRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_FlipbookRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_FlipbookReplaceAnimated ("Replace", Int) = 0
+ [HideInInspector]_FlipbookMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_FlipbookAddAnimated ("Add", Int) = 0
+ [HideInInspector]_FlipbookCurrentFrameAnimated ("Current Frame", Int) = 0
+
+ // Dissolve
+ [HideInInspector]_EnableDissolveAnimated ("Enable Dissolve", Int) = 0
+ [HideInInspector]_DissolveTypeAnimated ("Dissolve Type", Int) = 0
+ [HideInInspector]_DissolveEdgeWidthAnimated ("Edge Width", Int) = 0
+ [HideInInspector]_DissolveEdgeHardnessAnimated ("Edge Hardness", Int) = 0
+ [HideInInspector]_DissolveEdgeColorAnimated ("Edge Color", Int) = 0
+ [HideInInspector]_DissolveEdgeGradientAnimated ("Edge Gradient", Int) = 0
+ [HideInInspector]_DissolveEdgeEmissionAnimated ("Edge Emission", Int) = 0
+ [HideInInspector]_DissolveTextureColorAnimated ("Dissolved Color", Int) = 0
+ [HideInInspector]_DissolveToTextureAnimated ("Dissolved Texture", Int) = 0
+ [HideInInspector]_DissolveToTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveToTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveToEmissionStrengthAnimated ("Dissolved Emission Strength", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureAnimated ("Dissolve Noise", Int) = 0
+ [HideInInspector]_DissolveNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseAnimated ("Dissolve Detail Noise", Int) = 0
+ [HideInInspector]_DissolveDetailNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertDetailNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailStrengthAnimated ("Dissolve Detail Strength", Int) = 0
+ [HideInInspector]_DissolveAlphaAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveUseVertexColorsAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveMaskAnimated ("Dissolve Mask", Int) = 0
+ [HideInInspector]_DissolveMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveMaskInvertAnimated ("Invert?", Int) = 0
+ [HideInInspector]_ContinuousDissolveAnimated ("Continuous Dissolve Speed", Int) = 0
+ [HideInInspector]_DissolveEmissionSideAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_DissolveEmission1SideAnimated ("Emission 2", Int) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector]_DissolveP2PWorldLocalAnimated ("World/Local", Int) = 0
+ [HideInInspector]_DissolveP2PEdgeLengthAnimated ("Edge Length", Int) = 0
+ [HideInInspector]_DissolveStartPointAnimated ("Start Point", Int) = 0
+ [HideInInspector]_DissolveEndPointAnimated ("End Point", Int) = 0
+
+ [HideInInspector]_DissolveAlpha0Animated ("_DissolveAlpha0", Int) = 0
+ [HideInInspector]_DissolveAlpha1Animated ("_DissolveAlpha1", Int) = 0
+ [HideInInspector]_DissolveAlpha2Animated ("_DissolveAlpha2", Int) = 0
+ [HideInInspector]_DissolveAlpha3Animated ("_DissolveAlpha3", Int) = 0
+ [HideInInspector]_DissolveAlpha4Animated ("_DissolveAlpha4", Int) = 0
+ [HideInInspector]_DissolveAlpha5Animated ("_DissolveAlpha5", Int) = 0
+ [HideInInspector]_DissolveAlpha6Animated ("_DissolveAlpha6", Int) = 0
+ [HideInInspector]_DissolveAlpha7Animated ("_DissolveAlpha7", Int) = 0
+ [HideInInspector]_DissolveAlpha8Animated ("_DissolveAlpha8", Int) = 0
+ [HideInInspector]_DissolveAlpha9Animated ("_DissolveAlpha9", Int) = 0
+
+ // Panosphere
+ [HideInInspector]_PanoToggleAnimated ("Enable Panosphere", Int) = 0
+ [HideInInspector]_PanoInfiniteStereoToggleAnimated ("Infinite Stereo", Int) = 0
+ [HideInInspector]_PanosphereColorAnimated ("Color", Int) = 0
+ [HideInInspector]_PanosphereTextureAnimated ("Texture", Int) = 0
+ [HideInInspector]_PanoMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_PanoMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_PanoMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_PanoEmissionAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_PanoBlendAnimated ("Alpha", Int) = 0
+ [HideInInspector]_PanospherePanAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_PanoCubeMapToggleAnimated ("Use Cubemap", Int) = 0
+ [HideInInspector]_PanoCubeMapAnimated ("CubeMap", Int) = 0
+
+ // Glitter
+ [HideInInspector]_GlitterEnableAnimated ("Enable Glitter?", Int) = 0
+ [HideInInspector]_GlitterModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterShapeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterBlendTypeAnimated ("Blend Mode", Int) = 0
+ [HideInInspector]_GlitterColorAnimated ("Color", Int) = 0
+ [HideInInspector]_GlitterUseSurfaceColorAnimated ("Use Surface Color", Int) = 0
+ [HideInInspector]_GlitterColorMapAnimated ("Glitter Color Map", Int) = 0
+ [HideInInspector]_GlitterColorMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterColorMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterTextureAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterRandomRotationAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterFrequencyAnimated ("Glitter Density", Int) = 0
+ [HideInInspector]_GlitterJitterAnimated ("Glitter Jitter", Int) = 0
+ [HideInInspector]_GlitterSpeedAnimated ("Glitter Wobble Speed", Int) = 0
+ [HideInInspector]_GlitterSizeAnimated ("Glitter Size", Int) = 0
+ [HideInInspector]_GlitterContrastAnimated ("Glitter Contrast", Int) = 0
+ [HideInInspector]_GlitterAngleRangeAnimated ("Glitter Angle Range", Int) = 0
+ [HideInInspector]_GlitterMinBrightnessAnimated ("Glitter Min Brightness", Int) = 0
+ [HideInInspector]_GlitterBrightnessAnimated ("Glitter Max Brightness", Int) = 0
+ [HideInInspector]_GlitterBiasAnimated ("Glitter Bias", Int) = 0
+ [HideInInspector]_GlitterCenterSizeAnimated ("center size", Int) = 0
+ [HideInInspector]_GlitterTextureRotationAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_glitterFrequencyLinearEmissiveAnimated ("Frequency", Int) = 0
+ [HideInInspector]_GlitterJaggyFixAnimated ("Jaggy Fix", Int) = 0
+
+ // Glitter Random Colors
+ [HideInInspector]_GlitterRandomColorsAnimated ("Enable", Int) = 0
+ [HideInInspector]_GlitterMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_GlitterMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+ [HideInInspector]_GlitterRandomSizeAnimated ("random Size Toggle", Int) = 0
+ [HideInInspector]_GlitterMinMaxSizeAnimated ("Min Max Random Size", Int) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector]_TextGlyphsAnimated ("Font Array", Int) = 0
+ [HideInInspector]_TextPixelRangeAnimated ("Pixel Range", Int) = 0
+ [HideInInspector]_TextEnabledAnimated ("Text?", Int) = 0
+
+ // FPS
+ [HideInInspector]_TextFPSEnabledAnimated ("FPS Text?", Int) = 0
+ [HideInInspector]_TextFPSUVAnimated ("FPS UV", Int) = 0
+ [HideInInspector]_TextFPSColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextFPSEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextFPSOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextFPSRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextFPSScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextFPSPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // POSITION
+ [HideInInspector]_TextPositionEnabledAnimated ("Position Text?", Int) = 0
+ [HideInInspector]_TextPositionUVAnimated ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVerticalAnimated ("Vertical?", Int) = 0
+ [HideInInspector]_TextPositionColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextPositionEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextPositionOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextPositionRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextPositionScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextPositionPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // INSTANCE TIME
+ [HideInInspector]_TextTimeEnabledAnimated ("Time Text?", Int) = 0
+ [HideInInspector]_TextTimeUVAnimated ("Time UV", Int) = 0
+ [HideInInspector]_TextTimeColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextTimeEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextTimeOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextTimeRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextTimeScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextTimePaddingAnimated ("Padding Reduction", Int) = 0
+
+ // Mirror Rendering
+ [HideInInspector]_EnableMirrorOptionsAnimated ("Enable Mirror Options", Int) = 0
+ [HideInInspector]_MirrorAnimated ("Show in mirror", Int) = 0
+ [HideInInspector]_EnableMirrorTextureAnimated ("Enable Mirror Texture", Int) = 0
+ [HideInInspector]_MirrorTextureAnimated ("Mirror Tex", Int) = 0
+ [HideInInspector]_MirrorTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MirrorTextureUVAnimated ("UV", Int) = 0
+
+ // Distance Fade
+ [HideInInspector]_MainMinAlphaAnimated ("Minimum Alpha", Int) = 0
+ [HideInInspector]_MainFadeTextureAnimated ("Fade Mask", Int) = 0
+ [HideInInspector]_MainFadeTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainFadeTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MainDistanceFadeAnimated ("Distance Fade X to Y", Int) = 0
+
+ // Angular Fade
+ [HideInInspector]_EnableRandomAnimated ("Enable Angular Fade", Int) = 0
+ [HideInInspector]_AngleTypeAnimated ("Angle Type", Int) = 0
+ [HideInInspector]_AngleCompareToAnimated ("Model or Vert Positon", Int) = 0
+ [HideInInspector]_AngleForwardDirectionAnimated ("Forward Direction", Int) = 0
+ [HideInInspector]_CameraAngleMinAnimated ("Camera Angle Min", Int) = 0
+ [HideInInspector]_CameraAngleMaxAnimated ("Camera Angle Max", Int) = 0
+ [HideInInspector]_ModelAngleMinAnimated ("Model Angle Min", Int) = 0
+ [HideInInspector]_ModelAngleMaxAnimated ("Model Angle Max", Int) = 0
+ [HideInInspector]_AngleMinAlphaAnimated ("Min Alpha", Int) = 0
+
+ // UV Distortion
+ [HideInInspector]_EnableDistortionAnimated ("Enabled?", Int) = 0
+ [HideInInspector]_DistortionMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DistortionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DistortionMaskUVAnimated ("Distortion Mask UV", Int) = 0
+ [HideInInspector]_DistortionFlowTextureAnimated ("Distortion Texture 1", Int) = 0
+ [HideInInspector]_DistortionFlowTexture1Animated ("Distortion Texture 2", Int) = 0
+ [HideInInspector]_DistortionStrengthAnimated ("Strength1", Int) = 0
+ [HideInInspector]_DistortionStrength1Animated ("Strength2", Int) = 0
+ [HideInInspector]_DistortionSpeedAnimated ("Speed1", Int) = 0
+ [HideInInspector]_DistortionSpeed1Animated ("Speed2", Int) = 0
+
+ // Video Options
+ [HideInInspector]_EnableVideoAnimated ("Enable Video", Int) = 0
+ [HideInInspector]_VideoUVNumberAnimated ("Screen UV#", Int) = 0
+ [HideInInspector]_VideoTypeAnimated ("Screen Type", Int) = 0
+ [HideInInspector]_VideoBacklightAnimated ("Brightness", Int) = 0
+ [HideInInspector]_VideoPixelTextureAnimated ("Pixel Texture", Int) = 0
+ [HideInInspector]_VideoResolutionAnimated ("Resolution", Int) = 0
+ [HideInInspector]_VideoMaskTextureAnimated ("Mask", Int) = 0
+ [HideInInspector]_VideoMaskPanningAnimated ("Mask Pan Speed", Int) = 0
+ [HideInInspector]_VideoEnableVideoPlayerAnimated ("Enable Video Player", Int) = 0
+ [HideInInspector]_VideoPixelateToResolutionAnimated ("Pixelate To Resolution", Int) = 0
+ [HideInInspector]_VideoRepeatVideoTextureAnimated ("Clamp To UV", Int) = 0
+ [HideInInspector]_VideoPanningAnimated ("Panning Speed", Int) = 0
+ [HideInInspector]_VideoTilingAnimated ("Tiling", Int) = 0
+ [HideInInspector]_VideoOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_VideoSaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_VideoContrastAnimated ("Contrast boost", Int) = 0
+ [HideInInspector]_VideoEnableDebugAnimated ("Enable Debug", Int) = 0
+ [HideInInspector]_VideoDebugTextureAnimated ("Video Debug Tex", Int) = 0
+ [HideInInspector]_VideoCRTRefreshRateAnimated ("Refresh Rate", Int) = 0
+ [HideInInspector]_VideoCRTPixelEnergizedTimeAnimated ("Pixel Fade Time", Int) = 0
+ [HideInInspector]_VideoGameboyRampAnimated ("Color Ramp", Int) = 0
+
+ // TouchFX
+ [HideInInspector]_EnableBulgeAnimated ("Bulge", Int) = 0
+ [HideInInspector]_BulgeMaskAnimated ("Bulge Mask", Int) = 0
+ [HideInInspector]_BuldgeFadeLengthAnimated ("Touch Distance", Int) = 0
+ [HideInInspector]_BuldgeHeightAnimated ("Bulge Height", Int) = 0
+
+ [HideInInspector]_EnableTouchGlowAnimated ("Enable Touch Glow", Int) = 0
+ [HideInInspector]_DepthGradientTextureUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientBlendAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGlowColorAnimated ("Depth Glow Color", Int) = 0
+ [HideInInspector]_DepthGradientAnimated ("Depth Gradient", Int) = 0
+ [HideInInspector]_DepthMaskAnimated ("Depth Mask", Int) = 0
+ [HideInInspector]_DepthGlowEmissionAnimated ("Depth Glow Emission", Int) = 0
+ [HideInInspector]_FadeLengthAnimated ("Fade Length", Int) = 0
+ [HideInInspector]_DepthAlphaMinAnimated ("Alpha Min", Int) = 0
+ [HideInInspector]_DepthAlphaMaxAnimated ("Alpha Max", Int) = 0
+
+ // Hologram
+ [HideInInspector]_EnableHoloAnimated ("Enable Hologram Alpha", Int) = 0
+ [HideInInspector]_HoloAlphaMapAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_HoloCoordinateSpaceAnimated ("Coordinate Space", Int) = 0
+ [HideInInspector]_HoloDirectionAnimated ("Scroll Direction", Int) = 0
+ [HideInInspector]_HoloLineDensityAnimated ("Line Density", Int) = 0
+ [HideInInspector]_HoloScrollSpeedAnimated ("Scroll Speed", Int) = 0
+ [HideInInspector]_HoloFresnelAlphaAnimated ("Intensity", Int) = 0
+ [HideInInspector]_HoloRimSharpnessAnimated ("Sharpness", Int) = 0
+ [HideInInspector]_HoloRimWidthAnimated ("Width", Int) = 0
+
+ // GrabPass
+ [HideInInspector]_GrabPassUseAlphaAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabPassBlendFactorAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabSrcBlendAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabDstBlendAnimated ("Destination Blend", Int) = 0
+ [HideInInspector]_RefractionEnabledAnimated ("Enable Refraction,", Int) = 0
+ [HideInInspector]_RefractionIndexAnimated ("Refraction", Int) = 0
+ [HideInInspector]_RefractionChromaticAberattionAnimated ("Chromatic Aberration", Int) = 0
+ [HideInInspector]_EnableBlurAnimated ("Enable Blur", Int) = 0
+ [HideInInspector]_GrabBlurDistanceAnimated ("Blur Distance", Int) = 0
+ [HideInInspector]_GrabBlurQualityAnimated ("Blur Quality", Int) = 0
+ [HideInInspector]_GrabBlurDirectionsAnimated ("Blur Direction", Int) = 0
+
+ // Iridescence
+ [HideInInspector]_EnableIridescenceAnimated ("Enable Iridescence", Int) = 0
+ [HideInInspector]_IridescenceRampAnimated ("Ramp", Int) = 0
+ [HideInInspector]_IridescenceNormalToggleAnimated ("Custom Normals?", Int) = 0
+ [HideInInspector]_IridescenceNormalMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_IridescenceMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_IridescenceNormalIntensityAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_IridescenceNormalUVAnimated ("Normal UV", Int) = 0
+ [HideInInspector]_IridescenceMaskUVAnimated ("Mask UV", Int) = 0
+ [HideInInspector]_IridescenceNormalSelectionAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_IridescenceIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_IridescenceAddBlendAnimated ("Blend Add", Int) = 0
+ [HideInInspector]_IridescenceReplaceBlendAnimated ("Blend Replace", Int) = 0
+ [HideInInspector]_IridescenceMultiplyBlendAnimated ("Blend Multiply", Int) = 0
+ [HideInInspector]_IridescenceEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_IridescenceTimeAnimated ("When To Run", Int) = 0
+
+ // Vertex Glitching
+ [HideInInspector]_EnableVertexGlitchAnimated ("Enable Vertex Glitching", Int) = 0
+ [HideInInspector]_VertexGlitchFrequencyAnimated ("Glitch Interval", Int) = 0
+ [HideInInspector]_VertexGlitchThresholdAnimated ("Glitch Threshold", Int) = 0
+ [HideInInspector]_VertexGlitchStrengthAnimated ("Glitch Strength", Int) = 0
+
+ // Spawn In Effects
+ [HideInInspector]_EnableScifiSpawnInAnimated ("Enable Sci Fi Spawn", Int) = 0
+ [HideInInspector]_SpawnInNoiseAnimated ("Spawn Noise", Int) = 0
+ [HideInInspector]_SpawnInNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_SpawnInAlphaAnimated ("Spawn Alpha", Int) = 0
+ [HideInInspector]_SpawnInGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_SpawnInGradientFinishAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_SpawnInEmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_SpawnInEmissionOffsetAnimated ("Emission Width", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetAnimated ("Vertex Offset Speed", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetOffsetAnimated ("vert width", Int) = 0
+
+ // Voronoi
+ [HideInInspector]_VoronoiTypeAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiSpaceAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiBlendAnimated ("Blend", Int) = 0
+ [HideInInspector]_EnableVoronoiAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiEffectsMaterialAlphaAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_VoronoiMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseAnimated ("Edge Noise", Int) = 0
+ [HideInInspector]_VoronoiNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_VoronoiColor0Animated ("Color 0", Int) = 0
+ [HideInInspector]_VoronoiEmission0Animated ("Emission 0", Int) = 0
+ [HideInInspector]_VoronoiColor1Animated ("Color 1", Int) = 0
+ [HideInInspector]_VoronoiEmission1Animated ("Emission 1", Int) = 0
+ [HideInInspector]_VoronoiGradientAnimated ("Gradient", Int) = 0
+ [HideInInspector]_VoronoiScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_VoronoiSpeedAnimated ("Speed", Int) = 0
+ [HideInInspector]_VoronoiEnableRandomCellColorAnimated ("Rando Cell Col", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+
+ // Blacklight mask
+ [HideInInspector]_BlackLightMaskEnabledAnimated ("Black Light Mask Enabled", Int) = 0
+ [HideInInspector]_BlackLightMaskKeysAnimated ("Mask Keys", Int) = 0
+ [HideInInspector]_BlackLightMaskStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_BlackLightMaskEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_BlackLightMaskDebugAnimated ("Visualize", Int) = 0
+ [HideInInspector]_BlackLightMaskMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_BlackLightMaskClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcapAnimated ("Matcap 1", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcap2Animated ("Matcap 2", Int) = 0
+ [HideInInspector]_BlackLightMaskEmissionAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_BlackLightMaskEmission2Animated ("Emission 2", Int) = 0
+ [HideInInspector]_BlackLightMaskFlipbookAnimated ("Flipbook", Int) = 0
+ [HideInInspector]_BlackLightMaskDissolveAnimated ("Dissolve", Int) = 0
+ [HideInInspector]_BlackLightMaskPanosphereAnimated ("Panosphere", Int) = 0
+ [HideInInspector]_BlackLightMaskGlitterAnimated ("Glitter", Int) = 0
+ [HideInInspector]_BlackLightMaskIridescenceAnimated ("Iridescence", Int) = 0
+
+ // Outline Options
+ [HideInInspector]_OutlineModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_OutlineFixedSizeAnimated ("Fixed Size?", Int) = 0
+ [HideInInspector]_OutlineUseVertexColorsAnimated ("V Color", Int) = 0
+ [HideInInspector]_OutlineLitAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LineWidthAnimated ("Width", Int) = 0
+ [HideInInspector]_LineColorAnimated ("Color", Int) = 0
+ [HideInInspector]_OutlineTintMixAnimated ("Tint Mix", Int) = 0
+ [HideInInspector]_OutlineEmissionAnimated ("Outline Emission", Int) = 0
+ [HideInInspector]_OutlineTextureAnimated ("Outline Texture", Int) = 0
+ [HideInInspector]_OutlineMaskAnimated ("Outline Mask", Int) = 0
+ [HideInInspector]_OutlineTexturePanAnimated ("Outline Texture Pan", Int) = 0
+ [HideInInspector]_OutlineShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_OutlineRimLightBlendAnimated ("Rim Light Blend", Int) = 0
+ [HideInInspector]_OutlinePersonaDirectionAnimated ("directional Offset XY", Int) = 0
+ [HideInInspector]_OutlineDropShadowOffsetAnimated ("Drop Direction XY", Int) = 0
+ [HideInInspector]_OutlineFadeDistanceAnimated ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetFactor ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetUnits ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineCullAnimated ("Cull", Int) = 0
+
+ // Parallax Mapping
+ [HideInInspector]_ParallaxMapAnimated ("Enable Parallax FX", Int) = 0
+ [HideInInspector]_ParallaxHeightMapEnabledAnimated ("Enable Parallax Height", Int) = 0
+ [HideInInspector]_ParallaxInternalMapEnabledAnimated ("Enable Parallax Internal", Int) = 0
+ [HideInInspector]_ParallaxHeightMapPanAnimated ("Pan", Int) = 0
+ [HideInInspector]_ParallaxUVAnimated ("Parallax UV", Int) = 0
+ [HideInInspector]_ParallaxHeightMapAnimated ("Height Map", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxStrengthAnimated ("Parallax Strength", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightmapModeAnimated ("Parallax Mode", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightFromAlphaAnimated ("HeightFromAlpha", Int) = 0
+ [HideInInspector]_ParallaxInternalMapAnimated ("Internal Map", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxInternalIterationsAnimated ("Parallax Internal Iterations", Int) = 0
+ [HideInInspector]_ParallaxInternalMinDepthAnimated ("Min Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxDepthAnimated ("Max Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMinFadeAnimated ("Min Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxFadeAnimated ("Max Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMinColorAnimated ("Min Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxColorAnimated ("Max Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalPanSpeedAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_ParallaxInternalPanDepthSpeedAnimated ("Per Level Speed Multiplier", Int) = 0
+ [HideInInspector]_ParallaxBiasAnimated ("Parallax Bias (0.42)", Int) = 0
+
+ // Rendering Options
+ [HideInInspector]_CullAnimated ("Cull", Int) = 0
+ [HideInInspector]_ZTestAnimated ("ZTest", Int) = 0
+ [HideInInspector]_ZWriteAnimated ("ZWrite", Int) = 0
+ [HideInInspector]_ColorMaskAnimated ("Color Mask", Int) = 0
+ [HideInInspector]_OffsetFactorAnimated ("Offset Factor", Int) = 0
+ [HideInInspector]_OffsetUnitsAnimated ("Offset Units", Int) = 0
+ [HideInInspector]_IgnoreFogAnimated ("Ignore Fog", Int) = 0
+
+ // Blending Options
+ [HideInInspector]_BlendOpAnimated ("RGB Blend Op", Int) = 0
+ [HideInInspector]_BlendOpAlphaAnimated ("Alpha Blend Op", Int) = 0
+ [HideInInspector]_SrcBlendAnimated ("RGB Source Blend", Int) = 0
+ [HideInInspector]_DstBlendAnimated ("RGB Destination Blend", Int) = 0
+
+ // Stencils
+ [HideInInspector]_StencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_StencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_StencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_StencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_StencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_StencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_StencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Outline Stencil
+ [HideInInspector]_OutlineStencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_OutlineStencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_OutlineStencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_OutlineStencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_OutlineStencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Debug Options
+ [HideInInspector]_VertexUnwrapAnimated ("Unwrap", Range(0, 1)) = 0
+ [HideInInspector]_DebugMeshDataAnimated ("Mesh Data", Int) = 0
+ [HideInInspector]_DebugLightingDataAnimated ("Lighting Data", Int) = 0
+ [HideInInspector]_DebugCameraDataAnimated ("Camera Data", Int) = 0
+ }
+
+
+ //originalEditorCustomEditor "PoiToon"
+ CustomEditor "Thry.ShaderEditor"
+ SubShader
+ {
+ Tags { "RenderType" = "Opaque" "Queue" = "Geometry" }
+
+// //EnableOutlinePass
+// Pass
+// {
+// Name "Outline"
+// Tags { "LightMode" = "ForwardBase" }
+// Stencil
+// {
+// Ref [_OutlineStencilRef]
+// ReadMask [_OutlineStencilReadMask]
+// WriteMask [_OutlineStencilWriteMask]
+// Comp [_OutlineStencilCompareFunction]
+// Pass [_OutlineStencilPassOp]
+// Fail [_OutlineStencilFailOp]
+// ZFail [_OutlineStencilZFailOp]
+// }
+// ZTest [_ZTest]
+// ColorMask [_ColorMask]
+// Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
+// BlendOp [_BlendOp], [_BlendOpAlpha]
+// Blend [_SrcBlend] [_DstBlend]
+// ZWrite [_ZWrite]
+// AlphaToMask [_AlphaToMask]
+// Cull [_OutlineCull]
+// CGPROGRAM
+//
+// #pragma target 5.0
+// #define FORWARD_BASE_PASS
+// #define OUTLINE
+// float _Mode;
+// // patreon Additive
+// // Black Light Mask
+//// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+// // voronoi
+//// #pragma shader_feature CHROMATIC_ABERRATION
+// // UV Distortion
+//// #pragma shader_feature USER_LUT
+// // Vertex Offsets
+//// #pragma shader_feature AUTO_EXPOSURE
+// // Mirror
+//// #pragma shader_feature _REQUIRE_UV2
+// // Random
+//// #pragma shader_feature _SUNDISK_NONE
+// // Dissolve
+//// #pragma shader_feature DISTORT
+// // Lighting
+//// #pragma shader_feature VIGNETTE_MASKED
+// #pragma multi_compile_fwdbase
+// #pragma fragmentoption ARB_precision_hint_fastest
+// #pragma multi_compile_fog
+// #pragma multi_compile_instancing
+// #pragma vertex vert
+// #pragma fragment frag
+// #include "../Includes/CGI_PoiPassOutline.cginc"
+// ENDCG
+//
+// }
+ //EnableOutlinePass
+
+ Pass
+ {
+ Name "MainPass"
+ Tags { "LightMode" = "ForwardBase" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ AlphaToMask [_AlphaToMask]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend [_SrcBlend] [_DstBlend]
+
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_BASE_PASS
+ float _Mode;
+ // Base Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ #pragma multi_compile _ VERTEXLIGHT_ON
+ // patreon Base
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Grab Pass Blur
+// #pragma shader_feature CHROMATIC_ABERRATION_LOW
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Touch Color
+// #pragma shader_feature GRAIN
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdbase
+ #pragma fragmentoption ARB_precision_hint_fastest
+ #pragma multi_compile_fog
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+
+ //LightingAdditiveEnable
+ Pass
+ {
+ Name "ForwardAddPass"
+ Tags { "LightMode" = "ForwardAdd" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ ZWrite Off
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend One One
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_ADD_PASS
+ float _Mode;
+ // Add Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ // patreon Additive
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+// #pragma shader_feature _PARALLAX_MAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Disable Directionals
+// #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdadd_fullshadows
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ //LightingAdditiveEnable
+
+ //LightingCastShadows
+ Pass
+ {
+ Name "ShadowCasterPass"
+ Tags { "LightMode" = "ShadowCaster" }
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ AlphaToMask Off
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_SHADOW
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Dissolve
+// #pragma shader_feature DISTORT
+ #pragma multi_compile_instancing
+ #pragma vertex vertShadowCaster
+ #pragma fragment fragShadowCaster
+ #include "../Includes/CGI_PoiPassShadow.cginc"
+ ENDCG
+
+ }
+ //LightingCastShadows
+
+ Pass
+ {
+ Tags { "LightMode" = "Meta" }
+ Cull Off
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_META_PASS
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
new file mode 100644
index 00000000..dd851c3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/R2Changyu01001Hair-582d4d06/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ee904f95d5aaf6142b19f4df3c93a424
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7.meta
new file mode 100644
index 00000000..4bf929ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: a093989bf00dbba4c93642e627531604
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets.meta
new file mode 100644
index 00000000..f526e9cc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 28853331809addd4f8b2e7af2f91aba4
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders.meta
new file mode 100644
index 00000000..c407727f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: bbaa73e6ac1bb6d4b88e8935c3a73a29
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders.meta
new file mode 100644
index 00000000..3c2892a7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 677a29c53be23f14fbcb7cf06a0b9fda
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon.meta
new file mode 100644
index 00000000..6ba644af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 11e77f540dbcb4b4ca40aadd8fc70eb5
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
new file mode 100644
index 00000000..fbebf3de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 4468736198923df4db2c2baa45640d61
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
new file mode 100644
index 00000000..afa6c2cd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_ALPHA_TO_COVERAGE
+ #define POI_ALPHA_TO_COVERAGE
+
+ half _MainMipScale;
+ float _MainAlphaToCoverage;
+
+ float CalcMipLevel(float2 texture_coord)
+ {
+ float2 dx = ddx(texture_coord);
+ float2 dy = ddy(texture_coord);
+ float delta_max_sqr = max(dot(dx, dx), dot(dy, dy));
+
+ return 0.5 * log2(delta_max_sqr);
+ }
+
+ void ApplyAlphaToCoverage(inout float4 finalColor)
+ {
+ // Force Model Opacity to 1 if desired
+
+ if (float(0) == 1)
+ {
+
+ if(float(0))
+ {
+ // rescale alpha by mip level
+ finalColor.a *= 1 + max(0, CalcMipLevel(poiMesh.uv[0] * float4(0.00390625,0.00390625,256,256).zw)) * float(0.25);
+ // rescale alpha by partial derivative
+ finalColor.a = (finalColor.a - float(0.5)) / max(fwidth(finalColor.a), 0.0001) + float(0.5);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
new file mode 100644
index 00000000..364f6970
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: bd7c5e186fae942439a6cd11c4f14916
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
new file mode 100644
index 00000000..e529136f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_BACKFACE
+ #define POI_BACKFACE
+
+ float _BackFaceEnabled;
+ float _BackFaceTextureUV;
+ float _BackFaceDetailIntensity;
+ float _BackFaceEmissionStrength;
+ float2 _BackFacePanning;
+ float _BackFaceHueShift;
+ float4 _BackFaceColor;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
+
+ float3 BackFaceColor;
+ void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
+ {
+ backFaceEmission = 0;
+ BackFaceColor = 0;
+
+ if (float(0))
+ {
+ if(!poiMesh.isFrontFace)
+ {
+ albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ backFaceDetailIntensity = float(1);
+ BackFaceColor = albedo.rgb;
+ mixedHueShift = float(0);
+ backFaceEmission = BackFaceColor * float(0);
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
new file mode 100644
index 00000000..1676dc7f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: eaa9ba95326132e4abad0beaf36fae72
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
new file mode 100644
index 00000000..750364ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
@@ -0,0 +1,54 @@
+#ifndef POI_BLACKLIGHT
+ #define POI_BLACKLIGHT
+
+ float4 _BlackLightMaskStart;
+ float4 _BlackLightMaskEnd;
+ float4 _BlackLightMaskKeys;
+ float _BlackLightMaskDebug;
+ float _BlackLightMaskDissolve;
+ float _BlackLightMaskMetallic;
+ float _BlackLightMaskClearCoat;
+ float _BlackLightMaskMatcap;
+ float _BlackLightMaskMatcap2;
+ float _BlackLightMaskEmission;
+ float _BlackLightMaskEmission2;
+ float _BlackLightMaskFlipbook;
+ float _BlackLightMaskPanosphere;
+ float _BlackLightMaskIridescence;
+
+ half _BlackLightMaskGlitter;
+
+ half4 blackLightMask;
+
+ void createBlackLightMask()
+ {
+ blackLightMask = 0;
+ #ifdef VERTEXLIGHT_ON
+
+ for (int lightIndex = 0; lightIndex < 4; lightIndex ++)
+ {
+ float3 lightPos = float3(unity_4LightPosX0[lightIndex], unity_4LightPosY0[lightIndex], unity_4LightPosZ0[lightIndex]);
+ if (!distance(unity_LightColor[lightIndex].rgb, float3(0, 0, 0)))
+ {
+ for (int maskIndex = 0; maskIndex < 4; maskIndex ++)
+ {
+ float4 comparison = _BlackLightMaskKeys;
+ if(unity_LightColor[lightIndex].a == comparison[maskIndex])
+ {
+ blackLightMask[maskIndex] = max(blackLightMask[maskIndex], smoothstep(_BlackLightMaskEnd[maskIndex], _BlackLightMaskStart[maskIndex], distance(poiMesh.worldPos, lightPos)));
+ }
+ }
+ }
+ }
+ #endif
+ }
+#endif
+
+/*
+#ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskDissolve != 4)
+ {
+ blackLightMask[mask];
+ }
+#endif
+*/
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
new file mode 100644
index 00000000..574f783e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 59cd8743fc90e3042a729083505cd2df
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
new file mode 100644
index 00000000..f87ae6dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
@@ -0,0 +1,39 @@
+#ifndef POI_BLENDING
+ #define POI_BLENDING
+
+ /*
+ 0: Zero float4(0.0, 0.0, 0.0, 0.0),
+ 1: One float4(1.0, 1.0, 1.0, 1.0),
+ 2: DstColor destinationColor,
+ 3: SrcColor sourceColor,
+ 4: OneMinusDstColor float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ 5: SrcAlpha sourceColor.aaaa,
+ 6: OneMinusSrcColor float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ 7: DstAlpha destinationColor.aaaa,
+ 8: OneMinusDstAlpha float4(1.0, 1.0, 1.0, 1.0) - destinationColor.,
+ 9: SrcAlphaSaturate saturate(sourceColor.aaaa),
+ 10: OneMinusSrcAlpha float4(1.0, 1.0, 1.0, 1.0) - sourceColor.aaaa,
+ */
+
+ float4 poiBlend(const float sourceFactor, const float4 sourceColor, const float destinationFactor, const float4 destinationColor, const float4 blendFactor)
+ {
+ float4 sA = 1-blendFactor;
+ const float4 blendData[11] = {
+ float4(0.0, 0.0, 0.0, 0.0),
+ float4(1.0, 1.0, 1.0, 1.0),
+ destinationColor,
+ sourceColor,
+ float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sA,
+ saturate(sourceColor.aaaa),
+ 1 - sA,
+ };
+
+ return lerp(blendData[sourceFactor] * sourceColor + blendData[destinationFactor] * destinationColor,sourceColor, sA);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
new file mode 100644
index 00000000..cf7559dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fc6b925fa2f004644aea41878caf3136
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
new file mode 100644
index 00000000..6e4db3fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_BULGE
+ #define POI_BULGE
+
+
+ sampler2D _BulgeMask;
+ float _BuldgeFadeLength;
+ float _BuldgeHeight;
+
+ void bulgyWolgy(inout v2f o)
+ {
+ float depth = DecodeFloatRG(tex2Dlod(_CameraDepthTexture, float4(o.grabPos.xy / o.grabPos.w, 0, 0)));
+ float bulgeMask = tex2Dlod(_BulgeMask, float4(o.uv0.xy, 0, 0));
+ depth = Linear01Depth(depth);
+
+ float intersect = 0;
+ if (depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(o.pos.z / o.pos.w));
+ if(diff > 0)
+ {
+ intersect = 1 - smoothstep(0, _ProjectionParams.w * _BuldgeFadeLength, diff);
+ }
+ }
+ float4 offset = intersect * _BuldgeHeight * float4(o.normal, 0);
+
+ offset = IsInMirror() ? 0: offset;
+ offset *= bulgeMask;
+
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos) + offset;
+ o.localPos = mul(unity_WorldToObject, o.worldPos);
+ o.pos = UnityObjectToClipPos(o.localPos);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
new file mode 100644
index 00000000..95dba021
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0a46618712905e84181c44de3b3e1e1f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
new file mode 100644
index 00000000..5adf7340
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
@@ -0,0 +1,108 @@
+#ifndef POI_CLEARCOAT
+ #define POI_CLEARCOAT
+
+ samplerCUBE _ClearCoatCubeMap;
+ float _ClearCoatSampleWorld;
+ POI_TEXTURE_NOSAMPLER(_ClearCoatMask);
+ POI_TEXTURE_NOSAMPLER(_ClearCoatSmoothnessMap);
+ float _ClearCoatInvertSmoothness;
+ float _ClearCoat;
+ float _ClearCoatSmoothness;
+ float3 _ClearCoatTint;
+ float _ClearCoatNormalToUse;
+ float _ClearCoatForceLighting;
+ float lighty_clear_boy_uwu_var;
+
+
+ float3 CalculateClearCoatEnvironmentalReflections()
+ {
+ float3 reflectionColor;
+
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_ClearCoatSmoothnessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+ if (float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ float roughness = 1 - smoothnessMap;
+
+ lighty_clear_boy_uwu_var = 0;
+
+ float3 reflectedDir = float(0) == 0 ? poiCam.vertexReflectionDir: poiCam.reflectionDir;
+
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool no_probe = unity_SpecCube0_HDR.a == 0 && envSample.a == 0;
+
+
+ if(float(0) == 0 && no_probe == 0)
+ {
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflectionColor = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflectionColor = probe0;
+ }
+ }
+ else
+ {
+ lighty_clear_boy_uwu_var = 1;
+ reflectionColor = texCUBElod(_ClearCoatCubeMap, float4(reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+ }
+
+ if(float(0))
+ {
+ lighty_clear_boy_uwu_var = 1;
+ }
+
+ return reflectionColor * float4(1,1,1,1);
+ }
+
+ void calculateAndApplyClearCoat(inout float4 finalColor)
+ {
+ half clearCoatMap = POI2D_SAMPLER_PAN(_ClearCoatMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskClearCoat != 4)
+ {
+ clearCoatMap *= blackLightMask[_BlackLightMaskClearCoat];
+ }
+ #endif
+
+ half3 reflectionColor = CalculateClearCoatEnvironmentalReflections();
+
+ float NormalDotView = abs(dot(float(1), float(0) == 0 ? poiLight.N0DotV: poiLight.nDotV).r);
+ #ifdef POI_LIGHTING
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var), clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ //finalColor.rgb += reflectionColor;
+ //finalColor.rgb = finalColor.rgb * (1- (reflectionColor.r + reflectionColor.g + reflectionColor.b)/3) + reflectionColor * clearCoatMap * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var);
+ #else
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor, clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
new file mode 100644
index 00000000..4a3076ac
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fdc2f3e619cf1d0449f8927402339ea9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
new file mode 100644
index 00000000..687dc443
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
@@ -0,0 +1,262 @@
+#ifndef POI_COLOR
+ #define POI_COLOR
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ static const float Epsilon = 1e-10;
+ // The weights of RGB contributions to luminance.
+ // Should sum to unity.
+ static const float3 HCYwts = float3(0.299, 0.587, 0.114);
+ static const float HCLgamma = 3;
+ static const float HCLy0 = 100;
+ static const float HCLmaxL = 0.530454533953517; // == exp(HCLgamma / HCLy0) - 0.5
+ static const float3 wref = float3(1.0, 1.0, 1.0);
+ #define TAU 6.28318531
+
+ float3 HUEtoRGB(in float H)
+ {
+ float R = abs(H * 6 - 3) - 1;
+ float G = 2 - abs(H * 6 - 2);
+ float B = 2 - abs(H * 6 - 4);
+ return saturate(float3(R, G, B));
+ }
+
+ float3 RGBtoHCV(in float3 RGB)
+ {
+ // Based on work by Sam Hocevar and Emil Persson
+ float4 P = (RGB.g < RGB.b) ? float4(RGB.bg, -1.0, 2.0 / 3.0): float4(RGB.gb, 0.0, -1.0 / 3.0);
+ float4 Q = (RGB.r < P.x) ? float4(P.xyw, RGB.r): float4(RGB.r, P.yzx);
+ float C = Q.x - min(Q.w, Q.y);
+ float H = abs((Q.w - Q.y) / (6 * C + Epsilon) + Q.z);
+ return float3(H, C, Q.x);
+ }
+
+ float3 HSVtoRGB(in float3 HSV)
+ {
+ float3 RGB = HUEtoRGB(HSV.x);
+ return((RGB - 1) * HSV.y + 1) * HSV.z;
+ }
+
+ float3 RGBtoHSV(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float S = HCV.y / (HCV.z + Epsilon);
+ return float3(HCV.x, S, HCV.z);
+ }
+
+ float3 HSLtoRGB(in float3 HSL)
+ {
+ float3 RGB = HUEtoRGB(HSL.x);
+ float C = (1 - abs(2 * HSL.z - 1)) * HSL.y;
+ return(RGB - 0.5) * C + HSL.z;
+ }
+
+ float3 RGBtoHSL(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float L = HCV.z - HCV.y * 0.5;
+ float S = HCV.y / (1 - abs(L * 2 - 1) + Epsilon);
+ return float3(HCV.x, S, L);
+ }
+
+ float3 HCYtoRGB(in float3 HCY)
+ {
+
+
+ float3 RGB = HUEtoRGB(HCY.x);
+ float Z = dot(RGB, HCYwts);
+ if (HCY.z < Z)
+ {
+ HCY.y *= HCY.z / Z;
+ }
+ else if(Z < 1)
+ {
+ HCY.y *= (1 - HCY.z) / (1 - Z);
+ }
+ return(RGB - Z) * HCY.y + HCY.z;
+ }
+
+ float3 RGBtoHCY(in float3 RGB)
+ {
+ // Corrected by David Schaeffer
+ float3 HCV = RGBtoHCV(RGB);
+ float Y = dot(RGB, HCYwts);
+ float Z = dot(HUEtoRGB(HCV.x), HCYwts);
+ if (Y < Z)
+ {
+ HCV.y *= Z / (Epsilon + Y);
+ }
+ else
+ {
+ HCV.y *= (1 - Z) / (Epsilon + 1 - Y);
+ }
+ return float3(HCV.x, HCV.y, Y);
+ }
+
+ float3 HCLtoRGB(in float3 HCL)
+ {
+ float3 RGB = 0;
+ if(HCL.z != 0)
+ {
+ float H = HCL.x;
+ float C = HCL.y;
+ float L = HCL.z * HCLmaxL;
+ float Q = exp((1 - C / (2 * L)) * (HCLgamma / HCLy0));
+ float U = (2 * L - C) / (2 * Q - 1);
+ float V = C / Q;
+ float A = (H + min(frac(2 * H) / 4, frac(-2 * H) / 8)) * pi * 2;
+ float T;
+ H *= 6;
+ if(H <= 0.999)
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.g = T / (1 + T);
+ }
+ else if(H <= 1.001)
+ {
+ RGB.r = 1;
+ RGB.g = 1;
+ }
+ else if(H <= 2)
+ {
+ T = tan(A);
+ RGB.r = (1 + T) / T;
+ RGB.g = 1;
+ }
+ else if(H <= 3)
+ {
+ T = tan(A);
+ RGB.g = 1;
+ RGB.b = 1 + T;
+ }
+ else if(H <= 3.999)
+ {
+ T = tan(A);
+ RGB.g = 1 / (1 + T);
+ RGB.b = 1;
+ }
+ else if(H <= 4.001)
+ {
+ RGB.g = 0;
+ RGB.b = 1;
+ }
+ else if(H <= 5)
+ {
+ T = tan(A);
+ RGB.r = -1 / T;
+ RGB.b = 1;
+ }
+ else
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.b = -T;
+ }
+ RGB = RGB * V + U;
+ }
+ return RGB;
+ }
+
+ float3 RGBtoHCL(in float3 RGB)
+ {
+ float3 HCL;
+ float H = 0;
+ float U = min(RGB.r, min(RGB.g, RGB.b));
+ float V = max(RGB.r, max(RGB.g, RGB.b));
+ float Q = HCLgamma / HCLy0;
+ HCL.y = V - U;
+ if(HCL.y != 0)
+ {
+ H = atan2(RGB.g - RGB.b, RGB.r - RGB.g) / pi;
+ Q *= U / V;
+ }
+ Q = exp(Q);
+ HCL.x = frac(H / 2 - min(frac(H), frac(-H)) / 6);
+ HCL.y *= Q;
+ HCL.z = lerp(-U, V, Q) / (HCLmaxL * 2);
+ return HCL;
+ }
+
+ //HSL MODIFT
+ float3 ModifyViaHSL(float3 color, float3 HSLMod)
+ {
+ float3 colorHSL = RGBtoHSL(color);
+ colorHSL.r = frac(colorHSL.r + HSLMod.r);
+ colorHSL.g = saturate(colorHSL.g + HSLMod.g);
+ colorHSL.b = saturate(colorHSL.b + HSLMod.b);
+ return HSLtoRGB(colorHSL);
+ }
+
+ float3 hueShift(float3 col, float hueAdjust)
+ {
+ hueAdjust *= 2 * pi;
+ const float3 k = float3(0.57735, 0.57735, 0.57735);
+ half cosAngle = cos(hueAdjust);
+ return col * cosAngle + cross(k, col) * sin(hueAdjust) + k * dot(k, col) * (1.0 - cosAngle);
+ }
+
+ float3 poiSaturation(float3 In, float Saturation)
+ {
+ float luma = dot(In, float3(0.2126729, 0.7151522, 0.0721750));
+ return luma.xxx + Saturation.xxx * (In - luma.xxx);
+ }
+ // LCH
+ float xyzF(float t)
+ {
+ return lerp(pow(t, 1. / 3.), 7.787037 * t + 0.139731, step(t, 0.00885645));
+ }
+ float xyzR(float t)
+ {
+ return lerp(t * t * t, 0.1284185 * (t - 0.139731), step(t, 0.20689655));
+ }
+ float3 rgb2lch(in float3 c)
+ {
+ c = mul(float3x3(0.4124, 0.3576, 0.1805,
+ 0.2126, 0.7152, 0.0722,
+ 0.0193, 0.1192, 0.9505), c);
+ c.x = xyzF(c.x / wref.x);
+ c.y = xyzF(c.y / wref.y);
+ c.z = xyzF(c.z / wref.z);
+ float3 lab = float3(max(0., 116.0 * c.y - 16.0), 500.0 * (c.x - c.y), 200.0 * (c.y - c.z));
+ return float3(lab.x, length(float2(lab.y, lab.z)), atan2(lab.z, lab.y));
+ }
+
+ float3 lch2rgb(in float3 c)
+ {
+ c = float3(c.x, cos(c.z) * c.y, sin(c.z) * c.y);
+
+ float lg = 1. / 116. * (c.x + 16.);
+ float3 xyz = float3(wref.x * xyzR(lg + 0.002 * c.y),
+ wref.y * xyzR(lg),
+ wref.z * xyzR(lg - 0.005 * c.z));
+
+ float3 rgb = mul(float3x3(3.2406, -1.5372, -0.4986,
+ - 0.9689, 1.8758, 0.0415,
+ 0.0557, -0.2040, 1.0570), xyz);
+
+ return rgb;
+ }
+
+ //cheaply lerp around a circle
+ float lerpAng(in float a, in float b, in float x)
+ {
+ float ang = fmod(fmod((a - b), TAU) + pi * 3., TAU) - pi;
+ return ang * x + b;
+ }
+
+ //Linear interpolation between two colors in Lch space
+ float3 lerpLch(in float3 a, in float3 b, in float x)
+ {
+ float hue = lerpAng(a.z, b.z, x);
+ return float3(lerp(b.xy, a.xy, x), hue);
+ }
+
+ float3 poiExpensiveColorBlend(float3 col1, float3 col2, float alpha)
+ {
+ return lch2rgb(lerpLch(rgb2lch(col1), rgb2lch(col2), alpha));
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
new file mode 100644
index 00000000..ffd635a9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9a4d01f76e96c6542b41e9eabe4874f1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
new file mode 100644
index 00000000..cd354f85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
@@ -0,0 +1,249 @@
+#ifndef POI_DATA
+ #define POI_DATA
+
+ float _ParallaxBias;
+ float _LightingAdditiveLimitIntensity;
+ float _LightingAdditiveMaxIntensity;
+ POI_TEXTURE_NOSAMPLER(_BumpMap);
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailMask);
+ POI_TEXTURE_NOSAMPLER(_DetailNormalMap);
+ float _DetailNormalMapScale;
+ #endif
+ float _BumpScale;
+
+ void calculateAttenuation(v2f i)
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if defined(POINT) || defined(SPOT)
+ POI_LIGHT_ATTENUATION(attenuation, shadow, i, i.worldPos.xyz)
+ poiLight.additiveShadow = shadow;
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ poiLight.additiveShadow == 0;
+ #endif
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ // fix for rare bug where light atten is 0 when there is no directional light in the scene
+ #ifdef FORWARD_BASE_PASS
+ if (all(_LightColor0.rgb == 0.0))
+ {
+ attenuation = 1.0;
+ }
+ #endif
+ #endif
+ poiLight.attenuation = attenuation;
+ }
+
+ void calculateVertexLightingData(in v2f i)
+ {
+ #ifdef VERTEXLIGHT_ON
+ float4 toLightX = unity_4LightPosX0 - i.worldPos.x;
+ float4 toLightY = unity_4LightPosY0 - i.worldPos.y;
+ float4 toLightZ = unity_4LightPosZ0 - i.worldPos.z;
+ float4 lengthSq = 0;
+ lengthSq += toLightX * toLightX;
+ lengthSq += toLightY * toLightY;
+ lengthSq += toLightZ * toLightZ;
+
+ float4 lightAttenSq = unity_4LightAtten0;
+ float4 atten = 1.0 / (1.0 + lengthSq * lightAttenSq);
+ float4 vLightWeight = saturate(1 - (lengthSq * lightAttenSq / 25));
+ poiLight.vAttenuation = min(atten, vLightWeight * vLightWeight);
+
+ poiLight.vDotNL = 0;
+ poiLight.vDotNL += toLightX * poiMesh.normals[1].x;
+ poiLight.vDotNL += toLightY * poiMesh.normals[1].y;
+ poiLight.vDotNL += toLightZ * poiMesh.normals[1].z;
+
+ float4 corr = rsqrt(lengthSq);
+ poiLight.vDotNL = max(0, poiLight.vDotNL * corr);
+ poiLight.vAttenuationDotNL = poiLight.vAttenuation * poiLight.vDotNL;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vPosition[index] = float3(unity_4LightPosX0[index], unity_4LightPosY0[index], unity_4LightPosZ0[index]);
+
+ float3 vertexToLightSource = poiLight.vPosition[index] - poiMesh.worldPos;
+ poiLight.vDirection[index] = normalize(vertexToLightSource);
+ //poiLight.vAttenuationDotNL[index] = 1.0 / (1.0 + unity_4LightAtten0[index] * poiLight.vDotNL[index]);
+ poiLight.vColor[index] = unity_LightColor[index].rgb;
+
+ if (float(0) == 1)
+ {
+ float intensity = max(0.001, (0.299 * poiLight.vColor[index].r + 0.587 * poiLight.vColor[index].g + 0.114 * poiLight.vColor[index].b));
+ poiLight.vColor[index] = min(poiLight.vColor[index], poiLight.vColor[index] / (intensity / float(1)));
+ }
+ poiLight.vHalfDir[index] = Unity_SafeNormalize(poiLight.vDirection[index] + poiCam.viewDir);
+ poiLight.vDotNL[index] = dot(poiMesh.normals[1], -poiLight.vDirection[index]);
+ poiLight.vCorrectedDotNL[index] = .5 * (poiLight.vDotNL[index] + 1);
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.vDotLH[index] = saturate(dot(poiLight.vDirection[index], poiLight.vHalfDir[index]));
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.vDotNH[index] = saturate(dot(poiMesh.normals[1], poiLight.vHalfDir[index]));
+ #endif
+ }
+ #endif
+ }
+
+ void calculateLightingData(in v2f i)
+ {
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ float3 magic = max(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb;
+ poiLight.color = magic + normalLight;
+ #else
+ #ifdef FORWARD_ADD_PASS
+ poiLight.color = _LightColor0.rgb;
+
+
+ if (float(0) == 1)
+ {
+ float additiveLightIntensity = max(0.001, (0.299 * poiLight.color.r + 0.587 * poiLight.color.g + 0.114 * poiLight.color.b));
+ poiLight.color = min(poiLight.color, poiLight.color / (additiveLightIntensity / float(1)));
+ }
+ #endif
+ #endif
+
+ #ifdef FORWARD_BASE_PASS
+ poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ #else
+ #if defined(POINT) || defined(SPOT)
+ poiLight.direction = normalize(_WorldSpaceLightPos0.xyz - i.worldPos);
+ #else
+ poiLight.direction = _WorldSpaceLightPos0;
+ #endif
+ #endif
+
+ poiLight.halfDir = normalize(poiLight.direction + poiCam.viewDir);
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.dotNH = saturate(dot(poiMesh.normals[1], poiLight.halfDir));
+ #endif
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.dotLH = saturate(dot(poiLight.direction, poiLight.halfDir));
+ #endif
+
+ poiLight.nDotV = dot(poiMesh.normals[1], poiCam.viewDir);
+ poiLight.N0DotV = dot(poiMesh.normals[0], poiCam.viewDir);
+ poiLight.nDotL = dot(poiMesh.normals[1], poiLight.direction);
+ poiLight.nDotH = dot(poiMesh.normals[1], poiLight.halfDir);
+ poiLight.lDotv = dot(poiLight.direction, poiCam.viewDir);
+ poiLight.lDotH = dot(poiLight.direction, poiLight.halfDir);
+ }
+
+ float3 CreateBinormal(float3 normal, float3 tangent, float binormalSign)
+ {
+ return cross(normal, tangent.xyz) * (binormalSign * unity_WorldTransformParams.w);
+ }
+
+ void InitializeMeshData(inout v2f i, uint facing)
+ {
+ poiMesh.isFrontFace = facing;
+ poiMesh.normals[0] = normalize(i.normal);
+ poiMesh.binormal = CreateBinormal(i.normal, i.tangent.xyz, i.tangent.w);
+ poiMesh.tangent = i.tangent.xyz;
+
+ #ifndef OUTLINE
+ if(!poiMesh.isFrontFace)
+ {
+ poiMesh.normals[0] *= -1;
+ poiMesh.tangent *= -1;
+ poiMesh.binormal *= -1;
+ }
+ #endif
+
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+ poiMesh.barycentricCoordinates = i.barycentricCoordinates;
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ #ifdef POI_UV_DISTORTION
+ poiMesh.uv[4] = calculateDistortionUV(i.uv0.xy);
+ #else
+ poiMesh.uv[4] = poiMesh.uv[0];
+ #endif
+
+ poiMesh.vertexColor = i.vertexColor;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ poiMesh.lightmapUV = i.lightmapUV;
+ #endif
+ poiMesh.modelPos = i.modelPos;
+
+ #ifdef FUR
+ poiMesh.furAlpha = i.furAlpha;
+ #endif
+ }
+
+ void initializeCamera(v2f i)
+ {
+ poiCam.viewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
+ poiCam.forwardDir = getCameraForward();
+ poiCam.worldPos = _WorldSpaceCameraPos;
+ poiCam.distanceToModel = distance(poiMesh.modelPos, poiCam.worldPos);
+ poiCam.distanceToVert = distance(poiMesh.worldPos, poiCam.worldPos);
+ poiCam.grabPos = i.grabPos;
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ poiCam.clipPos = i.pos;
+ #if defined(GRAIN)
+ poiCam.worldDirection = i.worldDirection;
+ #endif
+
+ poiCam.tangentViewDir = normalize(i.tangentViewDir);
+ poiCam.tangentViewDir.xy /= (poiCam.tangentViewDir.z + float(0.42));
+ }
+
+ void calculateTangentData()
+ {
+ poiTData.tangentTransform = float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]);
+ poiTData.tangentToWorld = transpose(float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]));
+ }
+
+ void CalculateReflectionData()
+ {
+ #if defined(_METALLICGLOSSMAP) || defined(_COLORCOLOR_ON)
+ poiCam.reflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[1]);
+ poiCam.vertexReflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[0]);
+ #endif
+ }
+
+ void calculateNormals(inout half3 detailMask)
+ {
+ half3 mainNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_BumpMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ #ifdef FINALPASS
+ detailMask = POI2D_SAMPLER_PAN(_DetailMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(1) > 0)
+ {
+ half3 detailNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_DetailNormalMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1) * detailMask.g);
+ poiMesh.tangentSpaceNormal = BlendNormals(mainNormal, detailNormal);
+ }
+ else
+ {
+ poiMesh.tangentSpaceNormal = mainNormal;
+ }
+ #else
+ poiMesh.tangentSpaceNormal = mainNormal;
+ #endif
+
+ #ifdef POI_RGBMASK
+ calculateRGBNormals(poiMesh.tangentSpaceNormal);
+ #endif
+
+ poiMesh.normals[1] = normalize(
+ poiMesh.tangentSpaceNormal.x * poiMesh.tangent +
+ poiMesh.tangentSpaceNormal.y * poiMesh.binormal +
+ poiMesh.tangentSpaceNormal.z * poiMesh.normals[0]
+ );
+
+ poiCam.viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[1]));
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
new file mode 100644
index 00000000..81bdd89b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d6c3b84737b95994e8ce1f796d128439
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
new file mode 100644
index 00000000..125d2cd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
@@ -0,0 +1,107 @@
+#ifndef POI_DEBUG
+ #define POI_DEBUG
+
+ float _DebugEnabled;
+ float _DebugMeshData;
+ float _DebugLightingData;
+ float _DebugCameraData;
+
+ void displayDebugInfo(inout float4 finalColor)
+ {
+
+ if (float(0) != 0)
+ {
+ //Mesh Data
+ if (float(0) == 1)
+ {
+ finalColor.rgb = poiMesh.normals[0];
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiMesh.normals[1];
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiMesh.tangent;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiMesh.binormal;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiMesh.localPos;
+ return;
+ }
+
+ #ifdef POI_LIGHTING
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiLight.attenuation;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiLight.directLighting;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiLight.indirectLighting;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiLight.lightMap;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiLight.rampedLightMap;
+ return;
+ }
+ else if(float(0) == 6)
+ {
+ finalColor.rgb = poiLight.finalLighting;
+ return;
+ }
+ else if(float(0) == 7)
+ {
+ finalColor.rgb = poiLight.nDotL;
+ return;
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiCam.viewDir;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiCam.tangentViewDir;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiCam.forwardDir;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiCam.worldPos;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiCam.viewDotNormal;
+ return;
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
new file mode 100644
index 00000000..856340b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6245019183050ec42b089d78e3acb028
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
new file mode 100644
index 00000000..280fcbc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_DECAL
+ #define POI_DECAL
+
+ POI_TEXTURE_NOSAMPLER(_DecalTexture);
+ POI_TEXTURE_NOSAMPLER(_DecalMask);
+ float4 _DecalColor;
+ fixed _DecalTiled;
+ fixed _DecalBlendAdd;
+ fixed _DecalBlendMultiply;
+ fixed _DecalBlendReplace;
+ half _DecalRotation;
+ half2 _DecalScale;
+ half2 _DecalPosition;
+ half _DecalRotationSpeed;
+ float _DecalEmissionStrength;
+
+ void applyDecal(inout float4 albedo, inout float3 decalEmission)
+ {
+ float2 uv = poiMesh.uv[float(0)];
+ float2 decalCenter = float4(0.5,0.5,0,0);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - decalCenter.x) * cs - (uv.y - decalCenter.y) * sn + decalCenter.x, (uv.x - decalCenter.x) * sn + (uv.y - decalCenter.y) * cs + decalCenter.y);
+ uv = remap(uv, float2(0, 0) - float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float2(0, 0), float2(1, 1));
+
+ half decalAlpha = 1;
+ //float2 uv = TRANSFORM_TEX(poiMesh.uv[float(0)], _DecalTexture) + _Time.x * float4(0,0,0,0);
+ float4 decalColor = POI2D_SAMPLER_PAN(_DecalTexture, _MainTex, uv, float4(0,0,0,0)) * float4(1,1,1,1);
+ decalAlpha *= POI2D_SAMPLER_PAN(_DecalMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if (!float(0))
+ {
+ if(uv.x > 1 || uv.y > 1 || uv.x < 0 || uv.y < 0)
+ {
+ decalAlpha = 0;
+ }
+ }
+
+ if(float(0))
+ {
+ albedo.rgb = lerp(albedo.rgb, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb *= lerp(1, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb += decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+ albedo = saturate(albedo);
+ decalEmission = decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
new file mode 100644
index 00000000..f557bfe3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a268cd12486ebd249a70408ceba09222
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
new file mode 100644
index 00000000..9b70067a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
@@ -0,0 +1,21 @@
+#ifndef POI_DEFINES
+ #define POI_DEFINES
+
+ #define DielectricSpec float4(0.04, 0.04, 0.04, 1.0 - 0.04)
+
+ #ifdef _SPECGLOSSMAP // Specular
+ #ifndef POI_VAR_DOTNH
+ #define POI_VAR_DOTNH
+ #endif
+ #ifndef POI_VAR_DOTLH
+ #define POI_VAR_DOTLH
+ #endif
+ #endif
+
+ #ifdef VIGNETTE_MASKED // Lighting
+ #ifndef POI_VAR_DOTNL
+ #define POI_VAR_DOTNL
+ #endif
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
new file mode 100644
index 00000000..f529df0f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 42b78c2bef23c1f4c980ac1aa083cfe1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
new file mode 100644
index 00000000..828460bc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
@@ -0,0 +1,112 @@
+#ifndef POI_DEPTH_COLOR
+ #define POI_DEPTH_COLOR
+
+ float4 _DepthGlowColor;
+ float _DepthGlowEmission;
+ float _FadeLength;
+ float _DepthAlphaMin;
+ float _DepthAlphaMax;
+ POI_TEXTURE_NOSAMPLER(_DepthGradient);
+ POI_TEXTURE_NOSAMPLER(_DepthMask);
+ float _DepthGradientTextureUV;
+ float _DepthGradientBlend;
+
+ /*
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, float4 worldDirection, float4 clipPos)
+ {
+ float3 touchEmission = 0;
+ if (!IsInMirror())
+ {
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+ float depth = DecodeFloatRG(tex2Dproj(_CameraDepthTexture, worldDirection));
+ depth = Linear01Depth(depth);
+ if(depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(clipPos.z));
+ float intersect = 0;
+ if(diff > 0)
+ {
+ intersect = clamp(1 - smoothstep(0, _ProjectionParams.w * fadeLength, diff), 0, 1);
+ }
+ half4 depthGradient = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthGradient, _MainTex, intersect);
+ half3 depthMask = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthMask, _MainTex, poiMesh.uv[0]);
+ half3 depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+ }
+ }
+ depthTouchEmission = touchEmission;
+ }
+ */
+
+ inline float CorrectedLinearEyeDepth(float z, float B)
+ {
+ return 1.0 / (z / PM._34 + B);
+ }
+
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, in float4 worldDirection)
+ {
+ float3 touchEmission = 0;
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+
+ float perspectiveDivide = 1.0f / poiCam.clipPos.w;
+ float4 direction = worldDirection * perspectiveDivide;
+ float2 screenPos = poiCam.grabPos.xy * perspectiveDivide;
+ float z = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, screenPos);
+
+ #if UNITY_REVERSED_Z
+ if (z == 0)
+ #else
+ if(z == 1)
+ #endif
+ return;
+
+ float depth = CorrectedLinearEyeDepth(z, direction.w);
+ float3 worldpos = direction * depth + _WorldSpaceCameraPos.xyz;
+ /*
+ finalColor.rgb = frac(worldpos);
+ return;
+ */
+
+ float diff = distance(worldpos, poiMesh.worldPos);
+ float intersect = 0;
+ intersect = clamp(1 - smoothstep(0, fadeLength, diff), 0, 1);
+ half3 depthMask = POI2D_SAMPLER_PAN(_DepthMask, _MainTex, poiMesh.uv[_DepthMaskUV], _DepthMaskPan);
+
+ half4 depthGradient = 0;
+ half3 depthColor = 0;
+
+
+ if (_DepthGradientTextureUV == 0)
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, float2(intersect, intersect), _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ }
+ else
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, poiMesh.uv[_DepthGradientUV], _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb * intersect;
+ }
+
+
+ if(_DepthGradientBlend == 0) // rpelace
+ {
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ }
+ else if(_DepthGradientBlend == 1) // add
+ {
+ finalColor.rgb += depthColor * intersect * depthMask;
+ }
+ else if(_DepthGradientBlend == 2) // multiply
+ {
+ finalColor.rgb *= lerp(1, depthColor, intersect * depthMask);
+ }
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect * depthMask);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+
+ depthTouchEmission = touchEmission;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
new file mode 100644
index 00000000..d67967b5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 97f8f87598df72c4f8a0871f35519128
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
new file mode 100644
index 00000000..13175f00
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
@@ -0,0 +1,171 @@
+#ifndef POI_DISSOLVE
+ #define POI_DISSOLVE
+
+ float _DissolveType;
+ float _DissolveEdgeWidth;
+ float4 _DissolveEdgeColor;
+ sampler2D _DissolveEdgeGradient; float4 _DissolveEdgeGradient_ST;
+ float _DissolveEdgeEmission;
+ float4 _DissolveTextureColor;
+
+ POI_TEXTURE_NOSAMPLER(_DissolveToTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveNoiseTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveDetailNoise);
+ POI_TEXTURE_NOSAMPLER(_DissolveMask);
+
+ float _DissolveMaskInvert;
+ float _DissolveAlpha;
+ float _ContinuousDissolve;
+ float _DissolveDetailStrength;
+ float _DissolveEdgeHardness;
+ float _DissolveInvertNoise;
+ float _DissolveInvertDetailNoise;
+ float _DissolveToEmissionStrength;
+
+ // Point to Point
+ float _DissolveP2PWorldLocal;
+ float _DissolveP2PEdgeLength;
+ float4 _DissolveStartPoint;
+ float4 _DissolveEndPoint;
+
+ // World Dissolve
+ float _DissolveWorldShape;
+ float4 _DissolveShapePosition;
+ float4 _DissolveShapeRotation;
+ float _DissolveShapeScale;
+ float _DissolveInvertShape;
+ float _DissolveShapeEdgeLength;
+
+ float _DissolveAlpha0;
+ float _DissolveAlpha1;
+ float _DissolveAlpha2;
+ float _DissolveAlpha3;
+ float _DissolveAlpha4;
+ float _DissolveAlpha5;
+ float _DissolveAlpha6;
+ float _DissolveAlpha7;
+ float _DissolveAlpha8;
+ float _DissolveAlpha9;
+
+ // Masking
+ float _DissolveEmissionSide;
+ float _DissolveEmission1Side;
+ float _DissolveUseVertexColors;
+
+ float4 edgeColor;
+ float edgeAlpha;
+ float dissolveAlpha;
+ float4 dissolveToTexture;
+ //Globals
+
+
+ void calculateDissolve(inout float4 albedo, inout float3 dissolveEmission)
+ {
+
+ float dissolveMask = POI2D_SAMPLER_PAN(_DissolveMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+
+ if (float(0))
+ {
+ // Vertex Color Imprecision hype
+ dissolveMask = ceil(poiMesh.vertexColor.g * 100000) / 100000;
+ }
+
+ dissolveToTexture = POI2D_SAMPLER_PAN(_DissolveToTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ float dissolveNoiseTexture = POI2D_SAMPLER_PAN(_DissolveNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ float da = float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0);
+ da = saturate(da);
+
+ float dds = float(0.1);
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskDissolve != 4)
+ {
+ dissolveMask *= blackLightMask[_BlackLightMaskDissolve];
+ }
+ #endif
+
+ if(float(0))
+ {
+ dissolveMask = 1 - dissolveMask;
+ }
+
+ float dissolveDetailNoise = POI2D_SAMPLER_PAN(_DissolveDetailNoise, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(0))
+ {
+ dissolveNoiseTexture = 1 - dissolveNoiseTexture;
+ }
+ if(float(0))
+ {
+ dissolveDetailNoise = 1 - dissolveDetailNoise;
+ }
+ if(float(0) != 0)
+ {
+ da = sin(_Time.y * float(0)) * .5 + .5;
+ }
+ da *= dissolveMask;
+ dissolveAlpha = da;
+ edgeAlpha = 0;
+
+
+ if(float(1) == 1) // Basic
+ {
+ da = remap(da, 0, 1, -float(0.025), 1);
+ dissolveAlpha = da;
+ //Adjust detail strength to avoid artifacts
+ dds *= smoothstep(1, .99, da);
+ float noise = saturate(dissolveNoiseTexture - dissolveDetailNoise * dds);
+
+ noise = saturate(noise + 0.001);
+ //noise = remap(noise, 0, 1, float(0.025), 1 - float(0.025));
+ dissolveAlpha = dissolveAlpha >= noise;
+ edgeAlpha = remapClamped(noise, da + float(0.025), da, 0, 1) * (1 - dissolveAlpha);
+ }
+ else if (float(1) == 2) // Point to Point
+ {
+ float3 direction;
+ float3 currentPos;
+ float distanceTo = 0;
+ direction = normalize(float4(0,1,0,0) - float4(0,-1,0,0));
+ currentPos = lerp(float4(0,-1,0,0), float4(0,1,0,0), dissolveAlpha);
+ if (float(0) == 0)
+ {
+ distanceTo = dot(poiMesh.localPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ else
+ {
+ distanceTo = dot(poiMesh.worldPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ }
+
+ albedo = lerp(albedo, dissolveToTexture, dissolveAlpha);
+
+
+ if(float(0.025))
+ {
+ edgeColor = tex2D(_DissolveEdgeGradient, TRANSFORM_TEX(float2(edgeAlpha, edgeAlpha), _DissolveEdgeGradient)) * float4(1,1,1,1);
+ albedo.rgb = lerp(albedo.rgb, edgeColor.rgb, smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+ dissolveEmission = lerp(0, dissolveToTexture * float(0), dissolveAlpha) + lerp(0, edgeColor.rgb * float(0), smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
new file mode 100644
index 00000000..2a0f324e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 45e79bcea2046614db03c9bf058f71fe
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
new file mode 100644
index 00000000..91efad39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_DITHERING
+ #define POI_DITHERING
+ fixed _DitheringEnabled;
+ fixed _DitherGradient;
+
+ half calcDither(half2 grabPos)
+ {
+ half dither = Dither8x8Bayer(fmod(grabPos.x, 8), fmod(grabPos.y, 8));
+ return dither;
+ }
+
+ #ifndef POI_SHADOW
+ void applyDithering(inout float4 finalColor)
+ {
+
+ if (float(0))
+ {
+ half dither = calcDither(poiCam.screenUV.xy);
+ finalColor.a = finalColor.a - (dither * (1 - finalColor.a) * float(0.1));
+ }
+ }
+ #else
+ void applyShadowDithering(inout float alpha, float2 screenUV)
+ {
+
+ if(float(0))
+ {
+ half dither = calcDither(screenUV);
+ alpha = alpha - (dither * (1 - alpha) * float(0.1));
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
new file mode 100644
index 00000000..3d1b0550
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ca743fbb54954b8449fa22c4d92d77ff
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
new file mode 100644
index 00000000..4888c2ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
@@ -0,0 +1,240 @@
+#ifndef POI_EMISSION
+ #define POI_EMISSION
+
+ float4 _EmissionColor;
+ POI_TEXTURE_NOSAMPLER(_EmissionMap);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve); float4 _EmissionScrollingCurve_ST;
+ float _EmissionBaseColorAsMap;
+ float _EmissionStrength;
+ float _EnableEmission;
+ float _EmissionHueShift;
+ float4 _EmissiveScroll_Direction;
+ float _EmissiveScroll_Width;
+ float _EmissiveScroll_Velocity;
+ float _EmissiveScroll_Interval;
+ float _EmissionBlinkingEnabled;
+ float _EmissiveBlink_Min;
+ float _EmissiveBlink_Max;
+ float _EmissiveBlink_Velocity;
+ float _ScrollingEmission;
+ float _EnableGITDEmission;
+ float _GITDEMinEmissionMultiplier;
+ float _GITDEMaxEmissionMultiplier;
+ float _GITDEMinLight;
+ float _GITDEMaxLight;
+ float _GITDEWorldOrMesh;
+ float _EmissionCenterOutEnabled;
+ float _EmissionCenterOutSpeed;
+ float _EmissionHueShiftEnabled;
+ float _EmissionBlinkingOffset;
+ float _EmissionScrollingOffset;
+
+ float4 _EmissionColor1;
+ #ifdef EFFECT_HUE_VARIATION
+ POI_TEXTURE_NOSAMPLER(_EmissionMap1);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask1);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve1); float4 _EmissionScrollingCurve1_ST;
+ #endif
+ float _EmissionBaseColorAsMap1;
+ float _EmissionStrength1;
+ float _EnableEmission1;
+ float _EmissionHueShift1;
+ float4 _EmissiveScroll_Direction1;
+ float _EmissiveScroll_Width1;
+ float _EmissiveScroll_Velocity1;
+ float _EmissiveScroll_Interval1;
+ float _EmissionBlinkingEnabled1;
+ float _EmissiveBlink_Min1;
+ float _EmissiveBlink_Max1;
+ float _EmissiveBlink_Velocity1;
+ float _ScrollingEmission1;
+ float _EnableGITDEmission1;
+ float _GITDEMinEmissionMultiplier1;
+ float _GITDEMaxEmissionMultiplier1;
+ float _GITDEMinLight1;
+ float _GITDEMaxLight1;
+ float _GITDEWorldOrMesh1;
+ float _EmissionCenterOutEnabled1;
+ float _EmissionCenterOutSpeed1;
+ float _EmissionHueShiftEnabled1;
+ float _EmissionBlinkingOffset1;
+ float _EmissionScrollingOffset1;
+
+ float _EmissionReplace;
+
+ float _EmissionScrollingVertexColor;
+ float _EmissionScrollingVertexColor1;
+
+ float _EmissionScrollingUseCurve;
+ float _EmissionScrollingUseCurve1;
+
+ float calculateGlowInTheDark(in float minLight, in float maxLight, in float minEmissionMultiplier, in float maxEmissionMultiplier, in float enabled)
+ {
+ float glowInTheDarkMultiplier = 1;
+
+ if (enabled)
+ {
+ #ifdef POI_LIGHTING
+ float3 lightValue = float(0) ? poiLight.finalLighting.rgb: poiLight.directLighting.rgb;
+ float gitdeAlpha = (clamp(poiMax(lightValue), minLight, maxLight) - minLight) / (maxLight - minLight);
+ glowInTheDarkMultiplier = lerp(minEmissionMultiplier, maxEmissionMultiplier, gitdeAlpha);
+ #endif
+ }
+ return glowInTheDarkMultiplier;
+ }
+
+ float calculateScrollingEmission(in float3 direction, in float velocity, in float interval, in float scrollWidth, float offset, float3 position)
+ {
+ float phase = 0;
+ phase = dot(position, direction);
+ phase -= (_Time.y + offset) * velocity;
+ phase /= interval;
+ phase -= floor(phase);
+ phase = saturate(phase);
+ return(pow(phase, scrollWidth) + pow(1 - phase, scrollWidth * 4)) * 0.5;
+ }
+
+ float calculateBlinkingEmission(in float blinkMin, in float blinkMax, in float blinkVelocity, float offset)
+ {
+ float amplitude = (blinkMax - blinkMin) * 0.5f;
+ float base = blinkMin + amplitude;
+ return sin((_Time.y + offset) * blinkVelocity) * amplitude + base;
+ }
+
+ float3 calculateEmissionNew(in float4 baseColor, inout float4 finalColor)
+ {
+ // First Emission
+ float3 emission0 = 0;
+ float emissionStrength0 = float(0);
+ float3 emissionColor0 = 0;
+
+ float glowInTheDarkMultiplier0 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor0 = POI2D_SAMPLER_PAN(_EmissionMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+ else
+ {
+ emissionColor0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve) + (dot(pos, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength0 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos);
+ }
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor0 = hueShift(emissionColor0, float(0) * float(0));
+ float emissionMask0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask) + _Time.x * float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission != 4)
+ {
+ emissionMask0 *= blackLightMask[_BlackLightMaskEmission];
+ }
+ #endif
+
+ emissionStrength0 *= glowInTheDarkMultiplier0 * emissionMask0;
+ emission0 = emissionStrength0 * emissionColor0;
+
+ #ifdef POI_DISSOLVE
+
+ if(float(2) != 2)
+ {
+ emission0 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+
+ // Second Emission
+ float3 emission1 = 0;
+ float emissionStrength1 = 0;
+ float3 emissionColor1 = 0;
+
+ #ifdef EFFECT_HUE_VARIATION
+ emissionStrength1 = float(0);
+ float glowInTheDarkMultiplier1 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor1 = POI2D_SAMPLER_PAN(_EmissionMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ emissionColor1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap1, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)).rgb * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos1 = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos1 = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength1 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve1) + (dot(pos1, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength1 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos1);
+ }
+ }
+
+ if(float(0))
+ {
+ emissionStrength1 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor1 = hueShift(emissionColor1, float(0) * float(0));
+ float emissionMask1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask1) + _Time.x * float4(0,0,0,0));
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission2 != 4)
+ {
+ emissionMask1 *= blackLightMask[_BlackLightMaskEmission2];
+ }
+ #endif
+ emissionStrength1 *= glowInTheDarkMultiplier1 * emissionMask1;
+ emission1 = emissionStrength1 * emissionColor1;
+
+ #ifdef POI_DISSOLVE
+ if(float(2) != 2)
+ {
+ emission1 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+ #endif
+ finalColor.rgb = lerp(finalColor.rgb, saturate(emissionColor0 + emissionColor1), saturate(emissionStrength0 + emissionStrength1) * float(0) * poiMax(emission0 + emission1));
+
+ return emission0 + emission1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
new file mode 100644
index 00000000..f49bdc86
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 196c9cbd419c3af49bed08b7b230dec4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
new file mode 100644
index 00000000..1e9188ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
@@ -0,0 +1,43 @@
+#ifndef POI_ENVIRONMENTAL_RIM
+ #define POI_ENVIRONMENTAL_RIM
+
+ //enviro rim
+ float _EnableEnvironmentalRim;
+ POI_TEXTURE_NOSAMPLER(_RimEnviroMask);
+ float _RimEnviroBlur;
+ float _RimEnviroMinBrightness;
+ float _RimEnviroWidth;
+ float _RimEnviroSharpness;
+ float _RimEnviroIntensity;
+
+ float3 calculateEnvironmentalRimLighting(in float4 albedo)
+ {
+ float enviroRimAlpha = saturate(1 - smoothstep(min(float(0), float(0.45)), float(0.45), poiCam.viewDotNormal));
+ float(0.7) *= 1.7 - 0.7 * float(0.7);
+
+ float3 enviroRimColor = 0;
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if (interpolator < 0.99999)
+ {
+ //Probe 1
+ float4 reflectionData0 = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor0 = DecodeHDR(reflectionData0, unity_SpecCube0_HDR);
+
+ //Probe 2
+ float4 reflectionData1 = UNITY_SAMPLE_TEXCUBE_SAMPLER_LOD(unity_SpecCube1, unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor1 = DecodeHDR(reflectionData1, unity_SpecCube1_HDR);
+
+ enviroRimColor = lerp(reflectionColor1, reflectionColor0, interpolator);
+ }
+ else
+ {
+ float4 reflectionData = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ enviroRimColor = DecodeHDR(reflectionData, unity_SpecCube0_HDR);
+ }
+
+ half enviroMask = poiMax(POI2D_SAMPLER_PAN(_RimEnviroMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb);
+ return lerp(0, max(0, (enviroRimColor - float(0)) * albedo.rgb), enviroRimAlpha).rgb * enviroMask * float(1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
new file mode 100644
index 00000000..67d22ce4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7c1bc62392209514d80217f33ddd9fa1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
new file mode 100644
index 00000000..0ed89b59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
@@ -0,0 +1,153 @@
+#ifndef POI_FLIPBOOK
+ #define POI_FLIPBOOK
+
+ UNITY_DECLARE_TEX2DARRAY(_FlipbookTexArray); float4 _FlipbookTexArray_ST;
+ float4 _FlipbookColor;
+ float _FlipbookFPS;
+ float _FlipbookTotalFrames;
+ float4 _FlipbookScaleOffset;
+ float _FlipbookTiled;
+ float _FlipbookCurrentFrame;
+ float _FlipbookEmissionStrength;
+ float _FlipbookRotation;
+ float _EnableFlipbook;
+ float _FlipbookTexArrayUV;
+ float _FlipbookAlphaControlsFinalAlpha;
+ float _FlipbookRotationSpeed;
+ float _FlipbookIntensityControlsAlpha;
+ float _FlipbookColorReplaces;
+ float2 _FlipbookTexArrayPan;
+
+ // blending
+ float _FlipbookReplace;
+ float _FlipbookMultiply;
+ float _FlipbookAdd;
+ POI_TEXTURE_NOSAMPLER(_FlipbookMask);
+
+ // anim
+ float _FlipbookMovementType;
+ float4 _FlipbookStartEndOffset;
+ float _FlipbookMovementSpeed;
+
+ // Global
+ float4 flipBookPixel;
+ float4 flipBookPixelMultiply;
+ float flipBookMask;
+
+ #ifndef POI_SHADOW
+
+ void applyFlipbook(inout float4 finalColor, inout float3 flipbookEmission)
+ {
+ flipBookMask = POI2D_SAMPLER_PAN(_FlipbookMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float2 uv = frac(poiMesh.uv[float(0)]);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ // 2d rotation
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ if (float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipBookPixel = 0;
+ return;
+ }
+ }
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ flipBookPixel = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipBookPixel.a = poiMax(flipBookPixel.rgb);
+ }
+
+ if(float(0))
+ {
+ flipBookPixel.rgb = float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ flipBookPixel.rgb *= float4(1,1,1,1).rgb;
+ }
+
+ #ifdef POI_BLACKLIGHT
+
+ if(_BlackLightMaskFlipbook != 4)
+ {
+ flipBookMask *= blackLightMask[_BlackLightMaskFlipbook];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * float(1) * flipBookMask);
+ finalColor.rgb = finalColor + flipBookPixel.rgb * float(0) * flipBookMask;
+ finalColor.rgb = finalColor * lerp(1, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * flipBookMask * float(0));
+
+
+ if(float(0))
+ {
+ finalColor.a = lerp(finalColor.a, flipBookPixel.a * float4(1,1,1,1).a, flipBookMask);
+ }
+ flipbookEmission = lerp(0, flipBookPixel.rgb * float(0), flipBookPixel.a * float4(1,1,1,1).a * flipBookMask);
+ }
+
+ #else
+
+ float applyFlipbookAlphaToShadow(float2 uv)
+ {
+
+ if(float(0))
+ {
+ float flipbookShadowAlpha = 0;
+
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float theta = radians(float(0));
+
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ half4 flipbookColor = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipbookColor.a = poiMax(flipbookColor.rgb);
+ }
+
+
+ if(float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipbookColor.a = 0;
+ }
+ }
+ return flipbookColor.a * float4(1,1,1,1).a;
+ }
+ return 1;
+ }
+
+ #endif
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
new file mode 100644
index 00000000..1d142e3b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1582b611448d9dd418bdf3d2984726b6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
new file mode 100644
index 00000000..aa950e7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
@@ -0,0 +1,376 @@
+#ifndef POIFRAG
+ #define POIFRAG
+
+ float _MainEmissionStrength;
+ float _IgnoreFog;
+ half _GIEmissionMultiplier;
+ float _IridescenceTime;
+ float _AlphaToMask;
+ float _ForceOpaque;
+ float _commentIfZero_EnableGrabpass;
+ float _AlphaPremultiply;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+ float _commentIfZero_LightingAdditiveEnable;
+
+ float4 frag(v2f i, uint facing: SV_IsFrontFace): SV_Target
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if !defined(POI_LIGHTING)
+ return 0;
+ #endif
+ #if defined(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A) && defined(DIRECTIONAL)
+ return 0;
+ #endif
+ #endif
+ #ifdef FORWARD_ADD_PASS
+
+ if (float(1) == 0)
+ {
+ return 0;
+ }
+ #endif
+ UNITY_SETUP_INSTANCE_ID(i);
+ // Color
+ float4 albedo = 1;
+ float4 finalColor = 1;
+
+ // Lighting
+ float bakedCubemap = 0; // Whether or not metallic should run before or after lighting multiplication
+ float3 finalSpecular0 = 0;
+ float3 finalSpecular1 = 0;
+ float3 finalSSS = 0;
+ fixed lightingAlpha = 1;
+ float3 finalEnvironmentalRim = 0;
+
+ // Emissions
+ float3 finalEmission = 0;
+ float3 finalLighting = 1;
+ float3 IridescenceEmission = 0;
+ float3 spawnInEmission = 0;
+ float3 voronoiEmission = 0;
+ float3 matcapEmission = 0;
+ float3 depthTouchEmission = 0;
+ float3 decalEmission = 0;
+ float3 glitterEmission = 0;
+ float3 panosphereEmission = 0;
+ float3 backFaceEmission = 0;
+ float3 dissolveEmission = 0;
+ float3 rimLightEmission = 0;
+ float3 flipbookEmission = 0;
+ float3 textOverlayEmission = 0;
+ float3 videoEmission = 0;
+ /**********************************************************************
+ Initialize the base data that's needed everywhere else in the shader
+ **********************************************************************/
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+
+ #ifdef POI_BLACKLIGHT
+ createBlackLightMask();
+
+ if (_BlackLightMaskDebug)
+ {
+ return float4(blackLightMask.rgb, 1);
+ }
+ #endif
+
+ // This has to happen in the initializbecause it alters UV data globally
+ #ifdef POI_PARALLAX
+ calculateandApplyParallax();
+ #endif
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+ calculateVertexLightingData(i);
+ /**********************************************************************
+ Calculate Light Maps
+ **********************************************************************/
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ /**********************************************************************
+ Calculate Color Data
+ **********************************************************************/
+
+ initTextureData(albedo, mainTexture, backFaceEmission, dissolveEmission, detailMask);
+
+ #ifdef POI_DECAL
+ applyDecal(albedo, decalEmission);
+ #endif
+
+
+ #ifdef POI_IRIDESCENCE
+
+ if (_IridescenceTime == 0)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VORONOI
+ applyVoronoi(albedo, voronoiEmission);
+ #endif
+
+ #ifdef POI_MSDF
+ ApplyTextOverlayColor(albedo, textOverlayEmission);
+ #endif
+
+ #ifdef POI_ENVIRONMENTAL_RIM
+ finalEnvironmentalRim = calculateEnvironmentalRimLighting(albedo);
+ #endif
+
+ #if defined(POI_METAL) || defined(POI_CLEARCOAT)
+ CalculateReflectionData();
+ #endif
+
+ #ifdef POI_DATA
+ distanceFade(albedo);
+ #endif
+
+ #ifdef POI_RANDOM
+ albedo.a *= i.angleAlpha;
+ #endif
+
+ #ifdef MATCAP
+ applyMatcap(albedo, matcapEmission);
+ #endif
+
+ #ifdef PANOSPHERE
+ applyPanosphereColor(albedo, panosphereEmission);
+ #endif
+
+ #ifdef POI_FLIPBOOK
+ applyFlipbook(albedo, flipbookEmission);
+ #endif
+
+ #ifdef POI_GLITTER
+ applyGlitter(albedo, glitterEmission);
+ #endif
+
+ #ifdef POI_RIM
+ applyRimLighting(albedo, rimLightEmission);
+ #endif
+
+ #ifdef POI_DEPTH_COLOR
+ applyDepthColor(albedo, depthTouchEmission, finalEmission, i.worldDirection);
+ #endif
+
+ #ifdef POI_IRIDESCENCE
+
+ if(_IridescenceTime == 1)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VIDEO
+ applyScreenEffect(albedo, videoEmission);
+ #endif
+
+ applySpawnIn(albedo, spawnInEmission, poiMesh.uv[0], poiMesh.localPos);
+
+ /**********************************************************************
+ Handle a few alpha options
+ **********************************************************************/
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 0)
+ {
+ applyDithering(albedo);
+ }
+ }
+
+ albedo.a = max(float(0), albedo.a);
+
+
+ if(float(0) >= 1)
+ {
+ clip(albedo.a - float(0.5));
+ }
+
+
+ if(float(0))
+ {
+ albedo.rgb *= saturate(albedo.a + 0.0000000001);
+ }
+
+ /**********************************************************************
+ Lighting Time :)
+ **********************************************************************/
+
+ #ifdef POI_LIGHTING
+ finalLighting = calculateFinalLighting(albedo.rgb, finalColor);
+
+ #ifdef SUBSURFACE
+ finalSSS = calculateSubsurfaceScattering();
+ #endif
+ #endif
+
+ float4 finalColorBeforeLighting = albedo;
+ finalColor = finalColorBeforeLighting;
+
+ #ifdef POI_SPECULAR
+ finalSpecular0 = calculateSpecular(finalColorBeforeLighting);
+ #endif
+ #ifdef POI_PARALLAX
+ calculateAndApplyInternalParallax(finalColor);
+ #endif
+
+ #ifdef POI_ALPHA_TO_COVERAGE
+ ApplyAlphaToCoverage(finalColor);
+ #endif
+
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 1)
+ {
+ applyDithering(finalColor);
+ }
+ }
+
+ #ifdef POI_METAL
+ calculateMetallicness();
+ bool probeExists = shouldMetalHappenBeforeLighting();
+
+ if(!probeExists)
+ {
+ ApplyMetallicsFake(finalColor, albedo);
+ }
+ #endif
+
+ #ifdef POI_LIGHTING
+ #if defined(FORWARD_ADD_PASS) && defined(POI_METAL)
+ finalLighting *= 1 - metalicMap;
+ #endif
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ finalColor.rgb *= finalLighting + poiLight.vFinalLighting;
+ #else
+ finalColor.rgb *= finalLighting;
+ #endif
+
+ #ifdef POI_METAL
+
+ if(probeExists)
+ {
+ ApplyMetallics(finalColor, albedo);
+ }
+ #endif
+
+ finalColor.rgb += finalSpecular0 + finalEnvironmentalRim + finalSSS;
+
+ #ifdef FORWARD_BASE_PASS
+ #ifdef POI_CLEARCOAT
+ calculateAndApplyClearCoat(finalColor);
+ #endif
+ #endif
+
+ finalColor.a = saturate(finalColor.a);
+
+ /**********************************************************************
+ Add Up all the emission values :D
+ **********************************************************************/
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ finalEmission += finalColorBeforeLighting.rgb * float(0) * albedo.a;
+ finalEmission += wireframeEmission;
+ finalEmission += IridescenceEmission;
+ finalEmission += spawnInEmission;
+ finalEmission += voronoiEmission;
+ finalEmission += matcapEmission;
+ finalEmission += depthTouchEmission;
+ finalEmission += decalEmission;
+ finalEmission += glitterEmission;
+ finalEmission += panosphereEmission;
+ finalEmission += backFaceEmission;
+ finalEmission += rimLightEmission;
+ finalEmission += flipbookEmission;
+ finalEmission += videoEmission;
+ finalEmission += textOverlayEmission;
+ finalEmission += dissolveEmission;
+ #ifdef POI_EMISSION
+ finalEmission += calculateEmissionNew(finalColorBeforeLighting, finalColor);
+ #endif
+ #endif
+
+ /**********************************************************************
+ Meta Pass Hype :D
+ **********************************************************************/
+ #ifdef POI_META_PASS
+ UnityMetaInput meta;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, meta);
+ meta.Emission = finalEmission * float(1);
+ meta.Albedo = saturate(finalColor.rgb);
+ #ifdef POI_SPECULAR
+ meta.SpecularColor = poiLight.color.rgb * float4(1,1,1,1).rgb * lerp(1, albedo.rgb, float(0)) * float4(1,1,1,1).a;
+ #else
+ meta.SpecularColor = poiLight.color.rgb * albedo.rgb;
+ #endif
+ return UnityMetaFragment(meta);
+ #endif
+
+ /**********************************************************************
+ Apply Emission to finalColor
+ **********************************************************************/
+ finalColor.rgb += finalEmission;
+
+ /**********************************************************************
+ Grabpass features
+ **********************************************************************/
+
+
+ if (_commentIfZero_EnableGrabpass)
+ {
+ applyGrabEffects(finalColor);
+ }
+
+ /**********************************************************************
+ Unity Fog
+ **********************************************************************/
+ #ifdef FORWARD_BASE_PASS
+
+ if (float(0) == 0)
+ {
+ UNITY_APPLY_FOG(i.fogCoord, finalColor);
+ }
+ #endif
+
+ #ifdef FORWARD_ADD_PASS
+ if(float(0) > 0)
+ {
+ finalColor.rgb *= finalColor.a;
+ }
+ #endif
+
+
+ if(float(0) == 0)
+ {
+ finalColor.a = 1;
+ }
+
+ #ifdef FORWARD_ADD_PASS
+ //finalColor.rgb = smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5));
+ #endif
+
+ #ifdef POI_DEBUG
+ displayDebugInfo(finalColor);
+ #endif
+
+ //finalColor.rgb = frac(finalColor.rgb);
+ return finalColor;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
new file mode 100644
index 00000000..9e5403c7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ccc3c856d8b05214a8488d64dc01c7f9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
new file mode 100644
index 00000000..8d260cdf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_FUR
+ #define POI_FUR
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurTexture); float4 _FurTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurHeightMap); float4 _FurHeightMap_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurMask); float4 _FurMask_ST;
+ float _FurAO;
+ float4 _FurColor;
+ float _FurLayers;
+ float _FurMinDistance;
+ float _FurMaxDistance;
+ float _FurHeightMapMin;
+ float _FurHeightMapMax;
+ float _FurDebug;
+ float _AoRampMin;
+ float _AoRampMax;
+ float _FurTipAlpha;
+ float _FurFadeStart;
+
+ //globals
+ half furHeightMap;
+ half furMask;
+
+ void calculateFur()
+ {
+
+ furHeightMap = UNITY_SAMPLE_TEX2D_SAMPLER(_FurHeightMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurHeightMap)).x;
+ furHeightMap = remap(furHeightMap, 0, _FurHeightMapMax, _FurHeightMapMin, 1);
+ furMask = poiMax(UNITY_SAMPLE_TEX2D_SAMPLER(_FurMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurMask)).xyz);
+ half3 furTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_FurTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurTexture));
+ clip(furHeightMap - poiMesh.furAlpha);
+ clip(furMask - poiMesh.furAlpha);
+
+ albedo.rgb = lerp(mainTexture.rgb, furTexture.rgb * _FurColor.rgb, ceil(poiMesh.furAlpha));
+ float aoRampMax = _AoRampMax - (1 - furMask);
+ albedo.rgb *= lerp(1, smoothstep(_AoRampMin, aoRampMax, furHeightMap), _FurAO);
+
+ albedo.a *= smoothstep(1.01, _FurTipAlpha, remapClamped(poiMesh.furAlpha, _FurFadeStart, 1, 0, 1)) + float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
new file mode 100644
index 00000000..70463157
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 23557baa703856d42bf839093885ec64
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
new file mode 100644
index 00000000..032f3b08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
@@ -0,0 +1,37 @@
+float _FurLength;
+float _FurGravityStrength;
+
+[instance(4)]
+[maxvertexcount(20)]
+void geomFur(triangle v2f IN[3], inout TriangleStream < v2f > tristream, uint InstanceID : SV_GSInstanceID)
+{
+ float4 fur_worldPos[3];
+ v2f o_fur[3];
+ float3 offset = (float3(0, -1, 0) * (_FurLength*.9) *_FurGravityStrength);
+
+ for (int i = 0; i < 3; i++)
+ {
+ if (InstanceID == 0) {
+ IN[i].furAlpha = 0;
+ tristream.Append(IN[i]);
+ }
+ o_fur[i] = IN[i];
+ fur_worldPos[i] = float4(IN[i].worldPos + IN[i].normal * _FurLength, 1);
+ }
+ if (InstanceID == 0) {
+ tristream.RestartStrip();
+ }
+ int Total_FurLayers = clamp(floor(_FurLayers * (1 - smoothstep(_FurMinDistance, _FurMaxDistance, distance(IN[0].worldPos, getCameraPosition())))), min(1, _FurLayers), _FurLayers);
+
+ int startLayer = max(int(InstanceID) * 6 - 1, 0);
+ for (int layer = startLayer; layer < Total_FurLayers; layer++) {
+ for (int i = 0; i < 3; i++) {
+ o_fur[i].furAlpha = float(layer) / Total_FurLayers;
+ o_fur[i].worldPos = float4(lerp(IN[i].worldPos, fur_worldPos[i] + offset * o_fur[i].furAlpha, o_fur[i].furAlpha),1);
+ o_fur[i].pos = UnityWorldToClipPos(o_fur[i].worldPos);
+ o_fur[i].furAlpha += .01;
+ tristream.Append(o_fur[i]);
+ }
+ tristream.RestartStrip();
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
new file mode 100644
index 00000000..c5b327ff
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 29e953f7cc6668d459b0ec20dbe3175d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
new file mode 100644
index 00000000..e31b6498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
@@ -0,0 +1,232 @@
+#ifndef POI_GLITTER
+ #define POI_GLITTER
+
+ half3 _GlitterColor;
+ POI_TEXTURE_NOSAMPLER(_GlitterMask);
+ float2 _GlitterPan;
+ POI_TEXTURE_NOSAMPLER(_GlitterColorMap);
+ POI_TEXTURE_NOSAMPLER(_GlitterTexture);
+ half _GlitterSpeed;
+ half _GlitterBrightness;
+ float _GlitterFrequency;
+ float _GlitterJitter;
+ half _GlitterSize;
+ half _GlitterContrast;
+ half _GlitterAngleRange;
+ half _GlitterMinBrightness;
+ half _GlitterBias;
+ float _GlitterRandomColors;
+ float2 _GlitterMinMaxSaturation;
+ float2 _GlitterMinMaxBrightness;
+ fixed _GlitterUseSurfaceColor;
+ float _GlitterBlendType;
+ float _GlitterMode;
+ float _GlitterShape;
+ float _GlitterCenterSize;
+ float _glitterFrequencyLinearEmissive;
+ float _GlitterJaggyFix;
+ float _GlitterRandomRotation;
+ float _GlitterTextureRotation;
+ float4 _GlitterMinMaxSize;
+ float _GlitterRandomSize;
+
+
+ float3 randomFloat3(float2 Seed, float maximum)
+ {
+ return(.5 + float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed), float2(12.9898, 78.233))) * 43758.5453)
+ ) * .5) * (maximum);
+ }
+
+ float3 randomFloat3Range(float2 Seed, float Range)
+ {
+ return(float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1) * Range;
+ }
+
+ float3 randomFloat3WiggleRange(float2 Seed, float Range)
+ {
+ float3 rando = (float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1);
+ float speed = 1 + float(10);
+ return float3(sin((_Time.x + rando.x * pi) * speed), sin((_Time.x + rando.y * pi) * speed), sin((_Time.x + rando.z * pi) * speed)) * Range;
+ }
+
+ void Unity_RandomRange_float(float2 Seed, float Min, float Max, out float Out)
+ {
+ float randomno = frac(sin(dot(Seed, float2(12.9898, 78.233))) * 43758.5453);
+ Out = lerp(Min, Max, randomno);
+ }
+
+ float3 RandomColorFromPoint(float2 rando)
+ {
+ fixed hue = random2(rando.x + rando.y).x;
+ fixed saturation = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.x);
+ fixed value = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.y);
+ float3 hsv = float3(hue, saturation, value);
+ return HSVtoRGB(hsv);
+ }
+
+ void applyGlitter(inout float4 albedo, inout float3 glitterEmission)
+ {
+
+
+ // Scale
+ float2 st = poiMesh.uv[0] * float(300);
+
+ // Tile the space
+ float2 i_st = floor(st);
+ float2 f_st = frac(st);
+
+ float m_dist = 10.; // minimun distance
+ float2 m_point = 0; // minimum point
+ float2 randoPoint = 0;
+ float2 dank;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 neighbor = float2(i, j);
+ float2 pos = random2(i_st + neighbor);
+ float2 rando = pos;
+ pos = 0.5 + 0.5 * sin(float(1) * 6.2831 * pos);
+ float2 diff = neighbor + pos - f_st;
+ float dist = length(diff);
+
+ if (dist < m_dist)
+ {
+ dank = diff;
+ m_dist = dist;
+ m_point = pos;
+ randoPoint = rando;
+ }
+ }
+ }
+
+ float randomFromPoint = random(randoPoint);
+
+ float size = float(0.3);
+
+ if(float(0))
+ {
+ size = remapClamped(randomFromPoint, 0, 1, float4(0.1,0.5,0,1).x, float4(0.1,0.5,0,1).y);
+ }
+
+
+ // Assign a color using the closest point position
+ //color += dot(m_point, float2(.3, .6));
+
+ // Add distance field to closest point center
+ // color.g = m_dist;
+
+ // Show isolines
+ //color -= abs(sin(40.0 * m_dist)) * 0.07;
+
+ // Draw cell center
+ half glitterAlpha = 1;
+ switch(float(0))
+ {
+ case 0: //circle
+ glitterAlpha = (1. - step(size, m_dist));
+ break;
+ case 1: //sqaure
+ float jaggyFix = pow(poiCam.distanceToVert, 2) * float(0);
+
+
+ if (float(0))
+ {
+ float2 center = float2(0, 0);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ dank = float2((dank.x - center.x) * cs - (dank.y - center.y) * sn + center.x, (dank.x - center.x) * sn + (dank.y - center.y) * cs + center.y);
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ else
+ {
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ break;
+ }
+
+ float3 finalGlitter = 0;
+
+ switch(float(0))
+ {
+ case 0:
+ float3 randomRotation = 0;
+
+ if(float(10) > 0)
+ {
+ randomRotation = randomFloat3WiggleRange(randoPoint, float(90));
+ }
+ else
+ {
+ randomRotation = randomFloat3Range(randoPoint, float(90));
+ }
+ float3 norm = poiMesh.normals[0];
+
+ float3 glitterReflectionDirection = normalize(mul(poiRotationMatrixFromAngles(randomRotation), norm));
+ finalGlitter = lerp(0, float(0) * glitterAlpha, glitterAlpha) + max(pow(saturate(dot(lerp(glitterReflectionDirection, poiCam.viewDir, float(0.8)), poiCam.viewDir)), float(300)), 0);
+ finalGlitter *= glitterAlpha;
+ break;
+ case 1:
+ float offset = random(randoPoint);
+ float brightness = sin((_Time.x + offset) * float(10)) * float(20) - (float(20) - 1);
+ finalGlitter = max(float(0) * glitterAlpha, brightness * glitterAlpha * smoothstep(0, 1, 1 - m_dist * float(0.08) * 10));
+ break;
+ }
+
+
+ half3 glitterColor = float4(1,1,1,1);
+ glitterColor *= lerp(1, albedo, float(0));
+ glitterColor *= POI2D_SAMPLER_PAN(_GlitterColorMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+
+ float2 uv = remapClamped(dank, -size, size, 0, 1);
+
+ if(float(0) && !float(0))
+ {
+ float2 fakeUVCenter = float2(.5, .5);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - fakeUVCenter.x) * cs - (uv.y - fakeUVCenter.y) * sn + fakeUVCenter.x, (uv.x - fakeUVCenter.x) * sn + (uv.y - fakeUVCenter.y) * cs + fakeUVCenter.y);
+ }
+ float4 glitterTexture = POI2D_SAMPLER_PAN(_GlitterTexture, _MainTex, uv, float4(0,0,0,0));
+ //float4 glitterTexture = _GlitterTexture.SampleGrad(sampler_MainTex, frac(uv), ddx(uv), ddy(uv));
+ glitterColor *= glitterTexture.rgb;
+ float glitterMask = POI2D_SAMPLER_PAN(_GlitterMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskGlitter != 4)
+ {
+ glitterMask *= blackLightMask[_BlackLightMaskGlitter];
+ }
+ #endif
+
+ if(float(0))
+ {
+ glitterColor *= RandomColorFromPoint(random2(randoPoint.x + randoPoint.y));
+ }
+
+
+ if(float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, finalGlitter * glitterColor * float(3), finalGlitter * glitterTexture.a * glitterMask);
+ glitterEmission = finalGlitter * glitterColor * max(0, (float(3) - 1) * glitterTexture.a) * glitterMask;
+ }
+ else
+ {
+ glitterEmission = finalGlitter * glitterColor * float(3) * glitterTexture.a * glitterMask;
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
new file mode 100644
index 00000000..77d3a587
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 662ac475bd8f9f64fb98201873a018fd
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
new file mode 100644
index 00000000..060cb720
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
@@ -0,0 +1,127 @@
+#ifndef POI_GRAB
+ #define POI_GRAB
+
+ float _RefractionIndex;
+ float _RefractionOpacity;
+ float _RefractionChromaticAberattion;
+ float _RefractionEnabled;
+ float _GrabSrcBlend;
+ float _GrabDstBlend;
+ float _GrabPassUseAlpha;
+ float _GrabPassBlendFactor;
+ float _GrabBlurDistance;
+ float _GrabBlurQuality;
+ float _GrabBlurDirections;
+ POI_TEXTURE_NOSAMPLER(_GrabPassBlendMap);
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RefractionOpacityMask); float4 _RefractionOpacityMask_ST;
+
+ float4 blur(float2 uv)
+ {
+ float two_pi = 6.28318530718;
+
+ float2 radius = _GrabBlurDistance / _ScreenParams.xy * 100; // Arbitrary constant to match old blur
+ float quality = floor(_GrabBlurQuality);
+ float directions = floor(_GrabBlurDirections);
+
+ // Pixel colour
+ float4 color = tex2D(_PoiGrab, uv);
+
+ float deltaAngle = two_pi / directions;
+ float deltaQuality = 1.0 / quality;
+ for (int i = 0; i < directions; i ++)
+ {
+ for (int j = 0; j < quality; j ++)
+ {
+ float angle = deltaAngle * i + j;
+ float offset = deltaQuality * (j + 1);
+ color += tex2D(_PoiGrab, uv + float2(cos(angle), sin(angle)) * radius * offset);
+ }
+ }
+
+ // Output to screen
+ color /= quality * directions + 1;
+ return color;
+ }
+
+ inline float4 Refraction(float indexOfRefraction, float chromaticAberration, float2 projectedGrabPos)
+ {
+ float4 refractionColor;
+ float3 worldViewDir = normalize(UnityWorldSpaceViewDir(poiMesh.worldPos));
+ float3 refractionOffset = ((((indexOfRefraction - 1.0) * mul(UNITY_MATRIX_V, float4(poiMesh.normals[1], 0.0))) * (1.0 / (poiCam.grabPos.z + 1.0))) * (1.0 - dot(poiMesh.normals[1], worldViewDir)));
+ float2 cameraRefraction = float2(refractionOffset.x, - (refractionOffset.y * _ProjectionParams.x));
+
+
+ if (_RefractionChromaticAberattion > 0)
+ {
+ float4 redAlpha = tex2D(_PoiGrab, (projectedGrabPos + cameraRefraction));
+ float green = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 - chromaticAberration)))).g;
+ float blue = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 + chromaticAberration)))).b;
+ refractionColor = float4(redAlpha.r, green, blue, redAlpha.a);
+ }
+ else
+ {
+ float2 refractedGrab = projectedGrabPos + cameraRefraction;
+
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refractionColor = blur(refractedGrab);
+ #else
+ refractionColor = tex2D(_PoiGrab, (refractedGrab));
+ #endif
+ }
+ return refractionColor;
+ }
+
+ void calculateRefraction(float2 projectedGrabPos, inout float4 finalColor)
+ {
+ float3 refraction = 1;
+
+ if(_RefractionEnabled == 1)
+ {
+ refraction = Refraction(_RefractionIndex, _RefractionChromaticAberattion, projectedGrabPos).rgb;
+ }
+ else
+ {
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refraction = blur(projectedGrabPos);
+ #else
+ refraction = tex2Dproj(_PoiGrab, poiCam.grabPos);
+ #endif
+ }
+
+ float blendFactor = _GrabPassBlendFactor * POI2D_SAMPLER_PAN(_GrabPassBlendMap, _MainTex, poiMesh.uv[_GrabPassBlendMapUV], _GrabPassBlendMapPan).r;
+
+ if(_GrabPassUseAlpha)
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor * (1 - finalColor.a));
+ finalColor.a = 1;
+ }
+ else
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor);
+ }
+ }
+
+ float2 calculateGrabPosition()
+ {
+ float4 grabPos = poiCam.grabPos;
+ #if UNITY_UV_STARTS_AT_TOP
+ float scale = -1.0;
+ #else
+ float scale = 1.0;
+ #endif
+ float halfPosW = grabPos.w * 0.5;
+ grabPos.y = (grabPos.y - halfPosW) * _ProjectionParams.x * scale + halfPosW;
+ #if SHADER_API_D3D9 || SHADER_API_D3D11
+ grabPos.w += 0.00000000001;
+ #endif
+ return(grabPos / grabPos.w).xy;
+ }
+
+ void applyGrabEffects(inout float4 finalColor)
+ {
+ float2 projectedGrabPos = calculateGrabPosition();
+ calculateRefraction(projectedGrabPos, finalColor);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
new file mode 100644
index 00000000..cabdc087
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fca01105b2b1427498f43e5ba18ac7f3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
new file mode 100644
index 00000000..9ae9e754
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
@@ -0,0 +1,338 @@
+#ifndef POI_HELPER
+ #define POI_HELPER
+
+ #include "CGI_PoiColors.cginc"
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float linearSin(float x)
+ {
+ return pow(min(cos(pi * x / 2.0), 1.0 - abs(x)), 1.0);
+ }
+
+ float random(float2 p)
+ {
+ return frac(sin(dot(p, float2(12.9898, 78.2383))) * 43758.5453123);
+ }
+
+ float2 random2(float2 p)
+ {
+ return frac(sin(float2(dot(p, float2(127.1, 311.7)), dot(p, float2(269.5, 183.3)))) * 43758.5453);
+ }
+
+ float3 random3(float3 p)
+ {
+ return frac(sin(float3(dot(p, float3(127.1, 311.7, 248.6)), dot(p, float3(269.5, 183.3, 423.3)), dot(p, float3(248.3, 315.9, 184.2)))) * 43758.5453);
+ }
+
+ float3 mod(float3 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+ float2 mod(float2 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+
+ //1/7
+ #define K 0.142857142857
+ //3/7
+ #define Ko 0.428571428571
+
+ // Permutation polynomial: (34x^2 + x) mod 289
+ float3 Permutation(float3 x)
+ {
+ return mod((34.0 * x + 1.0) * x, 289.0);
+ }
+
+ bool IsInMirror()
+ {
+ return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f;
+ }
+
+ float3 BoxProjection(float3 direction, float3 position, float4 cubemapPosition, float3 boxMin, float3 boxMax)
+ {
+ #if UNITY_SPECCUBE_BOX_PROJECTION
+
+ if (cubemapPosition.w > 0)
+ {
+ float3 factors = ((direction > 0 ? boxMax: boxMin) - position) / direction;
+ float scalar = min(min(factors.x, factors.y), factors.z);
+ direction = direction * scalar + (position - cubemapPosition);
+ }
+ #endif
+ return direction;
+ }
+
+ // Camera
+ float3 getCameraPosition()
+ {
+ #ifdef USING_STEREO_MATRICES
+ return lerp(unity_StereoWorldSpaceCameraPos[0], unity_StereoWorldSpaceCameraPos[1], 0.5);
+ #endif
+ return _WorldSpaceCameraPos;
+ }
+
+ float3 getCameraForward()
+ {
+ #if UNITY_SINGLE_PASS_STEREO
+ float3 p1 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 0, 1));
+ #else
+ float3 p1 = mul(unity_CameraToWorld, float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_CameraToWorld, float4(0, 0, 0, 1));
+ #endif
+ return normalize(p2 - p1);
+ }
+
+ float3 grayscale_vector_node()
+ {
+ return float3(0, 0.3823529, 0.01845836);
+ }
+
+ float3 grayscale_for_light()
+ {
+ return float3(0.298912, 0.586611, 0.114478);
+ }
+
+ //Math Operators
+
+ float remap(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float2 remap(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float3 remap(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float4 remap(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float remapClamped(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float2 remapClamped(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float3 remapClamped(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float4 remapClamped(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float poiMax(float2 i)
+ {
+ return max(i.x, i.y);
+ }
+
+ float poiMax(float3 i)
+ {
+ return max(max(i.x, i.y), i.z);
+ }
+
+ float poiMax(float4 i)
+ {
+ return max(max(max(i.x, i.y), i.z), i.w);
+ }
+
+ float4x4 poiAngleAxisRotationMatrix(float angle, float3 axis)
+ {
+ axis = normalize(axis);
+ float s = sin(angle);
+ float c = cos(angle);
+ float oc = 1.0 - c;
+
+ return float4x4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
+ oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
+ oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
+ 0.0, 0.0, 0.0, 1.0);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float x, float y, float z)
+ {
+ float angleX = radians(x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float3 angles)
+ {
+ float angleX = radians(angles.x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(angles.y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(angles.z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+#endif
+
+half2 calcScreenUVs(half4 grabPos)
+{
+ half2 uv = grabPos / (grabPos.w + 0.0000000001);
+ #if UNITY_SINGLE_PASS_STEREO
+ uv.xy *= half2(_ScreenParams.x * 2, _ScreenParams.y);
+ #else
+ uv.xy *= _ScreenParams.xy;
+ #endif
+
+ return uv;
+}
+
+float inverseLerp(float A, float B, float T)
+{
+ return(T - A) / (B - A);
+}
+
+float inverseLerp2(float2 a, float2 b, float2 value)
+{
+ float2 AB = b - a;
+ float2 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp3(float3 a, float3 b, float3 value)
+{
+ float3 AB = b - a;
+ float3 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp4(float4 a, float4 b, float4 value)
+{
+ float4 AB = b - a;
+ float4 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+// Dithering
+inline half Dither8x8Bayer(int x, int y)
+{
+ const half dither[ 64 ] = {
+ 1, 49, 13, 61, 4, 52, 16, 64,
+ 33, 17, 45, 29, 36, 20, 48, 32,
+ 9, 57, 5, 53, 12, 60, 8, 56,
+ 41, 25, 37, 21, 44, 28, 40, 24,
+ 3, 51, 15, 63, 2, 50, 14, 62,
+ 35, 19, 47, 31, 34, 18, 46, 30,
+ 11, 59, 7, 55, 10, 58, 6, 54,
+ 43, 27, 39, 23, 42, 26, 38, 22
+ };
+ int r = y * 8 + x;
+ return dither[r] / 64;
+}
+
+// UV Manipulation
+float2 TransformUV(half2 offset, half rotation, half2 scale, float2 uv)
+{
+ float theta = radians(rotation);
+ scale = 1 - scale;
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 centerPoint = offset + .5;
+ uv = float2((uv.x - centerPoint.x) * cs - (uv.y - centerPoint.y) * sn + centerPoint.x, (uv.x - centerPoint.x) * sn + (uv.y - centerPoint.y) * cs + centerPoint.y);
+
+ return remap(uv, float2(0, 0) + offset + (scale * .5), float2(1, 1) + offset - (scale * .5), float2(0, 0), float2(1, 1));
+}
+
+bool isVR()
+{
+ // USING_STEREO_MATRICES
+ #if UNITY_SINGLE_PASS_STEREO
+ return true;
+ #else
+ return false;
+ #endif
+}
+
+bool isVRHandCamera()
+{
+ return !isVR() && abs(UNITY_MATRIX_V[0].y) > 0.0000005;
+}
+
+bool isDesktop()
+{
+ return !isVRHandCamera();
+}
+
+bool isVRHandCameraPreview()
+{
+ return isVRHandCamera() && _ScreenParams.y == 720;
+}
+
+bool isVRHandCameraPicture()
+{
+ return isVRHandCamera() && _ScreenParams.y == 1080;
+}
+
+bool isPanorama()
+{
+ // Crude method
+ // FOV=90=camproj=[1][1]
+ return unity_CameraProjection[1][1] == 1 && _ScreenParams.x == 1075 && _ScreenParams.y == 1025;
+}
+
+float3 calculateluminance(float3 color)
+{
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
new file mode 100644
index 00000000..44bebdf5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7fa96e43ea03b414bb251ec793a862a4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
new file mode 100644
index 00000000..6ee66d3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
@@ -0,0 +1,36 @@
+#ifndef POI_HOLOGRAM
+ #define POI_HOLOGRAM
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_HoloAlphaMap); float4 _HoloAlphaMap_ST;
+ float _HoloCoordinateSpace; // 0 World, 1 Local, 2 UV
+ float3 _HoloDirection;
+ float _HoloScrollSpeed;
+ float _HoloLineDensity;
+
+ fixed _HoloFresnelAlpha;
+ fixed _HoloRimSharpness;
+ fixed _HoloRimWidth;
+ void ApplyHoloAlpha(inout float4 color)
+ {
+ float uv = 0;
+
+ if (_HoloCoordinateSpace == 0)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.worldPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 1)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.localPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 2)
+ {
+ uv = dot(_HoloDirection, poiMesh.uv[0] * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+ float holoRim = saturate(1 - smoothstep(min(_HoloRimSharpness, _HoloRimWidth), _HoloRimWidth, poiCam.viewDotNormal));
+ holoRim = abs(lerp(1, holoRim, _HoloFresnelAlpha));
+ color.a *= UNITY_SAMPLE_TEX2D_SAMPLER(_HoloAlphaMap, _MainTex, uv).r * holoRim;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
new file mode 100644
index 00000000..3bc77c5d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e762daf735879dd4dbed25848099f2d4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
new file mode 100644
index 00000000..bcea8ccc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
@@ -0,0 +1,61 @@
+#ifndef POI_IRIDESCENCE
+ #define POI_IRIDESCENCE
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceRamp); float4 _IridescenceRamp_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceMask); float4 _IridescenceMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceNormalMap); float4 _IridescenceNormalMap_ST;
+ float _IridescenceNormalUV;
+ float _IridescenceMaskUV;
+ float _IridescenceNormalSelection;
+ float _IridescenceNormalIntensity;
+ float _IridescenceNormalToggle;
+ float _IridescenceIntensity;
+ fixed _IridescenceAddBlend;
+ fixed _IridescenceReplaceBlend;
+ fixed _IridescenceMultiplyBlend;
+ float _IridescenceEmissionStrength;
+
+ //global
+
+ float3 calculateNormal(float3 baseNormal)
+ {
+ float3 normal = UnpackScaleNormal(UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceNormalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceNormalUV], _IridescenceNormalMap)), _IridescenceNormalIntensity);
+ return normalize(
+ normal.x * poiMesh.tangent +
+ normal.y * poiMesh.binormal +
+ normal.z * baseNormal
+ );
+ }
+
+ void applyIridescence(inout float4 albedo, inout float3 IridescenceEmission)
+ {
+ float3 normal = poiMesh.normals[_IridescenceNormalSelection];
+
+ // Use custom normal map
+
+ if (_IridescenceNormalToggle)
+ {
+ normal = calculateNormal(normal);
+ }
+
+ float ndotv = dot(normal, poiCam.viewDir);
+
+ float4 iridescenceColor = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceRamp, _MainTex, 1 - abs(ndotv));
+ float4 iridescenceMask = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceMaskUV], _IridescenceMask));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskIridescence != 4)
+ {
+ iridescenceMask *= blackLightMask[_BlackLightMaskIridescence];
+ }
+ #endif
+
+
+ albedo.rgb = lerp(albedo.rgb, saturate(iridescenceColor.rgb * _IridescenceIntensity), iridescenceColor.a * _IridescenceReplaceBlend * iridescenceMask);
+ albedo.rgb += saturate(iridescenceColor.rgb * _IridescenceIntensity * iridescenceColor.a * _IridescenceAddBlend * iridescenceMask);
+ albedo.rgb *= saturate(lerp(1, iridescenceColor.rgb * _IridescenceIntensity, iridescenceColor.a * _IridescenceMultiplyBlend * iridescenceMask));
+
+ IridescenceEmission = saturate(iridescenceColor.rgb * _IridescenceIntensity) * iridescenceColor.a * iridescenceMask * _IridescenceEmissionStrength;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
new file mode 100644
index 00000000..b5ba9b1d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4596711a163ea974ab7a43a63d9f466c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
new file mode 100644
index 00000000..8f35cb62
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
@@ -0,0 +1,668 @@
+
+#ifndef POI_LIGHTING
+ #define POI_LIGHTING
+
+ float _LightingShadingEnabled;
+ float _LightingRampType;
+ float _LightingIgnoreAmbientColor;
+ float _UseShadowTexture;
+ float _LightingEnableAO;
+ float _LightingDetailShadowsEnabled;
+
+ float _LightingOnlyUnityShadows;
+ float _LightingMode;
+ float _ForceLightDirection;
+ float _ShadowStrength;
+ float _OutlineShadowStrength;
+ float _ShadowOffset;
+ float3 _LightDirection;
+ float _ForceShadowStrength;
+ float _CastedShadowSmoothing;
+ float _AttenuationMultiplier;
+ float _EnableLighting;
+ float _LightingControlledUseLightColor;
+ fixed _LightingStandardSmoothness;
+ fixed _LightingStandardControlsToon;
+ fixed _LightingMinLightBrightness;
+ float _LightingUseShadowRamp;
+ float _LightingMinShadowBrightnessRatio;
+ UNITY_DECLARE_TEX2D(_ToonRamp);
+ fixed _LightingMonochromatic;
+
+ fixed _LightingGradientStart;
+ fixed _LightingGradientEnd;
+ float3 _LightingShadowColor;
+ POI_TEXTURE_NOSAMPLER(_LightingShadowTexture);
+ float _AOStrength;
+ fixed _LightingDetailStrength;
+ fixed _LightingAdditiveDetailStrength;
+ fixed _LightingNoIndirectMultiplier;
+ fixed _LightingNoIndirectThreshold;
+ float _LightingUncapped;
+
+ float _LightingDirectColorMode;
+ float _LightingIndirectColorMode;
+ float _LightingAdditiveType;
+ fixed _LightingAdditiveGradientStart;
+ fixed _LightingAdditiveGradientEnd;
+ fixed _LightingAdditivePassthrough;
+ float _LightingDirectAdjustment;
+ float _LightingIndirect;
+ // HSL JUNK
+ float _LightingEnableHSL;
+ float _LightingShadowHue;
+ float _LightingShadowSaturation;
+ float _LightingShadowLightness;
+ float _LightingHSLIntensity;
+ /*
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ToonRamp3);
+ half _LightingShadowStrength3;
+ half _ShadowOffset3;
+ */
+
+ half4 shadowStrength;
+
+ POI_TEXTURE_NOSAMPLER(_LightingDetailShadows);
+ POI_TEXTURE_NOSAMPLER(_LightingAOTex);
+ POI_TEXTURE_NOSAMPLER(_LightingShadowMask);
+
+ /*
+ * MIT License
+ *
+ * Copyright (c) 2018 s-ilent
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+ /*
+ * Silent's code starts here
+ */
+
+ float shEvaluateDiffuseL1Geomerics_local(float L0, float3 L1, float3 n)
+ {
+ // average energy
+ float R0 = max(0, L0);
+
+ // avg direction of incoming light
+ float3 R1 = 0.5f * L1;
+
+ // directional brightness
+ float lenR1 = length(R1);
+
+ // linear angle between normal and direction 0-1
+ //float q = 0.5f * (1.0f + dot(R1 / lenR1, n));
+ //float q = dot(R1 / lenR1, n) * 0.5 + 0.5;
+ float q = dot(normalize(R1), n) * 0.5 + 0.5;
+ q = saturate(q); // Thanks to ScruffyRuffles for the bug identity.
+
+ // power for q
+ // lerps from 1 (linear) to 3 (cubic) based on directionality
+ float p = 1.0f + 2.0f * lenR1 / R0;
+
+ // dynamic range constant
+ // should vary between 4 (highly directional) and 0 (ambient)
+ float a = (1.0f - lenR1 / R0) / (1.0f + lenR1 / R0);
+
+ return R0 * (a + (1.0f - a) * (p + 1.0f) * pow(q, p));
+ }
+
+ half3 BetterSH9(half4 normal)
+ {
+ float3 indirect;
+ float3 L0 = float3(unity_SHAr.w, unity_SHAg.w, unity_SHAb.w) + float3(unity_SHBr.z, unity_SHBg.z, unity_SHBb.z) / 3.0;
+ indirect.r = shEvaluateDiffuseL1Geomerics_local(L0.r, unity_SHAr.xyz, normal);
+ indirect.g = shEvaluateDiffuseL1Geomerics_local(L0.g, unity_SHAg.xyz, normal);
+ indirect.b = shEvaluateDiffuseL1Geomerics_local(L0.b, unity_SHAb.xyz, normal);
+ indirect = max(0, indirect);
+ indirect += SHEvalLinearL2(normal);
+ return indirect;
+ }
+
+ float3 BetterSH9(float3 normal)
+ {
+ return BetterSH9(float4(normal, 1));
+ }
+
+ /*
+ * Standard stuff starts here
+ */
+ UnityLight CreateLight(float3 normal, fixed detailShadowMap)
+ {
+ UnityLight light;
+ light.dir = poiLight.direction;
+ light.color = saturate(_LightColor0.rgb * lerp(1, poiLight.attenuation, float(0)) * detailShadowMap);
+ light.ndotl = DotClamped(normal, poiLight.direction);
+ return light;
+ }
+
+ float FadeShadows(float attenuation)
+ {
+ #if HANDLE_SHADOWS_BLENDING_IN_GI || ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ // UNITY_LIGHT_ATTENUATION doesn't fade shadows for us.
+
+ #if ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ attenuation = lerp(1, poiLight.attenuation, float(0));
+ #endif
+
+ float viewZ = dot(_WorldSpaceCameraPos - poiMesh.worldPos, UNITY_MATRIX_V[2].xyz);
+ float shadowFadeDistance = UnityComputeShadowFadeDistance(poiMesh.worldPos, viewZ);
+ float shadowFade = UnityComputeShadowFade(shadowFadeDistance);
+ float bakedAttenuation = UnitySampleBakedOcclusion(poiMesh.lightmapUV.xy, poiMesh.worldPos);
+ attenuation = UnityMixRealtimeAndBakedShadows(
+ attenuation, bakedAttenuation, shadowFade
+ );
+ #endif
+
+ return attenuation;
+ }
+
+ void ApplySubtractiveLighting(inout UnityIndirect indirectLight)
+ {
+ #if SUBTRACTIVE_LIGHTING
+ poiLight.attenuation = FadeShadows(lerp(1, poiLight.attenuation, float(0)));
+
+ float ndotl = saturate(dot(i.normal, _WorldSpaceLightPos0.xyz));
+ float3 shadowedLightEstimate = ndotl * (1 - poiLight.attenuation) * _LightColor0.rgb;
+ float3 subtractedLight = indirectLight.diffuse - shadowedLightEstimate;
+ subtractedLight = max(subtractedLight, unity_ShadowColor.rgb);
+ subtractedLight = lerp(subtractedLight, indirectLight.diffuse, _LightShadowData.x);
+ indirectLight.diffuse = min(subtractedLight, indirectLight.diffuse);
+ #endif
+ }
+
+ float3 weightedBlend(float3 layer1, float3 layer2, float2 weights)
+ {
+ return(weights.x * layer1 + weights.y * layer2) / (weights.x + weights.y);
+ }
+
+ UnityIndirect CreateIndirectLight(float3 normal)
+ {
+ UnityIndirect indirectLight;
+ indirectLight.diffuse = 0;
+ indirectLight.specular = 0;
+
+ #if defined(FORWARD_BASE_PASS)
+ #if defined(LIGHTMAP_ON)
+ indirectLight.diffuse = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap, poiMesh.lightmapUV.xy));
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 lightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_LightmapInd, unity_Lightmap, poiMesh.lightmapUV.xy
+ );
+ indirectLight.diffuse = DecodeDirectionalLightmap(
+ indirectLight.diffuse, lightmapDirection, normal
+ );
+ #endif
+ ApplySubtractiveLighting(indirectLight);
+ #endif
+
+ #if defined(DYNAMICLIGHTMAP_ON)
+ float3 dynamicLightDiffuse = DecodeRealtimeLightmap(
+ UNITY_SAMPLE_TEX2D(unity_DynamicLightmap, poiMesh.lightmapUV.zw)
+ );
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 dynamicLightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_DynamicDirectionality, unity_DynamicLightmap,
+ poiMesh.lightmapUV.zw
+ );
+ indirectLight.diffuse += DecodeDirectionalLightmap(
+ dynamicLightDiffuse, dynamicLightmapDirection, normal
+ );
+ #else
+ indirectLight.diffuse += dynamicLightDiffuse;
+ #endif
+ #endif
+
+ #if !defined(LIGHTMAP_ON) && !defined(DYNAMICLIGHTMAP_ON)
+ #if UNITY_LIGHT_PROBE_PROXY_VOLUME
+ if (unity_ProbeVolumeParams.x == 1)
+ {
+ indirectLight.diffuse = SHEvalLinearL0L1_SampleProbeVolume(
+ float4(normal, 1), poiMesh.worldPos
+ );
+ indirectLight.diffuse = max(0, indirectLight.diffuse);
+ #if defined(UNITY_COLORSPACE_GAMMA)
+ indirectLight.diffuse = LinearToGammaSpace(indirectLight.diffuse);
+ #endif
+ }
+ else
+ {
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ }
+ #else
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ #endif
+ #endif
+
+ float3 reflectionDir = reflect(-poiCam.viewDir, normal);
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = 1 - float(0);
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+ #if UNITY_SPECCUBE_BLENDING
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ indirectLight.specular = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ indirectLight.specular = probe0;
+ }
+ #else
+ indirectLight.specular = probe0;
+ #endif
+ float occlusion = 1;
+
+ if(float(0))
+ {
+ occlusion = lerp(1, POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ }
+
+ indirectLight.diffuse *= occlusion;
+ indirectLight.diffuse = max(indirectLight.diffuse, float(0));
+ indirectLight.specular *= occlusion;
+ #endif
+
+ return indirectLight;
+ }
+
+ /*
+ * Poiyomi's cool as heck code starts here :smug:
+ */
+
+ half PoiDiffuse(half NdotV, half NdotL, half LdotH)
+ {
+ half fd90 = 0.5 + 2 * LdotH * LdotH * SmoothnessToPerceptualRoughness(.5);
+ // Two schlick fresnel term
+ half lightScatter = (1 + (fd90 - 1) * Pow5(1 - NdotL));
+ half viewScatter = (1 + (fd90 - 1) * Pow5(1 - NdotV));
+
+ return lightScatter * viewScatter;
+ }
+
+ float3 ShadeSH9Indirect()
+ {
+ return ShadeSH9(half4(0.0, -1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Direct()
+ {
+ return ShadeSH9(half4(0.0, 1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Normal(float3 normalDirection)
+ {
+ return ShadeSH9(half4(normalDirection, 1.0));
+ }
+
+ half3 GetSHLength()
+ {
+ half3 x, x1;
+ x.r = length(unity_SHAr);
+ x.g = length(unity_SHAg);
+ x.b = length(unity_SHAb);
+ x1.r = length(unity_SHBr);
+ x1.g = length(unity_SHBg);
+ x1.b = length(unity_SHBb);
+ return x + x1;
+ }
+
+ float3 calculateRealisticLighting(float4 colorToLight, fixed detailShadowMap)
+ {
+ return UNITY_BRDF_PBS(1, 0, 0, float(0), poiMesh.normals[1], poiCam.viewDir, CreateLight(poiMesh.normals[1], detailShadowMap), CreateIndirectLight(poiMesh.normals[1]));
+ }
+
+ void calculateBasePassLightMaps()
+ {
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ float AOMap = 1;
+ float AOStrength = 1;
+ float3 lightColor = poiLight.color;
+ /*
+ * Generate Basic Light Maps
+ */
+
+ bool lightExists = false;
+ if (all(_LightColor0.rgb >= 0.002))
+ {
+ lightExists = true;
+ }
+ #ifndef OUTLINE
+
+ if(float(0))
+ {
+ AOMap = POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ AOStrength = float(1);
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ if (lightExists)
+ {
+ lightColor = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+ }
+ else
+ {
+ lightColor = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ }
+
+ //lightColor = magic * magiratio + normalLight * normaRatio;
+ //lightColor = magic + normalLight;
+ #endif
+ #endif
+
+ float3 grayscale_vector = float3(.33333, .33333, .33333);
+ float3 ShadeSH9Plus = GetSHLength();
+ float3 ShadeSH9Minus = BetterSH9(float4(0, 0, 0, 1));
+
+ shadowStrength = 1;
+ #ifndef OUTLINE
+ shadowStrength = POI2D_SAMPLER_PAN(_LightingShadowMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(1);
+ #else
+ shadowStrength = float(1);
+ #endif
+
+ float bw_lightColor = dot(lightColor, grayscale_vector);
+ float bw_directLighting = (((poiLight.nDotL * 0.5 + 0.5) * bw_lightColor * lerp(1, poiLight.attenuation, float(0))) + dot(ShadeSH9Normal(poiMesh.normals[1]), grayscale_vector));
+ float bw_bottomIndirectLighting = dot(ShadeSH9Minus, grayscale_vector);
+ float bw_topIndirectLighting = dot(ShadeSH9Plus, grayscale_vector);
+ float lightDifference = ((bw_topIndirectLighting + bw_lightColor) - bw_bottomIndirectLighting);
+
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(0))
+ {
+ poiLight.lightMap = poiLight.attenuation;
+ }
+ else
+ {
+ poiLight.lightMap = smoothstep(0, lightDifference, bw_directLighting - bw_bottomIndirectLighting);
+ }
+ poiLight.lightMap *= detailShadow;
+
+ /*
+ * Decide on light colors
+ */
+
+ float3 indirectLighting = 0;
+ float3 directLighting = 0;
+
+
+
+
+ if (float(0) == 1)
+ {
+ indirectLighting = BetterSH9(float4(poiMesh.normals[0], 1));
+ }
+ else
+ {
+ indirectLighting = ShadeSH9Minus;
+ }
+
+ poiLight.directLighting = lightColor;
+ poiLight.indirectLighting = indirectLighting;
+
+
+ if(float(0) == 0)
+ {
+ float3 magic = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+
+ float magiLumi = calculateluminance(magic);
+ float normaLumi = calculateluminance(normalLight);
+ float maginormalumi = magiLumi + normaLumi;
+
+ float magiratio = magiLumi / maginormalumi;
+ float normaRatio = normaLumi / maginormalumi;
+
+ float target = calculateluminance(magic * magiratio + normalLight * normaRatio);
+ float3 properLightColor = magic + normalLight;
+ float properLuminance = calculateluminance(magic + normalLight);
+ directLighting = properLightColor * max(0.0001, (target / properLuminance));
+ }
+ else
+ {
+ directLighting = lightColor;
+ }
+
+
+ if(!float(0))
+ {
+ float directluminance = calculateluminance(directLighting);
+ float indirectluminance = calculateluminance(indirectLighting);
+ directLighting = min(directLighting, directLighting / max(0.0001, (directluminance / 1)));
+ indirectLighting = min(indirectLighting, indirectLighting / max(0.0001, (indirectluminance / 1)));
+ }
+
+ directLighting = lerp(directLighting, dot(directLighting, float3(0.299, 0.587, 0.114)), float(0));
+ indirectLighting = lerp(indirectLighting, dot(indirectLighting, float3(0.299, 0.587, 0.114)), float(0));
+
+ if(max(max(indirectLighting.x, indirectLighting.y), indirectLighting.z) <= _LightingNoIndirectThreshold && max(max(directLighting.x, directLighting.y), directLighting.z) >= 0)
+ {
+ indirectLighting = directLighting * _LightingNoIndirectMultiplier;
+ }
+
+
+ if(float(0))
+ {
+ float directluminance = clamp(directLighting.r * 0.299 + directLighting.g * 0.587 + directLighting.b * 0.114, 0, 1);
+ if(directluminance > 0)
+ {
+ indirectLighting = max(0.001, indirectLighting);
+ }
+ float indirectluminance = clamp(indirectLighting.r * 0.299 + indirectLighting.g * 0.587 + indirectLighting.b * 0.114, 0, 1);
+ float targetluminance = directluminance * float(0);
+ if(indirectluminance < targetluminance)
+ {
+ indirectLighting = indirectLighting / max(0.0001, indirectluminance / targetluminance);
+ }
+ }
+
+ /*
+ * Create Shade Maps
+ */
+
+ if (float(0))
+ {
+ switch(float(0))
+ {
+ case 0: // Ramp Texture
+ {
+ poiLight.rampedLightMap = lerp(1, UNITY_SAMPLE_TEX2D(_ToonRamp, poiLight.lightMap + float(0)), shadowStrength.r);
+
+ if (float(0))
+ {
+ poiLight.finalLighting = lerp(poiLight.rampedLightMap * directLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ else
+ {
+ poiLight.finalLighting = lerp(indirectLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ }
+ break;
+ case 1: // Math Gradient
+ {
+ poiLight.rampedLightMap = saturate(1 - smoothstep(float(0) - .000001, float(0.5), 1 - poiLight.lightMap));
+ float3 shadowColor = float4(1,1,1,1);
+
+ if (float(0))
+ {
+ shadowColor = 1;
+ }
+
+ if(float(0))
+ {
+ poiLight.finalLighting = lerp((directLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ else
+ {
+ poiLight.finalLighting = lerp((indirectLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ }
+ break;
+ }
+ }
+ else
+ {
+ poiLight.rampedLightMap = 1 - smoothstep(0, .5, 1 - poiLight.lightMap);
+ poiLight.finalLighting = directLighting;
+ }
+
+ if(!float(0))
+ {
+ poiLight.finalLighting = saturate(poiLight.finalLighting);
+ }
+ //poiLight.finalLighting *= .8;
+ #endif
+ }
+
+ void applyShadowTexture(inout float4 albedo)
+ {
+
+ if (float(0) && float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, POI2D_SAMPLER_PAN(_LightingShadowTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1), (1 - poiLight.rampedLightMap) * shadowStrength);
+ }
+ }
+
+ float3 calculateNonImportantLighting(float attenuation, float attenuationDotNL, float3 albedo, float3 lightColor, half dotNL)
+ {
+ fixed detailShadow = 1;
+
+ if(float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ return lightColor * attenuationDotNL * detailShadow;
+ }
+ else
+ {
+ return lerp(lightColor * attenuation, lightColor * float(0.5) * attenuation, smoothstep(float(0), float(0.5), dotNL)) * detailShadow;
+ }
+ }
+
+
+ float3 calculateFinalLighting(inout float3 albedo, float4 finalColor)
+ {
+ float3 finalLighting = 1;
+ // Additive Lighting
+ #ifdef FORWARD_ADD_PASS
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ finalLighting = poiLight.color * poiLight.attenuation * max(0, poiLight.nDotL) * detailShadow;
+ }
+ else
+ {
+ #if defined(POINT) || defined(SPOT)
+ finalLighting = lerp(poiLight.color * max(poiLight.additiveShadow, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * poiLight.attenuation * detailShadow;
+ #else
+ finalLighting = lerp(poiLight.color * max(poiLight.attenuation, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * detailShadow;
+ #endif
+ }
+ #endif
+
+ // Base and Meta Lighting
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ #ifdef VERTEXLIGHT_ON
+ poiLight.vFinalLighting = 0;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vFinalLighting += calculateNonImportantLighting(poiLight.vAttenuation[index], poiLight.vAttenuationDotNL[index], albedo, poiLight.vColor[index], poiLight.vCorrectedDotNL[index]);
+ }
+ #endif
+
+ switch(float(0))
+ {
+ case 0: // Toon Lighting
+ {
+ // HSL Shading
+
+ if (float(0))
+ {
+ float3 HSLMod = float3(float(0.5) * 2 - 1, float(0.5) * 2 - 1, float(0.5) * 2 - 1) * (1 - poiLight.rampedLightMap);
+ albedo = lerp(albedo.rgb, ModifyViaHSL(albedo.rgb, HSLMod), float(1));
+ }
+
+ // Normal Shading
+
+ if (float(0) > 0)
+ {
+ poiLight.finalLighting = max(0.001, poiLight.finalLighting);
+ float finalluminance = calculateluminance(poiLight.finalLighting);
+ finalLighting = max(poiLight.finalLighting, poiLight.finalLighting / max(0.0001, (finalluminance / float(0))));
+ }
+ else
+ {
+ finalLighting = poiLight.finalLighting;
+ }
+ }
+ break;
+ case 1: // realistic
+ {
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ float3 realisticLighting = calculateRealisticLighting(finalColor, detailShadow).rgb;
+ finalLighting = lerp(realisticLighting, dot(realisticLighting, float3(0.299, 0.587, 0.114)), float(0));
+ }
+ break;
+ }
+ #endif
+ return finalLighting;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
new file mode 100644
index 00000000..3f77a85b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 90b165ba2bc0051448399c29e102489e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
new file mode 100644
index 00000000..c23736df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
@@ -0,0 +1,243 @@
+#ifndef POI_MSDF
+ #define POI_MSDF
+
+ sampler2D _TextGlyphs;
+ float4 _TextGlyphs_ST;
+ float4 _TextGlyphs_TexelSize;
+ float _TextFPSUV;
+ float _TextTimeUV;
+ float _TextPositionUV;
+ float _TextPixelRange;
+
+ float _TextFPSEnabled;
+ float _TextPositionEnabled;
+ float _TextTimeEnabled;
+
+
+ float4 _TextFPSColor;
+ half _TextFPSEmissionStrength;
+ fixed4 _TextFPSPadding;
+ half2 _TextFPSOffset;
+ half2 _TextFPSScale;
+ half _TextFPSRotation;
+
+ fixed _TextPositionVertical;
+ float4 _TextPositionColor;
+ half _TextPositionEmissionStrength;
+ fixed4 _TextPositionPadding;
+ half2 _TextPositionOffset;
+ half2 _TextPositionScale;
+ half _TextPositionRotation;
+
+ float4 _TextTimeColor;
+ half _TextTimeEmissionStrength;
+ fixed4 _TextTimePadding;
+ half2 _TextTimeOffset;
+ half2 _TextTimeScale;
+ half _TextTimeRotation;
+
+ #define glyphWidth 0.0625
+
+ #define ASCII_LEFT_PARENTHESIS 40
+ #define ASCII_RIGHT_PARENTHESIS 41
+ #define ASCII_POSITIVE 43
+ #define ASCII_PERIOD 46
+ #define ASCII_NEGATIVE 45
+ #define ASCII_COMMA 44
+ #define ASCII_E 69
+ #define ASCII_F 70
+ #define ASCII_I 73
+ #define ASCII_M 77
+ #define ASCII_O 79
+ #define ASCII_P 80
+ #define ASCII_S 83
+ #define ASCII_T 54
+ #define ASCII_SEMICOLON 58
+
+ float3 globalTextEmission;
+
+ half2 getAsciiCoordinate(float index)
+ {
+ return half2((index - 1) / 16, 1 - ((floor(index / 16 - glyphWidth)) / 16));
+ }
+
+ float median(float r, float g, float b)
+ {
+ return max(min(r, g), min(max(r, g), b));
+ }
+
+ void ApplyPositionText(inout float4 albedo, float2 uv)
+ {
+ float3 cameraPos = clamp(getCameraPosition(), -999, 999);
+ float3 absCameraPos = abs(cameraPos);
+ float totalCharacters = 20;
+ float positionArray[20];
+ positionArray[0] = cameraPos.x >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[1] = floor((absCameraPos.x * .01) % 10) + 48;
+ positionArray[2] = floor((absCameraPos.x * .1) % 10) + 48;
+ positionArray[3] = floor(absCameraPos.x % 10) + 48;
+ positionArray[4] = ASCII_PERIOD;
+ positionArray[5] = floor((absCameraPos.x * 10) % 10) + 48;
+ positionArray[6] = ASCII_COMMA;
+ positionArray[7] = cameraPos.y >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[8] = floor((absCameraPos.y * .01) % 10) + 48;
+ positionArray[9] = floor((absCameraPos.y * .1) % 10) + 48;
+ positionArray[10] = floor(absCameraPos.y % 10) + 48;
+ positionArray[11] = ASCII_PERIOD;
+ positionArray[12] = floor((absCameraPos.y * 10) % 10) + 48;
+ positionArray[13] = ASCII_COMMA;
+ positionArray[14] = cameraPos.z >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[15] = floor((absCameraPos.z * .01) % 10) + 48;
+ positionArray[16] = floor((absCameraPos.z * .1) % 10) + 48;
+ positionArray[17] = floor(absCameraPos.z % 10) + 48;
+ positionArray[18] = ASCII_PERIOD;
+ positionArray[19] = floor((absCameraPos.z * 10) % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if (uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(positionArray[currentCharacter]);
+
+ float2 startUV = float2(1 / totalCharacters * currentCharacter, 0);
+ float2 endUV = float2(1 / totalCharacters * (currentCharacter + 1), 1);
+
+ fixed4 textPositionPadding = float4(0,0,0,0);
+ textPositionPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, startUV, endUV, float2(glyphPos.x + textPositionPadding.x, glyphPos.y - glyphWidth + textPositionPadding.y), float2(glyphPos.x + glyphWidth - textPositionPadding.z, glyphPos.y - textPositionPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textPositionPadding.z - .001 || uv.x < glyphPos.x + textPositionPadding.x + .001 || uv.y > glyphPos.y - textPositionPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textPositionPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTimeText(inout float4 albedo, float2 uv)
+ {
+ float instanceTime = _Time.y;
+ float hours = instanceTime / 3600;
+ float minutes = (instanceTime / 60) % 60;
+ float seconds = instanceTime % 60;
+ float totalCharacters = 8;
+ float timeArray[8];
+ timeArray[0] = floor((hours * .1) % 10) + 48;
+ timeArray[1] = floor(hours % 10) + 48;
+ timeArray[2] = ASCII_SEMICOLON;
+ timeArray[3] = floor((minutes * .1) % 10) + 48;
+ timeArray[4] = floor(minutes % 10) + 48;
+ timeArray[5] = ASCII_SEMICOLON;
+ timeArray[6] = floor((seconds * .1) % 10) + 48;
+ timeArray[7] = floor(seconds % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(timeArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+ fixed4 textTimePadding = float4(0,0,0,0);
+ textTimePadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textTimePadding.x, glyphPos.y - glyphWidth + textTimePadding.y), float2(glyphPos.x + glyphWidth - textTimePadding.z, glyphPos.y - textTimePadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textTimePadding.z - .001 || uv.x < glyphPos.x + textTimePadding.x + .001 || uv.y > glyphPos.y - textTimePadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textTimePadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyFPSText(inout float4 albedo, float2 uv)
+ {
+ float smoothDeltaTime = clamp(unity_DeltaTime.w, 0, 999);
+ float totalCharacters = 7;
+ float fpsArray[7];
+ fpsArray[0] = ASCII_F;
+ fpsArray[1] = ASCII_P;
+ fpsArray[2] = ASCII_S;
+ fpsArray[3] = ASCII_SEMICOLON;
+ fpsArray[4] = floor((smoothDeltaTime * .01) % 10) + 48;
+ fpsArray[5] = floor((smoothDeltaTime * .1) % 10) + 48;
+ fpsArray[6] = floor(smoothDeltaTime % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(fpsArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+
+ fixed4 textFPSPadding = float4(0,0,0,0);
+ textFPSPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textFPSPadding.x, glyphPos.y - glyphWidth + textFPSPadding.y), float2(glyphPos.x + glyphWidth - textFPSPadding.z, glyphPos.y - textFPSPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textFPSPadding.z - .001 || uv.x < glyphPos.x + textFPSPadding.x + .001 || uv.y > glyphPos.y - textFPSPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textFPSPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,1,1,1).rgb, opacity * float4(1,1,1,1).a);
+ globalTextEmission += float4(1,1,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTextOverlayColor(inout float4 albedo, inout float3 textOverlayEmission)
+ {
+ globalTextEmission = 0;
+ half positionalOpacity = 0;
+ #ifdef EFFECT_BUMP
+
+ if(float(0))
+ {
+ ApplyFPSText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyPositionText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyTimeText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ textOverlayEmission = globalTextEmission;
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
new file mode 100644
index 00000000..9b4745a5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1569c63f08074754b869f12096f99d05
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
new file mode 100644
index 00000000..ecac0805
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
@@ -0,0 +1,33 @@
+#ifndef POI_MACROS
+ #define POI_MACROS
+
+ #define POI_TEXTURE_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_TEXTURE(tex) UNITY_DECLARE_TEX2D(tex##); float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_NORMAL_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV; float tex##Scale
+
+ #define POI2D_SAMPLER_PAN(tex, texSampler, uv, pan) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D_SAMPLER(tex, texSampler, uv) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex)))
+ #define POI2D_PAN(tex, uv, pan) (tex2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D(tex, uv) (tex2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D(tex, uv) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D_PAN(tex, uv, pan) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+
+ #ifdef POINT
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ unityShadowCoord3 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1)).xyz; \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = tex2D(_LightTexture0, dot(lightCoord, lightCoord).rr).r;
+ #endif
+
+ #ifdef SPOT
+ #if !defined(UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS)
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1))
+ #else
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = input._LightCoord
+ #endif
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ DECLARE_LIGHT_COORD(input, worldPos); \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = (lightCoord.z > 0) * UnitySpotCookie(lightCoord) * UnitySpotAttenuate(lightCoord.xyz);
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
new file mode 100644
index 00000000..a9c6a704
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8d267501897b8c44692836d67464afaf
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
new file mode 100644
index 00000000..270384af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
@@ -0,0 +1,147 @@
+#ifndef POI_MAINTEXTURE
+ #define POI_MAINTEXTURE
+
+
+
+ POI_TEXTURE_NOSAMPLER(_AlphaMask);
+ POI_TEXTURE_NOSAMPLER(_MainFadeTexture);
+ float4 _Color;
+ float _MainVertexColoring;
+ float _MainUseVertexColorAlpha;
+ float _Saturation;
+ float2 _MainDistanceFade;
+ half _MainMinAlpha;
+ float _MainHueShift;
+ #ifdef COLOR_GRADING_HDR
+ POI_TEXTURE_NOSAMPLER(_MainHueShiftMask);
+ float _MainHueShiftToggle;
+ float _MainHueShiftSpeed;
+ float _MainHueShiftReplace;
+ #endif
+
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailTex);
+ half _DetailTexIntensity;
+ half3 _DetailTint;
+ float _DetailBrightness;
+ #endif
+ //globals
+ float alphaMask;
+ half3 diffColor;
+
+ #include "CGI_PoiBackFace.cginc"
+
+ float3 wireframeEmission;
+
+ inline FragmentCommonData SpecularSetup(float4 i_tex, inout float4 albedo)
+ {
+ half4 specGloss = 0;
+ half3 specColor = specGloss.rgb;
+ half smoothness = specGloss.a;
+
+ half oneMinusReflectivity;
+ diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specColor, /*out*/ oneMinusReflectivity);
+
+ FragmentCommonData o = (FragmentCommonData)0;
+ o.diffColor = diffColor;
+ o.specColor = specColor;
+ o.oneMinusReflectivity = oneMinusReflectivity;
+ o.smoothness = smoothness;
+ return o;
+ }
+
+ inline FragmentCommonData FragmentSetup(float4 i_tex, half3 i_viewDirForParallax, float3 i_posWorld, inout float4 albedo)
+ {
+ i_tex = i_tex;
+
+ FragmentCommonData o = SpecularSetup(i_tex, albedo);
+ o.normalWorld = float4(0, 0, 0, 1);
+ o.eyeVec = poiCam.viewDir;
+ o.posWorld = i_posWorld;
+
+ // NOTE: shader relies on pre-multiply alpha-blend (float(1) = One, float(0) = OneMinusSrcAlpha)
+ o.diffColor = PreMultiplyAlpha(o.diffColor, 1, o.oneMinusReflectivity, /*out*/ o.alpha);
+ return o;
+ }
+
+ void initTextureData(inout float4 albedo, inout float4 mainTexture, inout float3 backFaceEmission, inout float3 dissolveEmission, in half3 detailMask)
+ {
+ dissolveEmission = 0;
+
+ #if (defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ #endif
+
+ alphaMask = POI2D_SAMPLER_PAN(_AlphaMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ mainTexture.a *= alphaMask;
+
+ #ifndef POI_SHADOW
+ albedo = float4(lerp(mainTexture.rgb, dot(mainTexture.rgb, float3(0.3, 0.59, 0.11)), -float(0)) * max(float4(1,1,1,1).rgb, float3(0.000000001, 0.000000001, 0.000000001)) * lerp(1, GammaToLinearSpace(poiMesh.vertexColor.rgb), float(0)), mainTexture.a * max(float4(1,1,1,1).a, 0.0000001));
+
+ #ifdef POI_LIGHTING
+ applyShadowTexture(albedo);
+ #endif
+
+ albedo *= lerp(1, poiMesh.vertexColor.a, float(0));
+ #ifdef POI_RGBMASK
+ albedo.rgb = calculateRGBMask(albedo.rgb);
+ #endif
+
+ albedo.a = saturate(float(0) + albedo.a);
+
+ wireframeEmission = 0;
+ #ifdef POI_WIREFRAME
+ applyWireframe(wireframeEmission, albedo);
+ #endif
+ float backFaceDetailIntensity = 1;
+
+ float mixedHueShift = float(0);
+ applyBackFaceTexture(backFaceDetailIntensity, mixedHueShift, albedo, backFaceEmission);
+
+ #ifdef POI_FUR
+ calculateFur();
+ #endif
+
+ #ifdef COLOR_GRADING_HDR
+ float hueShiftAlpha = POI2D_SAMPLER_PAN(_MainHueShiftMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if(float(1))
+ {
+ albedo.rgb = lerp(albedo.rgb, hueShift(albedo.rgb, mixedHueShift + float(0) * _Time.x), hueShiftAlpha);
+ }
+ else
+ {
+ albedo.rgb = hueShift(albedo.rgb, frac((mixedHueShift - (1 - hueShiftAlpha) + float(0) * _Time.x)));
+ }
+ #endif
+ #ifdef FINALPASS
+ half3 detailTexture = POI2D_SAMPLER_PAN(_DetailTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb * float4(1,1,1,1).rgb;
+ albedo.rgb *= LerpWhiteTo(detailTexture * float(1) * unity_ColorSpaceDouble.rgb, detailMask.r * float(1) * backFaceDetailIntensity);
+ #endif
+ albedo.rgb = saturate(albedo.rgb);
+
+ #ifdef POI_HOLOGRAM
+ ApplyHoloAlpha(albedo);
+ #endif
+
+ s = FragmentSetup(float4(poiMesh.uv[0], 1, 1), poiCam.viewDir, poiMesh.worldPos, albedo);
+ #endif
+
+ #ifdef DISTORT
+ calculateDissolve(albedo, dissolveEmission);
+ #endif
+ }
+
+ void distanceFade(inout float4 albedo)
+ {
+ half fadeMap = POI2D_SAMPLER_PAN(_MainFadeTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(fadeMap)
+ {
+ half fadeValue = max(smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, poiCam.distanceToVert), float(0));
+ albedo.a *= fadeValue;
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
new file mode 100644
index 00000000..94cc35a7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 53c01b6c32d2db740a805c3004746b0f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
new file mode 100644
index 00000000..3aa6d6b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
@@ -0,0 +1,115 @@
+#ifndef MATCAP
+ #define MATCAP
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap); float4 _Matcap_ST;
+ POI_TEXTURE_NOSAMPLER(_MatcapMask);
+ float _MatcapMaskInvert;
+ float _MatcapBorder;
+ float4 _MatcapColor;
+ float _MatcapIntensity;
+ float _MatcapReplace;
+ float _MatcapMultiply;
+ float _MatcapAdd;
+ float _MatcapEnable;
+ float _MatcapLightMask;
+ float _MatcapEmissionStrength;
+ float _MatcapNormal;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap2);float4 _Matcap2_ST;
+ POI_TEXTURE_NOSAMPLER(_Matcap2Mask);
+ float _Matcap2MaskInvert;
+ float _Matcap2Border;
+ float4 _Matcap2Color;
+ float _Matcap2Intensity;
+ float _Matcap2Replace;
+ float _Matcap2Multiply;
+ float _Matcap2Add;
+ float _Matcap2Enable;
+ float _Matcap2LightMask;
+ float _Matcap2EmissionStrength;
+ float _Matcap2Normal;
+
+ void blendMatcap(inout float4 finalColor, float add, float multiply, float replace, float4 matcapColor, float matcapMask, inout float3 matcapEmission, float emissionStrength
+ #ifdef POI_LIGHTING
+ , float matcapLightMask
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , uint blackLightMaskIndex
+ #endif
+ )
+ {
+ #ifdef POI_LIGHTING
+ if (matcapLightMask)
+ {
+ matcapMask *= lerp(1, poiLight.rampedLightMap, matcapLightMask);
+ }
+ #endif
+ #ifdef POI_BLACKLIGHT
+ if(blackLightMaskIndex != 4)
+ {
+ matcapMask *= blackLightMask[blackLightMaskIndex];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor.rgb, matcapColor.rgb, replace * matcapMask * matcapColor.a);
+ finalColor.rgb *= lerp(1, matcapColor.rgb, multiply * matcapMask * matcapColor.a);
+ finalColor.rgb += matcapColor.rgb * add * matcapMask * matcapColor.a;
+ matcapEmission += matcapColor.rgb * emissionStrength * matcapMask * matcapColor.a;
+ }
+
+ void applyMatcap(inout float4 finalColor, inout float3 matcapEmission)
+ {
+ float4 matcap = 0;
+ float matcapMask = 0;
+ float4 matcap2 = 0;
+ float matcap2Mask = 0;
+
+ // Both matcaps use the same coordinates
+ half3 worldViewUp = normalize(half3(0, 1, 0) - poiCam.viewDir * dot(poiCam.viewDir, half3(0, 1, 0)));
+ half3 worldViewRight = normalize(cross(poiCam.viewDir, worldViewUp));
+
+ // Matcap 1
+ half2 matcapUV = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+
+ matcap = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap, _MainTex, TRANSFORM_TEX(matcapUV, _Matcap)) * float4(1,1,1,1);
+ matcap.rgb *= float(1);
+ matcapMask = POI2D_SAMPLER_PAN(_MatcapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if (float(0))
+ {
+ matcapMask = 1 - matcapMask;
+ }
+
+ blendMatcap(finalColor, float(0), float(0), float(1), matcap, matcapMask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap
+ #endif
+ );
+
+ // Matcap 2
+
+ if (float(0))
+ {
+ half2 matcapUV2 = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+ matcap2 = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap2, _MainTex, TRANSFORM_TEX(matcapUV2, _Matcap2)) * float4(1,1,1,1);
+ matcap2.rgb *= float(1);
+ matcap2Mask = POI2D_SAMPLER_PAN(_Matcap2Mask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(float(0))
+ {
+ matcap2Mask = 1 - matcap2Mask;
+ }
+ blendMatcap(finalColor, float(0), float(0), float(0), matcap2, matcap2Mask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap2
+ #endif
+ );
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
new file mode 100644
index 00000000..bed6e935
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 62140d84c00d6514694a10ded301329a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
new file mode 100644
index 00000000..b2d07a38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
@@ -0,0 +1,104 @@
+/*
+MIT License
+
+Copyright (c) 2019 wraikny
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+VertexTransformShader is dependent on:
+*/
+
+#ifndef POI_MATH
+ #define POI_MATH
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float4 quaternion_conjugate(float4 v)
+ {
+ return float4(
+ v.x, -v.yzw
+ );
+ }
+
+ float4 quaternion_mul(float4 v1, float4 v2)
+ {
+ float4 result1 = (v1.x * v2 + v1 * v2.x);
+
+ float4 result2 = float4(
+ - dot(v1.yzw, v2.yzw),
+ cross(v1.yzw, v2.yzw)
+ );
+
+ return float4(result1 + result2);
+ }
+
+ // angle : radians
+ float4 get_quaternion_from_angle(float3 axis, float angle)
+ {
+ return float4(
+ cos(angle / 2.0),
+ normalize(axis) * sin(angle / 2.0)
+ );
+ }
+
+ float4 quaternion_from_vector(float3 inVec)
+ {
+ return float4(0.0, inVec);
+ }
+
+ float degree_to_radius(float degree)
+ {
+ return(
+ degree / 180.0 * pi
+ );
+ }
+
+ float3 rotate_with_quaternion(float3 inVec, float3 rotation)
+ {
+ float4 qx = get_quaternion_from_angle(float3(1, 0, 0), degree_to_radius(rotation.x));
+ float4 qy = get_quaternion_from_angle(float3(0, 1, 0), degree_to_radius(rotation.y));
+ float4 qz = get_quaternion_from_angle(float3(0, 0, 1), degree_to_radius(rotation.z));
+
+ #define MUL3(A, B, C) quaternion_mul(quaternion_mul((A), (B)), (C))
+ float4 quaternion = normalize(MUL3(qx, qy, qz));
+ float4 conjugate = quaternion_conjugate(quaternion);
+
+ float4 inVecQ = quaternion_from_vector(inVec);
+
+ float3 rotated = (
+ MUL3(quaternion, inVecQ, conjugate)
+ ).yzw;
+
+ return rotated;
+ }
+
+ float4 transform(float4 input, float4 pos, float4 rotation, float4 scale)
+ {
+ input.rgb *= (scale.xyz * scale.w);
+ input = float4(
+ rotate_with_quaternion(input.xyz, rotation.xyz * rotation.w)
+ + (pos.xyz * pos.w),
+ input.w
+ );
+ return input;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
new file mode 100644
index 00000000..e59a970a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3a8206edf72bfce499874bec276e59fe
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
new file mode 100644
index 00000000..916f65eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
@@ -0,0 +1,130 @@
+#ifndef POI_METAL
+ #define POI_METAL
+
+ samplerCUBE _CubeMap;
+ float _SampleWorld;
+ POI_TEXTURE_NOSAMPLER(_MetallicMask);
+ POI_TEXTURE_NOSAMPLER(_SmoothnessMask);
+ float _Metallic;
+ float _InvertSmoothness;
+ float _Smoothness;
+ float _EnableMetallic;
+ float3 _MetalReflectionTint;
+ POI_TEXTURE_NOSAMPLER(_MetallicTintMap);
+
+ float3 finalreflections;
+ float metalicMap;
+ float3 reflection;
+ float roughness;
+ float lighty_boy_uwu_var;
+
+ bool shouldMetalHappenBeforeLighting()
+ {
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool probeExists = !(unity_SpecCube0_HDR.a == 0 && envSample.a == 0);
+ return probeExists && !float(0);
+ }
+
+ float3 fresnelRelflection(in float4 albedo)
+ {
+ half3 dotNV = 1 - abs(poiLight.nDotV);
+ half f = dotNV * dotNV * dotNV * dotNV;
+ //f *= i_sold.fresnel;
+ return lerp(lerp(DielectricSpec.rgb, albedo.rgb, metalicMap), saturate(1 - roughness + metalicMap), f);
+ }
+
+ void calculateMetallicness()
+ {
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ }
+
+ void ApplyMetallics(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflection = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflection = probe0;
+ }
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+
+ void ApplyMetallicsFake(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+ reflection = texCUBElod(_CubeMap, float4(poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
new file mode 100644
index 00000000..7c1c23a2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3d5a8692447d20444932f8c27d79e892
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
new file mode 100644
index 00000000..8bb16398
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
@@ -0,0 +1,77 @@
+#ifndef POI_MIRROR
+ #define POI_MIRROR
+
+ float _Mirror;
+ float _EnableMirrorTexture;
+ POI_TEXTURE_NOSAMPLER(_MirrorTexture);
+
+
+ void applyMirrorRenderVert(inout float4 vertex)
+ {
+
+ if (float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ void applyMirrorRenderFrag()
+ {
+
+ if(float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ #if(defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ void applyMirrorTexture(inout float4 mainTexture)
+ {
+
+ if(float(0))
+ {
+ if(IsInMirror())
+ {
+ mainTexture = POI2D_SAMPLER_PAN(_MirrorTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ }
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
new file mode 100644
index 00000000..0ac95610
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 490c788c333b05748a6a4d0c0864c1a5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
new file mode 100644
index 00000000..62e63c91
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
@@ -0,0 +1,107 @@
+float _OutlineRimLightBlend;
+float _OutlineLit;
+float _OutlineTintMix;
+float2 _MainTexPan;
+float _MainTextureUV;
+
+float4 frag(v2f i, uint facing: SV_IsFrontFace): COLOR
+{
+ float4 finalColor = 1;
+
+ if (float(0))
+ {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ float3 finalEmission = 0;
+ float4 albedo = 1;
+
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ float3 uselessData0;
+ float3 uselessData1;
+ initTextureData(albedo, mainTexture, uselessData0, uselessData1, detailMask);
+
+
+ fixed4 col = mainTexture;
+ float alphaMultiplier = smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(getCameraPosition(), i.worldPos));
+ float OutlineMask = tex2D(_OutlineMask, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0)).r;
+ clip(OutlineMask * float(0) - 0.001);
+
+ col = col * 0.00000000001 + tex2D(_OutlineTexture, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineTexture) + _Time.x * float4(0,0,0,0) );
+ col.a *= albedo.a;
+ col.a *= alphaMultiplier;
+
+ #ifdef POI_RANDOM
+ col.a *= i.angleAlpha;
+ #endif
+
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ col.a *= float4(1,1,1,1).a;
+
+
+ if(float(0) == 1)
+ {
+ applyDithering(col);
+ }
+
+ clip(col.a - float(0.5));
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+
+ if(float(0) == 1)
+ {
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ col.rgb = mainTexture.rgb;
+ }
+ else if(float(0) == 2)
+ {
+ col.rgb = lerp(col.rgb, poiLight.color, float(0));
+ }
+ col.rgb *= float4(1,1,1,1).rgb;
+
+ if(float(0) == 1)
+ {
+ col.rgb = lerp(col.rgb, mainTexture.rgb, float(0));
+ }
+
+ finalColor = col;
+
+ #ifdef POI_LIGHTING
+
+ if(float(1))
+ {
+ finalColor.rgb *= calculateFinalLighting(finalColor.rgb, finalColor);
+ }
+ #endif
+ finalColor.rgb += (col.rgb * float(0));
+ }
+ else
+ {
+ clip(-1);
+ }
+ return finalColor;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
new file mode 100644
index 00000000..75dfddcb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9817b97fda9b8e34884c40251952a70e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
new file mode 100644
index 00000000..900e9e43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
@@ -0,0 +1,105 @@
+#ifndef OutlineVert
+ #define OutlineVert
+
+ #include "CGI_PoiV2F.cginc"
+
+ float _OutlineMode;
+ float4 _OutlinePersonaDirection;
+ float4 _OutlineDropShadowOffset;
+ float _OutlineUseVertexColors;
+ float _OutlineFixedSize;
+ float _commentIfZero_EnableOutlinePass;
+
+ sampler2D _OutlineMask; float4 _OutlineMask_ST; float2 _OutlineMaskPan; float _OutlineMaskUV;
+ v2f vert(appdata v)
+ {
+
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+
+ float2 uvArray[4];
+ uvArray[0] = o.uv0.xy;
+ uvArray[1] = o.uv0.zw;
+ uvArray[2] = o.uv1.xy;
+ uvArray[3] = o.uv1.zw;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ o.uv0.xy = v.uv0 + _OutlineGlobalPan.xy * _Time.y;
+ float outlineMask = 1;
+
+ outlineMask = poiMax(tex2Dlod(_OutlineMask, float4(TRANSFORM_TEX(uvArray[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0), 0, 0)).rgb);
+
+ if (float(0) == 2)
+ {
+ outlineMask *= v.color.r;
+ }
+
+
+ if(float(0) != 1)
+ {
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ }
+ else
+ {
+ o.normal = UnityObjectToWorldNormal(v.color);
+ }
+
+
+ half offsetMultiplier = 1;
+ half distanceOffset = 1;
+
+ if(float(0))
+ {
+ distanceOffset *= distance(_WorldSpaceCameraPos, mul(unity_ObjectToWorld, v.vertex).xyz);
+ }
+
+ float3 offset = o.normal * (float(0) * float(0) / 100) * outlineMask * distanceOffset;
+
+
+ if(float(0) == 2)
+ {
+ float3 lightDirection = poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ offsetMultiplier = saturate(dot(lightDirection, o.normal));
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 3)
+ {
+ half3 viewNormal = mul((float3x3)UNITY_MATRIX_V, o.normal);
+ offsetMultiplier = saturate(dot(viewNormal.xy, normalize(float4(1,0,0,0).xy)));
+
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 4)
+ {
+ offset = mul((float3x3)transpose(UNITY_MATRIX_V), float4(1,0,0,0));
+ offset *= distanceOffset;
+ }
+
+ o.worldPos = mul(unity_ObjectToWorld, v.vertex) + float4(offset, 0);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.pos = UnityWorldToClipPos(o.worldPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0);
+ UNITY_TRANSFER_FOG(o, o.pos);
+ return o;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
new file mode 100644
index 00000000..53111a3f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 359d57281007fbf4e9ca8d48db4f4024
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
new file mode 100644
index 00000000..da64a89d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
@@ -0,0 +1,63 @@
+#ifndef PANOSPHERE
+ #define PANOSPHERE
+
+ sampler2D _PanosphereTexture; float4 _PanosphereTexture_ST;
+ POI_TEXTURE_NOSAMPLER(_PanoMask);
+ float _PanoEmission;
+ float _PanoBlend;
+ float4 _PanosphereColor;
+ float3 _PanospherePan;
+ float _PanoToggle;
+ float _PanoCubeMapToggle;
+ float _PanoInfiniteStereoToggle;
+ samplerCUBE _PanoCubeMap; half4 _PanoCubeMap_HDR;
+
+ float3 panoColor;
+ float panoMask;
+
+ float2 projectIt(float3 coords)
+ {
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude + _Time.y * float4(0,0,0,0).x, latitude + _Time.y * float4(0,0,0,0).y) * float2(1.0 / UNITY_PI, 1.0 / UNITY_PI);
+ sphereCoords = float2(1.0, 1.0) - sphereCoords;
+ return(sphereCoords + float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).xy) * float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).zw;
+ }
+
+ void applyPanosphereColor(inout float4 albedo, inout float3 panosphereEmission)
+ {
+ panoMask = POI2D_SAMPLER_PAN(_PanoMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskPanosphere != 4)
+ {
+ panoMask *= blackLightMask[_BlackLightMaskPanosphere];
+ }
+ #endif
+
+
+ if(float(0))
+ {
+ float3 cubeUV = mul(poiRotationMatrixFromAngles(float4(0,0,0,0).xyz * _Time.y), float4(-poiCam.viewDir, 1));
+ half4 cubemap = texCUBE(_PanoCubeMap, cubeUV);
+ panoColor = DecodeHDR(cubemap, _PanoCubeMap_HDR);
+ }
+ else
+ {
+ float2 uv = projectIt(normalize(lerp(getCameraPosition().xyz, poiCam.worldPos.xyz, float(0)) - poiMesh.worldPos.xyz) * - 1);
+
+ float2 ddxuv = ddx(uv);
+ float2 ddyuv = ddy(uv);
+ if(any(fwidth(uv) > .5))
+ {
+ ddxuv = ddyuv = 0.001;
+ }
+ panoColor = tex2D(_PanosphereTexture, TRANSFORM_TEX(uv, _PanosphereTexture), ddxuv, ddyuv).rgb * float4(1,1,1,1).rgb;
+ }
+ panosphereEmission = panoColor * float(0) * panoMask * float(0);
+ albedo.rgb = lerp(albedo.rgb, panoColor, float(0) * panoMask);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
new file mode 100644
index 00000000..9f00a7aa
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6f427afa9af214841a32f9dc3fdbe9f3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
new file mode 100644
index 00000000..6cd94900
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
@@ -0,0 +1,143 @@
+#ifndef POI_PARALLAX
+ #define POI_PARALLAX
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxHeightMap); float4 _ParallaxHeightMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxHeightMapMask);
+ float2 _ParallaxHeightMapPan;
+ float _ParallaxStrength;
+ float _ParallaxHeightMapEnabled;
+ float _ParallaxUV;
+
+ //Internal
+ float _ParallaxInternalMapEnabled;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxInternalMap); float4 _ParallaxInternalMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxInternalMapMask);
+ float _ParallaxInternalIterations;
+ float _ParallaxInternalMinDepth;
+ float _ParallaxInternalMaxDepth;
+ float _ParallaxInternalMinFade;
+ float _ParallaxInternalMaxFade;
+ float4 _ParallaxInternalMinColor;
+ float4 _ParallaxInternalMaxColor;
+ float4 _ParallaxInternalPanSpeed;
+ float4 _ParallaxInternalPanDepthSpeed;
+ float _ParallaxInternalHeightmapMode;
+ float _ParallaxInternalHeightFromAlpha;
+
+ float GetParallaxHeight(float2 uv)
+ {
+ return clamp(UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxHeightMap, _MainTex, TRANSFORM_TEX(uv, _ParallaxHeightMap) + _Time.x * float4(0,0,0,0)).g, 0, .99999);
+ }
+ /*
+ float2 ParallaxOffset(float2 viewDir)
+ {
+ float height = GetParallaxHeight();
+ height -= 0.5;
+ height *= float(0);
+ return viewDir * height;
+ }
+ */
+ float2 ParallaxRaymarching(float2 viewDir)
+ {
+ float2 uvOffset = 0;
+ float stepSize = 0.1;
+ float2 uvDelta = viewDir * (stepSize * float(0));
+
+ float stepHeight = 1;
+ float surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)]);
+
+
+ float2 prevUVOffset = uvOffset;
+ float prevStepHeight = stepHeight;
+ float prevSurfaceHeight = surfaceHeight;
+
+ for (int i = 1; i < 10 && stepHeight > surfaceHeight; i ++)
+ {
+ prevUVOffset = uvOffset;
+ prevStepHeight = stepHeight;
+ prevSurfaceHeight = surfaceHeight;
+
+ uvOffset -= uvDelta;
+ stepHeight -= stepSize;
+ surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)] + uvOffset);
+ }
+
+ float prevDifference = prevStepHeight - prevSurfaceHeight;
+ float difference = surfaceHeight - stepHeight;
+ float t = prevDifference / (prevDifference + difference);
+ uvOffset = prevUVOffset -uvDelta * t;
+
+ return uvOffset *= POI2D_SAMPLER_PAN(_ParallaxHeightMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+
+ void calculateandApplyParallax()
+ {
+
+ if (float(0))
+ {
+ float2 parallaxOffset = ParallaxRaymarching(poiCam.tangentViewDir.xy);
+
+ if(float(0) == 0)
+ {
+ poiMesh.uv[0] += parallaxOffset;
+ }
+
+ if(float(0) == 1)
+ {
+ poiMesh.uv[1] += parallaxOffset;
+ }
+
+ if(float(0) == 2)
+ {
+ poiMesh.uv[2] += parallaxOffset;
+ }
+
+ if(float(0) == 3)
+ {
+ poiMesh.uv[3] += parallaxOffset;
+ }
+ }
+ }
+
+ void calculateAndApplyInternalParallax(inout float4 finalColor)
+ {
+ #if defined(_PARALLAXMAP)
+
+ if(float(0))
+ {
+ float3 parallax = 0;
+
+ for (int j = float(1); j > 0; j --)
+ {
+ float ratio = (float)j / float(1);
+ float2 parallaxOffset = _Time.y * (float4(0,0,0,0) + (1 - ratio) * float4(0,0,0,0));
+ float fade = lerp(float(0), float(1), ratio);
+ float4 parallaxColor = UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxInternalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _ParallaxInternalMap) + lerp(float(0), float(1), ratio) * - poiCam.tangentViewDir.xy + parallaxOffset);
+ float3 parallaxTint = lerp(float4(1,1,1,1), float4(1,1,1,1), ratio);
+ float parallaxHeight;
+ if(float(0))
+ {
+ parallaxTint *= parallaxColor.rgb;
+ parallaxHeight = parallaxColor.a;
+ }
+ else
+ {
+ parallaxHeight = parallaxColor.r;
+ }
+ //float parallaxColor *= lerp(float4(1,1,1,1), float4(1,1,1,1), 1 - ratio);
+
+ if (float(0) == 1)
+ {
+ parallax = lerp(parallax, parallaxTint * fade, parallaxHeight >= 1 - ratio);
+ }
+ else
+ {
+ parallax += parallaxTint * parallaxHeight * fade;
+ }
+ }
+ //parallax /= float(1);
+ finalColor.rgb += parallax * POI2D_SAMPLER_PAN(_ParallaxInternalMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
new file mode 100644
index 00000000..eb969c5e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 99381fdda5ffce84499b063e51c42561
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
new file mode 100644
index 00000000..81230e8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
@@ -0,0 +1,233 @@
+/*
+USED---------------------------------------------
+"_PARALLAXMAP",
+"_REQUIRE_UV2",
+"_SUNDISK_NONE",
+"_DETAIL_MULX2",
+"_GLOSSYREFLECTIONS_OFF",
+"_METALLICGLOSSMAP",
+"_COLORADDSUBDIFF_ON",
+"_SPECGLOSSMAP",
+"_TERRAIN_NORMAL_MAP",
+"_SUNDISK_SIMPLE",
+"_EMISSION",
+"_COLORCOLOR_ON",
+"_COLOROVERLAY_ON",
+"_ALPHAMODULATE_ON",
+"_SUNDISK_HIGH_QUALITY",
+"_MAPPING_6_FRAMES_LAYOUT",
+"_NORMALMAP"
+"EFFECT_BUMP",
+"BLOOM",
+"BLOOM_LOW",
+"GRAIN",
+"DEPTH_OF_FIELD",
+"USER_LUT",
+"CHROMATIC_ABERRATION_LOW",
+"BLOOM_LENS_DIRT",
+"_FADING_ON",
+"CHROMATIC_ABERRATION",
+"DISTORT",
+"GEOM_TYPE_BRANCH",
+"_SPECULARHIGHLIGHTS_OFF",
+"_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A",
+"EFFECT_HUE_VARIATION",
+"GEOM_TYPE_LEAF",
+"GEOM_TYPE_MESH",
+"FINALPASS",
+"AUTO_EXPOSURE"
+"VIGNETTE",
+"VIGNETTE_MASKED",
+"COLOR_GRADING_HDR",
+
+UNUSED-------------------------------------------
+"_ALPHABLEND_ON",
+"_ALPHAPREMULTIPLY_ON",
+"_ALPHATEST_ON",
+"GEOM_TYPE_BRANCH_DETAIL",
+"GEOM_TYPE_FROND",
+"PIXELSNAP_ON",
+"SOFTPARTICLES_ON",
+"DITHERING",
+"TONEMAPPING_NEUTRAL",
+"TONEMAPPING_FILMIC",
+"TONEMAPPING_ACES",
+"TONEMAPPING_CUSTOM",
+"DEPTH_OF_FIELD_COC_VIEW",
+"COLOR_GRADING",
+"COLOR_GRADING_LOG_VIEW",
+"VIGNETTE_CLASSIC",
+"COLOR_GRADING_HDR_3D",
+
+DO NOT USE -----------------------------------------
+"BILLBOARD_FACE_CAMERA_POS",
+*/
+
+
+#ifndef POI_PASS
+ #define POI_PASS
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #ifdef POI_META_PASS
+ #include "UnityMetaPass.cginc"
+ #endif
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+
+ #include "CGI_PoiSpawnInVert.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+
+ #ifdef BLOOM_LOW
+ #include "CGI_PoiBulge.cginc"
+ #endif
+
+ #include "CGI_PoiVert.cginc"
+
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+
+ #include "CGI_PoiDithering.cginc"
+
+ #ifdef _PARALLAXMAP
+ #include "CGI_PoiParallax.cginc"
+ #endif
+
+ #ifdef USER_LUT
+ #include "CGI_PoiUVDistortion.cginc"
+ #endif
+
+ #ifdef VIGNETTE
+ #include "CGI_PoiRGBMask.cginc"
+ #endif
+
+ #include "CGI_PoiData.cginc"
+
+ #ifdef _SPECULARHIGHLIGHTS_OFF
+ #include "CGI_PoiBlackLight.cginc"
+ #endif
+
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+
+ #ifdef DEPTH_OF_FIELD
+ #include "CGI_PoiHologram.cginc"
+ #endif
+
+ #ifdef BLOOM_LENS_DIRT
+ #include "CGI_PoiIridescence.cginc"
+ #endif
+
+
+ #ifdef FUR
+ #include "CGI_PoiFur.cginc"
+ #include "CGI_PoiGeomFur.cginc"
+ #endif
+
+ #ifdef VIGNETTE_MASKED
+ #include "CGI_PoiLighting.cginc"
+ #endif
+
+ #include "CGI_PoiMainTex.cginc"
+
+ #ifdef GEOM_TYPE_BRANCH
+ #include "CGI_PoiDecal.cginc"
+ #endif
+
+ #ifdef CHROMATIC_ABERRATION
+ #include "CGI_PoiVoronoi.cginc"
+ #endif
+
+ #ifdef _DETAIL_MULX2
+ #include "CGI_PoiPanosphere.cginc"
+ #endif
+
+ #ifdef EFFECT_BUMP
+ #include "CGI_PoiMSDF.cginc"
+ #endif
+
+ #ifdef GRAIN
+ #include "CGI_PoiDepthColor.cginc"
+ #endif
+
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _GLOSSYREFLECTIONS_OFF
+ #include "CGI_PoiRimLighting.cginc"
+ #endif
+
+ #ifdef _MAPPING_6_FRAMES_LAYOUT
+ #include "CGI_PoiEnvironmentalRimLighting.cginc"
+ #endif
+
+ #ifdef _METALLICGLOSSMAP
+ #include "CGI_PoiMetal.cginc"
+ #endif
+
+ #ifdef _COLORADDSUBDIFF_ON
+ #include "CGI_PoiMatcap.cginc"
+ #endif
+
+ #ifdef _SPECGLOSSMAP
+ #include "CGI_PoiSpecular.cginc"
+ #endif
+
+ #ifdef BLOOM
+ #include "CGI_PoiVideo.cginc"
+ #endif
+
+ #ifdef _TERRAIN_NORMAL_MAP
+ #include "CGI_PoiSubsurfaceScattering.cginc"
+ #endif
+
+ #include "CGI_PoiBlending.cginc"
+ #include "CGI_PoiGrab.cginc"
+
+ #ifdef _SUNDISK_SIMPLE
+ #include "CGI_PoiGlitter.cginc"
+ #endif
+
+ #ifdef _EMISSION
+ #include "CGI_PoiEmission.cginc"
+ #endif
+
+ #ifdef _COLORCOLOR_ON
+ #include "CGI_PoiClearCoat.cginc"
+ #endif
+
+ #include "CGI_PoiAlphaToCoverage.cginc"
+
+ #ifdef _COLOROVERLAY_ON
+ #include "CGI_PoiDebug.cginc"
+ #endif
+ #include "CGI_PoiFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
new file mode 100644
index 00000000..156e0602
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 05bca3a864a554943a032dc6c70a1eba
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
new file mode 100644
index 00000000..5e365972
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
@@ -0,0 +1,26 @@
+#ifndef POI_PASS_OUTLINE
+ #define POI_PASS_OUTLINE
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiOutlineVert.cginc"
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiLighting.cginc"
+ #include "CGI_PoiMainTex.cginc"
+ #include "CGI_PoiData.cginc"
+ #include "CGI_PoiDithering.cginc"
+ #include "CGI_PoiOutlineFrag.cginc"
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
new file mode 100644
index 00000000..b6165647
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: dda615d49d95f134f9a1d52a0d5cce89
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
new file mode 100644
index 00000000..d21a5d4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
@@ -0,0 +1,44 @@
+#ifndef POI_PASS_SHADOW
+ #define POI_PASS_SHADOW
+
+ #pragma multi_compile_shadowcaster
+ #include "UnityCG.cginc"
+ #include "UnityShaderVariables.cginc"
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiShadowIncludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiMirror.cginc"
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+ #include "CGI_PoiData.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+ #include "CGI_PoiDithering.cginc"
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+ #include "CGI_PoiSpawnInVert.cginc"
+ #include "CGI_PoiShadowVert.cginc"
+ #include "CGI_PoiShadowFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
new file mode 100644
index 00000000..cf579b45
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3079291e1c35f464daed0b6dc50b0350
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
new file mode 100644
index 00000000..d4cd1697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
@@ -0,0 +1,131 @@
+#ifndef POI_RGBMASK
+ #define POI_RGBMASK
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RGBMask); float4 _RGBMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RedTexure); float4 _RedTexure_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_GreenTexture); float4 _GreenTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BlueTexture); float4 _BlueTexture_ST;
+
+ #ifdef GEOM_TYPE_MESH
+ POI_NORMAL_NOSAMPLER(_RgbNormalR);
+ POI_NORMAL_NOSAMPLER(_RgbNormalG);
+ POI_NORMAL_NOSAMPLER(_RgbNormalB);
+ float _RgbNormalsEnabled;
+ #endif
+
+ float4 _RedColor;
+ float4 _GreenColor;
+ float4 _BlueColor;
+
+ float4 _RGBMaskPanning;
+ float4 _RGBRedPanning;
+ float4 _RGBGreenPanning;
+ float4 _RGBBluePanning;
+
+ float _RGBBlendMultiplicative;
+
+ float _RGBMaskUV;
+ float _RGBRed_UV;
+ float _RGBGreen_UV;
+ float _RGBBlue_UV;
+ float _RGBUseVertexColors;
+ float _RGBNormalBlend;
+
+ static float3 rgbMask;
+
+ void calculateRGBNormals(inout half3 mainTangentSpaceNormal)
+ {
+ #ifdef GEOM_TYPE_MESH
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+
+ if(float(0))
+ {
+
+ if(float(0) == 0)
+ {
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.r);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.g);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.b);
+ }
+ return;
+ }
+ else
+ {
+ half3 newNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0) * rgbMask.r);
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.g);
+ normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.b);
+ mainTangentSpaceNormal = BlendNormals(newNormal, mainTangentSpaceNormal);
+ return;
+ }
+ }
+ #endif
+ }
+
+ float3 calculateRGBMask(float3 baseColor)
+ {
+ //If RGB normals are in use this data will already exist
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+ float4 red = POI2D_SAMPLER_PAN(_RedTexure, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 green = POI2D_SAMPLER_PAN(_GreenTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 blue = POI2D_SAMPLER_PAN(_BlueTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+
+ if(float(0))
+ {
+ float3 RGBColor = 1;
+ RGBColor = lerp(RGBColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ baseColor *= RGBColor;
+ }
+ else
+ {
+ baseColor = lerp(baseColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ }
+
+ return baseColor;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
new file mode 100644
index 00000000..044e3860
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2eeee3252a754884dab3695e76a77fdd
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
new file mode 100644
index 00000000..137ef6de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
@@ -0,0 +1,4 @@
+#ifndef POI_RNG
+ #define POI_RNG
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
new file mode 100644
index 00000000..802706e2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c4111282b7962e04a832f7357a812a7a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
new file mode 100644
index 00000000..11f3eea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_RANDOM
+ #define POI_RANDOM
+
+ float _EnableRandom;
+ float m_start_Angle;
+ float _AngleType;
+ float3 _AngleForwardDirection;
+ float _CameraAngleMin;
+ float _CameraAngleMax;
+ float _ModelAngleMin;
+ float _ModelAngleMax;
+ float _AngleMinAlpha;
+ float _AngleCompareTo;
+
+ float ApplyAngleBasedRendering(float3 modelPos, float3 worldPos)
+ {
+ half cameraAngleMin = float(45) / 180;
+ half cameraAngleMax = float(90) / 180;
+ half modelAngleMin = float(45) / 180;
+ half modelAngleMax = float(90) / 180;
+ float3 pos = float(0) == 0 ? modelPos : worldPos;
+ half3 cameraToModelDirection = normalize(pos - getCameraPosition());
+ half3 modelForwardDirection = normalize(mul(unity_ObjectToWorld, normalize(float4(0,0,1,0))));
+ half cameraLookAtModel = remapClamped(.5 * dot(cameraToModelDirection, getCameraForward()) + .5, cameraAngleMax, cameraAngleMin, 0, 1);
+ half modelLookAtCamera = remapClamped(.5 * dot(-cameraToModelDirection, modelForwardDirection) + .5, modelAngleMax, modelAngleMin, 0, 1);
+ if (float(0) == 0)
+ {
+ return max(cameraLookAtModel, float(0));
+ }
+ else if(float(0) == 1)
+ {
+ return max(modelLookAtCamera, float(0));
+ }
+ else if(float(0) == 2)
+ {
+ return max(cameraLookAtModel * modelLookAtCamera, float(0));
+ }
+ return 1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
new file mode 100644
index 00000000..8536bf5f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: be50183546e69be4d89a3ff70463d024
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
new file mode 100644
index 00000000..d4571c0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
@@ -0,0 +1,47 @@
+#ifndef POI_RIM
+ #define POI_RIM
+
+ float4 _RimLightColor;
+ float _RimLightingInvert;
+ float _RimWidth;
+ float _RimStrength;
+ float _RimSharpness;
+ float _RimLightColorBias;
+ float _ShadowMix;
+ float _ShadowMixThreshold;
+ float _ShadowMixWidthMod;
+ float _EnableRimLighting;
+ float _RimBrighten;
+ float _RimLightNormal;
+
+ POI_TEXTURE_NOSAMPLER(_RimTex);
+ POI_TEXTURE_NOSAMPLER(_RimMask);
+ POI_TEXTURE_NOSAMPLER(_RimWidthNoiseTexture);
+
+ float _RimWidthNoiseStrength;
+
+ float4 rimColor = float4(0, 0, 0, 0);
+ float rim = 0;
+
+ void applyRimLighting(inout float4 albedo, inout float3 rimLightEmission)
+ {
+ float rimNoise = POI2D_SAMPLER_PAN(_RimWidthNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimNoise = (rimNoise - .5) * float(0.1);
+
+ float viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+
+ if (float(0))
+ {
+ viewDotNormal = 1 - abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+ }
+ float rimWidth = float(0.8);
+ rimWidth -= rimNoise;
+ float rimMask = POI2D_SAMPLER_PAN(_RimMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimColor = POI2D_SAMPLER_PAN(_RimTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ rimWidth = max(lerp(rimWidth, rimWidth * lerp(0, 1, poiLight.lightMap - float(0.5)) * float(0.5), float(0)),0);
+ rim = 1 - smoothstep(min(float(0.25), rimWidth), rimWidth, viewDotNormal);
+ rim *= float4(1,1,1,1).a * rimColor.a * rimMask;
+ rimLightEmission = rim * lerp(albedo, rimColor, float(0)) * float(0);
+ albedo.rgb = lerp(albedo.rgb, lerp(albedo.rgb, rimColor, float(0)) + lerp(albedo.rgb, rimColor, float(0)) * float(0), rim);
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
new file mode 100644
index 00000000..d20d1a74
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 11181f87d1a982d4db5afb90ba4eecac
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
new file mode 100644
index 00000000..16701f61
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
@@ -0,0 +1,116 @@
+#ifndef SHADOW_FRAG
+ #define SHADOW_FRAG
+
+ float2 _MainDistanceFade;
+ float _ForceOpaque;
+ float _MainShadowClipMod;
+ float2 _AlphaMaskPan;
+ float _AlphaMaskUV;
+ sampler3D _DitherMaskLOD;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+
+ half4 fragShadowCaster(
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ V2FShadow i, uint facing: SV_IsFrontFace
+ #endif
+ ): SV_Target
+ {
+ poiMesh.uv[0] = i.uv;
+ poiMesh.uv[1] = i.uv1;
+ poiMesh.uv[2] = i.uv2;
+ poiMesh.uv[3] = i.uv3;
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+
+
+ //Possible Bug with clip
+ float clipValue = clamp(float(0.5) + float(0), - .001, 1.001);
+
+ poiMesh.vertexColor = saturate(i.vertexColor);
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+ #if defined(UNITY_STANDARD_USE_SHADOW_UVS)
+
+ half4 alpha = mainTexture;
+
+
+ if (float(0))
+ {
+ if(IsInMirror())
+ {
+ alpha.a = UNITY_SAMPLE_TEX2D_SAMPLER(_MirrorTexture, _MainTex, TRANSFORM_TEX(i.uv, _MirrorTexture)).a;
+ }
+ }
+
+
+ alpha.a *= smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(i.modelPos, _WorldSpaceCameraPos));
+ half alphaMask = POI2D_PAN(_AlphaMask, poiMesh.uv[float(0)], float4(0,0,0,0));
+ alpha.a *= alphaMask;
+ alpha.a *= float4(1,1,1,1).a + .0001;
+ alpha.a += float(0);
+ alpha.a = saturate(alpha.a);
+
+
+ if(float(0) == 0)
+ {
+ alpha.a = 1;
+ }
+
+
+ if(float(0) == 1)
+ {
+ applyShadowDithering(alpha.a, calcScreenUVs(i.grabPos).xy);
+ }
+
+ #ifdef POI_DISSOLVE
+ float3 fakeEmission = 1;
+ calculateDissolve(alpha, fakeEmission);
+ #endif
+
+ if(float(0) == 1)
+ {
+ clip(alpha.a - 0.001);
+ }
+
+ /*
+ return poiMesh.vertexColor.g;
+
+ #ifdef POI_RANDOM
+ alpha.a *= i.angleAlpha;
+ #endif
+
+
+ if(float(0) >= 1)
+ {
+ applySpawnInShadow(uv[0], i.localPos);
+
+ #if defined(POI_FLIPBOOK)
+ alpha.a *= applyFlipbookAlphaToShadow(uv[float(0)]);
+ #endif
+ }
+ */
+
+ if (float(0) == 1)
+ {
+ clip(alpha.a - clipValue);
+ }
+
+
+ if(float(0) > 1)
+ {
+ float dither = tex3D(_DitherMaskLOD, float3(i.pos.xy * .25, alpha.a * 0.9375)).a;
+ clip(dither - 0.01);
+ }
+
+ #endif
+ SHADOW_CASTER_FRAGMENT(i)
+ }
+
+ #endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
new file mode 100644
index 00000000..0f30537f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: bad7d57449335b2499ad9112c129a0d4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
new file mode 100644
index 00000000..fd8f19a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
@@ -0,0 +1,41 @@
+#ifndef SHADOW_INCLUDES
+ #define SHADOW_INCLUDES
+
+ #define UNITY_STANDARD_USE_SHADOW_UVS 1
+
+ float4 _Color;
+ sampler2D _AlphaMask; float4 _AlphaMask_ST;
+
+ struct VertexInputShadow
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ struct V2FShadow
+ {
+ V2F_SHADOW_CASTER_NOPOS
+ float4 pos: SV_POSITION;
+ float2 uv: TEXCOORD1;
+ float2 uv1: TEXCOORD2;
+ float2 uv2: TEXCOORD3;
+ float2 uv3: TEXCOORD4;
+ float3 modelPos: TEXCOORD5;
+ float4 worldPos: TEXCOORD6;
+ float4 localPos: TEXCOORD7;
+ float3 angleAlpha: TEXCOORD8;
+ float4 grabPos: TEXCOORD9;
+ fixed3 barycentricCoordinates: TEXCOORD10;
+ float4 vertexColor: TEXCOORD11;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
new file mode 100644
index 00000000..830b9c54
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 36e10f19f4681da47b2b6e7aa2edceb8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
new file mode 100644
index 00000000..f0b7184a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
@@ -0,0 +1,80 @@
+float _EnableTouchGlow;
+float _EnableBulge;
+float _VertexManipulationHeightUV;
+
+V2FShadow vertShadowCaster(VertexInputShadow v)
+{
+ V2FShadow o;
+ UNITY_SETUP_INSTANCE_ID(v);
+
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(V2FShadow, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.uv = v.uv0;
+ o.uv1 = v.uv1;
+ o.uv2 = v.uv2;
+ o.uv3 = v.uv3;
+
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, v.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.vertexColor = v.color;
+
+
+ if(_EnableTouchGlow || _EnableBulge)
+ {
+ o.pos = UnityObjectToClipPos(float3(0, 0, -5));
+ o.localPos.xyz = float3(0, 0, -5);
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ }
+
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+
+ o.pos = UnityClipSpaceShadowCasterPos(o.localPos, v.normal);
+ o.pos = UnityApplyLinearShadowBias(o.pos);
+
+ return o;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
new file mode 100644
index 00000000..ac580958
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 64a43c29aae8e7b478dbe5cbefa6df9a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
new file mode 100644
index 00000000..0c18d1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+ #endif
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_SpawnInNoise); float4 _SpawnInNoise_ST;
+
+ float calculateGradientValueFrag(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnIn(inout float4 finalColor, inout float3 spawnInEmission, float2 uv, float3 localPos)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ spawnInEmission = saturate(inverseGradient + _SpawnInAlpha + _SpawnInEmissionOffset +noise - 1) * _SpawnInEmissionColor;
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+
+ void applySpawnInShadow(float2 uv, float3 localPos)
+ {
+
+ if(_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float alpha = gradient - _SpawnInAlpha - noise + length(_SpawnInVertOffset);
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
new file mode 100644
index 00000000..a8a24618
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 94ef552cbb90b424cb0e196ff6a2f7c7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
new file mode 100644
index 00000000..fdcc457f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
@@ -0,0 +1,40 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+
+ #endif
+ //sampler2D _SpawnInNoiseVert; float4 _SpawnInNoiseVert_ST;
+
+ float calculateGradientValueVert(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnInVert(inout float4 worldPos, inout float4 localPos, float2 uv)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = 0;
+ float gradient = calculateGradientValueVert(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ worldPos.xyz += saturate(inverseGradient + _SpawnInAlpha + _SpawnInVertOffsetOffset -1) * float3(0, _SpawnInVertOffset, 0);
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+ //float noise = tex2Dlod(_SpawnInNoise, float4(TRANSFORM_TEX(uv, _SpawnInNoise))).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
new file mode 100644
index 00000000..bd89e20a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8365a65730122314d8340a9607ad618d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
new file mode 100644
index 00000000..f5287465
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
@@ -0,0 +1,488 @@
+#ifndef POI_SPECULAR
+ #define POI_SPECULAR
+ float _SpecWhatTangent;
+ float _SpecularType;
+ float _SmoothnessFrom;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap);
+ fixed _CenterOutSpecColor;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro);
+ float _SpecularAnisoJitterMirrored;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoFakeUV);
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask);
+ float _SpecularAnisoJitterMicroMultiplier;
+ float _SpecularAnisoJitterMacroMultiplier;
+ float4 _SpecularTint;
+ float _SpecularSmoothness;
+ float _Spec1Offset;
+ float _Spec1JitterStrength;
+ float _Spec2Smoothness;
+ float _Spec2Offset;
+ float _Spec2JitterStrength;
+ float _AnisoUseTangentMap;
+ float _AnisoSpec1Alpha;
+ float _AnisoSpec2Alpha;
+ float _SpecularInvertSmoothness;
+ half _SpecularMetallic;
+ float _SpecularNormal;
+ float _SpecularNormal1;
+ // Toon
+ fixed _SpecularToonStart;
+ fixed _SpecularToonEnd;
+ half4 _SpecularToonInnerOuter;
+
+ float _EnableSpecular1;
+ float _SpecWhatTangent1;
+ float _SpecularType1;
+ float _SmoothnessFrom1;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro1);
+ float _SpecularAnisoJitterMirrored1;
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask1);
+ float _SpecularAnisoJitterMicroMultiplier1;
+ float _SpecularAnisoJitterMacroMultiplier1;
+ float4 _SpecularTint1;
+ float _SpecularSmoothness1;
+ float _Spec1Offset1;
+ float _Spec1JitterStrength1;
+ float _Spec2Smoothness1;
+ float _Spec2Offset1;
+ float _Spec2JitterStrength1;
+ float _AnisoUseTangentMap1;
+ float _AnisoSpec1Alpha1;
+ float _AnisoSpec2Alpha1;
+ float _SpecularInvertSmoothness1;
+ half _SpecularMetallic1;
+ // Toon
+ half4 _SpecularToonInnerOuter1;
+ fixed _SpecularToonStart1;
+ fixed _SpecularToonEnd1;
+
+ UnityIndirect ZeroIndirect()
+ {
+ UnityIndirect ind;
+ ind.diffuse = 0;
+ ind.specular = 0;
+ return ind;
+ }
+
+ // From unity just putting it here in case I want to mod it
+ half4 poiRealisticSpecular(half3 diffColor, half3 specColor, half oneMinusReflectivity, half smoothness,
+ float3 normal, float3 halfDir,
+ UnityLight light, UnityIndirect gi)
+ {
+ float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
+ #define UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV 0
+
+ #if UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV
+ half shiftAmount = dot(normal, poiCam.viewDir);
+ normal = shiftAmount < 0.0f ? normal + poiCam.viewDir * (-shiftAmount + 1e-5f): normal;
+ float nv = saturate(dot(normal, poiCam.viewDir));
+ #else
+ half nv = abs(dot(normal, poiCam.viewDir));
+ #endif
+
+ float nl = saturate(dot(normal, light.dir));
+ float nh = saturate(dot(normal, halfDir));
+
+ half lv = saturate(dot(light.dir, poiCam.viewDir));
+ half lh = saturate(dot(light.dir, halfDir));
+
+ half diffuseTerm = DisneyDiffuse(nv, nl, lh, perceptualRoughness) * nl;
+
+ float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
+
+ roughness = max(roughness, 0.002);
+ float V = SmithJointGGXVisibilityTerm(nl, nv, roughness);
+ float D = GGXTerm(nh, roughness);
+
+ float specularTerm = V * D * UNITY_PI;
+
+ #ifdef UNITY_COLORSPACE_GAMMA
+ specularTerm = sqrt(max(1e-4h, specularTerm));
+ #endif
+
+ specularTerm = max(0, specularTerm * nl);
+ #if defined(_POI_SPECULARHIGHLIGHTS_OFF)
+ specularTerm = 0.0;
+ #endif
+
+ half surfaceReduction;
+ #ifdef UNITY_COLORSPACE_GAMMA
+ surfaceReduction = 1.0 - 0.28 * roughness * perceptualRoughness;
+ #else
+ surfaceReduction = 1.0 / (roughness * roughness + 1.0);
+ #endif
+
+ specularTerm *= any(specColor) ? 1.0: 0.0;
+
+ half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
+ half3 color = diffColor * (gi.diffuse + light.color * diffuseTerm)
+ + specularTerm * light.color * FresnelTerm(specColor, lh)
+ + surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, nv);
+
+ return half4(color, 1);
+ }
+
+ half3 calculateRealisticSpecular(float4 albedo, float2 uv, float4 specularTint, float specularSmoothness, float invertSmoothness, float mixAlbedoWithTint, float4 specularMap, float3 specularLight, float3 normal, float attenuation, float3 lightDirection, float nDotL, float3 halfDir)
+ {
+ half oneMinusReflectivity;
+ half3 finalSpecular;
+ UnityLight unityLight;
+ unityLight.color = specularLight;
+ unityLight.dir = lightDirection;
+ unityLight.ndotl = nDotL;
+
+
+ if (float(1) == 0)
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularMap.rgb * specularTint.rgb, /*out*/ oneMinusReflectivity);
+ finalSpecular = poiRealisticSpecular(diffColor, specularMap.rgb, oneMinusReflectivity, specularMap.a * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ else
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularTint.rgb, /*out*/ oneMinusReflectivity);
+ float smoothness = max(max(specularMap.r, specularMap.g), specularMap.b);
+ finalSpecular = poiRealisticSpecular(diffColor, 1, oneMinusReflectivity, smoothness * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ finalSpecular *= lerp(1, albedo.rgb, mixAlbedoWithTint);
+ return finalSpecular;
+ }
+
+ half3 calculateToonSpecular(float4 albedo, float2 uv, float2 specularToonInnerOuter, float specularMixAlbedoIntoTint, float smoothnessFrom, float4 specularMap, float3 specularLight, float3 normal, float3 halfDir, float attenuation)
+ {
+ half3 finalSpecular = smoothstep(1 - specularToonInnerOuter.y, 1 - specularToonInnerOuter.x, dot(halfDir, normal)) * specularLight;
+
+ if (smoothnessFrom == 0)
+ {
+ finalSpecular.rgb *= specularMap.rgb * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ finalSpecular *= specularMap.a;
+ }
+ else
+ {
+ finalSpecular *= specularMap.r * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+ return finalSpecular;
+ }
+
+ float3 strandSpecular(float TdotL, float TdotV, float specPower, float nDotL)
+ {
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+ float Specular = saturate(nDotL) * pow(saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV), specPower);
+ half normalization = sqrt((specPower + 1) * ((specPower) + 1)) / (8 * pi);
+ Specular *= normalization;
+ return Specular;
+ }
+
+ half3 AnisotropicSpecular(
+ float specWhatTangent, float anisoUseTangentMap, float specularSmoothness, float spec2Smoothness,
+ float anisoSpec1Alpha, float anisoSpec2Alpha, float4 specularTint, float specularMixAlbedoIntoTint, float4 specularMap, float3 specularLight, float3 lightDirection, float3 halfDir, float nDotL, float jitter, float4 packedTangentMap, in float4 albedo)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ tangentDirectionMap += float(0) +jitter;
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+ half specPower = RoughnessToSpecPower(1.0 - specularSmoothness * specularMap.a);
+ half spec2Power = RoughnessToSpecPower(1.0 - spec2Smoothness * specularMap.a);
+ half Specular = 0;
+
+ float3 spec = strandSpecular(TdotL, TdotV, specPower, nDotL) * anisoSpec1Alpha;
+ float3 spec2 = strandSpecular(TdotL, TdotV, spec2Power, nDotL) * anisoSpec2Alpha;
+
+ return max(spec, spec2) * specularMap.rgb * specularTint.a * specularLight * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+
+ inline float3 toonAnisoSpecular(float specWhatTangent, float anisoUseTangentMap, float3 lightDirection, float halfDir, float4 specularMap, float nDotL, fixed gradientStart, fixed gradientEnd, float4 specColor, float4 finalColor, fixed metallic, float jitter, float mirrored, float4 packedTangentMap)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ if (!mirrored)
+ {
+ tangentDirectionMap += jitter;
+ }
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+
+ float specular = saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV);
+
+ fixed smoothAlpha = specular;
+ if(mirrored)
+ {
+ smoothAlpha = max(specular - jitter, 0);
+ }
+
+ specular = smoothstep(gradientStart, gradientEnd, smoothAlpha);
+
+ /*
+
+ if(_CenterOutSpecColor)
+ {
+ specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, clamp(float2(specular, specular), 0.01, .99), float4(0,0,0,0));
+ }
+ */
+
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+
+ return saturate(nDotL) * specular * poiLight.color * specColor * specularMap.rgb * lerp(1, finalColor, metallic) * specularMap.a;
+ }
+
+ inline float SpecularHQ(half roughness, half dotNH, half dotLH)
+ {
+ roughness = saturate(roughness);
+ roughness = max((roughness * roughness), 0.002);
+ half roughnessX2 = roughness * roughness;
+
+ half denom = dotNH * dotNH * (roughnessX2 - 1.0) + 1.0f;
+ half D = roughnessX2 / (3.14159 * denom * denom);
+
+ half k = roughness / 2.0f;
+ half k2 = k * k;
+ half invK2 = 1.0f - k2;
+
+ half vis = rcp(dotLH * dotLH * invK2 + k2);
+
+ float specTerm = vis * D;
+
+ return specTerm;
+ }
+
+ float3 calculateNewSpecular(in float3 specularMap, uint colorFrom, in float4 albedo, in float3 specularTint, in float specularMetallic, in float specularSmoothness, in half dotNH, in half dotLH, in float3 lightColor, in float attenuation)
+ {
+ float3 specColor = specularTint;
+ float metallic = specularMetallic;
+ float roughness = 1 - specularSmoothness;
+ float perceptualRoughness = roughness;
+ //float reflectInverse = DielectricSpec.a - metallic * DielectricSpec.a;
+ //float reflectivity = 1.0h - reflectInverse;
+ float3 specMapColor = lerp(specularMap, 1, colorFrom);
+ float3 specularColor = lerp(DielectricSpec.rgb * specMapColor, lerp(specularMap, albedo.rgb, colorFrom), metallic);
+ //albedo.rgb *= reflectInverse;
+ return clamp(specularColor * lightColor * attenuation * specularTint * SpecularHQ(perceptualRoughness, dotNH, dotLH), 0, lightColor * specularTint);
+ }
+
+ float3 calculateSpecular(in float4 albedo)
+ {
+ half3 finalSpecular = 0;
+ half3 finalSpecular1 = 0;
+ float4 realisticAlbedo = albedo;
+ float4 realisticAlbedo1 = albedo;
+ float4 specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half metallic = POI2D_SAMPLER_PAN(_SpecularMetallicMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ half specularMask = POI2D_SAMPLER_PAN(_SpecularMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float attenuation = saturate(poiLight.nDotL);
+ #ifdef POI_LIGHTING
+
+ if (float(0) && float(0) == 0 && float(0) == 1)
+ {
+ attenuation = poiLight.rampedLightMap;
+ }
+ #endif
+
+
+ if(float(1) == 1) // Realistic
+ {
+ if (float(1) == 1)
+ {
+ specularMap.a = specularMap.r;
+ specularMap.rgb = 1;
+ }
+
+ if(float(0))
+ {
+ specularMap.a = 1 - specularMap.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, attenuation);
+ #else
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic, jitter, float(0), packedTangentMap);
+ finalSpecular *= attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular += calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic, float(1), specularMap, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += AnisotropicSpecular(float(0), float(0), float(1), float(0), float(1), float(1), float4(1,1,1,1), metallic, specularMap, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular *= float4(1,1,1,1);
+ finalSpecular *= attenuation;
+ }
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+
+ finalSpecular *= float4(1,1,1,1).a;
+ finalSpecular = finalSpecular.rgb;
+ finalSpecular *= specularMask;
+
+
+ if (float(0))
+ {
+ float4 specularMap1 = POI2D_SAMPLER_PAN(_SpecularMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half specularMask1 = POI2D_SAMPLER_PAN(_SpecularMask1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ half metallic1 = POI2D_SAMPLER_PAN(_SpecularMetallicMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ float attenuation = poiLight.attenuation;
+
+ if(float(1) == 1) // Realistic
+ {
+
+ if (float(1) == 1)
+ {
+ specularMap1.a = specularMap1.r;
+ specularMap1.rgb = 1;
+ }
+ else
+ {
+ realisticAlbedo1.rgb = specularMap1.rgb;
+ }
+
+
+ if(float(0))
+ {
+ specularMap1.a = 1 - specularMap1.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, saturate(poiLight.nDotL));
+ #else
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap1, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic1, jitter, float(0), packedTangentMap);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular1 = calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic1, float(1), specularMap1, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular1 *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 = AnisotropicSpecular(float(0), float(0), float(0.75), float(0), float(1), float(1), float4(1,1,1,1), metallic1, specularMap1, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular1 *= float4(1,1,1,1);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ // Non Important Lights
+ #ifdef VERTEXLIGHT_ON
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular1 += calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+ #endif
+
+ finalSpecular1 *= float4(1,1,1,1).a;
+ finalSpecular1 = finalSpecular1.rgb;
+ finalSpecular1 *= specularMask1;
+ }
+ return finalSpecular + finalSpecular1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
new file mode 100644
index 00000000..b3339dc9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ffe33963a91d85342b27fba21b0f2184
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
new file mode 100644
index 00000000..b7c21c01
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
@@ -0,0 +1,28 @@
+#ifndef SUBSURFACE
+ #define SUBSURFACE
+
+ float _SSSThicknessMod;
+ float _SSSSCale;
+ float _SSSPower;
+ float _SSSDistortion;
+ float4 _SSSColor;
+ float _EnableSSS;
+
+ POI_TEXTURE_NOSAMPLER(_SSSThicknessMap);
+
+ float3 calculateSubsurfaceScattering()
+ {
+ float SSS = 1 - POI2D_SAMPLER_PAN(_SSSThicknessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ half3 vLTLight = poiLight.direction + poiMesh.normals[0] * float(1);
+ half flTDot = pow(saturate(dot(poiCam.viewDir, -vLTLight)), float(5)) * float(0.25);
+ #ifdef FORWARD_BASE_PASS
+ half3 fLT = (flTDot) * saturate(SSS + - 1 * float(0));
+ #else
+ half3 fLT = poiLight.attenuation * (flTDot) * saturate(SSS + - 1 * float(0));
+ #endif
+
+ return fLT * poiLight.color * float4(1,0,0,1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
new file mode 100644
index 00000000..9632ad0b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c2d92e73ac949fe41b69f97479f3771d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
new file mode 100644
index 00000000..4912473d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
@@ -0,0 +1,117 @@
+#ifndef POI_TESSELLATION
+ #define POI_TESSELLATION
+
+ float _TessellationPhongStrength;
+ float _TessellationEdgeLength;
+ float _TessellationExtrusionAmount;
+ float _TessellationUniform;
+
+ struct TessellationControlPoint
+ {
+ float4 vertex: INTERNALTESSPOS;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ };
+
+ struct TessellationFactors
+ {
+ float edge[3]: SV_TessFactor;
+ float inside: SV_InsideTessFactor;
+ };
+
+ TessellationControlPoint poiTessellationVert(appdata v)
+ {
+ TessellationControlPoint p;
+ p.vertex = v.vertex;
+ p.normal = v.normal;
+ p.tangent = v.tangent;
+ p.color = v.color;
+ p.uv0 = v.uv0;
+ p.uv1 = v.uv1;
+ p.uv2 = v.uv2;
+ p.uv3 = v.uv3;
+ return p;
+ }
+
+ float TessellationEdgeFactor(float3 p0, float3 p1)
+ {
+ #ifndef _FADING_ON
+ float edgeLength = distance(p0, p1);
+
+ float3 edgeCenter = (p0 + p1) * 0.5;
+ float viewDistance = distance(edgeCenter, _WorldSpaceCameraPos);
+
+ return edgeLength * _ScreenParams.y /
+ (_TessellationEdgeLength * viewDistance);
+ #else
+ return _TessellationUniform;
+ #endif
+ }
+
+ TessellationFactors poiPatchConst(
+ InputPatch < TessellationControlPoint, 3 > patch
+ )
+ {
+
+ TessellationFactors f;
+ float3 p0 = mul(unity_ObjectToWorld, patch[0].vertex).xyz;
+ float3 p1 = mul(unity_ObjectToWorld, patch[1].vertex).xyz;
+ float3 p2 = mul(unity_ObjectToWorld, patch[2].vertex).xyz;
+ f.edge[0] = TessellationEdgeFactor(p1, p2);
+ f.edge[1] = TessellationEdgeFactor(p2, p0);
+ f.edge[2] = TessellationEdgeFactor(p0, p1);
+ f.inside = (TessellationEdgeFactor(p1, p2) +
+ TessellationEdgeFactor(p2, p0) +
+ TessellationEdgeFactor(p0, p1)) * (1 / 3.0);
+ return f;
+ }
+
+ [UNITY_domain("tri")]
+ [UNITY_outputcontrolpoints(3)]
+ [UNITY_outputtopology("triangle_cw")]
+ [UNITY_partitioning("fractional_odd")]
+ [UNITY_patchconstantfunc("poiPatchConst")]
+ TessellationControlPoint poiHull(
+ InputPatch < TessellationControlPoint, 3 > patch,
+ uint id: SV_OutputControlPointID
+ )
+ {
+ return patch[id];
+ }
+
+ [UNITY_domain("tri")]
+ v2f poiDomain(
+ TessellationFactors factors,
+ OutputPatch < TessellationControlPoint, 3 > patch,
+ float3 barycentricCoordinates: SV_DomainLocation
+ )
+ {
+ appdata data;
+
+ #define MY_DOMAIN_PROGRAM_INTERPOLATE(fieldName) data.fieldName = patch[0].fieldName * barycentricCoordinates.x + patch[1].fieldName * barycentricCoordinates.y + patch[2].fieldName * barycentricCoordinates.z;
+
+ MY_DOMAIN_PROGRAM_INTERPOLATE(vertex)
+ float3 pp[3];
+ for (int i = 0; i < 3; ++ i)
+ {
+ pp[i] = data.vertex.xyz - patch[i].normal * (dot(data.vertex.xyz, patch[i].normal) - dot(patch[i].vertex.xyz, patch[i].normal));
+ }
+ data.vertex.xyz = _TessellationPhongStrength * (pp[0] * barycentricCoordinates.x + pp[1] * barycentricCoordinates.y + pp[2] * barycentricCoordinates.z) + (1.0f - _TessellationPhongStrength) * data.vertex.xyz;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(normal)
+ data.vertex.xyz += data.normal.xyz * _TessellationExtrusionAmount;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(tangent)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(color)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv0)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv1)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv2)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv3)
+
+ return vert(data);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
new file mode 100644
index 00000000..da65c618
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f5767f98ceabb664185c6a12fb83bb45
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
new file mode 100644
index 00000000..38d5fd75
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_UV_DISTORTION
+ #define POI_UV_DISTORTION
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture); float4 _DistortionFlowTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture1); float4 _DistortionFlowTexture1_ST;
+ POI_TEXTURE_NOSAMPLER(_DistortionMask);
+
+ float _DistortionStrength;
+ float _DistortionStrength1;
+ float2 _DistortionSpeed;
+ float2 _DistortionSpeed1;
+
+ float2 getTorusUv(float2 uv)
+ {
+ // translated to hlsl from https://www.shadertoy.com/view/Md3Bz7
+ // http://web.cs.ucdavis.edu/~amenta/s12/findnorm.pdf
+ float phi = 6.28318530718f * uv.x;
+ float theta = 6.28318530718f * uv.y;
+ float3 c = cos(float3(phi, phi + 1.57079632679f, theta));
+ float2 result = float2(c.x * c.z, -c.y * c.z);
+ return result * 0.5 + 0.5;
+ }
+
+ float2 calculateDistortionUV(float2 uv)
+ {
+ half distortionMask = POI2D_SAMPLER_PAN(_DistortionMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flowVector = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ float4 flowVector1 = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture1, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture1) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ flowVector *= float(0.5);
+ flowVector1 *= float(0.5);
+ return uv + ((flowVector.xy + flowVector1.xy) / 2) * distortionMask;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
new file mode 100644
index 00000000..379c6a0b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c5a8003c6c133664f83c2b47aeb32666
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
new file mode 100644
index 00000000..0e29a179
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_V2F
+ #define POI_V2F
+
+ struct v2f
+ {
+ float4 pos: SV_POSITION;
+ float4 uv0: TEXCOORD0;
+ float4 uv1: TEXCOORD1;
+ float3 normal: TEXCOORD2;
+ float3 tangentViewDir: TEXCOORD3;
+ float4 tangent: TEXCOORD4;
+ float4 worldPos: TEXCOORD5;
+ float4 localPos: TEXCOORD6;
+ float4 grabPos: TEXCOORD7;
+ float3 barycentricCoordinates: TEXCOORD8;
+ #if defined(GRAIN)
+ float4 worldDirection: TEXCOORD9;
+ #endif
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV: TEXCOORD10;
+ #endif
+ float3 modelPos: TEXCOORD11;
+ float angleAlpha: TEXCOORD12;
+ float4 vertexColor: TEXCOORD14;
+ #ifdef FUR
+ float furAlpha: TEXCOORD15;
+ #endif
+ UNITY_SHADOW_COORDS(16)
+ UNITY_FOG_COORDS(17)
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ UNITY_VERTEX_OUTPUT_STEREO
+ };
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
new file mode 100644
index 00000000..cb5d9bfc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a293a2a5098165944a05c21bcf257b64
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
new file mode 100644
index 00000000..1558e937
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
@@ -0,0 +1,126 @@
+#ifndef POI_VERT
+ #define POI_VERT
+
+ float _VertexManipulationHeightUV;
+ float _VertexUnwrap;
+
+ #define PM UNITY_MATRIX_P
+
+ inline float4 CalculateFrustumCorrection()
+ {
+ float x1 = -PM._31 / (PM._11 * PM._34);
+ float x2 = -PM._32 / (PM._22 * PM._34);
+ return float4(x1, x2, 0, PM._33 / PM._34 + x1 * PM._13 + x2 * PM._23);
+ }
+
+ v2f vert(appdata v)
+ {
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ #ifdef _COLOROVERLAY_ON
+ v.vertex.xyz = lerp(v.vertex.xyz, float3(v.uv0.x - .5, v.uv0.y - .5, 0), float(0));
+ #endif
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.tangent, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ #ifdef _REQUIRE_UV2 //POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ TANGENT_SPACE_ROTATION;
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ //o.localPos.x *= -1;
+ //o.localPos.xz += sin(o.localPos.y * 100 + _Time.y * 5) * .0025;
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, o.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+ o.vertexColor = v.color;
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.tangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
+
+ #ifdef POI_BULGE
+ bulgyWolgy(o);
+ #endif
+
+
+ o.angleAlpha = 1;
+ #ifdef _SUNDISK_NONE //POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ #if defined(LIGHTMAP_ON)
+ o.lightmapUV.xy = v.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
+ #endif
+ #ifdef DYNAMICLIGHTMAP_ON
+ o.lightmapUV.zw = v.uv2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0.xy);
+ UNITY_TRANSFER_FOG(o, o.pos);
+
+ #if defined(_PARALLAXMAP) // POI_PARALLAX
+ v.tangent.xyz = normalize(v.tangent.xyz);
+ v.normal = normalize(v.normal);
+ float3x3 objectToTangent = float3x3(
+ v.tangent.xyz,
+ cross(v.normal, v.tangent.xyz) * v.tangent.w,
+ v.normal
+ );
+ o.tangentViewDir = mul(objectToTangent, ObjSpaceViewDir(v.vertex));
+ #endif
+
+ #ifdef POI_META_PASS
+ o.pos = UnityMetaVertexPosition(v.vertex, v.uv1.xy, v.uv2.xy, unity_LightmapST, unity_DynamicLightmapST);
+ #endif
+
+ #if defined(GRAIN)
+ float4 worldDirection;
+
+ worldDirection.xyz = o.worldPos.xyz - _WorldSpaceCameraPos;
+ worldDirection.w = dot(o.pos, CalculateFrustumCorrection());
+ o.worldDirection = worldDirection;
+ #endif
+
+ return o;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
new file mode 100644
index 00000000..a8837e4b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4d02bface2c33134da1ac667f18965e0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
new file mode 100644
index 00000000..94c16148
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
@@ -0,0 +1,93 @@
+#ifndef POI_VERTEX_MANIPULATION
+ #define POI_VERTEX_MANIPULATION
+
+ #include "CGI_PoiMath.cginc"
+
+ float4 _VertexManipulationLocalTranslation;
+ float4 _VertexManipulationLocalRotation;
+ float4 _VertexManipulationLocalScale;
+ float4 _VertexManipulationWorldTranslation;
+
+ float _VertexManipulationHeight;
+ float _VertexManipulationHeightBias;
+ sampler2D _VertexManipulationHeightMask; float4 _VertexManipulationHeightMask_ST;
+ float2 _VertexManipulationHeightPan;
+
+
+ //Vertex Glitching
+ float _EnableVertexGlitch;
+ sampler2D _VertexGlitchMap; float4 _VertexGlitchMap_ST;
+ float _VertexGlitchThreshold;
+ float _VertexGlitchFrequency;
+ float _VertexGlitchStrength;
+ // Rounding
+ float _VertexRoundingDivision;
+ float _VertexRoundingEnabled;
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 tangent, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ tangent.xyz = rotate_with_quaternion(tangent.xyz, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyWorldVertexTransformation(inout float4 worldPos, inout float4 localPos, inout float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyWorldVertexTransformationShadow(inout float4 worldPos, inout float4 localPos, float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyVertexRounding(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if (float(0))
+ {
+ worldPos.xyz = (ceil(worldPos * float(500)) / float(500)) - 1 / float(500) * .5;
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+ void applyVertexGlitching(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if(_EnableVertexGlitch)
+ {
+ float3 forward = getCameraPosition() - mul(unity_ObjectToWorld, float4(0, 0, 0, 1)).xyz;
+ forward.y = 0;
+ forward = normalize(forward);
+ float3 glitchDirection = normalize(cross(float3(0, 1, 0), forward));
+ float glitchAmount = frac(sin(dot(_Time.xy + worldPos.y, float2(12.9898, 78.233))) * 43758.5453123) * 2 - 1;
+ /*
+ float uvl = worldPos.y * _VertexGlitchDensity + _Time.x * _VertexGlitchMapPanSpeed;
+ float uvr = worldPos.y * _VertexGlitchDensity - _Time.x * _VertexGlitchMapPanSpeed;
+ float glitchAmountLeft = tex2Dlod(_VertexGlitchMap, float4(uvl, uvl, 0, 0)).r;
+ float glitchAmountRight = -tex2Dlod(_VertexGlitchMap, float4(uvr, uvr, 0, 0)).r;
+ float glitchAmount = glitchAmountLeft + glitchAmountRight;
+ */
+ float time = _Time.y * _VertexGlitchFrequency;
+ float randomGlitch = (sin(time) + sin(2.2 * time + 5.52) + sin(2.9 * time + 0.93) + sin(4.6 * time + 8.94)) / 4;
+ worldPos.xyz += glitchAmount * glitchDirection * (_VertexGlitchStrength * .01) * step(_VertexGlitchThreshold, randomGlitch);
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+#endif
+//
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
new file mode 100644
index 00000000..87108f2f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c560e07a1606e5d4a8acf401ad90291e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
new file mode 100644
index 00000000..ec2d37e4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
@@ -0,0 +1,266 @@
+#ifndef POI_VIDEO
+ #define POI_VIDEO
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoPixelTexture); float4 _VideoPixelTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoMaskTexture); float4 _VideoMaskTexture_ST;
+
+ float _VideoUVNumber;
+ float _VideoType;
+ float3 pixels;
+ float2 _VideoResolution;
+ sampler2D _VideoGameboyRamp;
+ half _VideoBacklight;
+ half _VideoCRTRefreshRate;
+ half _VideoCRTPixelEnergizedTime;
+ half _VideoEnableVideoPlayer;
+ half _VideoRepeatVideoTexture;
+ half _VideoPixelateToResolution;
+ float2 _VideoMaskPanning;
+ // Video Settings
+ half _VideoSaturation;
+ half _VideoContrast;
+ float2 _VideoTiling;
+ float2 _VideoOffset;
+ float2 _VideoPanning;
+ //Debug
+ half _VideoEnableDebug;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoDebugTexture); float4 _VideoDebugTexture_ST;
+
+
+ sampler2D _VRChat_VideoPlayer;
+ float4 _VRChat_VideoPlayer_TexelSize;
+
+ float4 globalVideoPlayerColor;
+ float3 globalColorToDisplayOnScreen;
+ float globalVideoOn;
+
+ float3 applyBacklight(float3 albedo, half backlightStrength)
+ {
+ return max(backlightStrength, albedo.rgb);
+ }
+
+ float3 applyViewAngleTN(float3 albedo)
+ {
+ float3 reflectionVector = normalize(reflect(poiCam.viewDir.rgb, poiMesh.normals[1].rgb));
+ float upwardShift = dot(reflectionVector, poiMesh.binormal);
+ upwardShift = pow(upwardShift, 1);
+ float sideShift = dot(reflectionVector, poiMesh.tangent);
+ sideShift *= pow(sideShift, 3);
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = LinearToGammaSpace(albedo);
+ #endif
+ albedo = saturate(lerp(half3(0.5, 0.5, 0.5), albedo, upwardShift + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = GammaToLinearSpace(albedo);
+ #endif
+ albedo = (lerp(albedo, albedo.gbr, sideShift));
+ return albedo;
+ }
+
+ float calculateCRTPixelBrightness()
+ {
+ float totalPixels = _VideoResolution.x * _VideoResolution.y;
+ float2 uvPixel = float2((floor((1 - poiMesh.uv[_VideoUVNumber].y) * _VideoResolution.y)) / _VideoResolution.y, (floor(poiMesh.uv[_VideoUVNumber].x * _VideoResolution.x)) / _VideoResolution.x);
+ float currentPixelNumber = _VideoResolution.x * (_VideoResolution.y * uvPixel.x) + _VideoResolution.y * uvPixel.y;
+ float currentPixelAlpha = currentPixelNumber / totalPixels;
+ half electronBeamAlpha = frac(_Time.y * _VideoCRTRefreshRate);
+ float electronBeamPixelNumber = totalPixels * electronBeamAlpha;
+
+ float DistanceInPixelsFromCurrentElectronBeamPixel = 0;
+ if (electronBeamPixelNumber >= currentPixelNumber)
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber - currentPixelNumber;
+ }
+ else
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber + (totalPixels - currentPixelNumber);
+ }
+ float CRTFrameTime = 1 / _VideoCRTRefreshRate;
+ float timeSincecurrentPixelWasHitByElectronBeam = (DistanceInPixelsFromCurrentElectronBeamPixel / totalPixels);
+
+ return saturate(_VideoCRTPixelEnergizedTime - timeSincecurrentPixelWasHitByElectronBeam);
+ }
+
+ void applyContrastSettings(inout float3 pixel)
+ {
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = LinearToGammaSpace(pixel);
+ #endif
+ pixel = saturate(lerp(half3(0.5, 0.5, 0.5), pixel, _VideoContrast + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = GammaToLinearSpace(pixel);
+ #endif
+ }
+
+ void applySaturationSettings(inout float3 pixel)
+ {
+ pixel = lerp(pixel.rgb, dot(pixel.rgb, float3(0.3, 0.59, 0.11)), -_VideoSaturation);
+ }
+
+ void applyVideoSettings(inout float3 pixel)
+ {
+ applySaturationSettings(pixel);
+ applyContrastSettings(pixel);
+ }
+
+ void calculateLCD(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateTN(inout float4 albedo)
+ {
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ globalColorToDisplayOnScreen = applyViewAngleTN(globalColorToDisplayOnScreen);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateCRT(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ float brightness = calculateCRTPixelBrightness();
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * brightness * _VideoBacklight;
+ }
+ void calculateOLED(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateGameboy(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ half brightness = saturate((globalColorToDisplayOnScreen.r + globalColorToDisplayOnScreen.g + globalColorToDisplayOnScreen.b) * .3333333);
+ albedo.rgb = tex2D(_VideoGameboyRamp, brightness);
+ }
+ void calculateProjector(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+
+ float3 projectorColor = albedo * globalColorToDisplayOnScreen * _VideoBacklight;
+ albedo.r = clamp(projectorColor.r, albedo.r, 1000);
+ albedo.g = clamp(projectorColor.g, albedo.g, 1000);
+ albedo.b = clamp(projectorColor.b, albedo.b, 1000);
+ }
+
+ void applyScreenEffect(inout float4 albedo, inout float3 videoEmission)
+ {
+ float4 albedoBeforeScreen = albedo;
+
+ pixels = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoPixelTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoPixelTexture) * _VideoResolution);
+ globalVideoOn = 0;
+
+ if(_VideoEnableVideoPlayer == 1)
+ {
+ float4 videoTexture = 0;
+
+ if(_VideoPixelateToResolution)
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, round(TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoResolution + .5) / _VideoResolution);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, round(poiMesh.uv[_VideoUVNumber] * _VideoResolution + .5) / _VideoResolution);
+ }
+ }
+ else
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoTiling + _VideoOffset);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, ((poiMesh.uv[_VideoUVNumber] + _Time.x * _VideoPanning) * _VideoTiling) + _VideoOffset);
+ }
+ }
+ if(videoTexture.a == 1)
+ {
+ globalColorToDisplayOnScreen = videoTexture.rgb;
+ globalVideoOn = 1;
+ }
+ }
+
+
+ if(_VideoRepeatVideoTexture == 1)
+ {
+ if(poiMesh.uv[_VideoUVNumber].x > 1 || poiMesh.uv[_VideoUVNumber].x < 0 || poiMesh.uv[_VideoUVNumber].y > 1 || poiMesh.uv[_VideoUVNumber].y < 0)
+ {
+ return;
+ }
+ }
+
+ switch(_VideoType)
+ {
+ case 0: // LCD
+ {
+ calculateLCD(albedo);
+ break;
+ }
+ case 1: // TN
+ {
+ calculateTN(albedo);
+ break;
+ }
+ case 2: // CRT
+ {
+ calculateCRT(albedo);
+ break;
+ }
+ case 3: // OLED
+ {
+ calculateOLED(albedo);
+ break;
+ }
+ case 4: // Gameboy
+ {
+ calculateGameboy(albedo);
+ break;
+ }
+ case 5: // Projector
+ {
+ calculateProjector(albedo);
+ break;
+ }
+ }
+
+ float screenMask = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoMaskTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoMaskTexture) + _Time.x * _VideoMaskPanning);
+ albedo = lerp(albedoBeforeScreen, albedo, screenMask);
+ videoEmission = max(albedo.rgb * screenMask - 1, 0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
new file mode 100644
index 00000000..5e5b5aca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c8758a4ce9806db4596941ac13505539
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
new file mode 100644
index 00000000..db3d3130
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
@@ -0,0 +1,304 @@
+#ifndef POI_VORONOI
+ #define POI_VORONOI
+
+ #include "CGI_PoiRNG.cginc"
+
+ float _VoronoiSpace;
+ float _VoronoiBlend;
+ float _VoronoiType;
+ float4 _VoronoiColor0;
+ float _VoronoiEmission0;
+ float4 _VoronoiColor1;
+ float _VoronoiEmission1;
+ float2 _VoronoiGradient;
+ float _VoronoiScale;
+ float3 _VoronoiSpeed;
+ float _VoronoiEnableRandomCellColor;
+ float2 _VoronoiRandomMinMaxSaturation;
+ float2 _VoronoiRandomMinMaxBrightness;
+ float3 randomPoint;
+ float _VoronoiEffectsMaterialAlpha;
+
+ POI_TEXTURE_NOSAMPLER(_VoronoiMask);
+ POI_TEXTURE_NOSAMPLER(_VoronoiNoise);
+ float _VoronoiNoiseIntensity;
+
+ float2 inoise(float3 P, float jitter)
+ {
+ float3 Pi = mod(floor(P), 289.0);
+ float3 Pf = frac(P);
+ float3 oi = float3(-1.0, 0.0, 1.0);
+ float3 of = float3(-0.5, 0.5, 1.5);
+ float3 px = Permutation(Pi.x + oi);
+ float3 py = Permutation(Pi.y + oi);
+
+ float3 p, ox, oy, oz, dx, dy, dz;
+ float2 F = 1e6;
+
+ for (int i = 0; i < 3; i ++)
+ {
+ for (int j = 0; j < 3; j ++)
+ {
+ p = Permutation(px[i] + py[j] + Pi.z + oi); // pij1, pij2, pij3
+
+ ox = frac(p * K) - Ko;
+ oy = mod(floor(p * K), 7.0) * K - Ko;
+
+ p = Permutation(p);
+
+ oz = frac(p * K) - Ko;
+
+ dx = Pf.x - of[i] + jitter * ox;
+ dy = Pf.y - of[j] + jitter * oy;
+ dz = Pf.z - of + jitter * oz;
+
+ float3 d = dx * dx + dy * dy + dz * dz; // dij1, dij2 and dij3, squared
+
+ //Find lowest and second lowest distances
+ for (int n = 0; n < 3; n ++)
+ {
+ if (d[n] < F[0])
+ {
+ F[1] = F[0];
+ F[0] = d[n];
+ randomPoint = p;
+ }
+ else if(d[n] < F[1])
+ {
+ F[1] = d[n];
+ }
+ }
+ }
+ }
+
+ return F;
+ }
+
+ float voronoi2D(in float2 x, float scale, float2 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float2 n = floor(x);
+ float2 f = frac(x);
+
+ // first pass: regular voronoi
+ float2 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 g = float2(float(i), float(j));
+ float2 o = random2(n + g);
+ float2 currentPoint = o;
+
+ float2 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint.xy = currentPoint;
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ float2 g = mg + float2(float(q), float(r));
+ float2 o = random2(n + g);
+
+ float2 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ return md;
+ }
+
+ float voronoi3D(in float3 x, float scale, float3 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float3 n = floor(x);
+ float3 f = frac(x);
+
+ // first pass: regular voronoi
+ float3 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ for (int h = -1; h <= 1; h ++)
+ {
+ float3 g = float3(float(h), float(i), float(j));
+ float3 o = random3(n + g);
+ float3 currentPoint = o;
+
+ float3 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint = currentPoint;
+ }
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ for (int p = -2; p <= 2; p ++)
+ {
+ float3 g = mg + float3(float(p), float(q), float(r));
+ float3 o = random3(n + g);
+
+ float3 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ }
+ return md;
+ }
+
+
+
+ // fracal sum, range -1.0 - 1.0
+ float VoronoiNoise_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ float VoronoiNoiseDiff_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[1]) - sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ void applyVoronoi(inout float4 finalColor, inout float3 VoronoiEmission)
+ {
+ float voronoiOctaveNumber = 1;
+ float voronoiOctaveScale = 1;
+ float voronoiOctaveAttenuation = 1;
+ randomPoint = 0;
+ float4 voronoiColor1 = _VoronoiColor1;
+
+ float voronoi = 0;
+
+ float3 position = 0;
+
+
+ if (_VoronoiSpace == 0)
+ {
+ position = poiMesh.localPos;
+ }
+
+ if(_VoronoiSpace == 1)
+ {
+ position = poiMesh.worldPos;
+ }
+
+ if(_VoronoiSpace == 2)
+ {
+ position = float3(poiMesh.uv[0].x, poiMesh.uv[0].y, 0);
+ }
+
+ float mask = POI2D_SAMPLER_PAN(_VoronoiMask, _MainTex, poiMesh.uv[_VoronoiMaskUV], _VoronoiMaskPan).r;
+ float edgeNoise = POI2D_SAMPLER_PAN(_VoronoiNoise, _MainTex, poiMesh.uv[_VoronoiNoiseUV], _VoronoiNoisePan).r * _VoronoiNoiseIntensity;
+
+
+ if(_VoronoiType == 0) // Basic
+ {
+ voronoi = voronoi2D(position.xy, _VoronoiScale, _VoronoiSpeed);
+ }
+
+ if (_VoronoiType == 1) // Diff
+ {
+ voronoi = VoronoiNoiseDiff_Octaves(position, _VoronoiScale, _VoronoiSpeed, voronoiOctaveNumber, voronoiOctaveScale, voronoiOctaveAttenuation, 1, _Time.x);
+ }
+
+ if (_VoronoiType == 2) // Fixed Border
+ {
+ voronoi = voronoi3D(position, _VoronoiScale, _VoronoiSpeed);
+ // isolines
+ //color = c.x * (0.5 + 0.5 * sin(64.0 * c.x)) * 1.0;
+ }
+
+ if (_VoronoiEnableRandomCellColor == 1)
+ {
+ float3 rando = random3(randomPoint);
+ fixed hue = rando.x;
+ fixed saturation = lerp(_VoronoiRandomMinMaxSaturation.x, _VoronoiRandomMinMaxSaturation.y, rando.y);
+ fixed value = lerp(_VoronoiRandomMinMaxBrightness.x, _VoronoiRandomMinMaxBrightness.y, rando.z);
+ float3 hsv = float3(hue, saturation, value);
+
+ voronoiColor1.rgb = HSVtoRGB(hsv);
+ }
+
+ float2 voronoiGradient = _VoronoiGradient;
+ voronoiGradient.xy += edgeNoise;
+ float ramp = smoothstep(voronoiGradient.x, voronoiGradient.y, voronoi);
+
+
+ if(_VoronoiBlend == 0)
+ {
+ float4 voronoiColor = lerp(_VoronoiColor0, voronoiColor1, ramp);
+
+ if(_VoronoiEffectsMaterialAlpha)
+ {
+ finalColor.rgba = lerp(finalColor, voronoiColor, mask);
+ }
+ else
+ {
+ finalColor.rgb = lerp(finalColor.rgb, voronoiColor.rgb, mask * voronoiColor.a);
+ }
+ }
+ float4 voronoiEmissionColor = lerp(_VoronoiColor0 * _VoronoiEmission0, voronoiColor1 * _VoronoiEmission1, ramp);
+ VoronoiEmission = voronoiEmissionColor.rgb * mask * voronoiEmissionColor.a;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
new file mode 100644
index 00000000..202ffb23
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 04f18071062609047804c5d88539ea97
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
new file mode 100644
index 00000000..49c602c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
@@ -0,0 +1,111 @@
+#ifndef POI_WIREFRAME
+ #define POI_WIREFRAME
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_WireframeTexture); float4 _WireframeTexture_ST;
+ float2 _WireframeTexturePan;
+ float _WireframeSmoothing;
+ float _WireframeThickness;
+ float4 _WireframeColor;
+ float _WireframeAlpha;
+ float _WireframeEnable;
+ float _WireframeWaveEnabled;
+ float _WireframeWaveDensity;
+ float _WireframeWaveSpeed;
+ float _WireframeEdgeOpacity;
+ float _WireframeFaceOpacity;
+ half _WireframeEmissionAlpha;
+ float _WireframeEmissionStrength;
+ float _WireframeQuad;
+ float _WireframeUV;
+
+ #ifndef POI_SHADOW
+ void applyWireframe(inout float3 wireframeEmission, inout float4 albedo)
+ {
+
+ if (_WireframeEnable)
+ {
+ float4 colorMap = UNITY_SAMPLE_TEX2D_SAMPLER(_WireframeTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_WireframeUV], _WireframeTexture) + _Time.x * _WireframeTexturePan);
+ float size = _WireframeThickness;
+ half3 width = abs(ddx(poiMesh.barycentricCoordinates)) + abs(ddy(poiMesh.barycentricCoordinates));
+ half3 eF = smoothstep(0, width * size, poiMesh.barycentricCoordinates);
+ half minBary = size > 0 ? min(min(eF.x, eF.y), eF.z): 1;
+
+ float4 wireframeColor = _WireframeColor * colorMap;
+
+ albedo.a *= lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ albedo.rgb = lerp(lerp(albedo.rgb, wireframeColor.rgb, wireframeColor.a), albedo.rgb, minBary);
+ wireframeEmission = wireframeColor.rgb * _WireframeEmissionStrength * (1 - minBary) * _WireframeColor.a;
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle v2f IN[3], inout TriangleStream < v2f > tristream)
+ {
+
+ if(_WireframeQuad)
+ {
+ float e1 = length(IN[0].localPos - IN[1].localPos);
+ float e2 = length(IN[1].localPos - IN[2].localPos);
+ float e3 = length(IN[2].localPos - IN[0].localPos);
+
+ float3 quad = 0;
+ if(e1 > e2 && e1 > e3)
+ quad.y = 1.;
+ else if(e2 > e3 && e2 > e1)
+ quad.x = 1;
+ else
+ quad.z = 1;
+
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0) + quad;
+ IN[1].barycentricCoordinates = fixed3(0, 0, 1) + quad;
+ IN[2].barycentricCoordinates = fixed3(0, 1, 0) + quad;
+ }
+ else
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ }
+
+
+
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #else
+
+ float applyShadowWireframe(float2 uv, float3 barycentricCoordinates, float3 normal, float3 worldPos)
+ {
+
+ if(_WireframeEnable)
+ {
+ float wireframeFadeAlpha = _WireframeAlpha;
+ float3 finalWireframeColor = 0;
+
+ float3 barys;
+ barys.xy = barycentricCoordinates;
+ barys.z = 1 - barys.x - barys.y;
+ float3 deltas = fwidth(barys);
+ float3 smoothing = deltas * _WireframeSmoothing;
+ float wireframeThickness = _WireframeThickness;
+ float3 thickness = deltas * wireframeThickness;
+ barys = smoothstep(thickness, thickness + smoothing, barys);
+ float minBary = min(barys.x, min(barys.y, barys.z));
+
+ return lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle V2FShadow IN[3], inout TriangleStream < V2FShadow > tristream)
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
new file mode 100644
index 00000000..9a9cc45f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 628ff95228b8ea7418cf68baa3f87bac
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
new file mode 100644
index 00000000..319de57c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
@@ -0,0 +1,171 @@
+#ifndef POICLUDES
+ #define POICLUDES
+
+ UNITY_DECLARE_TEX2D(_MainTex); float4 _MainTex_ST; float4 _MainTex_TexelSize;
+ sampler2D _PoiGrab;
+ sampler2D _CameraDepthTexture;
+ float _Cutoff;
+ float _AlphaMod;
+
+ //Structs
+ struct appdata
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #ifdef OUTLINE
+ float _LineWidth;
+ float _OutlineEmission;
+ float4 _LineColor;
+ sampler2D _OutlineTexture; float4 _OutlineTexture_ST; float2 _OutlineTexturePan; float _OutlineTextureUV;
+ float4 _OutlineFadeDistance;
+ float4 _OutlineGlobalPan;
+ #endif
+
+ struct PoiLighting
+ {
+ half3 direction;
+ half3 color;
+ fixed attenuation;
+ #ifdef FORWARD_ADD_PASS
+ fixed additiveShadow;
+ #endif
+ half3 directLighting;
+ half3 indirectLighting;
+ half lightMap;
+ half3 rampedLightMap;
+ half3 finalLighting;
+ half3 halfDir;
+ half nDotL;
+ half nDotH;
+ half lDotv;
+ half lDotH;
+ half nDotV;
+ half N0DotV;
+ half diffuseTerm;
+
+ // World normal dot half direction
+ #ifdef POI_VAR_DOTNH
+ half dotNH;
+ #endif
+
+ // Light direction dot half direction
+ #ifdef POI_VAR_DOTLH
+ half dotLH;
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ float4 vDotNL;
+ float3 vColor[4];
+ float4 vCorrectedDotNL;
+ float4 vAttenuation;
+ float4 vAttenuationDotNL;
+ float3 vPosition[4];
+ float3 vDirection[4];
+ float3 vFinalLighting;
+ float3 vHalfDir[4];
+
+ #ifdef POI_VAR_DOTLH
+ half4 vDotLH;
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ half4 vDotNH;
+ #endif
+
+ #endif
+ };
+
+ struct PoiCamera
+ {
+ half3 viewDir;
+ half3 tangentViewDir;
+ half3 forwardDir;
+ half3 worldPos;
+ float viewDotNormal;
+ float distanceToModel;
+ float distanceToVert;
+ float3 reflectionDir;
+ float3 vertexReflectionDir;
+ float2 screenUV;
+ float4 clipPos;
+ #if defined(GRAIN)
+ float4 worldDirection;
+ #endif
+ float4 grabPos;
+ };
+
+ struct PoiMesh
+ {
+ float3 normals[2];
+ float3 tangent;
+ float3 binormal;
+ float3 localPos;
+ float3 worldPos;
+ float3 modelPos;
+ float3 tangentSpaceNormal;
+ float2 uv[5];
+ float4 vertexColor;
+ fixed3 barycentricCoordinates;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV;
+ #endif
+ float isFrontFace;
+ #ifdef FUR
+ float furAlpha;
+ #endif
+ };
+
+ struct PoiTangentData
+ {
+ float3x3 tangentTransform;
+ float3x3 tangentToWorld;
+ };
+
+ struct FragmentCommonData
+ {
+ half3 diffColor, specColor;
+ // Note: smoothness & oneMinusReflectivity for optimization purposes, mostly for DX9 SM2.0 level.
+ // Most of the math is being done on these (1-x) values, and that saves a few precious ALU slots.
+ half oneMinusReflectivity, smoothness;
+ float3 normalWorld;
+ float3 eyeVec;
+ half alpha;
+ float3 posWorld;
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 reflUVW;
+ #endif
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 tangentSpaceNormal;
+ #endif
+ };
+
+ struct Debug
+ {
+ float debug1;
+ float2 debug2;
+ float3 debug3;
+ float4 debug4;
+ };
+
+ static Debug debug;
+ static PoiLighting poiLight;
+ static PoiCamera poiCam;
+ static PoiMesh poiMesh;
+ static UnityGI gi;
+ static FragmentCommonData s;
+ static PoiTangentData poiTData;
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
new file mode 100644
index 00000000..39fc69ce
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 80b8834bbf9788b40b9aede2499a7799
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
new file mode 100644
index 00000000..380acd99
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 1a1a2d065c09af24dbb30f85f47b3fd8
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
new file mode 100644
index 00000000..b155d589
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
@@ -0,0 +1,7648 @@
+Shader "Hidden/.poiyomi/• Poiyomi Toon •/cheek_00-d55925e7"
+{
+ Properties
+ {
+ [HideInInspector] shader_is_using_thry_editor ("", Float) = 0
+ [HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Toon V7.0.100</color>", Float) = 0
+ [HideInInspector] shader_presets ("poiToonPresets", Float) = 0
+ [HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
+
+ [HideInInspector] footer_youtube ("youtube footer button", Float) = 0
+ [HideInInspector] footer_twitter ("twitter footer button", Float) = 0
+ [HideInInspector] footer_patreon ("patreon footer button", Float) = 0
+ [HideInInspector] footer_discord ("discord footer button", Float) = 0
+ [HideInInspector] footer_github ("github footer button", Float) = 0
+
+ // Keyword to remind users in the VRChat SDK that this material hasn't been locked. Inelegant but it works.
+ [HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Int) = 1
+ [ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Int) = 0
+ [Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Int) = 0
+
+ [ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)]_Mode("Rendering Preset--{on_value_actions:[
+ {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2450}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=1}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2451}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
+ {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:RenderType=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
+ }]}]}", Int) = 0
+ [HideInInspector] m_LockingInfo ("Locking Info--{button_right:{text:Tutorial,action:{type:URL,data:https://youtu.be/asWeDJb5LAo},hover:YouTube},is_hideable:true}", Float) = 0
+ [Helpbox(1)] _HelpBoxLocking ("LOCKING IN THE SHADER WILL DRAMATICALLY INCREASE PERFORMANCE AND DRAMATICALLY LOWER THE FILE SIZE OF AN AVATAR PACKAGE.
+
+ LOCKED IN MATERIALS CANNOT BE ANIMATED WITHOUT SETTING THE SPECIFIC PROPERTY TO DYNAMIC. RIGHT CLICK MATERIAL PROPERTIES YOU WISH TO ANIMATE, A CLOCK ICON WILL APPEAR BESIDE THE PROPERTY SIGNIFYING THAT IT CAN BE ANIMATED.
+
+ FOR MORE INFORMATION ON LOCKING PLEASE WATCH THE LOCKING TUTORIAL IN THE HEADER ABOVE.", Int) = 0
+ [Helpbox(2)] _HelpBoxHideLocking ("TO HIDE THIS CATEGORY SELECT CUSTOM UI AT THE TOP AND UNCHECK THE LOCKING INFO CATEGORY", Float) = 0
+ // Main
+ [HideInInspector] m_mainOptions ("Main", Float) = 0
+ _Color ("Color & Alpha", Color) = (1, 1, 1, 1)
+ _MainTex ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainTextureUV ("UV", Int) = 0
+ _Saturation ("Saturation", Range(-1, 1)) = 0
+ _MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
+ [Normal]_BumpMap ("Normal Map", 2D) = "bump" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _BumpMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_BumpMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ _BumpScale ("Normal Intensity", Range(0, 10)) = 1
+ _AlphaMask ("Alpha Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_AlphaMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AlphaMaskUV ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector] m_start_MainHueShift ("Hue Shift", Float) = 0
+ [HideInInspector][Toggle(COLOR_GRADING_HDR)]_MainHueShiftToggle ("Toggle Hueshift", Float) = 0
+ [ToggleUI]_MainHueShiftReplace ("Replace?", Float) = 1
+ _MainHueShift ("Hue Shift", Range(0, 1)) = 0
+ _MainHueShiftSpeed ("Shift Speed", Float) = 0
+ _MainHueShiftMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainHueShiftMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainHueShiftMaskUV ("UV", Int) = 0
+ [HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
+
+ // RGB Masking
+ [HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
+ [HideInInspector][Toggle(VIGNETTE)]_RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
+ [ToggleUI]_RGBUseVertexColors ("Use Vertex Colors", Float) = 0
+ [ToggleUI]_RGBBlendMultiplicative ("Multiplicative?", Float) = 0
+ _RGBMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBMaskPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBMaskUV ("UV", int) = 0
+ _RedColor ("R Color", Color) = (1, 1, 1, 1)
+ _RedTexure ("R Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBRedPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBRed_UV ("UV", int) = 0
+ _GreenColor ("G Color", Color) = (1, 1, 1, 1)
+ _GreenTexture ("G Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBGreenPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBGreen_UV ("UV", int) = 0
+ _BlueColor ("B Color", Color) = (1, 1, 1, 1)
+ _BlueTexture ("B Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBBluePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBBlue_UV ("UV", int) = 0
+ // RGB MASKED NORMALS
+ [Toggle(GEOM_TYPE_MESH)]_RgbNormalsEnabled ("Enable Normals", Float) = 0
+ [ToggleUI]_RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
+ [Normal]_RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalRPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalRUV ("UV", int) = 0
+ _RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalGPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalGUV ("UV", int) = 0
+ _RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalBPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalBUV ("UV", int) = 0
+ _RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
+
+ // Detail Options
+ [HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(FINALPASS)]_DetailEnabled ("Enable", Float) = 0
+ _DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" { }
+ [HideInInspector][Vector2]_DetailMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailMaskUV ("UV", Int) = 0
+ _DetailTint ("Detail Texture Tint", Color) = (1, 1, 1)
+ _DetailTex ("Detail Texture", 2D) = "gray" { }
+ [HideInInspector][Vector2]_DetailTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailTexUV ("UV", Int) = 0
+ _DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
+ _DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
+ [Normal]_DetailNormalMap ("Detail Normal", 2D) = "bump" { }
+ _DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
+ [HideInInspector][Vector2]_DetailNormalMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailNormalMapUV ("UV", Int) = 0
+ [HideInInspector] m_end_DetailOptions ("Details", Float) = 0
+
+ // Vertex Colors
+ [HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
+ _MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
+ _MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
+
+ //Vertex Manipulations
+ [HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(AUTO_EXPOSURE)]_VertexManipulationsEnabled ("Enabled", Float) = 0
+ [Vector3]_VertexManipulationLocalTranslation ("Local Translation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalRotation ("Local Rotation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalScale ("Local Scale", Vector) = (1, 1, 1, 1)
+ [Vector3]_VertexManipulationWorldTranslation ("World Translation", Vector) = (0, 0, 0, 1)
+ _VertexManipulationHeight ("Vertex Height", Float) = 0
+ _VertexManipulationHeightMask ("Height Map", 2D) = "while" { }
+ [HideInInspector][Vector2]_VertexManipulationHeightPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _VertexManipulationHeightUV ("UV", Int) = 0
+ _VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
+ [ToggleUI]_VertexRoundingEnabled ("Rounding Enabled", Float) = 0
+ _VertexRoundingDivision ("Division Amount", Float) = 500
+ [HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
+
+ // Alpha Options
+ [HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
+ _Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
+ [ToggleUI]_DitheringEnabled ("Enable Dithering", Float) = 0
+ _DitherGradient ("Dither Gradient", Range(0, 1)) = .1
+ [ToggleUI]_ForceOpaque ("Force Opaque", Float) = 0
+ _MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
+ [Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
+ [ToggleUI]_MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
+ _MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
+ [ToggleUI]_AlphaPremultiply ("Alpha Premultiply", Float) = 0
+ _AlphaMod ("Alpha Mod", Range(-1, 1)) = 0.0
+ [HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
+
+ // Decal Texture
+ [HideInInspector] m_start_DecalSection ("Decal", Float) = 0
+ [HideInInspector][Toggle(GEOM_TYPE_BRANCH)]_DecalEnabled ("Enable", Float) = 0
+ _DecalColor ("Color", Color) = (1, 1, 1, 1)
+ _DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _DecalTexture ("Decal", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalTextureUV ("UV", Int) = 0
+ _DecalMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalMaskUV ("UV", Int) = 0
+ [ToggleUI]_DecalTiled ("Tiled?", Float) = 0
+ [Vector2]_DecalScale ("Scale", Vector) = (1, 1, 0, 0)
+ [Vector2]_DecalPosition ("Position", Vector) = (.5, .5, 0, 0)
+ _DecalRotation ("Rotation", Range(0, 360)) = 0
+ _DecalRotationSpeed ("Rotation Speed", Float) = 0
+ _DecalBlendAdd ("Add", Range(0, 1)) = 0
+ _DecalBlendMultiply ("Multiply", Range(0, 1)) = 0
+ _DecalBlendReplace ("Replace", Range(0, 1)) = 0
+ [HideInInspector] m_end_DecalSection ("Decal", Float) = 0
+
+ // Back Face Textures and Emission
+ [HideInInspector] m_start_backFace ("Back Face", Float) = 0
+ [ToggleUI]_BackFaceEnabled ("Enable Back Face Options", Float) = 0
+ _BackFaceColor ("Color", Color) = (1, 1, 1, 1)
+ _BackFaceTexture ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_BackFacePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_BackFaceTextureUV ("UV#", Int) = 0
+ _BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
+ _BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
+ _BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [HideInInspector] m_end_backFace ("Back Face", Float) = 0
+
+ // Lighting
+ [HideInInspector] m_lightingOptions ("Lighting", Float) = 0
+ [HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
+ [Toggle(VIGNETTE_MASKED)]_EnableLighting ("Enable Lighting", Float) = 1
+ [Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Int) = 0
+ _LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
+ [Enum(Ramp Texture, 0, Math Gradient, 1)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Int) = 0
+ [Gradient]_ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" { }
+ _LightingShadowMask ("Ramp Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowMaskUV ("UV", Int) = 0
+ _ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
+ _LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
+ _LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = .5
+ _LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Color) = (1, 1, 1, 1)
+ _ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 1
+ _AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+
+ [HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
+ [Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Int) = 0
+ [ToggleUI]_LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
+ [ToggleUI]_LightingUncapped ("Uncapped Lighting", Float) = 0
+ [ToggleUI]_LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
+ _LightingMonochromatic ("Monochromatic Lighting?", Range(0,1)) = 0
+ _LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
+ _LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
+ [HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
+
+ [HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
+ _LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingDetailShadowsPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingDetailShadowsUV ("UV", Int) = 0
+ _LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
+
+ [HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableAO ("Enable AO", Float) = 0
+ _LightingAOTex ("AO Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingAOTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingAOTexUV ("UV", Int) = 0
+ _AOStrength ("AO Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
+
+ [HideInInspector] m_start_shadowTexture ("Shadow Texture--{reference_property:_UseShadowTexture, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ [HideInInspector][ToggleUI]_UseShadowTexture ("EnableShadowTexture--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ _LightingShadowTexture ("Shadow Texture--{reference_properties:[_LightingShadowTexturePan, _LightingShadowTextureUV], condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_shadowTexture ("Shadow Texture", Float) = 0
+
+ // HSL Lighting
+ [HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
+ _LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
+ _LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
+ _LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
+ _LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
+ [HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
+
+ // point/spot Light Settings
+ [HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
+ [HideInInspector][ToggleUI]_commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
+ [Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Int) = 1
+ _LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
+ _LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = .5
+ _LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = .5
+ _LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
+ [ToggleUI]_LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
+ _LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
+ [Toggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)]_DisableDirectionalInAdd ("No Directional", Float) = 1
+ [HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
+ [HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
+
+ // Subsurface Scattering
+ [HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
+ [Toggle(_TERRAIN_NORMAL_MAP)]_EnableSSS ("Enable Subsurface Scattering", Float) = 0
+ _SSSColor ("Subsurface Color", Color) = (1, 0, 0, 1)
+ _SSSThicknessMap ("Thickness Map", 2D) = "black" { }
+ [HideInInspector][Vector2]_SSSThicknessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SSSThicknessMapUV ("UV", Int) = 0
+ _SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
+ _SSSSCale ("Light Strength", Range(0, 1)) = 0.25
+ _SSSPower ("Light Spread", Range(1, 100)) = 5
+ _SSSDistortion ("Light Distortion", Range(0, 1)) = 1
+ [HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
+
+ // Rim Lighting
+ [HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
+ [Toggle(_GLOSSYREFLECTIONS_OFF)]_EnableRimLighting ("Enable Rim Lighting", Float) = 0
+ [Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Int) = 1
+ [ToggleUI]_RimLightingInvert ("Invert Rim Lighting", Float) = 0
+ _RimLightColor ("Rim Color", Color) = (1, 1, 1, 1)
+ _RimWidth ("Rim Width", Range(0, 1)) = 0.8
+ _RimSharpness ("Rim Sharpness", Range(0, 1)) = .25
+ _RimStrength ("Rim Emission", Range(0, 20)) = 0
+ _RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
+ _RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 0
+ _RimTex ("Rim Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimTexUV ("UV", Int) = 0
+ _RimMask ("Rim Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimMaskUV ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
+ _RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_RimWidthNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimWidthNoiseTextureUV ("UV", Int) = 0
+ _RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
+ [HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
+ _ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
+ _ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = .5
+ _ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = .5
+ [HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
+ [HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
+ [Toggle(_MAPPING_6_FRAMES_LAYOUT)]_EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
+ _RimEnviroMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimEnviroMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimEnviroMaskUV ("UV", Int) = 0
+ _RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
+ _RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
+ _RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
+ _RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
+ _RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
+ [HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
+
+ // Baked Lighting
+ [HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
+ _GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
+ [HideInInspector] DSGI ("DSGI", Float) = 0 //add this property for double sided illumination settings to be shown
+ [HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0 //add this property for lightmap flags settings to be shown
+ [HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
+
+ // Metallics
+ [HideInInspector] m_start_Metallic ("Metallics", Float) = 0
+ [Toggle(_METALLICGLOSSMAP)]_EnableMetallic ("Enable Metallics", Float) = 0
+ _CubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _MetalReflectionTint ("Reflection Tint", Color) = (1, 1, 1)
+ _MetallicTintMap ("Tint Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicTintMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicTintMapUV ("UV", Int) = 0
+ _MetallicMask ("Metallic Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicMaskUV ("UV", Int) = 0
+ _Metallic ("Metallic", Range(0, 1)) = 0
+ _SmoothnessMask ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SmoothnessMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SmoothnessMaskUV ("UV", Int) = 0
+ [ToggleUI]_InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _Smoothness ("Smoothness", Range(0, 1)) = 0
+ [HideInInspector] m_end_Metallic ("Metallics", Float) = 0
+
+ // Clearcoat
+ [HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
+ [Toggle(_COLORCOLOR_ON)]_EnableClearCoat ("Enable Clear Coat", Float) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _ClearCoatNormalToUse ("What Normal?", Int) = 0
+ _ClearCoatCubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_ClearCoatSampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _ClearCoatTint ("Reflection Tint", Color) = (1, 1, 1)
+ _ClearCoatMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatMaskUV ("UV", Int) = 0
+ _ClearCoat ("Clear Coat", Range(0, 1)) = 1
+ _ClearCoatSmoothnessMap ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatSmoothnessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatSmoothnessMapUV ("UV", Int) = 0
+ [ToggleUI]_ClearCoatInvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _ClearCoatSmoothness ("Smoothness", Range(0, 1)) = 0
+ [ToggleUI]_ClearCoatForceLighting ("Force Lighting", Float) = 0
+ [HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
+
+ // First Matcap
+ [HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
+ [Toggle(_COLORADDSUBDIFF_ON)]_MatcapEnable ("Enable Matcap", Float) = 0
+ _MatcapColor ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap ("Matcap", 2D) = "white" { }
+ _MatcapBorder ("Border", Range(0, .5)) = 0.43
+ _MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_MatcapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MatcapMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_MatcapMaskInvert("Invert", Float) = 0
+ _MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _MatcapIntensity ("Intensity", Range(0, 5)) = 1
+ _MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
+ _MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
+ _MatcapAdd ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_matcap ("Matcap", Float) = 0
+
+ // Second Matcap
+ [HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
+ [ToggleUI]_Matcap2Enable ("Enable Matcap 2", Float) = 0
+ _Matcap2Color ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap2 ("Matcap", 2D) = "white" { }
+ _Matcap2Border ("Border", Range(0, .5)) = 0.43
+ _Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_Matcap2MaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _Matcap2MaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_Matcap2MaskInvert("Invert", Float) = 0
+ _Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _Matcap2Intensity ("Intensity", Range(0, 5)) = 1
+ _Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
+ _Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
+ _Matcap2Add ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
+
+ // Specular
+ [HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
+ [Toggle(_SPECGLOSSMAP)]_EnableSpecular ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Int) = 1
+ _SpecularTint ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMapUV ("UV", Int) = 0
+ _SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
+ [Gradient]_SpecularMap ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMapUV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
+ _SpecularMask ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMaskUV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Int) = 1
+ // Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Int) = 0
+ _AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
+ _AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMapUV ("UV", Int) = 0
+ //toon aniso
+ _SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicroUV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacroUV ("UV", Int) = 0
+ // Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
+
+ // Second Specular
+ [HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
+ [ToggleUI]_EnableSpecular1 ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Int) = 1
+ _SpecularTint1 ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMap1UV ("UV", Int) = 0
+ _SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = .75
+ _SpecularMap1 ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMap1UV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
+ _SpecularMask1 ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMask1UV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Int) = 1
+ // Second Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Int) = 0
+ _AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
+ _AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMap1UV ("UV", Int) = 0
+ // Second toon aniso
+ _SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor1 ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicro1UV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacro1UV ("UV", Int) = 0
+ // Second Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
+
+ // First Emission
+ [HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
+ [HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
+ [Toggle(_EMISSION)]_EnableEmission ("Enable Emission", Float) = 0
+ [ToggleUI]_EmissionReplace ("Replace Base Color", Float) = 0
+ [HDR]_EmissionColor ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMapUV ("UV", Int) = 0
+ _EmissionMask ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMaskUV ("UV", Int) = 0
+ _EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
+
+ // Center out emission
+ [HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+
+ // Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor ("VColor as position", float) = 0
+ _EmissiveScroll_Direction ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width ("Width", Float) = 10
+ _EmissiveScroll_Velocity ("Velocity", Float) = 10
+ _EmissiveScroll_Interval ("Interval", Float) = 20
+ _EmissionScrollingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
+
+ // Second Enission
+ [HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
+ [Toggle(EFFECT_HUE_VARIATION)]_EnableEmission1 ("Enable Emission 2", Float) = 0
+ [HDR]_EmissionColor1 ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap1 ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMap1UV ("UV", Int) = 0
+ _EmissionMask1 ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMask1UV ("UV", Int) = 0
+ _EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
+
+ // Second Center Out Enission
+ [HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Second Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve1 ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve1 ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor1 ("VColor as position", float) = 0
+ _EmissiveScroll_Direction1 ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width1 ("Width", Float) = 10
+ _EmissiveScroll_Velocity1 ("Velocity", Float) = 10
+ _EmissiveScroll_Interval1 ("Interval", Float) = 20
+ _EmissionScrollingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
+
+ // Flipbook
+ [HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
+ [Toggle(_SUNDISK_HIGH_QUALITY)]_EnableFlipbook ("Enable Flipbook", Float) = 0
+ [ToggleUI]_FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
+ [TextureArray]_FlipbookTexArray ("Texture Array", 2DArray) = "" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookTexArrayUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookTexArrayPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookMaskUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookColor ("Color & alpha", Color) = (1, 1, 1, 1)
+ _FlipbookTotalFrames ("Total Frames", Int) = 1
+ _FlipbookFPS ("FPS", Float) = 30.0
+ _FlipbookScaleOffset ("Scale | Offset", Vector) = (1, 1, 0, 0)
+ [ToggleUI]_FlipbookTiled ("Tiled?", Float) = 0
+ _FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _FlipbookRotation ("Rotation", Range(0, 360)) = 0
+ _FlipbookRotationSpeed ("Rotation Speed", Float) = 0
+ _FlipbookReplace ("Replace", Range(0, 1)) = 1
+ _FlipbookMultiply ("Multiply", Range(0, 1)) = 0
+ _FlipbookAdd ("Add", Range(0, 1)) = 0
+
+ // Flipbook Manual Control
+ [HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
+ _FlipbookCurrentFrame ("Current Frame", Float) = -1
+ [HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
+ [HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
+
+ // Dissolve
+ [HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
+ [Toggle(DISTORT)]_EnableDissolve ("Enable Dissolve", Float) = 0
+ [Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Int) = 1
+ _DissolveEdgeWidth ("Edge Width", Range(0, .5)) = 0.025
+ _DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
+ _DissolveEdgeColor ("Edge Color", Color) = (1, 1, 1, 1)
+ [Gradient]_DissolveEdgeGradient ("Edge Gradient", 2D) = "white" { }
+ _DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
+ _DissolveTextureColor ("Dissolved Color", Color) = (1, 1, 1, 1)
+ _DissolveToTexture ("Dissolved Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveToTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveToTextureUV ("UV", Int) = 0
+ _DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
+ _DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveNoiseTextureUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertNoise ("Invert?", Float) = 0
+ _DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_DissolveDetailNoisePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveDetailNoiseUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertDetailNoise ("Invert?", Float) = 0
+ _DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
+ _DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
+ _DissolveMask ("Dissolve Mask", 2D) = "white" { }
+ [ToggleUI]_DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
+ [HideInInspector][Vector2]_DissolveMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveMaskInvert ("Invert?", Float) = 0
+ _ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
+ [HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Int) = 2
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Int) = 2
+ [HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
+ [Enum(Local, 0, World, 1)] _DissolveP2PWorldLocal ("World/Local", Int) = 0
+ _DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
+ [Vector3]_DissolveStartPoint ("Start Point", Vector) = (0, -1, 0, 0)
+ [Vector3]_DissolveEndPoint ("End Point", Vector) = (0, 1, 0, 0)
+ [HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
+
+ // Locked in anim sldiers
+ [HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
+ _DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
+ _DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
+ _DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
+ _DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
+ _DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
+ _DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
+ _DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
+ _DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
+ _DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
+ _DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
+ [HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
+ [HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
+
+ // Panosphere
+ [HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+ [Toggle(_DETAIL_MULX2)]_PanoToggle ("Enable Panosphere", Float) = 0
+ [ToggleUI]_PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
+ _PanosphereColor ("Color", Color) = (1, 1, 1, 1)
+ _PanosphereTexture ("Texture", 2D) = "white" { }
+ _PanoMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_PanoMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _PanoMaskUV ("UV", Int) = 0
+ _PanoEmission ("Emission Strength", Range(0, 10)) = 0
+ _PanoBlend ("Alpha", Range(0, 1)) = 0
+ [Vector3]_PanospherePan ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [ToggleUI]_PanoCubeMapToggle ("Use Cubemap", Float) = 0
+ [TextureNoSO]_PanoCubeMap ("CubeMap", Cube) = "" { }
+ [HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+
+ // Glitter
+ [HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
+ [Toggle(_SUNDISK_SIMPLE)]_GlitterEnable ("Enable Glitter?", Float) = 0
+ [Enum(Angle, 0, Linear Emission, 1)]_GlitterMode ("Mode", Int) = 0
+ [Enum(Circle, 0, Square, 1)]_GlitterShape ("Shape", Int) = 0
+ [Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Int) = 0
+ [HDR]_GlitterColor ("Color", Color) = (1, 1, 1)
+ _GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
+ _GlitterColorMap ("Glitter Color Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterColorMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterColorMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_GlitterPan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterMask ("Glitter Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterMaskUV ("UV", Int) = 0
+ _GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterTextureRotation ("Rotation Speed", Float) = 0
+ _GlitterFrequency ("Glitter Density", Float) = 300.0
+ _GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1.0
+ _GlitterSpeed ("Glitter Speed", Float) = 10.0
+ _GlitterSize ("Glitter Size", Range(0, 1)) = .3
+ _GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
+ _GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
+ _GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
+ _GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
+ _GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = .8
+ _GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = .08
+ _glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
+ _GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, .1)) = .0
+
+ // Glitter Random Colors
+ [HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
+ [ToggleUI]_GlitterRandomColors ("Random Colors", Float) = 0
+ [MultiSlider]_GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8, 1, 0, 1)
+ [MultiSlider]_GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8, 1, 0, 1)
+ [ToggleUI]_GlitterRandomSize("Random Size?", Float) = 0
+ [MultiSlider]_GlitterMinMaxSize ("Size Range", Vector) = (0.1, 0.5, 0, 1)
+ [ToggleUI]_GlitterRandomRotation("Random Tex Rotation", Float) = 0
+ [HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
+ [HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
+ _TextGlyphs ("Font Array", 2D) = "black" { }
+ _TextPixelRange ("Pixel Range", Float) = 4.0
+ [Toggle(EFFECT_BUMP)]_TextEnabled ("Text?", Float) = 0
+
+ // FPS
+ [HideInInspector] m_start_TextFPS ("FPS", Float) = 0
+ [ToggleUI]_TextFPSEnabled ("FPS Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Int) = 0
+ _TextFPSColor ("Color", Color) = (1, 1, 1, 1)
+ _TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextFPSOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextFPSRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextFPSScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextFPSPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextFPS ("FPS", Float) = 0
+
+ // POSITION
+ [HideInInspector] m_start_TextPosition ("Position", Float) = 0
+ [ToggleUI]_TextPositionEnabled ("Position Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVertical ("Vertical?", Float) = 0
+ _TextPositionColor ("Color", Color) = (1, 0, 1, 1)
+ _TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextPositionOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextPositionRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextPositionScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextPositionPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextPosition ("Position", Float) = 0
+
+ // INSTANCE TIME
+ [HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
+ [ToggleUI]_TextTimeEnabled ("Time Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Int) = 0
+ _TextTimeColor ("Color", Color) = (1, 0, 1, 1)
+ _TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextTimeOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextTimeRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextTimeScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextTimePadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
+ [HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
+
+ // Mirror Rendering
+ [HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
+ [Toggle(_REQUIRE_UV2)]_EnableMirrorOptions ("Enable Mirror Options", Float) = 0
+ [Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Int) = 0
+ [ToggleUI]_EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
+ _MirrorTexture ("Mirror Tex", 2D) = "white" { }
+ [HideInInspector][Vector2]_MirrorTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MirrorTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
+
+ // Distance Fade
+ [HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
+ _MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
+ _MainFadeTexture ("Fade Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainFadeTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainFadeTextureUV ("UV", Int) = 0
+ [Vector2]_MainDistanceFade ("Distance Fade X to Y", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
+
+ // Angular Fade
+ [HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
+ [Toggle(_SUNDISK_NONE)]_EnableRandom ("Enable Angular Fade", Float) = 0
+ [Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Int) = 0
+ [Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Int) = 0
+ [Vector3]_AngleForwardDirection ("Forward Direction", Vector) = (0, 0, 1, 0)
+ _CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
+ _CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
+ _ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
+ _ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
+ _AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
+
+ // UV Distortion
+ [HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
+ [Toggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
+ _DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_DistortionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _DistortionMaskUV ("UV", Int) = 0
+ _DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" { }
+ _DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" { }
+ _DistortionStrength ("Strength1", Float) = 0.5
+ _DistortionStrength1 ("Strength2", Float) = 0.5
+ [Vector2]_DistortionSpeed ("Speed1", Vector) = (0.5, 0.5, 0, 0)
+ [Vector2]_DistortionSpeed1 ("Speed2", Vector) = (0.5, 0.5, 0, 0)
+ [HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
+
+ // Outline Options
+ [HideInInspector] m_outlineOptions ("Outlines", Float) = 0
+ [ToggleUI]_commentIfZero_EnableOutlinePass ("Enable Outlines", float) = 0
+ [Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)]_OutlineMode ("Mode", Int) = 0
+ _OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
+ _OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
+ _OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1, 0, 0, 0)
+ _OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1, 0, 0, 0)
+ [ToggleUI]_OutlineFixedSize ("Fixed Size?", Float) = 0
+ [Enum(Off, 0, Normals, 1, Mask VC.r, 2)]_OutlineUseVertexColors ("Vertex Color", Float) = 0
+ [ToggleUI]_OutlineLit ("Enable Lighting", Float) = 1
+ _LineWidth ("Width", Float) = 0
+ _LineColor ("Color", Color) = (1, 1, 1, 1)
+ _OutlineEmission ("Outline Emission", Float) = 0
+ _OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineTexturePan ("Outline Texture Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineTextureUV ("UV", Int) = 0
+ _OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineMaskUV ("UV", Int) = 0
+ _OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
+ [HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
+ [Vector2]_OutlineFadeDistance ("Outline distance Fade", Vector) = (0, 0, 0, 0)
+ [Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
+ _OutlineOffsetFactor("Offset Factor", Float) = 0
+ _OutlineOffsetUnits("Offset Units", Float) = 0
+ [HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
+
+ // Parallax Mapping
+ [HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
+ [Toggle(_PARALLAXMAP)]_ParallaxMap ("Enable Parallax FX", Float) = 0
+ [ToggleUI]_ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
+ [ToggleUI]_ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
+ [HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
+ [Vector2]_ParallaxHeightMapPan ("Pan", Vector) = (0, 0, 0, 0)
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Int) = 0
+ _ParallaxHeightMap ("Height Map", 2D) = "black" { }
+ _ParallaxHeightMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxHeightMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxHeightMapMaskUV ("UV", Int) = 0
+ _ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
+ [HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
+ [HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
+ [Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Int) = 0
+ [ToggleUI]_ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
+ _ParallaxInternalMap ("Internal Map", 2D) = "black" { }
+ _ParallaxInternalMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxInternalMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxInternalMapMaskUV ("UV", Int) = 0
+ _ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
+ _ParallaxInternalMinDepth ("Min Depth", Float) = 0
+ _ParallaxInternalMaxDepth ("Max Depth", Float) = 1
+ _ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
+ _ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
+ _ParallaxInternalMinColor ("Min Depth Color", Color) = (1, 1, 1, 1)
+ _ParallaxInternalMaxColor ("Max Depth Color", Color) = (1, 1, 1, 1)
+ [Vector2]_ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [Vector2]_ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
+ [HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
+ _ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
+ [HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
+
+ // Rendering Options
+ [HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
+ [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
+ [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
+ [Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Int) = 1
+ [Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Int) = 15
+ _OffsetFactor ("Offset Factor", Float) = 0.0
+ _OffsetUnits ("Offset Units", Float) = 0.0
+ [ToggleUI]_IgnoreFog ("Ignore Fog", Float) = 0
+ [HideInInspector] Instancing ("Instancing", Float) = 0 //add this property for instancing variants settings to be shown
+
+ // Blending Options
+ [HideInInspector] m_start_blending ("Blending", Float) = 0
+ [Enum(Thry.BlendOp)]_BlendOp ("RGB Blend Op", Int) = 0
+ [Enum(Thry.BlendOp)]_BlendOpAlpha ("Alpha Blend Op", Int) = 0
+ [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Int) = 1
+ [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Int) = 0
+ [HideInInspector] m_end_blending ("Blending", Float) = 0
+
+ // Stencils
+ [HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
+ [IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
+
+ // Outline Stencil
+ [HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
+ [IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
+
+ // Debug Options
+ [HideInInspector] m_start_debugOptions ("Debug", Float) = 0
+ [HideInInspector][Toggle(_COLOROVERLAY_ON)]_DebugEnabled ("Display Debug Info", Float) = 0
+ _VertexUnwrap ("Unwrap", Range(0, 1)) = 0
+ [Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Int) = 0
+ [Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Int) = 0
+ [Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Int) = 0
+ [HideInInspector] m_end_debugOptions ("Debug", Float) = 0
+
+ //[HideInInspector] m_animationToggles ("Animation Support Toggles", Float) = 0
+ //[HelpBox(1)] _AnimationToggleHelp ("You don't need to search through this list. You can enable animation support on any property by right clicking it", Int) = 0
+
+ // Main
+ [HideInInspector]_ColorAnimated ("Color & Alpha", Int) = 0
+ [HideInInspector]_MainTexAnimated ("Texture", Int) = 0
+ [HideInInspector]_MainTex_STAnimated ("Texture Offset/Scale", Int) = 0
+ [HideInInspector]_MainTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_MainVertexColoringAnimated ("Use Vertex Color", Int) = 0
+ [HideInInspector]_MainUseVertexColorAlphaAnimated ("Use Vertex Alpha", Int) = 0
+ [HideInInspector]_MainEmissionStrengthAnimated ("Basic Emission", Int) = 0
+ [HideInInspector]_BumpMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_BumpMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_BumpMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_BumpScaleAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_AlphaMaskAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_AlphaMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AlphaMaskUVAnimated ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector]_MainHueShiftToggleAnimated ("Toggle Hueshift", Int) = 0
+ [HideInInspector]_MainHueShiftReplaceAnimated ("Replace?", Int) = 0
+ [HideInInspector]_MainHueShiftAnimated ("Hue Shift", Int) = 0
+ [HideInInspector]_MainHueShiftSpeedAnimated ("Shift Speed", Int) = 0
+ [HideInInspector]_MainHueShiftMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MainHueShiftMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainHueShiftMaskUVAnimated ("UV", Int) = 0
+
+ // RGB Masking
+ [HideInInspector]_RGBMaskEnabledAnimated ("RGB Mask Enabled", Int) = 0
+ [HideInInspector]_RGBUseVertexColorsAnimated ("Use Vertex Colors", Int) = 0
+ [HideInInspector]_RGBBlendMultiplicativeAnimated ("Multiplicative?", Int) = 0
+ [HideInInspector]_RGBMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RGBMaskPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RedColorAnimated ("R Color", Int) = 0
+ [HideInInspector]_RedTexureAnimated ("R Texture", Int) = 0
+ [HideInInspector]_RGBRedPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBRed_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_GreenColorAnimated ("G Color", Int) = 0
+ [HideInInspector]_GreenTextureAnimated ("G Texture", Int) = 0
+ [HideInInspector]_RGBGreenPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBGreen_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_BlueColorAnimated ("B Color", Int) = 0
+ [HideInInspector]_BlueTextureAnimated ("B Texture", Int) = 0
+ [HideInInspector]_RGBBluePanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBBlue_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_RGBNormalBlendAnimated ("UV", Int) = 0
+
+ // Detail Options
+ [HideInInspector]_DetailMaskAnimated ("Detail Mask (R:Texture, G:Normal)", Int) = 0
+ [HideInInspector]_DetailMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTintAnimated ("Detail Texture Tint", Int) = 0
+ [HideInInspector]_DetailTexAnimated ("Detail Texture", Int) = 0
+ [HideInInspector]_DetailTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTexIntensityAnimated ("Detail Tex Intensity", Int) = 0
+ [HideInInspector]_DetailBrightnessAnimated ("Detail Brightness:", Int) = 0
+ [HideInInspector]_DetailNormalMapAnimated ("Detail Normal", Int) = 0
+ [HideInInspector]_DetailNormalMapScaleAnimated ("Detail Normal Intensity", Int) = 0
+ [HideInInspector]_DetailNormalMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailNormalMapUVAnimated ("UV", Int) = 0
+
+ //Vertex Manipulations
+ [HideInInspector]_VertexManipulationLocalTranslationAnimated ("Local Translation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalRotationAnimated ("Local Rotation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalScaleAnimated ("Local Scale", Int) = 0
+ [HideInInspector]_VertexManipulationWorldTranslationAnimated ("World Translation", Int) = 0
+ [HideInInspector]_VertexManipulationHeightAnimated ("Vertex Height", Int) = 0
+ [HideInInspector]_VertexManipulationHeightMaskAnimated ("Height Map", Int) = 0
+ [HideInInspector]_VertexManipulationHeightPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VertexManipulationHeightUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VertexManipulationHeightBiasAnimated ("Mask Bias", Int) = 0
+ [HideInInspector]_VertexRoundingEnabledAnimated ("Rounding Enabled", Int) = 0
+ [HideInInspector]_VertexRoundingDivisionAnimated ("Division Amount", Int) = 0
+
+ // Alpha Options
+ [HideInInspector]_AlphaModAnimated ("Alpha Mod", Int) = 0
+ [HideInInspector]_CutoffAnimated ("Alpha Cuttoff", Int) = 0
+ [HideInInspector]_DitheringEnabledAnimated ("Enable Dithering", Int) = 0
+ [HideInInspector]_DitherGradientAnimated ("Dither Gradient", Int) = 0
+ [HideInInspector]_ForceOpaqueAnimated ("Force Opaque", Int) = 0
+ [HideInInspector]_MainShadowClipModAnimated ("Shadow Clip Mod", Int) = 0
+ [HideInInspector]_AlphaToMaskAnimated ("Alpha To Coverage", Int) = 0
+ [HideInInspector]_MainAlphaToCoverageAnimated ("Sharpenned A2C", Int) = 0
+ [HideInInspector]_AlphaPremultiplyAnimated ("Alpha Premultiply", Int) = 0
+ [HideInInspector]_MainMipScaleAnimated ("Mip Level Alpha Scale", Int) = 0
+
+ // Decal Texture
+ [HideInInspector]_DecalEnabledAnimated ("Enable", Int) = 0
+ [HideInInspector]_DecalColorAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalEmissionStrengthAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalTextureAnimated ("Decal", Int) = 0
+ [HideInInspector]_DecalTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DecalMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_DecalScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_DecalPositionAnimated ("Position", Int) = 0
+ [HideInInspector]_DecalRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_DecalRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_DecalBlendAddAnimated ("Add", Int) = 0
+ [HideInInspector]_DecalBlendMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_DecalBlendReplaceAnimated ("Replace", Int) = 0
+
+ // Lighting
+ [HideInInspector]_EnableLightingAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LightingModeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingStandardSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_LightingShadingEnabledAnimated ("Enable Shading-",Int) = 0
+ [HideInInspector]_LightingRampTypeAnimated ("Ramp Type", Int) = 0
+ [HideInInspector]_ToonRampAnimated ("Lighting Ramp", Int) = 0
+ [HideInInspector]_LightingShadowMaskAnimated ("Ramp Mask", Int) = 0
+ [HideInInspector]_LightingShadowMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ShadowOffsetAnimated ("Ramp Offset", Int) = 0
+ [HideInInspector]_LightingGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingShadowColorAnimated ("Shadow Tint", Int) = 0
+ [HideInInspector]_ShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_AttenuationMultiplierAnimated ("Unity Shadows", Int) = 0
+ [HideInInspector]_LightingIgnoreAmbientColorAnimated ("Ignore Ambient Color", Int) = 0
+
+ [HideInInspector]_LightingDirectColorModeAnimated ("D Color", Int) = 0
+ [HideInInspector]_LightingIndirectColorModeAnimated ("I Color?", Int) = 0
+ [HideInInspector]_LightingMonochromaticAnimated ("Monochromatic Lighting?", Int) = 0
+ [HideInInspector]_LightingUncappedAnimated ("Uncapped Lighting", Int) = 0
+ [HideInInspector]_LightingOnlyUnityShadowsAnimated ("Only Unity Shadows", Int) = 0
+ [HideInInspector]_LightingMinLightBrightnessAnimated ("Min Brightnes", Int) = 0
+ [HideInInspector]_LightingMinShadowBrightnessRatioAnimated ("Shadow:Light min Ratio", Int) = 0
+
+ [HideInInspector]_LightingDetailShadowsEnabledAnimated ("Enabled Detail Shadows?", Int) = 0
+ [HideInInspector]_LightingDetailShadowsAnimated ("Detail Shadows", Int) = 0
+ [HideInInspector]_LightingDetailShadowsPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingDetailShadowsUVAnimated ("UV", Int) = 0
+ [HideInInspector]_LightingDetailStrengthAnimated ("Detail Strength", Int) = 0
+
+ [HideInInspector]_LightingEnableAOAnimated ("Enable AO", Int) = 0
+ [HideInInspector]_LightingAOTexAnimated ("AO Map", Int) = 0
+ [HideInInspector]_LightingAOTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingAOTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_AOStrengthAnimated ("AO Strength", Range(0, 1)) = 0
+
+ [HideInInspector]_UseShadowTextureAnimated ("EnableShadowTexture", Int) = 0
+ [HideInInspector]_LightingShadowTextureAnimated ("Shadow Texture", Int) = 0
+ [HideInInspector]_LightingShadowTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowTextureUVAnimated ("UV", Int) = 0
+
+ [HideInInspector]_LightingEnableHSLAnimated ("Enabled HSL Lighting", Int) = 0
+ [HideInInspector]_LightingHSLIntensityAnimated ("Shadow HSL Intensity", Int) = 0
+ [HideInInspector]_LightingShadowHueAnimated ("Shadow Hue Change", Int) = 0
+ [HideInInspector]_LightingShadowSaturationAnimated ("Shadow Saturation Change", Int) = 0
+ [HideInInspector]_LightingShadowLightnessAnimated ("Shadow Lightness Change", Int) = 0
+
+ // point/spot Light Settings
+ [HideInInspector]_commentIfZero_LightingAdditiveEnableAnimated ("Enable Additive", Int) = 0
+ [HideInInspector]_LightingAdditiveTypeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingAdditivePassthroughAnimated ("Point Light Passthrough", Int) = 0
+ [HideInInspector]_LightingAdditiveDetailStrengthAnimated ("Detail Shadow Strength", Int) = 0
+ [HideInInspector]_LightingAdditiveLimitIntensityAnimated ("Limit Intensity", Int) = 0
+ [HideInInspector]_LightingAdditiveMaxIntensityAnimated ("Max Intensity", Int) = 0
+
+ // Subsurface Scattering
+ [HideInInspector]_EnableSSSAnimated ("Enable Subsurface Scattering", Int) = 0
+ [HideInInspector]_SSSColorAnimated ("Subsurface Color", Int) = 0
+ [HideInInspector]_SSSThicknessMapAnimated ("Thickness Map", Int) = 0
+ [HideInInspector]_SSSThicknessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SSSThicknessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SSSThicknessModAnimated ("Thickness mod", Int) = 0
+ [HideInInspector]_SSSSCaleAnimated ("Light Strength", Int) = 0
+ [HideInInspector]_SSSPowerAnimated ("Light Spread", Int) = 0
+ [HideInInspector]_SSSDistortionAnimated ("Light Distortion", Int) = 0
+
+ // Rim Lighting
+ [HideInInspector]_EnableRimLightingAnimated ("Enable Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_RimLightingInvertAnimated ("Invert Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightColorAnimated ("Rim Color", Int) = 0
+ [HideInInspector]_RimWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimStrengthAnimated ("Rim Emission", Int) = 0
+ [HideInInspector]_RimBrightenAnimated ("Rim Color Brighten", Int) = 0
+ [HideInInspector]_RimLightColorBiasAnimated ("Rim Color Bias", Int) = 0
+ [HideInInspector]_RimTexAnimated ("Rim Texture", Int) = 0
+ [HideInInspector]_RimTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimMaskAnimated ("Rim Mask", Int) = 0
+ [HideInInspector]_RimMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimMaskUVAnimated ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector]_RimWidthNoiseTextureAnimated ("Rim Width Noise", Int) = 0
+ [HideInInspector]_RimWidthNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimWidthNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimWidthNoiseStrengthAnimated ("Intensity", Int) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector]_ShadowMixAnimated ("Shadow Mix In", Int) = 0
+ [HideInInspector]_ShadowMixThresholdAnimated ("Shadow Mix Threshold", Int) = 0
+ [HideInInspector]_ShadowMixWidthModAnimated ("Shadow Mix Width Mod", Int) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector]_EnableEnvironmentalRimAnimated ("Enable Environmental Rim", Int) = 0
+ [HideInInspector]_RimEnviroMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RimEnviroMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimEnviroMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimEnviroBlurAnimated ("Blur", Int) = 0
+ [HideInInspector]_RimEnviroWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimEnviroSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimEnviroMinBrightnessAnimated ("Min Brightness Threshold", Int) = 0
+ [HideInInspector]_RimEnviroIntensityAnimated ("Intensity", Int) = 0
+
+ // Metallics
+ [HideInInspector]_EnableMetallicAnimated ("Enable Metallics", Int) = 0
+ [HideInInspector]_CubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_SampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_MetalReflectionTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_MetallicTintMapAnimated ("Tint Map", Int) = 0
+ [HideInInspector]_MetallicTintMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicTintMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicMaskAnimated ("Metallic Mask", Int) = 0
+ [HideInInspector]_MetallicMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SmoothnessMaskAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SmoothnessMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_InvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessAnimated ("Smoothness", Int) = 0
+
+ // Clearcoat
+ [HideInInspector]_EnableClearCoatAnimated ("Enable Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatNormalToUseAnimated ("What Normal?", Int) = 0
+ [HideInInspector]_ClearCoatCubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_ClearCoatSampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_ClearCoatTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_ClearCoatMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ClearCoatMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatInvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_ClearCoatForceLightingAnimated ("Force Lighting", Int) = 0
+
+ // First Matcap
+ [HideInInspector]_MatcapEnableAnimated ("Enable Matcap", Int) = 0
+ [HideInInspector]_MatcapColorAnimated ("Color", Int) = 0
+ [HideInInspector]_MatcapAnimated ("Matcap", Int) = 0
+ [HideInInspector]_MatcapBorderAnimated ("Border", Int) = 0
+ [HideInInspector]_MatcapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MatcapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MatcapMaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_MatcapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MatcapEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_MatcapIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_MatcapLightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_MatcapReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_MatcapMultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_MatcapAddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_MatcapNormalAnimated ("Normal to use", Int) = 0
+
+ // Second Matcap
+ [HideInInspector]_Matcap2EnableAnimated ("Enable Matcap 2", Int) = 0
+ [HideInInspector]_Matcap2ColorAnimated ("Color", Int) = 0
+ [HideInInspector]_Matcap2Animated ("Matcap", Int) = 0
+ [HideInInspector]_Matcap2BorderAnimated ("Border", Int) = 0
+ [HideInInspector]_Matcap2MaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_Matcap2MaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_Matcap2MaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_Matcap2MaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_Matcap2EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_Matcap2IntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_Matcap2LightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_Matcap2ReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_Matcap2MultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_Matcap2AddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_Matcap2NormalAnimated ("Normal to use", Int) = 0
+
+ // Specular
+ [HideInInspector]_EnableSpecularAnimated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularTypeAnimated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTintAnimated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMapAnimated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothnessAnimated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMaskAnimated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFromAnimated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangentAnimated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1AlphaAnimated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2AlphaAnimated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1OffsetAnimated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2SmoothnessAnimated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMapAnimated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMapAnimated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStartAnimated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEndAnimated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColorAnimated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirroredAnimated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroAnimated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplierAnimated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroAnimated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplierAnimated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuterAnimated ("Inner/Outer Edge", Int) = 0
+
+ // Second Specular
+ [HideInInspector]_EnableSpecular1Animated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularType1Animated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormal1Animated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTint1Animated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallic1Animated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothness1Animated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMap1Animated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothness1Animated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMask1Animated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFrom1Animated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangent1Animated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1Alpha1Animated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2Alpha1Animated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1Offset1Animated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2Smoothness1Animated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMap1Animated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMap1Animated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStart1Animated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEnd1Animated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColor1Animated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirrored1Animated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1Animated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplier1Animated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1Animated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplier1Animated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuter1Animated ("Inner/Outer Edge", Int) = 0
+
+ // First Emission
+ [HideInInspector]_EnableEmissionAnimated ("Enable Emission", Int) = 0
+ [HideInInspector]_EmissionReplaceAnimated ("Replace Base Color", Int) = 0
+ [HideInInspector]_EmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMapAnimated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMapAnimated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMaskAnimated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabledAnimated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShiftAnimated ("Hue Shift", Int) = 0
+
+ // Center out emission
+ [HideInInspector]_EmissionCenterOutEnabledAnimated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeedAnimated ("Flow Speed", Int) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector]_EnableGITDEmissionAnimated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMeshAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplierAnimated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplierAnimated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLightAnimated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLightAnimated ("Max Lighting", Int) = 0
+
+ // Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_MinAnimated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_MaxAnimated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_VelocityAnimated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffsetAnimated ("Offset", Int) = 0
+
+ // Scrolling Emission
+ [HideInInspector]_ScrollingEmissionAnimated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurveAnimated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurveAnimated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColorAnimated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_DirectionAnimated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_WidthAnimated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_VelocityAnimated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_IntervalAnimated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffsetAnimated ("Offset", Int) = 0
+
+ // Second Enission
+ [HideInInspector]_EnableEmission1Animated ("Enable Emission 2", Int) = 0
+ [HideInInspector]_EmissionColor1Animated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMap1Animated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMap1Animated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMask1Animated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrength1Animated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabled1Animated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShift1Animated ("Hue Shift", Int) = 0
+
+ // Second Center Out Enission
+ [HideInInspector]_EmissionCenterOutEnabled1Animated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeed1Animated ("Flow Speed", Int) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector]_EnableGITDEmission1Animated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMesh1Animated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplier1Animated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplier1Animated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLight1Animated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLight1Animated ("Max Lighting", Int) = 0
+
+ // Second Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_Min1Animated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_Max1Animated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_Velocity1Animated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffset1Animated ("Offset", Int) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector]_ScrollingEmission1Animated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurve1Animated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurve1Animated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColor1Animated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_Direction1Animated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_Width1Animated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_Velocity1Animated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_Interval1Animated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffset1Animated ("Offset", Int) = 0
+
+ // Flipbook
+ [HideInInspector]_EnableFlipbookAnimated ("Enable Flipbook", Int) = 0
+ [HideInInspector]_FlipbookAlphaControlsFinalAlphaAnimated ("Flipbook Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookIntensityControlsAlphaAnimated ("Intensity Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookColorReplacesAnimated ("Color Replaces Flipbook", Int) = 0
+ [HideInInspector]_FlipbookTexArrayAnimated ("Texture Array", Int) = 0
+ [HideInInspector]_FlipbookTexArrayUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookTexArrayPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_FlipbookMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookColorAnimated ("Color & alpha", Int) = 0
+ [HideInInspector]_FlipbookTotalFramesAnimated ("Total Frames", Int) = 0
+ [HideInInspector]_FlipbookFPSAnimated ("FPS", Int) = 0
+ [HideInInspector]_FlipbookScaleOffsetAnimated ("Scale | Offset", Int) = 0
+ [HideInInspector]_FlipbookTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_FlipbookEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_FlipbookRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_FlipbookRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_FlipbookReplaceAnimated ("Replace", Int) = 0
+ [HideInInspector]_FlipbookMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_FlipbookAddAnimated ("Add", Int) = 0
+ [HideInInspector]_FlipbookCurrentFrameAnimated ("Current Frame", Int) = 0
+
+ // Dissolve
+ [HideInInspector]_EnableDissolveAnimated ("Enable Dissolve", Int) = 0
+ [HideInInspector]_DissolveTypeAnimated ("Dissolve Type", Int) = 0
+ [HideInInspector]_DissolveEdgeWidthAnimated ("Edge Width", Int) = 0
+ [HideInInspector]_DissolveEdgeHardnessAnimated ("Edge Hardness", Int) = 0
+ [HideInInspector]_DissolveEdgeColorAnimated ("Edge Color", Int) = 0
+ [HideInInspector]_DissolveEdgeGradientAnimated ("Edge Gradient", Int) = 0
+ [HideInInspector]_DissolveEdgeEmissionAnimated ("Edge Emission", Int) = 0
+ [HideInInspector]_DissolveTextureColorAnimated ("Dissolved Color", Int) = 0
+ [HideInInspector]_DissolveToTextureAnimated ("Dissolved Texture", Int) = 0
+ [HideInInspector]_DissolveToTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveToTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveToEmissionStrengthAnimated ("Dissolved Emission Strength", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureAnimated ("Dissolve Noise", Int) = 0
+ [HideInInspector]_DissolveNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseAnimated ("Dissolve Detail Noise", Int) = 0
+ [HideInInspector]_DissolveDetailNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertDetailNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailStrengthAnimated ("Dissolve Detail Strength", Int) = 0
+ [HideInInspector]_DissolveAlphaAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveUseVertexColorsAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveMaskAnimated ("Dissolve Mask", Int) = 0
+ [HideInInspector]_DissolveMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveMaskInvertAnimated ("Invert?", Int) = 0
+ [HideInInspector]_ContinuousDissolveAnimated ("Continuous Dissolve Speed", Int) = 0
+ [HideInInspector]_DissolveEmissionSideAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_DissolveEmission1SideAnimated ("Emission 2", Int) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector]_DissolveP2PWorldLocalAnimated ("World/Local", Int) = 0
+ [HideInInspector]_DissolveP2PEdgeLengthAnimated ("Edge Length", Int) = 0
+ [HideInInspector]_DissolveStartPointAnimated ("Start Point", Int) = 0
+ [HideInInspector]_DissolveEndPointAnimated ("End Point", Int) = 0
+
+ [HideInInspector]_DissolveAlpha0Animated ("_DissolveAlpha0", Int) = 0
+ [HideInInspector]_DissolveAlpha1Animated ("_DissolveAlpha1", Int) = 0
+ [HideInInspector]_DissolveAlpha2Animated ("_DissolveAlpha2", Int) = 0
+ [HideInInspector]_DissolveAlpha3Animated ("_DissolveAlpha3", Int) = 0
+ [HideInInspector]_DissolveAlpha4Animated ("_DissolveAlpha4", Int) = 0
+ [HideInInspector]_DissolveAlpha5Animated ("_DissolveAlpha5", Int) = 0
+ [HideInInspector]_DissolveAlpha6Animated ("_DissolveAlpha6", Int) = 0
+ [HideInInspector]_DissolveAlpha7Animated ("_DissolveAlpha7", Int) = 0
+ [HideInInspector]_DissolveAlpha8Animated ("_DissolveAlpha8", Int) = 0
+ [HideInInspector]_DissolveAlpha9Animated ("_DissolveAlpha9", Int) = 0
+
+ // Panosphere
+ [HideInInspector]_PanoToggleAnimated ("Enable Panosphere", Int) = 0
+ [HideInInspector]_PanoInfiniteStereoToggleAnimated ("Infinite Stereo", Int) = 0
+ [HideInInspector]_PanosphereColorAnimated ("Color", Int) = 0
+ [HideInInspector]_PanosphereTextureAnimated ("Texture", Int) = 0
+ [HideInInspector]_PanoMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_PanoMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_PanoMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_PanoEmissionAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_PanoBlendAnimated ("Alpha", Int) = 0
+ [HideInInspector]_PanospherePanAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_PanoCubeMapToggleAnimated ("Use Cubemap", Int) = 0
+ [HideInInspector]_PanoCubeMapAnimated ("CubeMap", Int) = 0
+
+ // Glitter
+ [HideInInspector]_GlitterEnableAnimated ("Enable Glitter?", Int) = 0
+ [HideInInspector]_GlitterModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterShapeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterBlendTypeAnimated ("Blend Mode", Int) = 0
+ [HideInInspector]_GlitterColorAnimated ("Color", Int) = 0
+ [HideInInspector]_GlitterUseSurfaceColorAnimated ("Use Surface Color", Int) = 0
+ [HideInInspector]_GlitterColorMapAnimated ("Glitter Color Map", Int) = 0
+ [HideInInspector]_GlitterColorMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterColorMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterTextureAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterRandomRotationAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterFrequencyAnimated ("Glitter Density", Int) = 0
+ [HideInInspector]_GlitterJitterAnimated ("Glitter Jitter", Int) = 0
+ [HideInInspector]_GlitterSpeedAnimated ("Glitter Wobble Speed", Int) = 0
+ [HideInInspector]_GlitterSizeAnimated ("Glitter Size", Int) = 0
+ [HideInInspector]_GlitterContrastAnimated ("Glitter Contrast", Int) = 0
+ [HideInInspector]_GlitterAngleRangeAnimated ("Glitter Angle Range", Int) = 0
+ [HideInInspector]_GlitterMinBrightnessAnimated ("Glitter Min Brightness", Int) = 0
+ [HideInInspector]_GlitterBrightnessAnimated ("Glitter Max Brightness", Int) = 0
+ [HideInInspector]_GlitterBiasAnimated ("Glitter Bias", Int) = 0
+ [HideInInspector]_GlitterCenterSizeAnimated ("center size", Int) = 0
+ [HideInInspector]_GlitterTextureRotationAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_glitterFrequencyLinearEmissiveAnimated ("Frequency", Int) = 0
+ [HideInInspector]_GlitterJaggyFixAnimated ("Jaggy Fix", Int) = 0
+
+ // Glitter Random Colors
+ [HideInInspector]_GlitterRandomColorsAnimated ("Enable", Int) = 0
+ [HideInInspector]_GlitterMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_GlitterMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+ [HideInInspector]_GlitterRandomSizeAnimated ("random Size Toggle", Int) = 0
+ [HideInInspector]_GlitterMinMaxSizeAnimated ("Min Max Random Size", Int) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector]_TextGlyphsAnimated ("Font Array", Int) = 0
+ [HideInInspector]_TextPixelRangeAnimated ("Pixel Range", Int) = 0
+ [HideInInspector]_TextEnabledAnimated ("Text?", Int) = 0
+
+ // FPS
+ [HideInInspector]_TextFPSEnabledAnimated ("FPS Text?", Int) = 0
+ [HideInInspector]_TextFPSUVAnimated ("FPS UV", Int) = 0
+ [HideInInspector]_TextFPSColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextFPSEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextFPSOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextFPSRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextFPSScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextFPSPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // POSITION
+ [HideInInspector]_TextPositionEnabledAnimated ("Position Text?", Int) = 0
+ [HideInInspector]_TextPositionUVAnimated ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVerticalAnimated ("Vertical?", Int) = 0
+ [HideInInspector]_TextPositionColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextPositionEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextPositionOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextPositionRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextPositionScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextPositionPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // INSTANCE TIME
+ [HideInInspector]_TextTimeEnabledAnimated ("Time Text?", Int) = 0
+ [HideInInspector]_TextTimeUVAnimated ("Time UV", Int) = 0
+ [HideInInspector]_TextTimeColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextTimeEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextTimeOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextTimeRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextTimeScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextTimePaddingAnimated ("Padding Reduction", Int) = 0
+
+ // Mirror Rendering
+ [HideInInspector]_EnableMirrorOptionsAnimated ("Enable Mirror Options", Int) = 0
+ [HideInInspector]_MirrorAnimated ("Show in mirror", Int) = 0
+ [HideInInspector]_EnableMirrorTextureAnimated ("Enable Mirror Texture", Int) = 0
+ [HideInInspector]_MirrorTextureAnimated ("Mirror Tex", Int) = 0
+ [HideInInspector]_MirrorTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MirrorTextureUVAnimated ("UV", Int) = 0
+
+ // Distance Fade
+ [HideInInspector]_MainMinAlphaAnimated ("Minimum Alpha", Int) = 0
+ [HideInInspector]_MainFadeTextureAnimated ("Fade Mask", Int) = 0
+ [HideInInspector]_MainFadeTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainFadeTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MainDistanceFadeAnimated ("Distance Fade X to Y", Int) = 0
+
+ // Angular Fade
+ [HideInInspector]_EnableRandomAnimated ("Enable Angular Fade", Int) = 0
+ [HideInInspector]_AngleTypeAnimated ("Angle Type", Int) = 0
+ [HideInInspector]_AngleCompareToAnimated ("Model or Vert Positon", Int) = 0
+ [HideInInspector]_AngleForwardDirectionAnimated ("Forward Direction", Int) = 0
+ [HideInInspector]_CameraAngleMinAnimated ("Camera Angle Min", Int) = 0
+ [HideInInspector]_CameraAngleMaxAnimated ("Camera Angle Max", Int) = 0
+ [HideInInspector]_ModelAngleMinAnimated ("Model Angle Min", Int) = 0
+ [HideInInspector]_ModelAngleMaxAnimated ("Model Angle Max", Int) = 0
+ [HideInInspector]_AngleMinAlphaAnimated ("Min Alpha", Int) = 0
+
+ // UV Distortion
+ [HideInInspector]_EnableDistortionAnimated ("Enabled?", Int) = 0
+ [HideInInspector]_DistortionMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DistortionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DistortionMaskUVAnimated ("Distortion Mask UV", Int) = 0
+ [HideInInspector]_DistortionFlowTextureAnimated ("Distortion Texture 1", Int) = 0
+ [HideInInspector]_DistortionFlowTexture1Animated ("Distortion Texture 2", Int) = 0
+ [HideInInspector]_DistortionStrengthAnimated ("Strength1", Int) = 0
+ [HideInInspector]_DistortionStrength1Animated ("Strength2", Int) = 0
+ [HideInInspector]_DistortionSpeedAnimated ("Speed1", Int) = 0
+ [HideInInspector]_DistortionSpeed1Animated ("Speed2", Int) = 0
+
+ // Video Options
+ [HideInInspector]_EnableVideoAnimated ("Enable Video", Int) = 0
+ [HideInInspector]_VideoUVNumberAnimated ("Screen UV#", Int) = 0
+ [HideInInspector]_VideoTypeAnimated ("Screen Type", Int) = 0
+ [HideInInspector]_VideoBacklightAnimated ("Brightness", Int) = 0
+ [HideInInspector]_VideoPixelTextureAnimated ("Pixel Texture", Int) = 0
+ [HideInInspector]_VideoResolutionAnimated ("Resolution", Int) = 0
+ [HideInInspector]_VideoMaskTextureAnimated ("Mask", Int) = 0
+ [HideInInspector]_VideoMaskPanningAnimated ("Mask Pan Speed", Int) = 0
+ [HideInInspector]_VideoEnableVideoPlayerAnimated ("Enable Video Player", Int) = 0
+ [HideInInspector]_VideoPixelateToResolutionAnimated ("Pixelate To Resolution", Int) = 0
+ [HideInInspector]_VideoRepeatVideoTextureAnimated ("Clamp To UV", Int) = 0
+ [HideInInspector]_VideoPanningAnimated ("Panning Speed", Int) = 0
+ [HideInInspector]_VideoTilingAnimated ("Tiling", Int) = 0
+ [HideInInspector]_VideoOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_VideoSaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_VideoContrastAnimated ("Contrast boost", Int) = 0
+ [HideInInspector]_VideoEnableDebugAnimated ("Enable Debug", Int) = 0
+ [HideInInspector]_VideoDebugTextureAnimated ("Video Debug Tex", Int) = 0
+ [HideInInspector]_VideoCRTRefreshRateAnimated ("Refresh Rate", Int) = 0
+ [HideInInspector]_VideoCRTPixelEnergizedTimeAnimated ("Pixel Fade Time", Int) = 0
+ [HideInInspector]_VideoGameboyRampAnimated ("Color Ramp", Int) = 0
+
+ // TouchFX
+ [HideInInspector]_EnableBulgeAnimated ("Bulge", Int) = 0
+ [HideInInspector]_BulgeMaskAnimated ("Bulge Mask", Int) = 0
+ [HideInInspector]_BuldgeFadeLengthAnimated ("Touch Distance", Int) = 0
+ [HideInInspector]_BuldgeHeightAnimated ("Bulge Height", Int) = 0
+
+ [HideInInspector]_EnableTouchGlowAnimated ("Enable Touch Glow", Int) = 0
+ [HideInInspector]_DepthGradientTextureUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientBlendAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGlowColorAnimated ("Depth Glow Color", Int) = 0
+ [HideInInspector]_DepthGradientAnimated ("Depth Gradient", Int) = 0
+ [HideInInspector]_DepthMaskAnimated ("Depth Mask", Int) = 0
+ [HideInInspector]_DepthGlowEmissionAnimated ("Depth Glow Emission", Int) = 0
+ [HideInInspector]_FadeLengthAnimated ("Fade Length", Int) = 0
+ [HideInInspector]_DepthAlphaMinAnimated ("Alpha Min", Int) = 0
+ [HideInInspector]_DepthAlphaMaxAnimated ("Alpha Max", Int) = 0
+
+ // Hologram
+ [HideInInspector]_EnableHoloAnimated ("Enable Hologram Alpha", Int) = 0
+ [HideInInspector]_HoloAlphaMapAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_HoloCoordinateSpaceAnimated ("Coordinate Space", Int) = 0
+ [HideInInspector]_HoloDirectionAnimated ("Scroll Direction", Int) = 0
+ [HideInInspector]_HoloLineDensityAnimated ("Line Density", Int) = 0
+ [HideInInspector]_HoloScrollSpeedAnimated ("Scroll Speed", Int) = 0
+ [HideInInspector]_HoloFresnelAlphaAnimated ("Intensity", Int) = 0
+ [HideInInspector]_HoloRimSharpnessAnimated ("Sharpness", Int) = 0
+ [HideInInspector]_HoloRimWidthAnimated ("Width", Int) = 0
+
+ // GrabPass
+ [HideInInspector]_GrabPassUseAlphaAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabPassBlendFactorAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabSrcBlendAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabDstBlendAnimated ("Destination Blend", Int) = 0
+ [HideInInspector]_RefractionEnabledAnimated ("Enable Refraction,", Int) = 0
+ [HideInInspector]_RefractionIndexAnimated ("Refraction", Int) = 0
+ [HideInInspector]_RefractionChromaticAberattionAnimated ("Chromatic Aberration", Int) = 0
+ [HideInInspector]_EnableBlurAnimated ("Enable Blur", Int) = 0
+ [HideInInspector]_GrabBlurDistanceAnimated ("Blur Distance", Int) = 0
+ [HideInInspector]_GrabBlurQualityAnimated ("Blur Quality", Int) = 0
+ [HideInInspector]_GrabBlurDirectionsAnimated ("Blur Direction", Int) = 0
+
+ // Iridescence
+ [HideInInspector]_EnableIridescenceAnimated ("Enable Iridescence", Int) = 0
+ [HideInInspector]_IridescenceRampAnimated ("Ramp", Int) = 0
+ [HideInInspector]_IridescenceNormalToggleAnimated ("Custom Normals?", Int) = 0
+ [HideInInspector]_IridescenceNormalMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_IridescenceMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_IridescenceNormalIntensityAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_IridescenceNormalUVAnimated ("Normal UV", Int) = 0
+ [HideInInspector]_IridescenceMaskUVAnimated ("Mask UV", Int) = 0
+ [HideInInspector]_IridescenceNormalSelectionAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_IridescenceIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_IridescenceAddBlendAnimated ("Blend Add", Int) = 0
+ [HideInInspector]_IridescenceReplaceBlendAnimated ("Blend Replace", Int) = 0
+ [HideInInspector]_IridescenceMultiplyBlendAnimated ("Blend Multiply", Int) = 0
+ [HideInInspector]_IridescenceEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_IridescenceTimeAnimated ("When To Run", Int) = 0
+
+ // Vertex Glitching
+ [HideInInspector]_EnableVertexGlitchAnimated ("Enable Vertex Glitching", Int) = 0
+ [HideInInspector]_VertexGlitchFrequencyAnimated ("Glitch Interval", Int) = 0
+ [HideInInspector]_VertexGlitchThresholdAnimated ("Glitch Threshold", Int) = 0
+ [HideInInspector]_VertexGlitchStrengthAnimated ("Glitch Strength", Int) = 0
+
+ // Spawn In Effects
+ [HideInInspector]_EnableScifiSpawnInAnimated ("Enable Sci Fi Spawn", Int) = 0
+ [HideInInspector]_SpawnInNoiseAnimated ("Spawn Noise", Int) = 0
+ [HideInInspector]_SpawnInNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_SpawnInAlphaAnimated ("Spawn Alpha", Int) = 0
+ [HideInInspector]_SpawnInGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_SpawnInGradientFinishAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_SpawnInEmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_SpawnInEmissionOffsetAnimated ("Emission Width", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetAnimated ("Vertex Offset Speed", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetOffsetAnimated ("vert width", Int) = 0
+
+ // Voronoi
+ [HideInInspector]_VoronoiTypeAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiSpaceAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiBlendAnimated ("Blend", Int) = 0
+ [HideInInspector]_EnableVoronoiAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiEffectsMaterialAlphaAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_VoronoiMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseAnimated ("Edge Noise", Int) = 0
+ [HideInInspector]_VoronoiNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_VoronoiColor0Animated ("Color 0", Int) = 0
+ [HideInInspector]_VoronoiEmission0Animated ("Emission 0", Int) = 0
+ [HideInInspector]_VoronoiColor1Animated ("Color 1", Int) = 0
+ [HideInInspector]_VoronoiEmission1Animated ("Emission 1", Int) = 0
+ [HideInInspector]_VoronoiGradientAnimated ("Gradient", Int) = 0
+ [HideInInspector]_VoronoiScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_VoronoiSpeedAnimated ("Speed", Int) = 0
+ [HideInInspector]_VoronoiEnableRandomCellColorAnimated ("Rando Cell Col", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+
+ // Blacklight mask
+ [HideInInspector]_BlackLightMaskEnabledAnimated ("Black Light Mask Enabled", Int) = 0
+ [HideInInspector]_BlackLightMaskKeysAnimated ("Mask Keys", Int) = 0
+ [HideInInspector]_BlackLightMaskStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_BlackLightMaskEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_BlackLightMaskDebugAnimated ("Visualize", Int) = 0
+ [HideInInspector]_BlackLightMaskMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_BlackLightMaskClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcapAnimated ("Matcap 1", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcap2Animated ("Matcap 2", Int) = 0
+ [HideInInspector]_BlackLightMaskEmissionAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_BlackLightMaskEmission2Animated ("Emission 2", Int) = 0
+ [HideInInspector]_BlackLightMaskFlipbookAnimated ("Flipbook", Int) = 0
+ [HideInInspector]_BlackLightMaskDissolveAnimated ("Dissolve", Int) = 0
+ [HideInInspector]_BlackLightMaskPanosphereAnimated ("Panosphere", Int) = 0
+ [HideInInspector]_BlackLightMaskGlitterAnimated ("Glitter", Int) = 0
+ [HideInInspector]_BlackLightMaskIridescenceAnimated ("Iridescence", Int) = 0
+
+ // Outline Options
+ [HideInInspector]_OutlineModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_OutlineFixedSizeAnimated ("Fixed Size?", Int) = 0
+ [HideInInspector]_OutlineUseVertexColorsAnimated ("V Color", Int) = 0
+ [HideInInspector]_OutlineLitAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LineWidthAnimated ("Width", Int) = 0
+ [HideInInspector]_LineColorAnimated ("Color", Int) = 0
+ [HideInInspector]_OutlineTintMixAnimated ("Tint Mix", Int) = 0
+ [HideInInspector]_OutlineEmissionAnimated ("Outline Emission", Int) = 0
+ [HideInInspector]_OutlineTextureAnimated ("Outline Texture", Int) = 0
+ [HideInInspector]_OutlineMaskAnimated ("Outline Mask", Int) = 0
+ [HideInInspector]_OutlineTexturePanAnimated ("Outline Texture Pan", Int) = 0
+ [HideInInspector]_OutlineShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_OutlineRimLightBlendAnimated ("Rim Light Blend", Int) = 0
+ [HideInInspector]_OutlinePersonaDirectionAnimated ("directional Offset XY", Int) = 0
+ [HideInInspector]_OutlineDropShadowOffsetAnimated ("Drop Direction XY", Int) = 0
+ [HideInInspector]_OutlineFadeDistanceAnimated ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetFactor ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetUnits ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineCullAnimated ("Cull", Int) = 0
+
+ // Parallax Mapping
+ [HideInInspector]_ParallaxMapAnimated ("Enable Parallax FX", Int) = 0
+ [HideInInspector]_ParallaxHeightMapEnabledAnimated ("Enable Parallax Height", Int) = 0
+ [HideInInspector]_ParallaxInternalMapEnabledAnimated ("Enable Parallax Internal", Int) = 0
+ [HideInInspector]_ParallaxHeightMapPanAnimated ("Pan", Int) = 0
+ [HideInInspector]_ParallaxUVAnimated ("Parallax UV", Int) = 0
+ [HideInInspector]_ParallaxHeightMapAnimated ("Height Map", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxStrengthAnimated ("Parallax Strength", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightmapModeAnimated ("Parallax Mode", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightFromAlphaAnimated ("HeightFromAlpha", Int) = 0
+ [HideInInspector]_ParallaxInternalMapAnimated ("Internal Map", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxInternalIterationsAnimated ("Parallax Internal Iterations", Int) = 0
+ [HideInInspector]_ParallaxInternalMinDepthAnimated ("Min Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxDepthAnimated ("Max Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMinFadeAnimated ("Min Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxFadeAnimated ("Max Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMinColorAnimated ("Min Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxColorAnimated ("Max Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalPanSpeedAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_ParallaxInternalPanDepthSpeedAnimated ("Per Level Speed Multiplier", Int) = 0
+ [HideInInspector]_ParallaxBiasAnimated ("Parallax Bias (0.42)", Int) = 0
+
+ // Rendering Options
+ [HideInInspector]_CullAnimated ("Cull", Int) = 0
+ [HideInInspector]_ZTestAnimated ("ZTest", Int) = 0
+ [HideInInspector]_ZWriteAnimated ("ZWrite", Int) = 0
+ [HideInInspector]_ColorMaskAnimated ("Color Mask", Int) = 0
+ [HideInInspector]_OffsetFactorAnimated ("Offset Factor", Int) = 0
+ [HideInInspector]_OffsetUnitsAnimated ("Offset Units", Int) = 0
+ [HideInInspector]_IgnoreFogAnimated ("Ignore Fog", Int) = 0
+
+ // Blending Options
+ [HideInInspector]_BlendOpAnimated ("RGB Blend Op", Int) = 0
+ [HideInInspector]_BlendOpAlphaAnimated ("Alpha Blend Op", Int) = 0
+ [HideInInspector]_SrcBlendAnimated ("RGB Source Blend", Int) = 0
+ [HideInInspector]_DstBlendAnimated ("RGB Destination Blend", Int) = 0
+
+ // Stencils
+ [HideInInspector]_StencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_StencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_StencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_StencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_StencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_StencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_StencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Outline Stencil
+ [HideInInspector]_OutlineStencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_OutlineStencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_OutlineStencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_OutlineStencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_OutlineStencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Debug Options
+ [HideInInspector]_VertexUnwrapAnimated ("Unwrap", Range(0, 1)) = 0
+ [HideInInspector]_DebugMeshDataAnimated ("Mesh Data", Int) = 0
+ [HideInInspector]_DebugLightingDataAnimated ("Lighting Data", Int) = 0
+ [HideInInspector]_DebugCameraDataAnimated ("Camera Data", Int) = 0
+ }
+
+
+ //originalEditorCustomEditor "PoiToon"
+ CustomEditor "Thry.ShaderEditor"
+ SubShader
+ {
+ Tags { "RenderType" = "Opaque" "Queue" = "Geometry" }
+
+// //EnableOutlinePass
+// Pass
+// {
+// Name "Outline"
+// Tags { "LightMode" = "ForwardBase" }
+// Stencil
+// {
+// Ref [_OutlineStencilRef]
+// ReadMask [_OutlineStencilReadMask]
+// WriteMask [_OutlineStencilWriteMask]
+// Comp [_OutlineStencilCompareFunction]
+// Pass [_OutlineStencilPassOp]
+// Fail [_OutlineStencilFailOp]
+// ZFail [_OutlineStencilZFailOp]
+// }
+// ZTest [_ZTest]
+// ColorMask [_ColorMask]
+// Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
+// BlendOp [_BlendOp], [_BlendOpAlpha]
+// Blend [_SrcBlend] [_DstBlend]
+// ZWrite [_ZWrite]
+// AlphaToMask [_AlphaToMask]
+// Cull [_OutlineCull]
+// CGPROGRAM
+//
+// #pragma target 5.0
+// #define FORWARD_BASE_PASS
+// #define OUTLINE
+// float _Mode;
+// // patreon Additive
+// // Black Light Mask
+//// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+// // voronoi
+//// #pragma shader_feature CHROMATIC_ABERRATION
+// // UV Distortion
+//// #pragma shader_feature USER_LUT
+// // Vertex Offsets
+//// #pragma shader_feature AUTO_EXPOSURE
+// // Mirror
+//// #pragma shader_feature _REQUIRE_UV2
+// // Random
+//// #pragma shader_feature _SUNDISK_NONE
+// // Dissolve
+//// #pragma shader_feature DISTORT
+// // Lighting
+//// #pragma shader_feature VIGNETTE_MASKED
+// #pragma multi_compile_fwdbase
+// #pragma fragmentoption ARB_precision_hint_fastest
+// #pragma multi_compile_fog
+// #pragma multi_compile_instancing
+// #pragma vertex vert
+// #pragma fragment frag
+// #include "../Includes/CGI_PoiPassOutline.cginc"
+// ENDCG
+//
+// }
+ //EnableOutlinePass
+
+ Pass
+ {
+ Name "MainPass"
+ Tags { "LightMode" = "ForwardBase" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ AlphaToMask [_AlphaToMask]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend [_SrcBlend] [_DstBlend]
+
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_BASE_PASS
+ float _Mode;
+ // Base Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ #pragma multi_compile _ VERTEXLIGHT_ON
+ // patreon Base
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Grab Pass Blur
+// #pragma shader_feature CHROMATIC_ABERRATION_LOW
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Touch Color
+// #pragma shader_feature GRAIN
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdbase
+ #pragma fragmentoption ARB_precision_hint_fastest
+ #pragma multi_compile_fog
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+
+ //LightingAdditiveEnable
+ Pass
+ {
+ Name "ForwardAddPass"
+ Tags { "LightMode" = "ForwardAdd" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ ZWrite Off
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend One One
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_ADD_PASS
+ float _Mode;
+ // Add Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ // patreon Additive
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+// #pragma shader_feature _PARALLAX_MAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Disable Directionals
+// #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdadd_fullshadows
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ //LightingAdditiveEnable
+
+ //LightingCastShadows
+ Pass
+ {
+ Name "ShadowCasterPass"
+ Tags { "LightMode" = "ShadowCaster" }
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ AlphaToMask Off
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_SHADOW
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Dissolve
+// #pragma shader_feature DISTORT
+ #pragma multi_compile_instancing
+ #pragma vertex vertShadowCaster
+ #pragma fragment fragShadowCaster
+ #include "../Includes/CGI_PoiPassShadow.cginc"
+ ENDCG
+
+ }
+ //LightingCastShadows
+
+ Pass
+ {
+ Tags { "LightMode" = "Meta" }
+ Cull Off
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_META_PASS
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
new file mode 100644
index 00000000..0fb25ceb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/cheek_00-d55925e7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c95307557f187fc479fe881e4061aa80
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7.meta
new file mode 100644
index 00000000..fcda4e59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 1851a3aa076c2724abd77bca4d5e59d1
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets.meta
new file mode 100644
index 00000000..a19b32dd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 87799b0f6a548d74aae5ca5211914492
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders.meta
new file mode 100644
index 00000000..df02f654
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 3d3a5fa04070ec147a3f5c72b6149403
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders.meta
new file mode 100644
index 00000000..a2e79471
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 29a0529010f10dc44a60aaa1711d680b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon.meta
new file mode 100644
index 00000000..a5d2c2fb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f9ccf61285ce9ca4ba3e186e510da22f
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
new file mode 100644
index 00000000..9d22be9d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7e5a62ce2f952424e9c763d3a6e90a36
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
new file mode 100644
index 00000000..47683c72
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_ALPHA_TO_COVERAGE
+ #define POI_ALPHA_TO_COVERAGE
+
+ half _MainMipScale;
+ float _MainAlphaToCoverage;
+
+ float CalcMipLevel(float2 texture_coord)
+ {
+ float2 dx = ddx(texture_coord);
+ float2 dy = ddy(texture_coord);
+ float delta_max_sqr = max(dot(dx, dx), dot(dy, dy));
+
+ return 0.5 * log2(delta_max_sqr);
+ }
+
+ void ApplyAlphaToCoverage(inout float4 finalColor)
+ {
+ // Force Model Opacity to 1 if desired
+
+ if (float(0) == 1)
+ {
+
+ if(float(0))
+ {
+ // rescale alpha by mip level
+ finalColor.a *= 1 + max(0, CalcMipLevel(poiMesh.uv[0] * float4(0.0078125,0.0078125,128,128).zw)) * float(0.25);
+ // rescale alpha by partial derivative
+ finalColor.a = (finalColor.a - float(0.5)) / max(fwidth(finalColor.a), 0.0001) + float(0.5);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
new file mode 100644
index 00000000..a76b96a2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8c23d8ff1cdef014e885d57a93a9e86c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
new file mode 100644
index 00000000..e529136f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_BACKFACE
+ #define POI_BACKFACE
+
+ float _BackFaceEnabled;
+ float _BackFaceTextureUV;
+ float _BackFaceDetailIntensity;
+ float _BackFaceEmissionStrength;
+ float2 _BackFacePanning;
+ float _BackFaceHueShift;
+ float4 _BackFaceColor;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
+
+ float3 BackFaceColor;
+ void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
+ {
+ backFaceEmission = 0;
+ BackFaceColor = 0;
+
+ if (float(0))
+ {
+ if(!poiMesh.isFrontFace)
+ {
+ albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ backFaceDetailIntensity = float(1);
+ BackFaceColor = albedo.rgb;
+ mixedHueShift = float(0);
+ backFaceEmission = BackFaceColor * float(0);
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
new file mode 100644
index 00000000..a0c8e038
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 993dcc4686f36d0488074b79b4e44a19
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
new file mode 100644
index 00000000..750364ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
@@ -0,0 +1,54 @@
+#ifndef POI_BLACKLIGHT
+ #define POI_BLACKLIGHT
+
+ float4 _BlackLightMaskStart;
+ float4 _BlackLightMaskEnd;
+ float4 _BlackLightMaskKeys;
+ float _BlackLightMaskDebug;
+ float _BlackLightMaskDissolve;
+ float _BlackLightMaskMetallic;
+ float _BlackLightMaskClearCoat;
+ float _BlackLightMaskMatcap;
+ float _BlackLightMaskMatcap2;
+ float _BlackLightMaskEmission;
+ float _BlackLightMaskEmission2;
+ float _BlackLightMaskFlipbook;
+ float _BlackLightMaskPanosphere;
+ float _BlackLightMaskIridescence;
+
+ half _BlackLightMaskGlitter;
+
+ half4 blackLightMask;
+
+ void createBlackLightMask()
+ {
+ blackLightMask = 0;
+ #ifdef VERTEXLIGHT_ON
+
+ for (int lightIndex = 0; lightIndex < 4; lightIndex ++)
+ {
+ float3 lightPos = float3(unity_4LightPosX0[lightIndex], unity_4LightPosY0[lightIndex], unity_4LightPosZ0[lightIndex]);
+ if (!distance(unity_LightColor[lightIndex].rgb, float3(0, 0, 0)))
+ {
+ for (int maskIndex = 0; maskIndex < 4; maskIndex ++)
+ {
+ float4 comparison = _BlackLightMaskKeys;
+ if(unity_LightColor[lightIndex].a == comparison[maskIndex])
+ {
+ blackLightMask[maskIndex] = max(blackLightMask[maskIndex], smoothstep(_BlackLightMaskEnd[maskIndex], _BlackLightMaskStart[maskIndex], distance(poiMesh.worldPos, lightPos)));
+ }
+ }
+ }
+ }
+ #endif
+ }
+#endif
+
+/*
+#ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskDissolve != 4)
+ {
+ blackLightMask[mask];
+ }
+#endif
+*/
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
new file mode 100644
index 00000000..6ef746d7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 03e55a991fc6c8b40a62776497571cb4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
new file mode 100644
index 00000000..f87ae6dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
@@ -0,0 +1,39 @@
+#ifndef POI_BLENDING
+ #define POI_BLENDING
+
+ /*
+ 0: Zero float4(0.0, 0.0, 0.0, 0.0),
+ 1: One float4(1.0, 1.0, 1.0, 1.0),
+ 2: DstColor destinationColor,
+ 3: SrcColor sourceColor,
+ 4: OneMinusDstColor float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ 5: SrcAlpha sourceColor.aaaa,
+ 6: OneMinusSrcColor float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ 7: DstAlpha destinationColor.aaaa,
+ 8: OneMinusDstAlpha float4(1.0, 1.0, 1.0, 1.0) - destinationColor.,
+ 9: SrcAlphaSaturate saturate(sourceColor.aaaa),
+ 10: OneMinusSrcAlpha float4(1.0, 1.0, 1.0, 1.0) - sourceColor.aaaa,
+ */
+
+ float4 poiBlend(const float sourceFactor, const float4 sourceColor, const float destinationFactor, const float4 destinationColor, const float4 blendFactor)
+ {
+ float4 sA = 1-blendFactor;
+ const float4 blendData[11] = {
+ float4(0.0, 0.0, 0.0, 0.0),
+ float4(1.0, 1.0, 1.0, 1.0),
+ destinationColor,
+ sourceColor,
+ float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sA,
+ saturate(sourceColor.aaaa),
+ 1 - sA,
+ };
+
+ return lerp(blendData[sourceFactor] * sourceColor + blendData[destinationFactor] * destinationColor,sourceColor, sA);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
new file mode 100644
index 00000000..44ed9355
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 80b0e65d2e2fdd94e81e9c774ed6131a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
new file mode 100644
index 00000000..6e4db3fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_BULGE
+ #define POI_BULGE
+
+
+ sampler2D _BulgeMask;
+ float _BuldgeFadeLength;
+ float _BuldgeHeight;
+
+ void bulgyWolgy(inout v2f o)
+ {
+ float depth = DecodeFloatRG(tex2Dlod(_CameraDepthTexture, float4(o.grabPos.xy / o.grabPos.w, 0, 0)));
+ float bulgeMask = tex2Dlod(_BulgeMask, float4(o.uv0.xy, 0, 0));
+ depth = Linear01Depth(depth);
+
+ float intersect = 0;
+ if (depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(o.pos.z / o.pos.w));
+ if(diff > 0)
+ {
+ intersect = 1 - smoothstep(0, _ProjectionParams.w * _BuldgeFadeLength, diff);
+ }
+ }
+ float4 offset = intersect * _BuldgeHeight * float4(o.normal, 0);
+
+ offset = IsInMirror() ? 0: offset;
+ offset *= bulgeMask;
+
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos) + offset;
+ o.localPos = mul(unity_WorldToObject, o.worldPos);
+ o.pos = UnityObjectToClipPos(o.localPos);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
new file mode 100644
index 00000000..84b8d583
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 479f64e3b1248364bba2e223517664cf
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
new file mode 100644
index 00000000..5adf7340
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
@@ -0,0 +1,108 @@
+#ifndef POI_CLEARCOAT
+ #define POI_CLEARCOAT
+
+ samplerCUBE _ClearCoatCubeMap;
+ float _ClearCoatSampleWorld;
+ POI_TEXTURE_NOSAMPLER(_ClearCoatMask);
+ POI_TEXTURE_NOSAMPLER(_ClearCoatSmoothnessMap);
+ float _ClearCoatInvertSmoothness;
+ float _ClearCoat;
+ float _ClearCoatSmoothness;
+ float3 _ClearCoatTint;
+ float _ClearCoatNormalToUse;
+ float _ClearCoatForceLighting;
+ float lighty_clear_boy_uwu_var;
+
+
+ float3 CalculateClearCoatEnvironmentalReflections()
+ {
+ float3 reflectionColor;
+
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_ClearCoatSmoothnessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+ if (float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ float roughness = 1 - smoothnessMap;
+
+ lighty_clear_boy_uwu_var = 0;
+
+ float3 reflectedDir = float(0) == 0 ? poiCam.vertexReflectionDir: poiCam.reflectionDir;
+
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool no_probe = unity_SpecCube0_HDR.a == 0 && envSample.a == 0;
+
+
+ if(float(0) == 0 && no_probe == 0)
+ {
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflectionColor = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflectionColor = probe0;
+ }
+ }
+ else
+ {
+ lighty_clear_boy_uwu_var = 1;
+ reflectionColor = texCUBElod(_ClearCoatCubeMap, float4(reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+ }
+
+ if(float(0))
+ {
+ lighty_clear_boy_uwu_var = 1;
+ }
+
+ return reflectionColor * float4(1,1,1,1);
+ }
+
+ void calculateAndApplyClearCoat(inout float4 finalColor)
+ {
+ half clearCoatMap = POI2D_SAMPLER_PAN(_ClearCoatMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskClearCoat != 4)
+ {
+ clearCoatMap *= blackLightMask[_BlackLightMaskClearCoat];
+ }
+ #endif
+
+ half3 reflectionColor = CalculateClearCoatEnvironmentalReflections();
+
+ float NormalDotView = abs(dot(float(1), float(0) == 0 ? poiLight.N0DotV: poiLight.nDotV).r);
+ #ifdef POI_LIGHTING
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var), clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ //finalColor.rgb += reflectionColor;
+ //finalColor.rgb = finalColor.rgb * (1- (reflectionColor.r + reflectionColor.g + reflectionColor.b)/3) + reflectionColor * clearCoatMap * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var);
+ #else
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor, clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
new file mode 100644
index 00000000..237cd474
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 35ea76e2a600ae54183b5be029ee217a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
new file mode 100644
index 00000000..687dc443
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
@@ -0,0 +1,262 @@
+#ifndef POI_COLOR
+ #define POI_COLOR
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ static const float Epsilon = 1e-10;
+ // The weights of RGB contributions to luminance.
+ // Should sum to unity.
+ static const float3 HCYwts = float3(0.299, 0.587, 0.114);
+ static const float HCLgamma = 3;
+ static const float HCLy0 = 100;
+ static const float HCLmaxL = 0.530454533953517; // == exp(HCLgamma / HCLy0) - 0.5
+ static const float3 wref = float3(1.0, 1.0, 1.0);
+ #define TAU 6.28318531
+
+ float3 HUEtoRGB(in float H)
+ {
+ float R = abs(H * 6 - 3) - 1;
+ float G = 2 - abs(H * 6 - 2);
+ float B = 2 - abs(H * 6 - 4);
+ return saturate(float3(R, G, B));
+ }
+
+ float3 RGBtoHCV(in float3 RGB)
+ {
+ // Based on work by Sam Hocevar and Emil Persson
+ float4 P = (RGB.g < RGB.b) ? float4(RGB.bg, -1.0, 2.0 / 3.0): float4(RGB.gb, 0.0, -1.0 / 3.0);
+ float4 Q = (RGB.r < P.x) ? float4(P.xyw, RGB.r): float4(RGB.r, P.yzx);
+ float C = Q.x - min(Q.w, Q.y);
+ float H = abs((Q.w - Q.y) / (6 * C + Epsilon) + Q.z);
+ return float3(H, C, Q.x);
+ }
+
+ float3 HSVtoRGB(in float3 HSV)
+ {
+ float3 RGB = HUEtoRGB(HSV.x);
+ return((RGB - 1) * HSV.y + 1) * HSV.z;
+ }
+
+ float3 RGBtoHSV(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float S = HCV.y / (HCV.z + Epsilon);
+ return float3(HCV.x, S, HCV.z);
+ }
+
+ float3 HSLtoRGB(in float3 HSL)
+ {
+ float3 RGB = HUEtoRGB(HSL.x);
+ float C = (1 - abs(2 * HSL.z - 1)) * HSL.y;
+ return(RGB - 0.5) * C + HSL.z;
+ }
+
+ float3 RGBtoHSL(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float L = HCV.z - HCV.y * 0.5;
+ float S = HCV.y / (1 - abs(L * 2 - 1) + Epsilon);
+ return float3(HCV.x, S, L);
+ }
+
+ float3 HCYtoRGB(in float3 HCY)
+ {
+
+
+ float3 RGB = HUEtoRGB(HCY.x);
+ float Z = dot(RGB, HCYwts);
+ if (HCY.z < Z)
+ {
+ HCY.y *= HCY.z / Z;
+ }
+ else if(Z < 1)
+ {
+ HCY.y *= (1 - HCY.z) / (1 - Z);
+ }
+ return(RGB - Z) * HCY.y + HCY.z;
+ }
+
+ float3 RGBtoHCY(in float3 RGB)
+ {
+ // Corrected by David Schaeffer
+ float3 HCV = RGBtoHCV(RGB);
+ float Y = dot(RGB, HCYwts);
+ float Z = dot(HUEtoRGB(HCV.x), HCYwts);
+ if (Y < Z)
+ {
+ HCV.y *= Z / (Epsilon + Y);
+ }
+ else
+ {
+ HCV.y *= (1 - Z) / (Epsilon + 1 - Y);
+ }
+ return float3(HCV.x, HCV.y, Y);
+ }
+
+ float3 HCLtoRGB(in float3 HCL)
+ {
+ float3 RGB = 0;
+ if(HCL.z != 0)
+ {
+ float H = HCL.x;
+ float C = HCL.y;
+ float L = HCL.z * HCLmaxL;
+ float Q = exp((1 - C / (2 * L)) * (HCLgamma / HCLy0));
+ float U = (2 * L - C) / (2 * Q - 1);
+ float V = C / Q;
+ float A = (H + min(frac(2 * H) / 4, frac(-2 * H) / 8)) * pi * 2;
+ float T;
+ H *= 6;
+ if(H <= 0.999)
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.g = T / (1 + T);
+ }
+ else if(H <= 1.001)
+ {
+ RGB.r = 1;
+ RGB.g = 1;
+ }
+ else if(H <= 2)
+ {
+ T = tan(A);
+ RGB.r = (1 + T) / T;
+ RGB.g = 1;
+ }
+ else if(H <= 3)
+ {
+ T = tan(A);
+ RGB.g = 1;
+ RGB.b = 1 + T;
+ }
+ else if(H <= 3.999)
+ {
+ T = tan(A);
+ RGB.g = 1 / (1 + T);
+ RGB.b = 1;
+ }
+ else if(H <= 4.001)
+ {
+ RGB.g = 0;
+ RGB.b = 1;
+ }
+ else if(H <= 5)
+ {
+ T = tan(A);
+ RGB.r = -1 / T;
+ RGB.b = 1;
+ }
+ else
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.b = -T;
+ }
+ RGB = RGB * V + U;
+ }
+ return RGB;
+ }
+
+ float3 RGBtoHCL(in float3 RGB)
+ {
+ float3 HCL;
+ float H = 0;
+ float U = min(RGB.r, min(RGB.g, RGB.b));
+ float V = max(RGB.r, max(RGB.g, RGB.b));
+ float Q = HCLgamma / HCLy0;
+ HCL.y = V - U;
+ if(HCL.y != 0)
+ {
+ H = atan2(RGB.g - RGB.b, RGB.r - RGB.g) / pi;
+ Q *= U / V;
+ }
+ Q = exp(Q);
+ HCL.x = frac(H / 2 - min(frac(H), frac(-H)) / 6);
+ HCL.y *= Q;
+ HCL.z = lerp(-U, V, Q) / (HCLmaxL * 2);
+ return HCL;
+ }
+
+ //HSL MODIFT
+ float3 ModifyViaHSL(float3 color, float3 HSLMod)
+ {
+ float3 colorHSL = RGBtoHSL(color);
+ colorHSL.r = frac(colorHSL.r + HSLMod.r);
+ colorHSL.g = saturate(colorHSL.g + HSLMod.g);
+ colorHSL.b = saturate(colorHSL.b + HSLMod.b);
+ return HSLtoRGB(colorHSL);
+ }
+
+ float3 hueShift(float3 col, float hueAdjust)
+ {
+ hueAdjust *= 2 * pi;
+ const float3 k = float3(0.57735, 0.57735, 0.57735);
+ half cosAngle = cos(hueAdjust);
+ return col * cosAngle + cross(k, col) * sin(hueAdjust) + k * dot(k, col) * (1.0 - cosAngle);
+ }
+
+ float3 poiSaturation(float3 In, float Saturation)
+ {
+ float luma = dot(In, float3(0.2126729, 0.7151522, 0.0721750));
+ return luma.xxx + Saturation.xxx * (In - luma.xxx);
+ }
+ // LCH
+ float xyzF(float t)
+ {
+ return lerp(pow(t, 1. / 3.), 7.787037 * t + 0.139731, step(t, 0.00885645));
+ }
+ float xyzR(float t)
+ {
+ return lerp(t * t * t, 0.1284185 * (t - 0.139731), step(t, 0.20689655));
+ }
+ float3 rgb2lch(in float3 c)
+ {
+ c = mul(float3x3(0.4124, 0.3576, 0.1805,
+ 0.2126, 0.7152, 0.0722,
+ 0.0193, 0.1192, 0.9505), c);
+ c.x = xyzF(c.x / wref.x);
+ c.y = xyzF(c.y / wref.y);
+ c.z = xyzF(c.z / wref.z);
+ float3 lab = float3(max(0., 116.0 * c.y - 16.0), 500.0 * (c.x - c.y), 200.0 * (c.y - c.z));
+ return float3(lab.x, length(float2(lab.y, lab.z)), atan2(lab.z, lab.y));
+ }
+
+ float3 lch2rgb(in float3 c)
+ {
+ c = float3(c.x, cos(c.z) * c.y, sin(c.z) * c.y);
+
+ float lg = 1. / 116. * (c.x + 16.);
+ float3 xyz = float3(wref.x * xyzR(lg + 0.002 * c.y),
+ wref.y * xyzR(lg),
+ wref.z * xyzR(lg - 0.005 * c.z));
+
+ float3 rgb = mul(float3x3(3.2406, -1.5372, -0.4986,
+ - 0.9689, 1.8758, 0.0415,
+ 0.0557, -0.2040, 1.0570), xyz);
+
+ return rgb;
+ }
+
+ //cheaply lerp around a circle
+ float lerpAng(in float a, in float b, in float x)
+ {
+ float ang = fmod(fmod((a - b), TAU) + pi * 3., TAU) - pi;
+ return ang * x + b;
+ }
+
+ //Linear interpolation between two colors in Lch space
+ float3 lerpLch(in float3 a, in float3 b, in float x)
+ {
+ float hue = lerpAng(a.z, b.z, x);
+ return float3(lerp(b.xy, a.xy, x), hue);
+ }
+
+ float3 poiExpensiveColorBlend(float3 col1, float3 col2, float alpha)
+ {
+ return lch2rgb(lerpLch(rgb2lch(col1), rgb2lch(col2), alpha));
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
new file mode 100644
index 00000000..a5c20419
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4faeba17278d70442a984f1ee783e111
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
new file mode 100644
index 00000000..cd354f85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
@@ -0,0 +1,249 @@
+#ifndef POI_DATA
+ #define POI_DATA
+
+ float _ParallaxBias;
+ float _LightingAdditiveLimitIntensity;
+ float _LightingAdditiveMaxIntensity;
+ POI_TEXTURE_NOSAMPLER(_BumpMap);
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailMask);
+ POI_TEXTURE_NOSAMPLER(_DetailNormalMap);
+ float _DetailNormalMapScale;
+ #endif
+ float _BumpScale;
+
+ void calculateAttenuation(v2f i)
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if defined(POINT) || defined(SPOT)
+ POI_LIGHT_ATTENUATION(attenuation, shadow, i, i.worldPos.xyz)
+ poiLight.additiveShadow = shadow;
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ poiLight.additiveShadow == 0;
+ #endif
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ // fix for rare bug where light atten is 0 when there is no directional light in the scene
+ #ifdef FORWARD_BASE_PASS
+ if (all(_LightColor0.rgb == 0.0))
+ {
+ attenuation = 1.0;
+ }
+ #endif
+ #endif
+ poiLight.attenuation = attenuation;
+ }
+
+ void calculateVertexLightingData(in v2f i)
+ {
+ #ifdef VERTEXLIGHT_ON
+ float4 toLightX = unity_4LightPosX0 - i.worldPos.x;
+ float4 toLightY = unity_4LightPosY0 - i.worldPos.y;
+ float4 toLightZ = unity_4LightPosZ0 - i.worldPos.z;
+ float4 lengthSq = 0;
+ lengthSq += toLightX * toLightX;
+ lengthSq += toLightY * toLightY;
+ lengthSq += toLightZ * toLightZ;
+
+ float4 lightAttenSq = unity_4LightAtten0;
+ float4 atten = 1.0 / (1.0 + lengthSq * lightAttenSq);
+ float4 vLightWeight = saturate(1 - (lengthSq * lightAttenSq / 25));
+ poiLight.vAttenuation = min(atten, vLightWeight * vLightWeight);
+
+ poiLight.vDotNL = 0;
+ poiLight.vDotNL += toLightX * poiMesh.normals[1].x;
+ poiLight.vDotNL += toLightY * poiMesh.normals[1].y;
+ poiLight.vDotNL += toLightZ * poiMesh.normals[1].z;
+
+ float4 corr = rsqrt(lengthSq);
+ poiLight.vDotNL = max(0, poiLight.vDotNL * corr);
+ poiLight.vAttenuationDotNL = poiLight.vAttenuation * poiLight.vDotNL;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vPosition[index] = float3(unity_4LightPosX0[index], unity_4LightPosY0[index], unity_4LightPosZ0[index]);
+
+ float3 vertexToLightSource = poiLight.vPosition[index] - poiMesh.worldPos;
+ poiLight.vDirection[index] = normalize(vertexToLightSource);
+ //poiLight.vAttenuationDotNL[index] = 1.0 / (1.0 + unity_4LightAtten0[index] * poiLight.vDotNL[index]);
+ poiLight.vColor[index] = unity_LightColor[index].rgb;
+
+ if (float(0) == 1)
+ {
+ float intensity = max(0.001, (0.299 * poiLight.vColor[index].r + 0.587 * poiLight.vColor[index].g + 0.114 * poiLight.vColor[index].b));
+ poiLight.vColor[index] = min(poiLight.vColor[index], poiLight.vColor[index] / (intensity / float(1)));
+ }
+ poiLight.vHalfDir[index] = Unity_SafeNormalize(poiLight.vDirection[index] + poiCam.viewDir);
+ poiLight.vDotNL[index] = dot(poiMesh.normals[1], -poiLight.vDirection[index]);
+ poiLight.vCorrectedDotNL[index] = .5 * (poiLight.vDotNL[index] + 1);
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.vDotLH[index] = saturate(dot(poiLight.vDirection[index], poiLight.vHalfDir[index]));
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.vDotNH[index] = saturate(dot(poiMesh.normals[1], poiLight.vHalfDir[index]));
+ #endif
+ }
+ #endif
+ }
+
+ void calculateLightingData(in v2f i)
+ {
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ float3 magic = max(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb;
+ poiLight.color = magic + normalLight;
+ #else
+ #ifdef FORWARD_ADD_PASS
+ poiLight.color = _LightColor0.rgb;
+
+
+ if (float(0) == 1)
+ {
+ float additiveLightIntensity = max(0.001, (0.299 * poiLight.color.r + 0.587 * poiLight.color.g + 0.114 * poiLight.color.b));
+ poiLight.color = min(poiLight.color, poiLight.color / (additiveLightIntensity / float(1)));
+ }
+ #endif
+ #endif
+
+ #ifdef FORWARD_BASE_PASS
+ poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ #else
+ #if defined(POINT) || defined(SPOT)
+ poiLight.direction = normalize(_WorldSpaceLightPos0.xyz - i.worldPos);
+ #else
+ poiLight.direction = _WorldSpaceLightPos0;
+ #endif
+ #endif
+
+ poiLight.halfDir = normalize(poiLight.direction + poiCam.viewDir);
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.dotNH = saturate(dot(poiMesh.normals[1], poiLight.halfDir));
+ #endif
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.dotLH = saturate(dot(poiLight.direction, poiLight.halfDir));
+ #endif
+
+ poiLight.nDotV = dot(poiMesh.normals[1], poiCam.viewDir);
+ poiLight.N0DotV = dot(poiMesh.normals[0], poiCam.viewDir);
+ poiLight.nDotL = dot(poiMesh.normals[1], poiLight.direction);
+ poiLight.nDotH = dot(poiMesh.normals[1], poiLight.halfDir);
+ poiLight.lDotv = dot(poiLight.direction, poiCam.viewDir);
+ poiLight.lDotH = dot(poiLight.direction, poiLight.halfDir);
+ }
+
+ float3 CreateBinormal(float3 normal, float3 tangent, float binormalSign)
+ {
+ return cross(normal, tangent.xyz) * (binormalSign * unity_WorldTransformParams.w);
+ }
+
+ void InitializeMeshData(inout v2f i, uint facing)
+ {
+ poiMesh.isFrontFace = facing;
+ poiMesh.normals[0] = normalize(i.normal);
+ poiMesh.binormal = CreateBinormal(i.normal, i.tangent.xyz, i.tangent.w);
+ poiMesh.tangent = i.tangent.xyz;
+
+ #ifndef OUTLINE
+ if(!poiMesh.isFrontFace)
+ {
+ poiMesh.normals[0] *= -1;
+ poiMesh.tangent *= -1;
+ poiMesh.binormal *= -1;
+ }
+ #endif
+
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+ poiMesh.barycentricCoordinates = i.barycentricCoordinates;
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ #ifdef POI_UV_DISTORTION
+ poiMesh.uv[4] = calculateDistortionUV(i.uv0.xy);
+ #else
+ poiMesh.uv[4] = poiMesh.uv[0];
+ #endif
+
+ poiMesh.vertexColor = i.vertexColor;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ poiMesh.lightmapUV = i.lightmapUV;
+ #endif
+ poiMesh.modelPos = i.modelPos;
+
+ #ifdef FUR
+ poiMesh.furAlpha = i.furAlpha;
+ #endif
+ }
+
+ void initializeCamera(v2f i)
+ {
+ poiCam.viewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
+ poiCam.forwardDir = getCameraForward();
+ poiCam.worldPos = _WorldSpaceCameraPos;
+ poiCam.distanceToModel = distance(poiMesh.modelPos, poiCam.worldPos);
+ poiCam.distanceToVert = distance(poiMesh.worldPos, poiCam.worldPos);
+ poiCam.grabPos = i.grabPos;
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ poiCam.clipPos = i.pos;
+ #if defined(GRAIN)
+ poiCam.worldDirection = i.worldDirection;
+ #endif
+
+ poiCam.tangentViewDir = normalize(i.tangentViewDir);
+ poiCam.tangentViewDir.xy /= (poiCam.tangentViewDir.z + float(0.42));
+ }
+
+ void calculateTangentData()
+ {
+ poiTData.tangentTransform = float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]);
+ poiTData.tangentToWorld = transpose(float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]));
+ }
+
+ void CalculateReflectionData()
+ {
+ #if defined(_METALLICGLOSSMAP) || defined(_COLORCOLOR_ON)
+ poiCam.reflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[1]);
+ poiCam.vertexReflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[0]);
+ #endif
+ }
+
+ void calculateNormals(inout half3 detailMask)
+ {
+ half3 mainNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_BumpMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ #ifdef FINALPASS
+ detailMask = POI2D_SAMPLER_PAN(_DetailMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(1) > 0)
+ {
+ half3 detailNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_DetailNormalMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1) * detailMask.g);
+ poiMesh.tangentSpaceNormal = BlendNormals(mainNormal, detailNormal);
+ }
+ else
+ {
+ poiMesh.tangentSpaceNormal = mainNormal;
+ }
+ #else
+ poiMesh.tangentSpaceNormal = mainNormal;
+ #endif
+
+ #ifdef POI_RGBMASK
+ calculateRGBNormals(poiMesh.tangentSpaceNormal);
+ #endif
+
+ poiMesh.normals[1] = normalize(
+ poiMesh.tangentSpaceNormal.x * poiMesh.tangent +
+ poiMesh.tangentSpaceNormal.y * poiMesh.binormal +
+ poiMesh.tangentSpaceNormal.z * poiMesh.normals[0]
+ );
+
+ poiCam.viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[1]));
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
new file mode 100644
index 00000000..7434e416
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7db4228454f654342acb5a793c0660d6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
new file mode 100644
index 00000000..125d2cd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
@@ -0,0 +1,107 @@
+#ifndef POI_DEBUG
+ #define POI_DEBUG
+
+ float _DebugEnabled;
+ float _DebugMeshData;
+ float _DebugLightingData;
+ float _DebugCameraData;
+
+ void displayDebugInfo(inout float4 finalColor)
+ {
+
+ if (float(0) != 0)
+ {
+ //Mesh Data
+ if (float(0) == 1)
+ {
+ finalColor.rgb = poiMesh.normals[0];
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiMesh.normals[1];
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiMesh.tangent;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiMesh.binormal;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiMesh.localPos;
+ return;
+ }
+
+ #ifdef POI_LIGHTING
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiLight.attenuation;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiLight.directLighting;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiLight.indirectLighting;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiLight.lightMap;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiLight.rampedLightMap;
+ return;
+ }
+ else if(float(0) == 6)
+ {
+ finalColor.rgb = poiLight.finalLighting;
+ return;
+ }
+ else if(float(0) == 7)
+ {
+ finalColor.rgb = poiLight.nDotL;
+ return;
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiCam.viewDir;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiCam.tangentViewDir;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiCam.forwardDir;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiCam.worldPos;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiCam.viewDotNormal;
+ return;
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
new file mode 100644
index 00000000..a99b1b7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c57c48506daa2fe46b753fcdd48229b4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
new file mode 100644
index 00000000..280fcbc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_DECAL
+ #define POI_DECAL
+
+ POI_TEXTURE_NOSAMPLER(_DecalTexture);
+ POI_TEXTURE_NOSAMPLER(_DecalMask);
+ float4 _DecalColor;
+ fixed _DecalTiled;
+ fixed _DecalBlendAdd;
+ fixed _DecalBlendMultiply;
+ fixed _DecalBlendReplace;
+ half _DecalRotation;
+ half2 _DecalScale;
+ half2 _DecalPosition;
+ half _DecalRotationSpeed;
+ float _DecalEmissionStrength;
+
+ void applyDecal(inout float4 albedo, inout float3 decalEmission)
+ {
+ float2 uv = poiMesh.uv[float(0)];
+ float2 decalCenter = float4(0.5,0.5,0,0);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - decalCenter.x) * cs - (uv.y - decalCenter.y) * sn + decalCenter.x, (uv.x - decalCenter.x) * sn + (uv.y - decalCenter.y) * cs + decalCenter.y);
+ uv = remap(uv, float2(0, 0) - float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float2(0, 0), float2(1, 1));
+
+ half decalAlpha = 1;
+ //float2 uv = TRANSFORM_TEX(poiMesh.uv[float(0)], _DecalTexture) + _Time.x * float4(0,0,0,0);
+ float4 decalColor = POI2D_SAMPLER_PAN(_DecalTexture, _MainTex, uv, float4(0,0,0,0)) * float4(1,1,1,1);
+ decalAlpha *= POI2D_SAMPLER_PAN(_DecalMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if (!float(0))
+ {
+ if(uv.x > 1 || uv.y > 1 || uv.x < 0 || uv.y < 0)
+ {
+ decalAlpha = 0;
+ }
+ }
+
+ if(float(0))
+ {
+ albedo.rgb = lerp(albedo.rgb, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb *= lerp(1, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb += decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+ albedo = saturate(albedo);
+ decalEmission = decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
new file mode 100644
index 00000000..fbc2ad7e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 5e6884b994a4a554196485b664a41ad0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
new file mode 100644
index 00000000..9b70067a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
@@ -0,0 +1,21 @@
+#ifndef POI_DEFINES
+ #define POI_DEFINES
+
+ #define DielectricSpec float4(0.04, 0.04, 0.04, 1.0 - 0.04)
+
+ #ifdef _SPECGLOSSMAP // Specular
+ #ifndef POI_VAR_DOTNH
+ #define POI_VAR_DOTNH
+ #endif
+ #ifndef POI_VAR_DOTLH
+ #define POI_VAR_DOTLH
+ #endif
+ #endif
+
+ #ifdef VIGNETTE_MASKED // Lighting
+ #ifndef POI_VAR_DOTNL
+ #define POI_VAR_DOTNL
+ #endif
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
new file mode 100644
index 00000000..d860cff9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0f852122d50103744813b5e22bddc0dd
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
new file mode 100644
index 00000000..828460bc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
@@ -0,0 +1,112 @@
+#ifndef POI_DEPTH_COLOR
+ #define POI_DEPTH_COLOR
+
+ float4 _DepthGlowColor;
+ float _DepthGlowEmission;
+ float _FadeLength;
+ float _DepthAlphaMin;
+ float _DepthAlphaMax;
+ POI_TEXTURE_NOSAMPLER(_DepthGradient);
+ POI_TEXTURE_NOSAMPLER(_DepthMask);
+ float _DepthGradientTextureUV;
+ float _DepthGradientBlend;
+
+ /*
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, float4 worldDirection, float4 clipPos)
+ {
+ float3 touchEmission = 0;
+ if (!IsInMirror())
+ {
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+ float depth = DecodeFloatRG(tex2Dproj(_CameraDepthTexture, worldDirection));
+ depth = Linear01Depth(depth);
+ if(depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(clipPos.z));
+ float intersect = 0;
+ if(diff > 0)
+ {
+ intersect = clamp(1 - smoothstep(0, _ProjectionParams.w * fadeLength, diff), 0, 1);
+ }
+ half4 depthGradient = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthGradient, _MainTex, intersect);
+ half3 depthMask = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthMask, _MainTex, poiMesh.uv[0]);
+ half3 depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+ }
+ }
+ depthTouchEmission = touchEmission;
+ }
+ */
+
+ inline float CorrectedLinearEyeDepth(float z, float B)
+ {
+ return 1.0 / (z / PM._34 + B);
+ }
+
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, in float4 worldDirection)
+ {
+ float3 touchEmission = 0;
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+
+ float perspectiveDivide = 1.0f / poiCam.clipPos.w;
+ float4 direction = worldDirection * perspectiveDivide;
+ float2 screenPos = poiCam.grabPos.xy * perspectiveDivide;
+ float z = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, screenPos);
+
+ #if UNITY_REVERSED_Z
+ if (z == 0)
+ #else
+ if(z == 1)
+ #endif
+ return;
+
+ float depth = CorrectedLinearEyeDepth(z, direction.w);
+ float3 worldpos = direction * depth + _WorldSpaceCameraPos.xyz;
+ /*
+ finalColor.rgb = frac(worldpos);
+ return;
+ */
+
+ float diff = distance(worldpos, poiMesh.worldPos);
+ float intersect = 0;
+ intersect = clamp(1 - smoothstep(0, fadeLength, diff), 0, 1);
+ half3 depthMask = POI2D_SAMPLER_PAN(_DepthMask, _MainTex, poiMesh.uv[_DepthMaskUV], _DepthMaskPan);
+
+ half4 depthGradient = 0;
+ half3 depthColor = 0;
+
+
+ if (_DepthGradientTextureUV == 0)
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, float2(intersect, intersect), _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ }
+ else
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, poiMesh.uv[_DepthGradientUV], _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb * intersect;
+ }
+
+
+ if(_DepthGradientBlend == 0) // rpelace
+ {
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ }
+ else if(_DepthGradientBlend == 1) // add
+ {
+ finalColor.rgb += depthColor * intersect * depthMask;
+ }
+ else if(_DepthGradientBlend == 2) // multiply
+ {
+ finalColor.rgb *= lerp(1, depthColor, intersect * depthMask);
+ }
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect * depthMask);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+
+ depthTouchEmission = touchEmission;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
new file mode 100644
index 00000000..e635c8a4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b086c4f931420284085baf7f66c2b30f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
new file mode 100644
index 00000000..13175f00
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
@@ -0,0 +1,171 @@
+#ifndef POI_DISSOLVE
+ #define POI_DISSOLVE
+
+ float _DissolveType;
+ float _DissolveEdgeWidth;
+ float4 _DissolveEdgeColor;
+ sampler2D _DissolveEdgeGradient; float4 _DissolveEdgeGradient_ST;
+ float _DissolveEdgeEmission;
+ float4 _DissolveTextureColor;
+
+ POI_TEXTURE_NOSAMPLER(_DissolveToTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveNoiseTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveDetailNoise);
+ POI_TEXTURE_NOSAMPLER(_DissolveMask);
+
+ float _DissolveMaskInvert;
+ float _DissolveAlpha;
+ float _ContinuousDissolve;
+ float _DissolveDetailStrength;
+ float _DissolveEdgeHardness;
+ float _DissolveInvertNoise;
+ float _DissolveInvertDetailNoise;
+ float _DissolveToEmissionStrength;
+
+ // Point to Point
+ float _DissolveP2PWorldLocal;
+ float _DissolveP2PEdgeLength;
+ float4 _DissolveStartPoint;
+ float4 _DissolveEndPoint;
+
+ // World Dissolve
+ float _DissolveWorldShape;
+ float4 _DissolveShapePosition;
+ float4 _DissolveShapeRotation;
+ float _DissolveShapeScale;
+ float _DissolveInvertShape;
+ float _DissolveShapeEdgeLength;
+
+ float _DissolveAlpha0;
+ float _DissolveAlpha1;
+ float _DissolveAlpha2;
+ float _DissolveAlpha3;
+ float _DissolveAlpha4;
+ float _DissolveAlpha5;
+ float _DissolveAlpha6;
+ float _DissolveAlpha7;
+ float _DissolveAlpha8;
+ float _DissolveAlpha9;
+
+ // Masking
+ float _DissolveEmissionSide;
+ float _DissolveEmission1Side;
+ float _DissolveUseVertexColors;
+
+ float4 edgeColor;
+ float edgeAlpha;
+ float dissolveAlpha;
+ float4 dissolveToTexture;
+ //Globals
+
+
+ void calculateDissolve(inout float4 albedo, inout float3 dissolveEmission)
+ {
+
+ float dissolveMask = POI2D_SAMPLER_PAN(_DissolveMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+
+ if (float(0))
+ {
+ // Vertex Color Imprecision hype
+ dissolveMask = ceil(poiMesh.vertexColor.g * 100000) / 100000;
+ }
+
+ dissolveToTexture = POI2D_SAMPLER_PAN(_DissolveToTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ float dissolveNoiseTexture = POI2D_SAMPLER_PAN(_DissolveNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ float da = float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0);
+ da = saturate(da);
+
+ float dds = float(0.1);
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskDissolve != 4)
+ {
+ dissolveMask *= blackLightMask[_BlackLightMaskDissolve];
+ }
+ #endif
+
+ if(float(0))
+ {
+ dissolveMask = 1 - dissolveMask;
+ }
+
+ float dissolveDetailNoise = POI2D_SAMPLER_PAN(_DissolveDetailNoise, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(0))
+ {
+ dissolveNoiseTexture = 1 - dissolveNoiseTexture;
+ }
+ if(float(0))
+ {
+ dissolveDetailNoise = 1 - dissolveDetailNoise;
+ }
+ if(float(0) != 0)
+ {
+ da = sin(_Time.y * float(0)) * .5 + .5;
+ }
+ da *= dissolveMask;
+ dissolveAlpha = da;
+ edgeAlpha = 0;
+
+
+ if(float(1) == 1) // Basic
+ {
+ da = remap(da, 0, 1, -float(0.025), 1);
+ dissolveAlpha = da;
+ //Adjust detail strength to avoid artifacts
+ dds *= smoothstep(1, .99, da);
+ float noise = saturate(dissolveNoiseTexture - dissolveDetailNoise * dds);
+
+ noise = saturate(noise + 0.001);
+ //noise = remap(noise, 0, 1, float(0.025), 1 - float(0.025));
+ dissolveAlpha = dissolveAlpha >= noise;
+ edgeAlpha = remapClamped(noise, da + float(0.025), da, 0, 1) * (1 - dissolveAlpha);
+ }
+ else if (float(1) == 2) // Point to Point
+ {
+ float3 direction;
+ float3 currentPos;
+ float distanceTo = 0;
+ direction = normalize(float4(0,1,0,0) - float4(0,-1,0,0));
+ currentPos = lerp(float4(0,-1,0,0), float4(0,1,0,0), dissolveAlpha);
+ if (float(0) == 0)
+ {
+ distanceTo = dot(poiMesh.localPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ else
+ {
+ distanceTo = dot(poiMesh.worldPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ }
+
+ albedo = lerp(albedo, dissolveToTexture, dissolveAlpha);
+
+
+ if(float(0.025))
+ {
+ edgeColor = tex2D(_DissolveEdgeGradient, TRANSFORM_TEX(float2(edgeAlpha, edgeAlpha), _DissolveEdgeGradient)) * float4(1,1,1,1);
+ albedo.rgb = lerp(albedo.rgb, edgeColor.rgb, smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+ dissolveEmission = lerp(0, dissolveToTexture * float(0), dissolveAlpha) + lerp(0, edgeColor.rgb * float(0), smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
new file mode 100644
index 00000000..07318f3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 04d8f187b40aee041898d427de922690
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
new file mode 100644
index 00000000..91efad39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_DITHERING
+ #define POI_DITHERING
+ fixed _DitheringEnabled;
+ fixed _DitherGradient;
+
+ half calcDither(half2 grabPos)
+ {
+ half dither = Dither8x8Bayer(fmod(grabPos.x, 8), fmod(grabPos.y, 8));
+ return dither;
+ }
+
+ #ifndef POI_SHADOW
+ void applyDithering(inout float4 finalColor)
+ {
+
+ if (float(0))
+ {
+ half dither = calcDither(poiCam.screenUV.xy);
+ finalColor.a = finalColor.a - (dither * (1 - finalColor.a) * float(0.1));
+ }
+ }
+ #else
+ void applyShadowDithering(inout float alpha, float2 screenUV)
+ {
+
+ if(float(0))
+ {
+ half dither = calcDither(screenUV);
+ alpha = alpha - (dither * (1 - alpha) * float(0.1));
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
new file mode 100644
index 00000000..bc7122a3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3abc340ca2a7d0e4d87ace8f05e6df28
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
new file mode 100644
index 00000000..4888c2ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
@@ -0,0 +1,240 @@
+#ifndef POI_EMISSION
+ #define POI_EMISSION
+
+ float4 _EmissionColor;
+ POI_TEXTURE_NOSAMPLER(_EmissionMap);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve); float4 _EmissionScrollingCurve_ST;
+ float _EmissionBaseColorAsMap;
+ float _EmissionStrength;
+ float _EnableEmission;
+ float _EmissionHueShift;
+ float4 _EmissiveScroll_Direction;
+ float _EmissiveScroll_Width;
+ float _EmissiveScroll_Velocity;
+ float _EmissiveScroll_Interval;
+ float _EmissionBlinkingEnabled;
+ float _EmissiveBlink_Min;
+ float _EmissiveBlink_Max;
+ float _EmissiveBlink_Velocity;
+ float _ScrollingEmission;
+ float _EnableGITDEmission;
+ float _GITDEMinEmissionMultiplier;
+ float _GITDEMaxEmissionMultiplier;
+ float _GITDEMinLight;
+ float _GITDEMaxLight;
+ float _GITDEWorldOrMesh;
+ float _EmissionCenterOutEnabled;
+ float _EmissionCenterOutSpeed;
+ float _EmissionHueShiftEnabled;
+ float _EmissionBlinkingOffset;
+ float _EmissionScrollingOffset;
+
+ float4 _EmissionColor1;
+ #ifdef EFFECT_HUE_VARIATION
+ POI_TEXTURE_NOSAMPLER(_EmissionMap1);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask1);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve1); float4 _EmissionScrollingCurve1_ST;
+ #endif
+ float _EmissionBaseColorAsMap1;
+ float _EmissionStrength1;
+ float _EnableEmission1;
+ float _EmissionHueShift1;
+ float4 _EmissiveScroll_Direction1;
+ float _EmissiveScroll_Width1;
+ float _EmissiveScroll_Velocity1;
+ float _EmissiveScroll_Interval1;
+ float _EmissionBlinkingEnabled1;
+ float _EmissiveBlink_Min1;
+ float _EmissiveBlink_Max1;
+ float _EmissiveBlink_Velocity1;
+ float _ScrollingEmission1;
+ float _EnableGITDEmission1;
+ float _GITDEMinEmissionMultiplier1;
+ float _GITDEMaxEmissionMultiplier1;
+ float _GITDEMinLight1;
+ float _GITDEMaxLight1;
+ float _GITDEWorldOrMesh1;
+ float _EmissionCenterOutEnabled1;
+ float _EmissionCenterOutSpeed1;
+ float _EmissionHueShiftEnabled1;
+ float _EmissionBlinkingOffset1;
+ float _EmissionScrollingOffset1;
+
+ float _EmissionReplace;
+
+ float _EmissionScrollingVertexColor;
+ float _EmissionScrollingVertexColor1;
+
+ float _EmissionScrollingUseCurve;
+ float _EmissionScrollingUseCurve1;
+
+ float calculateGlowInTheDark(in float minLight, in float maxLight, in float minEmissionMultiplier, in float maxEmissionMultiplier, in float enabled)
+ {
+ float glowInTheDarkMultiplier = 1;
+
+ if (enabled)
+ {
+ #ifdef POI_LIGHTING
+ float3 lightValue = float(0) ? poiLight.finalLighting.rgb: poiLight.directLighting.rgb;
+ float gitdeAlpha = (clamp(poiMax(lightValue), minLight, maxLight) - minLight) / (maxLight - minLight);
+ glowInTheDarkMultiplier = lerp(minEmissionMultiplier, maxEmissionMultiplier, gitdeAlpha);
+ #endif
+ }
+ return glowInTheDarkMultiplier;
+ }
+
+ float calculateScrollingEmission(in float3 direction, in float velocity, in float interval, in float scrollWidth, float offset, float3 position)
+ {
+ float phase = 0;
+ phase = dot(position, direction);
+ phase -= (_Time.y + offset) * velocity;
+ phase /= interval;
+ phase -= floor(phase);
+ phase = saturate(phase);
+ return(pow(phase, scrollWidth) + pow(1 - phase, scrollWidth * 4)) * 0.5;
+ }
+
+ float calculateBlinkingEmission(in float blinkMin, in float blinkMax, in float blinkVelocity, float offset)
+ {
+ float amplitude = (blinkMax - blinkMin) * 0.5f;
+ float base = blinkMin + amplitude;
+ return sin((_Time.y + offset) * blinkVelocity) * amplitude + base;
+ }
+
+ float3 calculateEmissionNew(in float4 baseColor, inout float4 finalColor)
+ {
+ // First Emission
+ float3 emission0 = 0;
+ float emissionStrength0 = float(0);
+ float3 emissionColor0 = 0;
+
+ float glowInTheDarkMultiplier0 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor0 = POI2D_SAMPLER_PAN(_EmissionMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+ else
+ {
+ emissionColor0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve) + (dot(pos, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength0 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos);
+ }
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor0 = hueShift(emissionColor0, float(0) * float(0));
+ float emissionMask0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask) + _Time.x * float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission != 4)
+ {
+ emissionMask0 *= blackLightMask[_BlackLightMaskEmission];
+ }
+ #endif
+
+ emissionStrength0 *= glowInTheDarkMultiplier0 * emissionMask0;
+ emission0 = emissionStrength0 * emissionColor0;
+
+ #ifdef POI_DISSOLVE
+
+ if(float(2) != 2)
+ {
+ emission0 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+
+ // Second Emission
+ float3 emission1 = 0;
+ float emissionStrength1 = 0;
+ float3 emissionColor1 = 0;
+
+ #ifdef EFFECT_HUE_VARIATION
+ emissionStrength1 = float(0);
+ float glowInTheDarkMultiplier1 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor1 = POI2D_SAMPLER_PAN(_EmissionMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ emissionColor1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap1, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)).rgb * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos1 = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos1 = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength1 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve1) + (dot(pos1, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength1 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos1);
+ }
+ }
+
+ if(float(0))
+ {
+ emissionStrength1 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor1 = hueShift(emissionColor1, float(0) * float(0));
+ float emissionMask1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask1) + _Time.x * float4(0,0,0,0));
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission2 != 4)
+ {
+ emissionMask1 *= blackLightMask[_BlackLightMaskEmission2];
+ }
+ #endif
+ emissionStrength1 *= glowInTheDarkMultiplier1 * emissionMask1;
+ emission1 = emissionStrength1 * emissionColor1;
+
+ #ifdef POI_DISSOLVE
+ if(float(2) != 2)
+ {
+ emission1 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+ #endif
+ finalColor.rgb = lerp(finalColor.rgb, saturate(emissionColor0 + emissionColor1), saturate(emissionStrength0 + emissionStrength1) * float(0) * poiMax(emission0 + emission1));
+
+ return emission0 + emission1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
new file mode 100644
index 00000000..b65fc33d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8ee2f89d89c55ec409bc3cf77e5d3abe
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
new file mode 100644
index 00000000..1e9188ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
@@ -0,0 +1,43 @@
+#ifndef POI_ENVIRONMENTAL_RIM
+ #define POI_ENVIRONMENTAL_RIM
+
+ //enviro rim
+ float _EnableEnvironmentalRim;
+ POI_TEXTURE_NOSAMPLER(_RimEnviroMask);
+ float _RimEnviroBlur;
+ float _RimEnviroMinBrightness;
+ float _RimEnviroWidth;
+ float _RimEnviroSharpness;
+ float _RimEnviroIntensity;
+
+ float3 calculateEnvironmentalRimLighting(in float4 albedo)
+ {
+ float enviroRimAlpha = saturate(1 - smoothstep(min(float(0), float(0.45)), float(0.45), poiCam.viewDotNormal));
+ float(0.7) *= 1.7 - 0.7 * float(0.7);
+
+ float3 enviroRimColor = 0;
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if (interpolator < 0.99999)
+ {
+ //Probe 1
+ float4 reflectionData0 = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor0 = DecodeHDR(reflectionData0, unity_SpecCube0_HDR);
+
+ //Probe 2
+ float4 reflectionData1 = UNITY_SAMPLE_TEXCUBE_SAMPLER_LOD(unity_SpecCube1, unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor1 = DecodeHDR(reflectionData1, unity_SpecCube1_HDR);
+
+ enviroRimColor = lerp(reflectionColor1, reflectionColor0, interpolator);
+ }
+ else
+ {
+ float4 reflectionData = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ enviroRimColor = DecodeHDR(reflectionData, unity_SpecCube0_HDR);
+ }
+
+ half enviroMask = poiMax(POI2D_SAMPLER_PAN(_RimEnviroMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb);
+ return lerp(0, max(0, (enviroRimColor - float(0)) * albedo.rgb), enviroRimAlpha).rgb * enviroMask * float(1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
new file mode 100644
index 00000000..6e7384c4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4a492ba8f25e50c428985245ff34ac46
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
new file mode 100644
index 00000000..0ed89b59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
@@ -0,0 +1,153 @@
+#ifndef POI_FLIPBOOK
+ #define POI_FLIPBOOK
+
+ UNITY_DECLARE_TEX2DARRAY(_FlipbookTexArray); float4 _FlipbookTexArray_ST;
+ float4 _FlipbookColor;
+ float _FlipbookFPS;
+ float _FlipbookTotalFrames;
+ float4 _FlipbookScaleOffset;
+ float _FlipbookTiled;
+ float _FlipbookCurrentFrame;
+ float _FlipbookEmissionStrength;
+ float _FlipbookRotation;
+ float _EnableFlipbook;
+ float _FlipbookTexArrayUV;
+ float _FlipbookAlphaControlsFinalAlpha;
+ float _FlipbookRotationSpeed;
+ float _FlipbookIntensityControlsAlpha;
+ float _FlipbookColorReplaces;
+ float2 _FlipbookTexArrayPan;
+
+ // blending
+ float _FlipbookReplace;
+ float _FlipbookMultiply;
+ float _FlipbookAdd;
+ POI_TEXTURE_NOSAMPLER(_FlipbookMask);
+
+ // anim
+ float _FlipbookMovementType;
+ float4 _FlipbookStartEndOffset;
+ float _FlipbookMovementSpeed;
+
+ // Global
+ float4 flipBookPixel;
+ float4 flipBookPixelMultiply;
+ float flipBookMask;
+
+ #ifndef POI_SHADOW
+
+ void applyFlipbook(inout float4 finalColor, inout float3 flipbookEmission)
+ {
+ flipBookMask = POI2D_SAMPLER_PAN(_FlipbookMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float2 uv = frac(poiMesh.uv[float(0)]);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ // 2d rotation
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ if (float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipBookPixel = 0;
+ return;
+ }
+ }
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ flipBookPixel = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipBookPixel.a = poiMax(flipBookPixel.rgb);
+ }
+
+ if(float(0))
+ {
+ flipBookPixel.rgb = float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ flipBookPixel.rgb *= float4(1,1,1,1).rgb;
+ }
+
+ #ifdef POI_BLACKLIGHT
+
+ if(_BlackLightMaskFlipbook != 4)
+ {
+ flipBookMask *= blackLightMask[_BlackLightMaskFlipbook];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * float(1) * flipBookMask);
+ finalColor.rgb = finalColor + flipBookPixel.rgb * float(0) * flipBookMask;
+ finalColor.rgb = finalColor * lerp(1, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * flipBookMask * float(0));
+
+
+ if(float(0))
+ {
+ finalColor.a = lerp(finalColor.a, flipBookPixel.a * float4(1,1,1,1).a, flipBookMask);
+ }
+ flipbookEmission = lerp(0, flipBookPixel.rgb * float(0), flipBookPixel.a * float4(1,1,1,1).a * flipBookMask);
+ }
+
+ #else
+
+ float applyFlipbookAlphaToShadow(float2 uv)
+ {
+
+ if(float(0))
+ {
+ float flipbookShadowAlpha = 0;
+
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float theta = radians(float(0));
+
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ half4 flipbookColor = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipbookColor.a = poiMax(flipbookColor.rgb);
+ }
+
+
+ if(float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipbookColor.a = 0;
+ }
+ }
+ return flipbookColor.a * float4(1,1,1,1).a;
+ }
+ return 1;
+ }
+
+ #endif
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
new file mode 100644
index 00000000..2f935c21
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: dd61786ea07b8864aa5ace573a1719e2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
new file mode 100644
index 00000000..aa950e7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
@@ -0,0 +1,376 @@
+#ifndef POIFRAG
+ #define POIFRAG
+
+ float _MainEmissionStrength;
+ float _IgnoreFog;
+ half _GIEmissionMultiplier;
+ float _IridescenceTime;
+ float _AlphaToMask;
+ float _ForceOpaque;
+ float _commentIfZero_EnableGrabpass;
+ float _AlphaPremultiply;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+ float _commentIfZero_LightingAdditiveEnable;
+
+ float4 frag(v2f i, uint facing: SV_IsFrontFace): SV_Target
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if !defined(POI_LIGHTING)
+ return 0;
+ #endif
+ #if defined(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A) && defined(DIRECTIONAL)
+ return 0;
+ #endif
+ #endif
+ #ifdef FORWARD_ADD_PASS
+
+ if (float(1) == 0)
+ {
+ return 0;
+ }
+ #endif
+ UNITY_SETUP_INSTANCE_ID(i);
+ // Color
+ float4 albedo = 1;
+ float4 finalColor = 1;
+
+ // Lighting
+ float bakedCubemap = 0; // Whether or not metallic should run before or after lighting multiplication
+ float3 finalSpecular0 = 0;
+ float3 finalSpecular1 = 0;
+ float3 finalSSS = 0;
+ fixed lightingAlpha = 1;
+ float3 finalEnvironmentalRim = 0;
+
+ // Emissions
+ float3 finalEmission = 0;
+ float3 finalLighting = 1;
+ float3 IridescenceEmission = 0;
+ float3 spawnInEmission = 0;
+ float3 voronoiEmission = 0;
+ float3 matcapEmission = 0;
+ float3 depthTouchEmission = 0;
+ float3 decalEmission = 0;
+ float3 glitterEmission = 0;
+ float3 panosphereEmission = 0;
+ float3 backFaceEmission = 0;
+ float3 dissolveEmission = 0;
+ float3 rimLightEmission = 0;
+ float3 flipbookEmission = 0;
+ float3 textOverlayEmission = 0;
+ float3 videoEmission = 0;
+ /**********************************************************************
+ Initialize the base data that's needed everywhere else in the shader
+ **********************************************************************/
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+
+ #ifdef POI_BLACKLIGHT
+ createBlackLightMask();
+
+ if (_BlackLightMaskDebug)
+ {
+ return float4(blackLightMask.rgb, 1);
+ }
+ #endif
+
+ // This has to happen in the initializbecause it alters UV data globally
+ #ifdef POI_PARALLAX
+ calculateandApplyParallax();
+ #endif
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+ calculateVertexLightingData(i);
+ /**********************************************************************
+ Calculate Light Maps
+ **********************************************************************/
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ /**********************************************************************
+ Calculate Color Data
+ **********************************************************************/
+
+ initTextureData(albedo, mainTexture, backFaceEmission, dissolveEmission, detailMask);
+
+ #ifdef POI_DECAL
+ applyDecal(albedo, decalEmission);
+ #endif
+
+
+ #ifdef POI_IRIDESCENCE
+
+ if (_IridescenceTime == 0)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VORONOI
+ applyVoronoi(albedo, voronoiEmission);
+ #endif
+
+ #ifdef POI_MSDF
+ ApplyTextOverlayColor(albedo, textOverlayEmission);
+ #endif
+
+ #ifdef POI_ENVIRONMENTAL_RIM
+ finalEnvironmentalRim = calculateEnvironmentalRimLighting(albedo);
+ #endif
+
+ #if defined(POI_METAL) || defined(POI_CLEARCOAT)
+ CalculateReflectionData();
+ #endif
+
+ #ifdef POI_DATA
+ distanceFade(albedo);
+ #endif
+
+ #ifdef POI_RANDOM
+ albedo.a *= i.angleAlpha;
+ #endif
+
+ #ifdef MATCAP
+ applyMatcap(albedo, matcapEmission);
+ #endif
+
+ #ifdef PANOSPHERE
+ applyPanosphereColor(albedo, panosphereEmission);
+ #endif
+
+ #ifdef POI_FLIPBOOK
+ applyFlipbook(albedo, flipbookEmission);
+ #endif
+
+ #ifdef POI_GLITTER
+ applyGlitter(albedo, glitterEmission);
+ #endif
+
+ #ifdef POI_RIM
+ applyRimLighting(albedo, rimLightEmission);
+ #endif
+
+ #ifdef POI_DEPTH_COLOR
+ applyDepthColor(albedo, depthTouchEmission, finalEmission, i.worldDirection);
+ #endif
+
+ #ifdef POI_IRIDESCENCE
+
+ if(_IridescenceTime == 1)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VIDEO
+ applyScreenEffect(albedo, videoEmission);
+ #endif
+
+ applySpawnIn(albedo, spawnInEmission, poiMesh.uv[0], poiMesh.localPos);
+
+ /**********************************************************************
+ Handle a few alpha options
+ **********************************************************************/
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 0)
+ {
+ applyDithering(albedo);
+ }
+ }
+
+ albedo.a = max(float(0), albedo.a);
+
+
+ if(float(0) >= 1)
+ {
+ clip(albedo.a - float(0.5));
+ }
+
+
+ if(float(0))
+ {
+ albedo.rgb *= saturate(albedo.a + 0.0000000001);
+ }
+
+ /**********************************************************************
+ Lighting Time :)
+ **********************************************************************/
+
+ #ifdef POI_LIGHTING
+ finalLighting = calculateFinalLighting(albedo.rgb, finalColor);
+
+ #ifdef SUBSURFACE
+ finalSSS = calculateSubsurfaceScattering();
+ #endif
+ #endif
+
+ float4 finalColorBeforeLighting = albedo;
+ finalColor = finalColorBeforeLighting;
+
+ #ifdef POI_SPECULAR
+ finalSpecular0 = calculateSpecular(finalColorBeforeLighting);
+ #endif
+ #ifdef POI_PARALLAX
+ calculateAndApplyInternalParallax(finalColor);
+ #endif
+
+ #ifdef POI_ALPHA_TO_COVERAGE
+ ApplyAlphaToCoverage(finalColor);
+ #endif
+
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 1)
+ {
+ applyDithering(finalColor);
+ }
+ }
+
+ #ifdef POI_METAL
+ calculateMetallicness();
+ bool probeExists = shouldMetalHappenBeforeLighting();
+
+ if(!probeExists)
+ {
+ ApplyMetallicsFake(finalColor, albedo);
+ }
+ #endif
+
+ #ifdef POI_LIGHTING
+ #if defined(FORWARD_ADD_PASS) && defined(POI_METAL)
+ finalLighting *= 1 - metalicMap;
+ #endif
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ finalColor.rgb *= finalLighting + poiLight.vFinalLighting;
+ #else
+ finalColor.rgb *= finalLighting;
+ #endif
+
+ #ifdef POI_METAL
+
+ if(probeExists)
+ {
+ ApplyMetallics(finalColor, albedo);
+ }
+ #endif
+
+ finalColor.rgb += finalSpecular0 + finalEnvironmentalRim + finalSSS;
+
+ #ifdef FORWARD_BASE_PASS
+ #ifdef POI_CLEARCOAT
+ calculateAndApplyClearCoat(finalColor);
+ #endif
+ #endif
+
+ finalColor.a = saturate(finalColor.a);
+
+ /**********************************************************************
+ Add Up all the emission values :D
+ **********************************************************************/
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ finalEmission += finalColorBeforeLighting.rgb * float(0) * albedo.a;
+ finalEmission += wireframeEmission;
+ finalEmission += IridescenceEmission;
+ finalEmission += spawnInEmission;
+ finalEmission += voronoiEmission;
+ finalEmission += matcapEmission;
+ finalEmission += depthTouchEmission;
+ finalEmission += decalEmission;
+ finalEmission += glitterEmission;
+ finalEmission += panosphereEmission;
+ finalEmission += backFaceEmission;
+ finalEmission += rimLightEmission;
+ finalEmission += flipbookEmission;
+ finalEmission += videoEmission;
+ finalEmission += textOverlayEmission;
+ finalEmission += dissolveEmission;
+ #ifdef POI_EMISSION
+ finalEmission += calculateEmissionNew(finalColorBeforeLighting, finalColor);
+ #endif
+ #endif
+
+ /**********************************************************************
+ Meta Pass Hype :D
+ **********************************************************************/
+ #ifdef POI_META_PASS
+ UnityMetaInput meta;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, meta);
+ meta.Emission = finalEmission * float(1);
+ meta.Albedo = saturate(finalColor.rgb);
+ #ifdef POI_SPECULAR
+ meta.SpecularColor = poiLight.color.rgb * float4(1,1,1,1).rgb * lerp(1, albedo.rgb, float(0)) * float4(1,1,1,1).a;
+ #else
+ meta.SpecularColor = poiLight.color.rgb * albedo.rgb;
+ #endif
+ return UnityMetaFragment(meta);
+ #endif
+
+ /**********************************************************************
+ Apply Emission to finalColor
+ **********************************************************************/
+ finalColor.rgb += finalEmission;
+
+ /**********************************************************************
+ Grabpass features
+ **********************************************************************/
+
+
+ if (_commentIfZero_EnableGrabpass)
+ {
+ applyGrabEffects(finalColor);
+ }
+
+ /**********************************************************************
+ Unity Fog
+ **********************************************************************/
+ #ifdef FORWARD_BASE_PASS
+
+ if (float(0) == 0)
+ {
+ UNITY_APPLY_FOG(i.fogCoord, finalColor);
+ }
+ #endif
+
+ #ifdef FORWARD_ADD_PASS
+ if(float(0) > 0)
+ {
+ finalColor.rgb *= finalColor.a;
+ }
+ #endif
+
+
+ if(float(0) == 0)
+ {
+ finalColor.a = 1;
+ }
+
+ #ifdef FORWARD_ADD_PASS
+ //finalColor.rgb = smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5));
+ #endif
+
+ #ifdef POI_DEBUG
+ displayDebugInfo(finalColor);
+ #endif
+
+ //finalColor.rgb = frac(finalColor.rgb);
+ return finalColor;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
new file mode 100644
index 00000000..03711572
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a02e44fa0c388534cbd3ec3e5d369730
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
new file mode 100644
index 00000000..8d260cdf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_FUR
+ #define POI_FUR
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurTexture); float4 _FurTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurHeightMap); float4 _FurHeightMap_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurMask); float4 _FurMask_ST;
+ float _FurAO;
+ float4 _FurColor;
+ float _FurLayers;
+ float _FurMinDistance;
+ float _FurMaxDistance;
+ float _FurHeightMapMin;
+ float _FurHeightMapMax;
+ float _FurDebug;
+ float _AoRampMin;
+ float _AoRampMax;
+ float _FurTipAlpha;
+ float _FurFadeStart;
+
+ //globals
+ half furHeightMap;
+ half furMask;
+
+ void calculateFur()
+ {
+
+ furHeightMap = UNITY_SAMPLE_TEX2D_SAMPLER(_FurHeightMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurHeightMap)).x;
+ furHeightMap = remap(furHeightMap, 0, _FurHeightMapMax, _FurHeightMapMin, 1);
+ furMask = poiMax(UNITY_SAMPLE_TEX2D_SAMPLER(_FurMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurMask)).xyz);
+ half3 furTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_FurTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurTexture));
+ clip(furHeightMap - poiMesh.furAlpha);
+ clip(furMask - poiMesh.furAlpha);
+
+ albedo.rgb = lerp(mainTexture.rgb, furTexture.rgb * _FurColor.rgb, ceil(poiMesh.furAlpha));
+ float aoRampMax = _AoRampMax - (1 - furMask);
+ albedo.rgb *= lerp(1, smoothstep(_AoRampMin, aoRampMax, furHeightMap), _FurAO);
+
+ albedo.a *= smoothstep(1.01, _FurTipAlpha, remapClamped(poiMesh.furAlpha, _FurFadeStart, 1, 0, 1)) + float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
new file mode 100644
index 00000000..e9866362
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8ce0d1b7554c5c947b3cebf72760b6ac
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
new file mode 100644
index 00000000..032f3b08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
@@ -0,0 +1,37 @@
+float _FurLength;
+float _FurGravityStrength;
+
+[instance(4)]
+[maxvertexcount(20)]
+void geomFur(triangle v2f IN[3], inout TriangleStream < v2f > tristream, uint InstanceID : SV_GSInstanceID)
+{
+ float4 fur_worldPos[3];
+ v2f o_fur[3];
+ float3 offset = (float3(0, -1, 0) * (_FurLength*.9) *_FurGravityStrength);
+
+ for (int i = 0; i < 3; i++)
+ {
+ if (InstanceID == 0) {
+ IN[i].furAlpha = 0;
+ tristream.Append(IN[i]);
+ }
+ o_fur[i] = IN[i];
+ fur_worldPos[i] = float4(IN[i].worldPos + IN[i].normal * _FurLength, 1);
+ }
+ if (InstanceID == 0) {
+ tristream.RestartStrip();
+ }
+ int Total_FurLayers = clamp(floor(_FurLayers * (1 - smoothstep(_FurMinDistance, _FurMaxDistance, distance(IN[0].worldPos, getCameraPosition())))), min(1, _FurLayers), _FurLayers);
+
+ int startLayer = max(int(InstanceID) * 6 - 1, 0);
+ for (int layer = startLayer; layer < Total_FurLayers; layer++) {
+ for (int i = 0; i < 3; i++) {
+ o_fur[i].furAlpha = float(layer) / Total_FurLayers;
+ o_fur[i].worldPos = float4(lerp(IN[i].worldPos, fur_worldPos[i] + offset * o_fur[i].furAlpha, o_fur[i].furAlpha),1);
+ o_fur[i].pos = UnityWorldToClipPos(o_fur[i].worldPos);
+ o_fur[i].furAlpha += .01;
+ tristream.Append(o_fur[i]);
+ }
+ tristream.RestartStrip();
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
new file mode 100644
index 00000000..7d8bdcec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 763148ce6d7ad504580e7ce79b27a6e5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
new file mode 100644
index 00000000..e31b6498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
@@ -0,0 +1,232 @@
+#ifndef POI_GLITTER
+ #define POI_GLITTER
+
+ half3 _GlitterColor;
+ POI_TEXTURE_NOSAMPLER(_GlitterMask);
+ float2 _GlitterPan;
+ POI_TEXTURE_NOSAMPLER(_GlitterColorMap);
+ POI_TEXTURE_NOSAMPLER(_GlitterTexture);
+ half _GlitterSpeed;
+ half _GlitterBrightness;
+ float _GlitterFrequency;
+ float _GlitterJitter;
+ half _GlitterSize;
+ half _GlitterContrast;
+ half _GlitterAngleRange;
+ half _GlitterMinBrightness;
+ half _GlitterBias;
+ float _GlitterRandomColors;
+ float2 _GlitterMinMaxSaturation;
+ float2 _GlitterMinMaxBrightness;
+ fixed _GlitterUseSurfaceColor;
+ float _GlitterBlendType;
+ float _GlitterMode;
+ float _GlitterShape;
+ float _GlitterCenterSize;
+ float _glitterFrequencyLinearEmissive;
+ float _GlitterJaggyFix;
+ float _GlitterRandomRotation;
+ float _GlitterTextureRotation;
+ float4 _GlitterMinMaxSize;
+ float _GlitterRandomSize;
+
+
+ float3 randomFloat3(float2 Seed, float maximum)
+ {
+ return(.5 + float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed), float2(12.9898, 78.233))) * 43758.5453)
+ ) * .5) * (maximum);
+ }
+
+ float3 randomFloat3Range(float2 Seed, float Range)
+ {
+ return(float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1) * Range;
+ }
+
+ float3 randomFloat3WiggleRange(float2 Seed, float Range)
+ {
+ float3 rando = (float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1);
+ float speed = 1 + float(10);
+ return float3(sin((_Time.x + rando.x * pi) * speed), sin((_Time.x + rando.y * pi) * speed), sin((_Time.x + rando.z * pi) * speed)) * Range;
+ }
+
+ void Unity_RandomRange_float(float2 Seed, float Min, float Max, out float Out)
+ {
+ float randomno = frac(sin(dot(Seed, float2(12.9898, 78.233))) * 43758.5453);
+ Out = lerp(Min, Max, randomno);
+ }
+
+ float3 RandomColorFromPoint(float2 rando)
+ {
+ fixed hue = random2(rando.x + rando.y).x;
+ fixed saturation = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.x);
+ fixed value = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.y);
+ float3 hsv = float3(hue, saturation, value);
+ return HSVtoRGB(hsv);
+ }
+
+ void applyGlitter(inout float4 albedo, inout float3 glitterEmission)
+ {
+
+
+ // Scale
+ float2 st = poiMesh.uv[0] * float(300);
+
+ // Tile the space
+ float2 i_st = floor(st);
+ float2 f_st = frac(st);
+
+ float m_dist = 10.; // minimun distance
+ float2 m_point = 0; // minimum point
+ float2 randoPoint = 0;
+ float2 dank;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 neighbor = float2(i, j);
+ float2 pos = random2(i_st + neighbor);
+ float2 rando = pos;
+ pos = 0.5 + 0.5 * sin(float(1) * 6.2831 * pos);
+ float2 diff = neighbor + pos - f_st;
+ float dist = length(diff);
+
+ if (dist < m_dist)
+ {
+ dank = diff;
+ m_dist = dist;
+ m_point = pos;
+ randoPoint = rando;
+ }
+ }
+ }
+
+ float randomFromPoint = random(randoPoint);
+
+ float size = float(0.3);
+
+ if(float(0))
+ {
+ size = remapClamped(randomFromPoint, 0, 1, float4(0.1,0.5,0,1).x, float4(0.1,0.5,0,1).y);
+ }
+
+
+ // Assign a color using the closest point position
+ //color += dot(m_point, float2(.3, .6));
+
+ // Add distance field to closest point center
+ // color.g = m_dist;
+
+ // Show isolines
+ //color -= abs(sin(40.0 * m_dist)) * 0.07;
+
+ // Draw cell center
+ half glitterAlpha = 1;
+ switch(float(0))
+ {
+ case 0: //circle
+ glitterAlpha = (1. - step(size, m_dist));
+ break;
+ case 1: //sqaure
+ float jaggyFix = pow(poiCam.distanceToVert, 2) * float(0);
+
+
+ if (float(0))
+ {
+ float2 center = float2(0, 0);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ dank = float2((dank.x - center.x) * cs - (dank.y - center.y) * sn + center.x, (dank.x - center.x) * sn + (dank.y - center.y) * cs + center.y);
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ else
+ {
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ break;
+ }
+
+ float3 finalGlitter = 0;
+
+ switch(float(0))
+ {
+ case 0:
+ float3 randomRotation = 0;
+
+ if(float(10) > 0)
+ {
+ randomRotation = randomFloat3WiggleRange(randoPoint, float(90));
+ }
+ else
+ {
+ randomRotation = randomFloat3Range(randoPoint, float(90));
+ }
+ float3 norm = poiMesh.normals[0];
+
+ float3 glitterReflectionDirection = normalize(mul(poiRotationMatrixFromAngles(randomRotation), norm));
+ finalGlitter = lerp(0, float(0) * glitterAlpha, glitterAlpha) + max(pow(saturate(dot(lerp(glitterReflectionDirection, poiCam.viewDir, float(0.8)), poiCam.viewDir)), float(300)), 0);
+ finalGlitter *= glitterAlpha;
+ break;
+ case 1:
+ float offset = random(randoPoint);
+ float brightness = sin((_Time.x + offset) * float(10)) * float(20) - (float(20) - 1);
+ finalGlitter = max(float(0) * glitterAlpha, brightness * glitterAlpha * smoothstep(0, 1, 1 - m_dist * float(0.08) * 10));
+ break;
+ }
+
+
+ half3 glitterColor = float4(1,1,1,1);
+ glitterColor *= lerp(1, albedo, float(0));
+ glitterColor *= POI2D_SAMPLER_PAN(_GlitterColorMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+
+ float2 uv = remapClamped(dank, -size, size, 0, 1);
+
+ if(float(0) && !float(0))
+ {
+ float2 fakeUVCenter = float2(.5, .5);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - fakeUVCenter.x) * cs - (uv.y - fakeUVCenter.y) * sn + fakeUVCenter.x, (uv.x - fakeUVCenter.x) * sn + (uv.y - fakeUVCenter.y) * cs + fakeUVCenter.y);
+ }
+ float4 glitterTexture = POI2D_SAMPLER_PAN(_GlitterTexture, _MainTex, uv, float4(0,0,0,0));
+ //float4 glitterTexture = _GlitterTexture.SampleGrad(sampler_MainTex, frac(uv), ddx(uv), ddy(uv));
+ glitterColor *= glitterTexture.rgb;
+ float glitterMask = POI2D_SAMPLER_PAN(_GlitterMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskGlitter != 4)
+ {
+ glitterMask *= blackLightMask[_BlackLightMaskGlitter];
+ }
+ #endif
+
+ if(float(0))
+ {
+ glitterColor *= RandomColorFromPoint(random2(randoPoint.x + randoPoint.y));
+ }
+
+
+ if(float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, finalGlitter * glitterColor * float(3), finalGlitter * glitterTexture.a * glitterMask);
+ glitterEmission = finalGlitter * glitterColor * max(0, (float(3) - 1) * glitterTexture.a) * glitterMask;
+ }
+ else
+ {
+ glitterEmission = finalGlitter * glitterColor * float(3) * glitterTexture.a * glitterMask;
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
new file mode 100644
index 00000000..984afbc2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e6618eae94331cb478eafc3c43c37a84
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
new file mode 100644
index 00000000..060cb720
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
@@ -0,0 +1,127 @@
+#ifndef POI_GRAB
+ #define POI_GRAB
+
+ float _RefractionIndex;
+ float _RefractionOpacity;
+ float _RefractionChromaticAberattion;
+ float _RefractionEnabled;
+ float _GrabSrcBlend;
+ float _GrabDstBlend;
+ float _GrabPassUseAlpha;
+ float _GrabPassBlendFactor;
+ float _GrabBlurDistance;
+ float _GrabBlurQuality;
+ float _GrabBlurDirections;
+ POI_TEXTURE_NOSAMPLER(_GrabPassBlendMap);
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RefractionOpacityMask); float4 _RefractionOpacityMask_ST;
+
+ float4 blur(float2 uv)
+ {
+ float two_pi = 6.28318530718;
+
+ float2 radius = _GrabBlurDistance / _ScreenParams.xy * 100; // Arbitrary constant to match old blur
+ float quality = floor(_GrabBlurQuality);
+ float directions = floor(_GrabBlurDirections);
+
+ // Pixel colour
+ float4 color = tex2D(_PoiGrab, uv);
+
+ float deltaAngle = two_pi / directions;
+ float deltaQuality = 1.0 / quality;
+ for (int i = 0; i < directions; i ++)
+ {
+ for (int j = 0; j < quality; j ++)
+ {
+ float angle = deltaAngle * i + j;
+ float offset = deltaQuality * (j + 1);
+ color += tex2D(_PoiGrab, uv + float2(cos(angle), sin(angle)) * radius * offset);
+ }
+ }
+
+ // Output to screen
+ color /= quality * directions + 1;
+ return color;
+ }
+
+ inline float4 Refraction(float indexOfRefraction, float chromaticAberration, float2 projectedGrabPos)
+ {
+ float4 refractionColor;
+ float3 worldViewDir = normalize(UnityWorldSpaceViewDir(poiMesh.worldPos));
+ float3 refractionOffset = ((((indexOfRefraction - 1.0) * mul(UNITY_MATRIX_V, float4(poiMesh.normals[1], 0.0))) * (1.0 / (poiCam.grabPos.z + 1.0))) * (1.0 - dot(poiMesh.normals[1], worldViewDir)));
+ float2 cameraRefraction = float2(refractionOffset.x, - (refractionOffset.y * _ProjectionParams.x));
+
+
+ if (_RefractionChromaticAberattion > 0)
+ {
+ float4 redAlpha = tex2D(_PoiGrab, (projectedGrabPos + cameraRefraction));
+ float green = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 - chromaticAberration)))).g;
+ float blue = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 + chromaticAberration)))).b;
+ refractionColor = float4(redAlpha.r, green, blue, redAlpha.a);
+ }
+ else
+ {
+ float2 refractedGrab = projectedGrabPos + cameraRefraction;
+
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refractionColor = blur(refractedGrab);
+ #else
+ refractionColor = tex2D(_PoiGrab, (refractedGrab));
+ #endif
+ }
+ return refractionColor;
+ }
+
+ void calculateRefraction(float2 projectedGrabPos, inout float4 finalColor)
+ {
+ float3 refraction = 1;
+
+ if(_RefractionEnabled == 1)
+ {
+ refraction = Refraction(_RefractionIndex, _RefractionChromaticAberattion, projectedGrabPos).rgb;
+ }
+ else
+ {
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refraction = blur(projectedGrabPos);
+ #else
+ refraction = tex2Dproj(_PoiGrab, poiCam.grabPos);
+ #endif
+ }
+
+ float blendFactor = _GrabPassBlendFactor * POI2D_SAMPLER_PAN(_GrabPassBlendMap, _MainTex, poiMesh.uv[_GrabPassBlendMapUV], _GrabPassBlendMapPan).r;
+
+ if(_GrabPassUseAlpha)
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor * (1 - finalColor.a));
+ finalColor.a = 1;
+ }
+ else
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor);
+ }
+ }
+
+ float2 calculateGrabPosition()
+ {
+ float4 grabPos = poiCam.grabPos;
+ #if UNITY_UV_STARTS_AT_TOP
+ float scale = -1.0;
+ #else
+ float scale = 1.0;
+ #endif
+ float halfPosW = grabPos.w * 0.5;
+ grabPos.y = (grabPos.y - halfPosW) * _ProjectionParams.x * scale + halfPosW;
+ #if SHADER_API_D3D9 || SHADER_API_D3D11
+ grabPos.w += 0.00000000001;
+ #endif
+ return(grabPos / grabPos.w).xy;
+ }
+
+ void applyGrabEffects(inout float4 finalColor)
+ {
+ float2 projectedGrabPos = calculateGrabPosition();
+ calculateRefraction(projectedGrabPos, finalColor);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
new file mode 100644
index 00000000..0d14102a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d63a2304b05b3b84a81af5c45e2ac57b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
new file mode 100644
index 00000000..9ae9e754
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
@@ -0,0 +1,338 @@
+#ifndef POI_HELPER
+ #define POI_HELPER
+
+ #include "CGI_PoiColors.cginc"
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float linearSin(float x)
+ {
+ return pow(min(cos(pi * x / 2.0), 1.0 - abs(x)), 1.0);
+ }
+
+ float random(float2 p)
+ {
+ return frac(sin(dot(p, float2(12.9898, 78.2383))) * 43758.5453123);
+ }
+
+ float2 random2(float2 p)
+ {
+ return frac(sin(float2(dot(p, float2(127.1, 311.7)), dot(p, float2(269.5, 183.3)))) * 43758.5453);
+ }
+
+ float3 random3(float3 p)
+ {
+ return frac(sin(float3(dot(p, float3(127.1, 311.7, 248.6)), dot(p, float3(269.5, 183.3, 423.3)), dot(p, float3(248.3, 315.9, 184.2)))) * 43758.5453);
+ }
+
+ float3 mod(float3 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+ float2 mod(float2 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+
+ //1/7
+ #define K 0.142857142857
+ //3/7
+ #define Ko 0.428571428571
+
+ // Permutation polynomial: (34x^2 + x) mod 289
+ float3 Permutation(float3 x)
+ {
+ return mod((34.0 * x + 1.0) * x, 289.0);
+ }
+
+ bool IsInMirror()
+ {
+ return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f;
+ }
+
+ float3 BoxProjection(float3 direction, float3 position, float4 cubemapPosition, float3 boxMin, float3 boxMax)
+ {
+ #if UNITY_SPECCUBE_BOX_PROJECTION
+
+ if (cubemapPosition.w > 0)
+ {
+ float3 factors = ((direction > 0 ? boxMax: boxMin) - position) / direction;
+ float scalar = min(min(factors.x, factors.y), factors.z);
+ direction = direction * scalar + (position - cubemapPosition);
+ }
+ #endif
+ return direction;
+ }
+
+ // Camera
+ float3 getCameraPosition()
+ {
+ #ifdef USING_STEREO_MATRICES
+ return lerp(unity_StereoWorldSpaceCameraPos[0], unity_StereoWorldSpaceCameraPos[1], 0.5);
+ #endif
+ return _WorldSpaceCameraPos;
+ }
+
+ float3 getCameraForward()
+ {
+ #if UNITY_SINGLE_PASS_STEREO
+ float3 p1 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 0, 1));
+ #else
+ float3 p1 = mul(unity_CameraToWorld, float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_CameraToWorld, float4(0, 0, 0, 1));
+ #endif
+ return normalize(p2 - p1);
+ }
+
+ float3 grayscale_vector_node()
+ {
+ return float3(0, 0.3823529, 0.01845836);
+ }
+
+ float3 grayscale_for_light()
+ {
+ return float3(0.298912, 0.586611, 0.114478);
+ }
+
+ //Math Operators
+
+ float remap(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float2 remap(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float3 remap(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float4 remap(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float remapClamped(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float2 remapClamped(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float3 remapClamped(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float4 remapClamped(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float poiMax(float2 i)
+ {
+ return max(i.x, i.y);
+ }
+
+ float poiMax(float3 i)
+ {
+ return max(max(i.x, i.y), i.z);
+ }
+
+ float poiMax(float4 i)
+ {
+ return max(max(max(i.x, i.y), i.z), i.w);
+ }
+
+ float4x4 poiAngleAxisRotationMatrix(float angle, float3 axis)
+ {
+ axis = normalize(axis);
+ float s = sin(angle);
+ float c = cos(angle);
+ float oc = 1.0 - c;
+
+ return float4x4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
+ oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
+ oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
+ 0.0, 0.0, 0.0, 1.0);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float x, float y, float z)
+ {
+ float angleX = radians(x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float3 angles)
+ {
+ float angleX = radians(angles.x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(angles.y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(angles.z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+#endif
+
+half2 calcScreenUVs(half4 grabPos)
+{
+ half2 uv = grabPos / (grabPos.w + 0.0000000001);
+ #if UNITY_SINGLE_PASS_STEREO
+ uv.xy *= half2(_ScreenParams.x * 2, _ScreenParams.y);
+ #else
+ uv.xy *= _ScreenParams.xy;
+ #endif
+
+ return uv;
+}
+
+float inverseLerp(float A, float B, float T)
+{
+ return(T - A) / (B - A);
+}
+
+float inverseLerp2(float2 a, float2 b, float2 value)
+{
+ float2 AB = b - a;
+ float2 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp3(float3 a, float3 b, float3 value)
+{
+ float3 AB = b - a;
+ float3 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp4(float4 a, float4 b, float4 value)
+{
+ float4 AB = b - a;
+ float4 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+// Dithering
+inline half Dither8x8Bayer(int x, int y)
+{
+ const half dither[ 64 ] = {
+ 1, 49, 13, 61, 4, 52, 16, 64,
+ 33, 17, 45, 29, 36, 20, 48, 32,
+ 9, 57, 5, 53, 12, 60, 8, 56,
+ 41, 25, 37, 21, 44, 28, 40, 24,
+ 3, 51, 15, 63, 2, 50, 14, 62,
+ 35, 19, 47, 31, 34, 18, 46, 30,
+ 11, 59, 7, 55, 10, 58, 6, 54,
+ 43, 27, 39, 23, 42, 26, 38, 22
+ };
+ int r = y * 8 + x;
+ return dither[r] / 64;
+}
+
+// UV Manipulation
+float2 TransformUV(half2 offset, half rotation, half2 scale, float2 uv)
+{
+ float theta = radians(rotation);
+ scale = 1 - scale;
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 centerPoint = offset + .5;
+ uv = float2((uv.x - centerPoint.x) * cs - (uv.y - centerPoint.y) * sn + centerPoint.x, (uv.x - centerPoint.x) * sn + (uv.y - centerPoint.y) * cs + centerPoint.y);
+
+ return remap(uv, float2(0, 0) + offset + (scale * .5), float2(1, 1) + offset - (scale * .5), float2(0, 0), float2(1, 1));
+}
+
+bool isVR()
+{
+ // USING_STEREO_MATRICES
+ #if UNITY_SINGLE_PASS_STEREO
+ return true;
+ #else
+ return false;
+ #endif
+}
+
+bool isVRHandCamera()
+{
+ return !isVR() && abs(UNITY_MATRIX_V[0].y) > 0.0000005;
+}
+
+bool isDesktop()
+{
+ return !isVRHandCamera();
+}
+
+bool isVRHandCameraPreview()
+{
+ return isVRHandCamera() && _ScreenParams.y == 720;
+}
+
+bool isVRHandCameraPicture()
+{
+ return isVRHandCamera() && _ScreenParams.y == 1080;
+}
+
+bool isPanorama()
+{
+ // Crude method
+ // FOV=90=camproj=[1][1]
+ return unity_CameraProjection[1][1] == 1 && _ScreenParams.x == 1075 && _ScreenParams.y == 1025;
+}
+
+float3 calculateluminance(float3 color)
+{
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
new file mode 100644
index 00000000..f8c12630
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a03d00408947b1c4abdd2752dfb424c2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
new file mode 100644
index 00000000..6ee66d3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
@@ -0,0 +1,36 @@
+#ifndef POI_HOLOGRAM
+ #define POI_HOLOGRAM
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_HoloAlphaMap); float4 _HoloAlphaMap_ST;
+ float _HoloCoordinateSpace; // 0 World, 1 Local, 2 UV
+ float3 _HoloDirection;
+ float _HoloScrollSpeed;
+ float _HoloLineDensity;
+
+ fixed _HoloFresnelAlpha;
+ fixed _HoloRimSharpness;
+ fixed _HoloRimWidth;
+ void ApplyHoloAlpha(inout float4 color)
+ {
+ float uv = 0;
+
+ if (_HoloCoordinateSpace == 0)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.worldPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 1)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.localPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 2)
+ {
+ uv = dot(_HoloDirection, poiMesh.uv[0] * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+ float holoRim = saturate(1 - smoothstep(min(_HoloRimSharpness, _HoloRimWidth), _HoloRimWidth, poiCam.viewDotNormal));
+ holoRim = abs(lerp(1, holoRim, _HoloFresnelAlpha));
+ color.a *= UNITY_SAMPLE_TEX2D_SAMPLER(_HoloAlphaMap, _MainTex, uv).r * holoRim;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
new file mode 100644
index 00000000..01ca9c33
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 452b7cb5e85110a4ab10873455273611
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
new file mode 100644
index 00000000..bcea8ccc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
@@ -0,0 +1,61 @@
+#ifndef POI_IRIDESCENCE
+ #define POI_IRIDESCENCE
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceRamp); float4 _IridescenceRamp_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceMask); float4 _IridescenceMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceNormalMap); float4 _IridescenceNormalMap_ST;
+ float _IridescenceNormalUV;
+ float _IridescenceMaskUV;
+ float _IridescenceNormalSelection;
+ float _IridescenceNormalIntensity;
+ float _IridescenceNormalToggle;
+ float _IridescenceIntensity;
+ fixed _IridescenceAddBlend;
+ fixed _IridescenceReplaceBlend;
+ fixed _IridescenceMultiplyBlend;
+ float _IridescenceEmissionStrength;
+
+ //global
+
+ float3 calculateNormal(float3 baseNormal)
+ {
+ float3 normal = UnpackScaleNormal(UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceNormalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceNormalUV], _IridescenceNormalMap)), _IridescenceNormalIntensity);
+ return normalize(
+ normal.x * poiMesh.tangent +
+ normal.y * poiMesh.binormal +
+ normal.z * baseNormal
+ );
+ }
+
+ void applyIridescence(inout float4 albedo, inout float3 IridescenceEmission)
+ {
+ float3 normal = poiMesh.normals[_IridescenceNormalSelection];
+
+ // Use custom normal map
+
+ if (_IridescenceNormalToggle)
+ {
+ normal = calculateNormal(normal);
+ }
+
+ float ndotv = dot(normal, poiCam.viewDir);
+
+ float4 iridescenceColor = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceRamp, _MainTex, 1 - abs(ndotv));
+ float4 iridescenceMask = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceMaskUV], _IridescenceMask));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskIridescence != 4)
+ {
+ iridescenceMask *= blackLightMask[_BlackLightMaskIridescence];
+ }
+ #endif
+
+
+ albedo.rgb = lerp(albedo.rgb, saturate(iridescenceColor.rgb * _IridescenceIntensity), iridescenceColor.a * _IridescenceReplaceBlend * iridescenceMask);
+ albedo.rgb += saturate(iridescenceColor.rgb * _IridescenceIntensity * iridescenceColor.a * _IridescenceAddBlend * iridescenceMask);
+ albedo.rgb *= saturate(lerp(1, iridescenceColor.rgb * _IridescenceIntensity, iridescenceColor.a * _IridescenceMultiplyBlend * iridescenceMask));
+
+ IridescenceEmission = saturate(iridescenceColor.rgb * _IridescenceIntensity) * iridescenceColor.a * iridescenceMask * _IridescenceEmissionStrength;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
new file mode 100644
index 00000000..12aa5cb2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ff4509629548dc24a88a60aaef1388f7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
new file mode 100644
index 00000000..8f35cb62
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
@@ -0,0 +1,668 @@
+
+#ifndef POI_LIGHTING
+ #define POI_LIGHTING
+
+ float _LightingShadingEnabled;
+ float _LightingRampType;
+ float _LightingIgnoreAmbientColor;
+ float _UseShadowTexture;
+ float _LightingEnableAO;
+ float _LightingDetailShadowsEnabled;
+
+ float _LightingOnlyUnityShadows;
+ float _LightingMode;
+ float _ForceLightDirection;
+ float _ShadowStrength;
+ float _OutlineShadowStrength;
+ float _ShadowOffset;
+ float3 _LightDirection;
+ float _ForceShadowStrength;
+ float _CastedShadowSmoothing;
+ float _AttenuationMultiplier;
+ float _EnableLighting;
+ float _LightingControlledUseLightColor;
+ fixed _LightingStandardSmoothness;
+ fixed _LightingStandardControlsToon;
+ fixed _LightingMinLightBrightness;
+ float _LightingUseShadowRamp;
+ float _LightingMinShadowBrightnessRatio;
+ UNITY_DECLARE_TEX2D(_ToonRamp);
+ fixed _LightingMonochromatic;
+
+ fixed _LightingGradientStart;
+ fixed _LightingGradientEnd;
+ float3 _LightingShadowColor;
+ POI_TEXTURE_NOSAMPLER(_LightingShadowTexture);
+ float _AOStrength;
+ fixed _LightingDetailStrength;
+ fixed _LightingAdditiveDetailStrength;
+ fixed _LightingNoIndirectMultiplier;
+ fixed _LightingNoIndirectThreshold;
+ float _LightingUncapped;
+
+ float _LightingDirectColorMode;
+ float _LightingIndirectColorMode;
+ float _LightingAdditiveType;
+ fixed _LightingAdditiveGradientStart;
+ fixed _LightingAdditiveGradientEnd;
+ fixed _LightingAdditivePassthrough;
+ float _LightingDirectAdjustment;
+ float _LightingIndirect;
+ // HSL JUNK
+ float _LightingEnableHSL;
+ float _LightingShadowHue;
+ float _LightingShadowSaturation;
+ float _LightingShadowLightness;
+ float _LightingHSLIntensity;
+ /*
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ToonRamp3);
+ half _LightingShadowStrength3;
+ half _ShadowOffset3;
+ */
+
+ half4 shadowStrength;
+
+ POI_TEXTURE_NOSAMPLER(_LightingDetailShadows);
+ POI_TEXTURE_NOSAMPLER(_LightingAOTex);
+ POI_TEXTURE_NOSAMPLER(_LightingShadowMask);
+
+ /*
+ * MIT License
+ *
+ * Copyright (c) 2018 s-ilent
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+ /*
+ * Silent's code starts here
+ */
+
+ float shEvaluateDiffuseL1Geomerics_local(float L0, float3 L1, float3 n)
+ {
+ // average energy
+ float R0 = max(0, L0);
+
+ // avg direction of incoming light
+ float3 R1 = 0.5f * L1;
+
+ // directional brightness
+ float lenR1 = length(R1);
+
+ // linear angle between normal and direction 0-1
+ //float q = 0.5f * (1.0f + dot(R1 / lenR1, n));
+ //float q = dot(R1 / lenR1, n) * 0.5 + 0.5;
+ float q = dot(normalize(R1), n) * 0.5 + 0.5;
+ q = saturate(q); // Thanks to ScruffyRuffles for the bug identity.
+
+ // power for q
+ // lerps from 1 (linear) to 3 (cubic) based on directionality
+ float p = 1.0f + 2.0f * lenR1 / R0;
+
+ // dynamic range constant
+ // should vary between 4 (highly directional) and 0 (ambient)
+ float a = (1.0f - lenR1 / R0) / (1.0f + lenR1 / R0);
+
+ return R0 * (a + (1.0f - a) * (p + 1.0f) * pow(q, p));
+ }
+
+ half3 BetterSH9(half4 normal)
+ {
+ float3 indirect;
+ float3 L0 = float3(unity_SHAr.w, unity_SHAg.w, unity_SHAb.w) + float3(unity_SHBr.z, unity_SHBg.z, unity_SHBb.z) / 3.0;
+ indirect.r = shEvaluateDiffuseL1Geomerics_local(L0.r, unity_SHAr.xyz, normal);
+ indirect.g = shEvaluateDiffuseL1Geomerics_local(L0.g, unity_SHAg.xyz, normal);
+ indirect.b = shEvaluateDiffuseL1Geomerics_local(L0.b, unity_SHAb.xyz, normal);
+ indirect = max(0, indirect);
+ indirect += SHEvalLinearL2(normal);
+ return indirect;
+ }
+
+ float3 BetterSH9(float3 normal)
+ {
+ return BetterSH9(float4(normal, 1));
+ }
+
+ /*
+ * Standard stuff starts here
+ */
+ UnityLight CreateLight(float3 normal, fixed detailShadowMap)
+ {
+ UnityLight light;
+ light.dir = poiLight.direction;
+ light.color = saturate(_LightColor0.rgb * lerp(1, poiLight.attenuation, float(0)) * detailShadowMap);
+ light.ndotl = DotClamped(normal, poiLight.direction);
+ return light;
+ }
+
+ float FadeShadows(float attenuation)
+ {
+ #if HANDLE_SHADOWS_BLENDING_IN_GI || ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ // UNITY_LIGHT_ATTENUATION doesn't fade shadows for us.
+
+ #if ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ attenuation = lerp(1, poiLight.attenuation, float(0));
+ #endif
+
+ float viewZ = dot(_WorldSpaceCameraPos - poiMesh.worldPos, UNITY_MATRIX_V[2].xyz);
+ float shadowFadeDistance = UnityComputeShadowFadeDistance(poiMesh.worldPos, viewZ);
+ float shadowFade = UnityComputeShadowFade(shadowFadeDistance);
+ float bakedAttenuation = UnitySampleBakedOcclusion(poiMesh.lightmapUV.xy, poiMesh.worldPos);
+ attenuation = UnityMixRealtimeAndBakedShadows(
+ attenuation, bakedAttenuation, shadowFade
+ );
+ #endif
+
+ return attenuation;
+ }
+
+ void ApplySubtractiveLighting(inout UnityIndirect indirectLight)
+ {
+ #if SUBTRACTIVE_LIGHTING
+ poiLight.attenuation = FadeShadows(lerp(1, poiLight.attenuation, float(0)));
+
+ float ndotl = saturate(dot(i.normal, _WorldSpaceLightPos0.xyz));
+ float3 shadowedLightEstimate = ndotl * (1 - poiLight.attenuation) * _LightColor0.rgb;
+ float3 subtractedLight = indirectLight.diffuse - shadowedLightEstimate;
+ subtractedLight = max(subtractedLight, unity_ShadowColor.rgb);
+ subtractedLight = lerp(subtractedLight, indirectLight.diffuse, _LightShadowData.x);
+ indirectLight.diffuse = min(subtractedLight, indirectLight.diffuse);
+ #endif
+ }
+
+ float3 weightedBlend(float3 layer1, float3 layer2, float2 weights)
+ {
+ return(weights.x * layer1 + weights.y * layer2) / (weights.x + weights.y);
+ }
+
+ UnityIndirect CreateIndirectLight(float3 normal)
+ {
+ UnityIndirect indirectLight;
+ indirectLight.diffuse = 0;
+ indirectLight.specular = 0;
+
+ #if defined(FORWARD_BASE_PASS)
+ #if defined(LIGHTMAP_ON)
+ indirectLight.diffuse = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap, poiMesh.lightmapUV.xy));
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 lightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_LightmapInd, unity_Lightmap, poiMesh.lightmapUV.xy
+ );
+ indirectLight.diffuse = DecodeDirectionalLightmap(
+ indirectLight.diffuse, lightmapDirection, normal
+ );
+ #endif
+ ApplySubtractiveLighting(indirectLight);
+ #endif
+
+ #if defined(DYNAMICLIGHTMAP_ON)
+ float3 dynamicLightDiffuse = DecodeRealtimeLightmap(
+ UNITY_SAMPLE_TEX2D(unity_DynamicLightmap, poiMesh.lightmapUV.zw)
+ );
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 dynamicLightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_DynamicDirectionality, unity_DynamicLightmap,
+ poiMesh.lightmapUV.zw
+ );
+ indirectLight.diffuse += DecodeDirectionalLightmap(
+ dynamicLightDiffuse, dynamicLightmapDirection, normal
+ );
+ #else
+ indirectLight.diffuse += dynamicLightDiffuse;
+ #endif
+ #endif
+
+ #if !defined(LIGHTMAP_ON) && !defined(DYNAMICLIGHTMAP_ON)
+ #if UNITY_LIGHT_PROBE_PROXY_VOLUME
+ if (unity_ProbeVolumeParams.x == 1)
+ {
+ indirectLight.diffuse = SHEvalLinearL0L1_SampleProbeVolume(
+ float4(normal, 1), poiMesh.worldPos
+ );
+ indirectLight.diffuse = max(0, indirectLight.diffuse);
+ #if defined(UNITY_COLORSPACE_GAMMA)
+ indirectLight.diffuse = LinearToGammaSpace(indirectLight.diffuse);
+ #endif
+ }
+ else
+ {
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ }
+ #else
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ #endif
+ #endif
+
+ float3 reflectionDir = reflect(-poiCam.viewDir, normal);
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = 1 - float(0);
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+ #if UNITY_SPECCUBE_BLENDING
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ indirectLight.specular = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ indirectLight.specular = probe0;
+ }
+ #else
+ indirectLight.specular = probe0;
+ #endif
+ float occlusion = 1;
+
+ if(float(0))
+ {
+ occlusion = lerp(1, POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ }
+
+ indirectLight.diffuse *= occlusion;
+ indirectLight.diffuse = max(indirectLight.diffuse, float(0));
+ indirectLight.specular *= occlusion;
+ #endif
+
+ return indirectLight;
+ }
+
+ /*
+ * Poiyomi's cool as heck code starts here :smug:
+ */
+
+ half PoiDiffuse(half NdotV, half NdotL, half LdotH)
+ {
+ half fd90 = 0.5 + 2 * LdotH * LdotH * SmoothnessToPerceptualRoughness(.5);
+ // Two schlick fresnel term
+ half lightScatter = (1 + (fd90 - 1) * Pow5(1 - NdotL));
+ half viewScatter = (1 + (fd90 - 1) * Pow5(1 - NdotV));
+
+ return lightScatter * viewScatter;
+ }
+
+ float3 ShadeSH9Indirect()
+ {
+ return ShadeSH9(half4(0.0, -1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Direct()
+ {
+ return ShadeSH9(half4(0.0, 1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Normal(float3 normalDirection)
+ {
+ return ShadeSH9(half4(normalDirection, 1.0));
+ }
+
+ half3 GetSHLength()
+ {
+ half3 x, x1;
+ x.r = length(unity_SHAr);
+ x.g = length(unity_SHAg);
+ x.b = length(unity_SHAb);
+ x1.r = length(unity_SHBr);
+ x1.g = length(unity_SHBg);
+ x1.b = length(unity_SHBb);
+ return x + x1;
+ }
+
+ float3 calculateRealisticLighting(float4 colorToLight, fixed detailShadowMap)
+ {
+ return UNITY_BRDF_PBS(1, 0, 0, float(0), poiMesh.normals[1], poiCam.viewDir, CreateLight(poiMesh.normals[1], detailShadowMap), CreateIndirectLight(poiMesh.normals[1]));
+ }
+
+ void calculateBasePassLightMaps()
+ {
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ float AOMap = 1;
+ float AOStrength = 1;
+ float3 lightColor = poiLight.color;
+ /*
+ * Generate Basic Light Maps
+ */
+
+ bool lightExists = false;
+ if (all(_LightColor0.rgb >= 0.002))
+ {
+ lightExists = true;
+ }
+ #ifndef OUTLINE
+
+ if(float(0))
+ {
+ AOMap = POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ AOStrength = float(1);
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ if (lightExists)
+ {
+ lightColor = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+ }
+ else
+ {
+ lightColor = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ }
+
+ //lightColor = magic * magiratio + normalLight * normaRatio;
+ //lightColor = magic + normalLight;
+ #endif
+ #endif
+
+ float3 grayscale_vector = float3(.33333, .33333, .33333);
+ float3 ShadeSH9Plus = GetSHLength();
+ float3 ShadeSH9Minus = BetterSH9(float4(0, 0, 0, 1));
+
+ shadowStrength = 1;
+ #ifndef OUTLINE
+ shadowStrength = POI2D_SAMPLER_PAN(_LightingShadowMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(1);
+ #else
+ shadowStrength = float(1);
+ #endif
+
+ float bw_lightColor = dot(lightColor, grayscale_vector);
+ float bw_directLighting = (((poiLight.nDotL * 0.5 + 0.5) * bw_lightColor * lerp(1, poiLight.attenuation, float(0))) + dot(ShadeSH9Normal(poiMesh.normals[1]), grayscale_vector));
+ float bw_bottomIndirectLighting = dot(ShadeSH9Minus, grayscale_vector);
+ float bw_topIndirectLighting = dot(ShadeSH9Plus, grayscale_vector);
+ float lightDifference = ((bw_topIndirectLighting + bw_lightColor) - bw_bottomIndirectLighting);
+
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(0))
+ {
+ poiLight.lightMap = poiLight.attenuation;
+ }
+ else
+ {
+ poiLight.lightMap = smoothstep(0, lightDifference, bw_directLighting - bw_bottomIndirectLighting);
+ }
+ poiLight.lightMap *= detailShadow;
+
+ /*
+ * Decide on light colors
+ */
+
+ float3 indirectLighting = 0;
+ float3 directLighting = 0;
+
+
+
+
+ if (float(0) == 1)
+ {
+ indirectLighting = BetterSH9(float4(poiMesh.normals[0], 1));
+ }
+ else
+ {
+ indirectLighting = ShadeSH9Minus;
+ }
+
+ poiLight.directLighting = lightColor;
+ poiLight.indirectLighting = indirectLighting;
+
+
+ if(float(0) == 0)
+ {
+ float3 magic = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+
+ float magiLumi = calculateluminance(magic);
+ float normaLumi = calculateluminance(normalLight);
+ float maginormalumi = magiLumi + normaLumi;
+
+ float magiratio = magiLumi / maginormalumi;
+ float normaRatio = normaLumi / maginormalumi;
+
+ float target = calculateluminance(magic * magiratio + normalLight * normaRatio);
+ float3 properLightColor = magic + normalLight;
+ float properLuminance = calculateluminance(magic + normalLight);
+ directLighting = properLightColor * max(0.0001, (target / properLuminance));
+ }
+ else
+ {
+ directLighting = lightColor;
+ }
+
+
+ if(!float(0))
+ {
+ float directluminance = calculateluminance(directLighting);
+ float indirectluminance = calculateluminance(indirectLighting);
+ directLighting = min(directLighting, directLighting / max(0.0001, (directluminance / 1)));
+ indirectLighting = min(indirectLighting, indirectLighting / max(0.0001, (indirectluminance / 1)));
+ }
+
+ directLighting = lerp(directLighting, dot(directLighting, float3(0.299, 0.587, 0.114)), float(0));
+ indirectLighting = lerp(indirectLighting, dot(indirectLighting, float3(0.299, 0.587, 0.114)), float(0));
+
+ if(max(max(indirectLighting.x, indirectLighting.y), indirectLighting.z) <= _LightingNoIndirectThreshold && max(max(directLighting.x, directLighting.y), directLighting.z) >= 0)
+ {
+ indirectLighting = directLighting * _LightingNoIndirectMultiplier;
+ }
+
+
+ if(float(0))
+ {
+ float directluminance = clamp(directLighting.r * 0.299 + directLighting.g * 0.587 + directLighting.b * 0.114, 0, 1);
+ if(directluminance > 0)
+ {
+ indirectLighting = max(0.001, indirectLighting);
+ }
+ float indirectluminance = clamp(indirectLighting.r * 0.299 + indirectLighting.g * 0.587 + indirectLighting.b * 0.114, 0, 1);
+ float targetluminance = directluminance * float(0);
+ if(indirectluminance < targetluminance)
+ {
+ indirectLighting = indirectLighting / max(0.0001, indirectluminance / targetluminance);
+ }
+ }
+
+ /*
+ * Create Shade Maps
+ */
+
+ if (float(0))
+ {
+ switch(float(0))
+ {
+ case 0: // Ramp Texture
+ {
+ poiLight.rampedLightMap = lerp(1, UNITY_SAMPLE_TEX2D(_ToonRamp, poiLight.lightMap + float(0)), shadowStrength.r);
+
+ if (float(0))
+ {
+ poiLight.finalLighting = lerp(poiLight.rampedLightMap * directLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ else
+ {
+ poiLight.finalLighting = lerp(indirectLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ }
+ break;
+ case 1: // Math Gradient
+ {
+ poiLight.rampedLightMap = saturate(1 - smoothstep(float(0) - .000001, float(0.5), 1 - poiLight.lightMap));
+ float3 shadowColor = float4(1,1,1,1);
+
+ if (float(0))
+ {
+ shadowColor = 1;
+ }
+
+ if(float(0))
+ {
+ poiLight.finalLighting = lerp((directLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ else
+ {
+ poiLight.finalLighting = lerp((indirectLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ }
+ break;
+ }
+ }
+ else
+ {
+ poiLight.rampedLightMap = 1 - smoothstep(0, .5, 1 - poiLight.lightMap);
+ poiLight.finalLighting = directLighting;
+ }
+
+ if(!float(0))
+ {
+ poiLight.finalLighting = saturate(poiLight.finalLighting);
+ }
+ //poiLight.finalLighting *= .8;
+ #endif
+ }
+
+ void applyShadowTexture(inout float4 albedo)
+ {
+
+ if (float(0) && float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, POI2D_SAMPLER_PAN(_LightingShadowTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1), (1 - poiLight.rampedLightMap) * shadowStrength);
+ }
+ }
+
+ float3 calculateNonImportantLighting(float attenuation, float attenuationDotNL, float3 albedo, float3 lightColor, half dotNL)
+ {
+ fixed detailShadow = 1;
+
+ if(float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ return lightColor * attenuationDotNL * detailShadow;
+ }
+ else
+ {
+ return lerp(lightColor * attenuation, lightColor * float(0.5) * attenuation, smoothstep(float(0), float(0.5), dotNL)) * detailShadow;
+ }
+ }
+
+
+ float3 calculateFinalLighting(inout float3 albedo, float4 finalColor)
+ {
+ float3 finalLighting = 1;
+ // Additive Lighting
+ #ifdef FORWARD_ADD_PASS
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ finalLighting = poiLight.color * poiLight.attenuation * max(0, poiLight.nDotL) * detailShadow;
+ }
+ else
+ {
+ #if defined(POINT) || defined(SPOT)
+ finalLighting = lerp(poiLight.color * max(poiLight.additiveShadow, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * poiLight.attenuation * detailShadow;
+ #else
+ finalLighting = lerp(poiLight.color * max(poiLight.attenuation, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * detailShadow;
+ #endif
+ }
+ #endif
+
+ // Base and Meta Lighting
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ #ifdef VERTEXLIGHT_ON
+ poiLight.vFinalLighting = 0;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vFinalLighting += calculateNonImportantLighting(poiLight.vAttenuation[index], poiLight.vAttenuationDotNL[index], albedo, poiLight.vColor[index], poiLight.vCorrectedDotNL[index]);
+ }
+ #endif
+
+ switch(float(0))
+ {
+ case 0: // Toon Lighting
+ {
+ // HSL Shading
+
+ if (float(0))
+ {
+ float3 HSLMod = float3(float(0.5) * 2 - 1, float(0.5) * 2 - 1, float(0.5) * 2 - 1) * (1 - poiLight.rampedLightMap);
+ albedo = lerp(albedo.rgb, ModifyViaHSL(albedo.rgb, HSLMod), float(1));
+ }
+
+ // Normal Shading
+
+ if (float(0) > 0)
+ {
+ poiLight.finalLighting = max(0.001, poiLight.finalLighting);
+ float finalluminance = calculateluminance(poiLight.finalLighting);
+ finalLighting = max(poiLight.finalLighting, poiLight.finalLighting / max(0.0001, (finalluminance / float(0))));
+ }
+ else
+ {
+ finalLighting = poiLight.finalLighting;
+ }
+ }
+ break;
+ case 1: // realistic
+ {
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ float3 realisticLighting = calculateRealisticLighting(finalColor, detailShadow).rgb;
+ finalLighting = lerp(realisticLighting, dot(realisticLighting, float3(0.299, 0.587, 0.114)), float(0));
+ }
+ break;
+ }
+ #endif
+ return finalLighting;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
new file mode 100644
index 00000000..ab3002c3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c502fd24c53093a4b9551e53203b6f58
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
new file mode 100644
index 00000000..c23736df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
@@ -0,0 +1,243 @@
+#ifndef POI_MSDF
+ #define POI_MSDF
+
+ sampler2D _TextGlyphs;
+ float4 _TextGlyphs_ST;
+ float4 _TextGlyphs_TexelSize;
+ float _TextFPSUV;
+ float _TextTimeUV;
+ float _TextPositionUV;
+ float _TextPixelRange;
+
+ float _TextFPSEnabled;
+ float _TextPositionEnabled;
+ float _TextTimeEnabled;
+
+
+ float4 _TextFPSColor;
+ half _TextFPSEmissionStrength;
+ fixed4 _TextFPSPadding;
+ half2 _TextFPSOffset;
+ half2 _TextFPSScale;
+ half _TextFPSRotation;
+
+ fixed _TextPositionVertical;
+ float4 _TextPositionColor;
+ half _TextPositionEmissionStrength;
+ fixed4 _TextPositionPadding;
+ half2 _TextPositionOffset;
+ half2 _TextPositionScale;
+ half _TextPositionRotation;
+
+ float4 _TextTimeColor;
+ half _TextTimeEmissionStrength;
+ fixed4 _TextTimePadding;
+ half2 _TextTimeOffset;
+ half2 _TextTimeScale;
+ half _TextTimeRotation;
+
+ #define glyphWidth 0.0625
+
+ #define ASCII_LEFT_PARENTHESIS 40
+ #define ASCII_RIGHT_PARENTHESIS 41
+ #define ASCII_POSITIVE 43
+ #define ASCII_PERIOD 46
+ #define ASCII_NEGATIVE 45
+ #define ASCII_COMMA 44
+ #define ASCII_E 69
+ #define ASCII_F 70
+ #define ASCII_I 73
+ #define ASCII_M 77
+ #define ASCII_O 79
+ #define ASCII_P 80
+ #define ASCII_S 83
+ #define ASCII_T 54
+ #define ASCII_SEMICOLON 58
+
+ float3 globalTextEmission;
+
+ half2 getAsciiCoordinate(float index)
+ {
+ return half2((index - 1) / 16, 1 - ((floor(index / 16 - glyphWidth)) / 16));
+ }
+
+ float median(float r, float g, float b)
+ {
+ return max(min(r, g), min(max(r, g), b));
+ }
+
+ void ApplyPositionText(inout float4 albedo, float2 uv)
+ {
+ float3 cameraPos = clamp(getCameraPosition(), -999, 999);
+ float3 absCameraPos = abs(cameraPos);
+ float totalCharacters = 20;
+ float positionArray[20];
+ positionArray[0] = cameraPos.x >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[1] = floor((absCameraPos.x * .01) % 10) + 48;
+ positionArray[2] = floor((absCameraPos.x * .1) % 10) + 48;
+ positionArray[3] = floor(absCameraPos.x % 10) + 48;
+ positionArray[4] = ASCII_PERIOD;
+ positionArray[5] = floor((absCameraPos.x * 10) % 10) + 48;
+ positionArray[6] = ASCII_COMMA;
+ positionArray[7] = cameraPos.y >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[8] = floor((absCameraPos.y * .01) % 10) + 48;
+ positionArray[9] = floor((absCameraPos.y * .1) % 10) + 48;
+ positionArray[10] = floor(absCameraPos.y % 10) + 48;
+ positionArray[11] = ASCII_PERIOD;
+ positionArray[12] = floor((absCameraPos.y * 10) % 10) + 48;
+ positionArray[13] = ASCII_COMMA;
+ positionArray[14] = cameraPos.z >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[15] = floor((absCameraPos.z * .01) % 10) + 48;
+ positionArray[16] = floor((absCameraPos.z * .1) % 10) + 48;
+ positionArray[17] = floor(absCameraPos.z % 10) + 48;
+ positionArray[18] = ASCII_PERIOD;
+ positionArray[19] = floor((absCameraPos.z * 10) % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if (uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(positionArray[currentCharacter]);
+
+ float2 startUV = float2(1 / totalCharacters * currentCharacter, 0);
+ float2 endUV = float2(1 / totalCharacters * (currentCharacter + 1), 1);
+
+ fixed4 textPositionPadding = float4(0,0,0,0);
+ textPositionPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, startUV, endUV, float2(glyphPos.x + textPositionPadding.x, glyphPos.y - glyphWidth + textPositionPadding.y), float2(glyphPos.x + glyphWidth - textPositionPadding.z, glyphPos.y - textPositionPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textPositionPadding.z - .001 || uv.x < glyphPos.x + textPositionPadding.x + .001 || uv.y > glyphPos.y - textPositionPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textPositionPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTimeText(inout float4 albedo, float2 uv)
+ {
+ float instanceTime = _Time.y;
+ float hours = instanceTime / 3600;
+ float minutes = (instanceTime / 60) % 60;
+ float seconds = instanceTime % 60;
+ float totalCharacters = 8;
+ float timeArray[8];
+ timeArray[0] = floor((hours * .1) % 10) + 48;
+ timeArray[1] = floor(hours % 10) + 48;
+ timeArray[2] = ASCII_SEMICOLON;
+ timeArray[3] = floor((minutes * .1) % 10) + 48;
+ timeArray[4] = floor(minutes % 10) + 48;
+ timeArray[5] = ASCII_SEMICOLON;
+ timeArray[6] = floor((seconds * .1) % 10) + 48;
+ timeArray[7] = floor(seconds % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(timeArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+ fixed4 textTimePadding = float4(0,0,0,0);
+ textTimePadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textTimePadding.x, glyphPos.y - glyphWidth + textTimePadding.y), float2(glyphPos.x + glyphWidth - textTimePadding.z, glyphPos.y - textTimePadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textTimePadding.z - .001 || uv.x < glyphPos.x + textTimePadding.x + .001 || uv.y > glyphPos.y - textTimePadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textTimePadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyFPSText(inout float4 albedo, float2 uv)
+ {
+ float smoothDeltaTime = clamp(unity_DeltaTime.w, 0, 999);
+ float totalCharacters = 7;
+ float fpsArray[7];
+ fpsArray[0] = ASCII_F;
+ fpsArray[1] = ASCII_P;
+ fpsArray[2] = ASCII_S;
+ fpsArray[3] = ASCII_SEMICOLON;
+ fpsArray[4] = floor((smoothDeltaTime * .01) % 10) + 48;
+ fpsArray[5] = floor((smoothDeltaTime * .1) % 10) + 48;
+ fpsArray[6] = floor(smoothDeltaTime % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(fpsArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+
+ fixed4 textFPSPadding = float4(0,0,0,0);
+ textFPSPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textFPSPadding.x, glyphPos.y - glyphWidth + textFPSPadding.y), float2(glyphPos.x + glyphWidth - textFPSPadding.z, glyphPos.y - textFPSPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textFPSPadding.z - .001 || uv.x < glyphPos.x + textFPSPadding.x + .001 || uv.y > glyphPos.y - textFPSPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textFPSPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,1,1,1).rgb, opacity * float4(1,1,1,1).a);
+ globalTextEmission += float4(1,1,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTextOverlayColor(inout float4 albedo, inout float3 textOverlayEmission)
+ {
+ globalTextEmission = 0;
+ half positionalOpacity = 0;
+ #ifdef EFFECT_BUMP
+
+ if(float(0))
+ {
+ ApplyFPSText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyPositionText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyTimeText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ textOverlayEmission = globalTextEmission;
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
new file mode 100644
index 00000000..effa6668
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d93b8fdb5c62d5e479856fdfa76ddd82
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
new file mode 100644
index 00000000..ecac0805
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
@@ -0,0 +1,33 @@
+#ifndef POI_MACROS
+ #define POI_MACROS
+
+ #define POI_TEXTURE_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_TEXTURE(tex) UNITY_DECLARE_TEX2D(tex##); float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_NORMAL_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV; float tex##Scale
+
+ #define POI2D_SAMPLER_PAN(tex, texSampler, uv, pan) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D_SAMPLER(tex, texSampler, uv) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex)))
+ #define POI2D_PAN(tex, uv, pan) (tex2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D(tex, uv) (tex2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D(tex, uv) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D_PAN(tex, uv, pan) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+
+ #ifdef POINT
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ unityShadowCoord3 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1)).xyz; \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = tex2D(_LightTexture0, dot(lightCoord, lightCoord).rr).r;
+ #endif
+
+ #ifdef SPOT
+ #if !defined(UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS)
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1))
+ #else
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = input._LightCoord
+ #endif
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ DECLARE_LIGHT_COORD(input, worldPos); \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = (lightCoord.z > 0) * UnitySpotCookie(lightCoord) * UnitySpotAttenuate(lightCoord.xyz);
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
new file mode 100644
index 00000000..8f68f714
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4ac43b312a8c53545be403cbfbfc8597
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
new file mode 100644
index 00000000..270384af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
@@ -0,0 +1,147 @@
+#ifndef POI_MAINTEXTURE
+ #define POI_MAINTEXTURE
+
+
+
+ POI_TEXTURE_NOSAMPLER(_AlphaMask);
+ POI_TEXTURE_NOSAMPLER(_MainFadeTexture);
+ float4 _Color;
+ float _MainVertexColoring;
+ float _MainUseVertexColorAlpha;
+ float _Saturation;
+ float2 _MainDistanceFade;
+ half _MainMinAlpha;
+ float _MainHueShift;
+ #ifdef COLOR_GRADING_HDR
+ POI_TEXTURE_NOSAMPLER(_MainHueShiftMask);
+ float _MainHueShiftToggle;
+ float _MainHueShiftSpeed;
+ float _MainHueShiftReplace;
+ #endif
+
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailTex);
+ half _DetailTexIntensity;
+ half3 _DetailTint;
+ float _DetailBrightness;
+ #endif
+ //globals
+ float alphaMask;
+ half3 diffColor;
+
+ #include "CGI_PoiBackFace.cginc"
+
+ float3 wireframeEmission;
+
+ inline FragmentCommonData SpecularSetup(float4 i_tex, inout float4 albedo)
+ {
+ half4 specGloss = 0;
+ half3 specColor = specGloss.rgb;
+ half smoothness = specGloss.a;
+
+ half oneMinusReflectivity;
+ diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specColor, /*out*/ oneMinusReflectivity);
+
+ FragmentCommonData o = (FragmentCommonData)0;
+ o.diffColor = diffColor;
+ o.specColor = specColor;
+ o.oneMinusReflectivity = oneMinusReflectivity;
+ o.smoothness = smoothness;
+ return o;
+ }
+
+ inline FragmentCommonData FragmentSetup(float4 i_tex, half3 i_viewDirForParallax, float3 i_posWorld, inout float4 albedo)
+ {
+ i_tex = i_tex;
+
+ FragmentCommonData o = SpecularSetup(i_tex, albedo);
+ o.normalWorld = float4(0, 0, 0, 1);
+ o.eyeVec = poiCam.viewDir;
+ o.posWorld = i_posWorld;
+
+ // NOTE: shader relies on pre-multiply alpha-blend (float(1) = One, float(0) = OneMinusSrcAlpha)
+ o.diffColor = PreMultiplyAlpha(o.diffColor, 1, o.oneMinusReflectivity, /*out*/ o.alpha);
+ return o;
+ }
+
+ void initTextureData(inout float4 albedo, inout float4 mainTexture, inout float3 backFaceEmission, inout float3 dissolveEmission, in half3 detailMask)
+ {
+ dissolveEmission = 0;
+
+ #if (defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ #endif
+
+ alphaMask = POI2D_SAMPLER_PAN(_AlphaMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ mainTexture.a *= alphaMask;
+
+ #ifndef POI_SHADOW
+ albedo = float4(lerp(mainTexture.rgb, dot(mainTexture.rgb, float3(0.3, 0.59, 0.11)), -float(0)) * max(float4(1,1,1,1).rgb, float3(0.000000001, 0.000000001, 0.000000001)) * lerp(1, GammaToLinearSpace(poiMesh.vertexColor.rgb), float(0)), mainTexture.a * max(float4(1,1,1,1).a, 0.0000001));
+
+ #ifdef POI_LIGHTING
+ applyShadowTexture(albedo);
+ #endif
+
+ albedo *= lerp(1, poiMesh.vertexColor.a, float(0));
+ #ifdef POI_RGBMASK
+ albedo.rgb = calculateRGBMask(albedo.rgb);
+ #endif
+
+ albedo.a = saturate(float(0) + albedo.a);
+
+ wireframeEmission = 0;
+ #ifdef POI_WIREFRAME
+ applyWireframe(wireframeEmission, albedo);
+ #endif
+ float backFaceDetailIntensity = 1;
+
+ float mixedHueShift = float(0);
+ applyBackFaceTexture(backFaceDetailIntensity, mixedHueShift, albedo, backFaceEmission);
+
+ #ifdef POI_FUR
+ calculateFur();
+ #endif
+
+ #ifdef COLOR_GRADING_HDR
+ float hueShiftAlpha = POI2D_SAMPLER_PAN(_MainHueShiftMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if(float(1))
+ {
+ albedo.rgb = lerp(albedo.rgb, hueShift(albedo.rgb, mixedHueShift + float(0) * _Time.x), hueShiftAlpha);
+ }
+ else
+ {
+ albedo.rgb = hueShift(albedo.rgb, frac((mixedHueShift - (1 - hueShiftAlpha) + float(0) * _Time.x)));
+ }
+ #endif
+ #ifdef FINALPASS
+ half3 detailTexture = POI2D_SAMPLER_PAN(_DetailTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb * float4(1,1,1,1).rgb;
+ albedo.rgb *= LerpWhiteTo(detailTexture * float(1) * unity_ColorSpaceDouble.rgb, detailMask.r * float(1) * backFaceDetailIntensity);
+ #endif
+ albedo.rgb = saturate(albedo.rgb);
+
+ #ifdef POI_HOLOGRAM
+ ApplyHoloAlpha(albedo);
+ #endif
+
+ s = FragmentSetup(float4(poiMesh.uv[0], 1, 1), poiCam.viewDir, poiMesh.worldPos, albedo);
+ #endif
+
+ #ifdef DISTORT
+ calculateDissolve(albedo, dissolveEmission);
+ #endif
+ }
+
+ void distanceFade(inout float4 albedo)
+ {
+ half fadeMap = POI2D_SAMPLER_PAN(_MainFadeTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(fadeMap)
+ {
+ half fadeValue = max(smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, poiCam.distanceToVert), float(0));
+ albedo.a *= fadeValue;
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
new file mode 100644
index 00000000..724de5e1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7761ae7ad6f2da344a13260c264f1277
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
new file mode 100644
index 00000000..3aa6d6b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
@@ -0,0 +1,115 @@
+#ifndef MATCAP
+ #define MATCAP
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap); float4 _Matcap_ST;
+ POI_TEXTURE_NOSAMPLER(_MatcapMask);
+ float _MatcapMaskInvert;
+ float _MatcapBorder;
+ float4 _MatcapColor;
+ float _MatcapIntensity;
+ float _MatcapReplace;
+ float _MatcapMultiply;
+ float _MatcapAdd;
+ float _MatcapEnable;
+ float _MatcapLightMask;
+ float _MatcapEmissionStrength;
+ float _MatcapNormal;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap2);float4 _Matcap2_ST;
+ POI_TEXTURE_NOSAMPLER(_Matcap2Mask);
+ float _Matcap2MaskInvert;
+ float _Matcap2Border;
+ float4 _Matcap2Color;
+ float _Matcap2Intensity;
+ float _Matcap2Replace;
+ float _Matcap2Multiply;
+ float _Matcap2Add;
+ float _Matcap2Enable;
+ float _Matcap2LightMask;
+ float _Matcap2EmissionStrength;
+ float _Matcap2Normal;
+
+ void blendMatcap(inout float4 finalColor, float add, float multiply, float replace, float4 matcapColor, float matcapMask, inout float3 matcapEmission, float emissionStrength
+ #ifdef POI_LIGHTING
+ , float matcapLightMask
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , uint blackLightMaskIndex
+ #endif
+ )
+ {
+ #ifdef POI_LIGHTING
+ if (matcapLightMask)
+ {
+ matcapMask *= lerp(1, poiLight.rampedLightMap, matcapLightMask);
+ }
+ #endif
+ #ifdef POI_BLACKLIGHT
+ if(blackLightMaskIndex != 4)
+ {
+ matcapMask *= blackLightMask[blackLightMaskIndex];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor.rgb, matcapColor.rgb, replace * matcapMask * matcapColor.a);
+ finalColor.rgb *= lerp(1, matcapColor.rgb, multiply * matcapMask * matcapColor.a);
+ finalColor.rgb += matcapColor.rgb * add * matcapMask * matcapColor.a;
+ matcapEmission += matcapColor.rgb * emissionStrength * matcapMask * matcapColor.a;
+ }
+
+ void applyMatcap(inout float4 finalColor, inout float3 matcapEmission)
+ {
+ float4 matcap = 0;
+ float matcapMask = 0;
+ float4 matcap2 = 0;
+ float matcap2Mask = 0;
+
+ // Both matcaps use the same coordinates
+ half3 worldViewUp = normalize(half3(0, 1, 0) - poiCam.viewDir * dot(poiCam.viewDir, half3(0, 1, 0)));
+ half3 worldViewRight = normalize(cross(poiCam.viewDir, worldViewUp));
+
+ // Matcap 1
+ half2 matcapUV = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+
+ matcap = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap, _MainTex, TRANSFORM_TEX(matcapUV, _Matcap)) * float4(1,1,1,1);
+ matcap.rgb *= float(1);
+ matcapMask = POI2D_SAMPLER_PAN(_MatcapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if (float(0))
+ {
+ matcapMask = 1 - matcapMask;
+ }
+
+ blendMatcap(finalColor, float(0), float(0), float(1), matcap, matcapMask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap
+ #endif
+ );
+
+ // Matcap 2
+
+ if (float(0))
+ {
+ half2 matcapUV2 = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+ matcap2 = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap2, _MainTex, TRANSFORM_TEX(matcapUV2, _Matcap2)) * float4(1,1,1,1);
+ matcap2.rgb *= float(1);
+ matcap2Mask = POI2D_SAMPLER_PAN(_Matcap2Mask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(float(0))
+ {
+ matcap2Mask = 1 - matcap2Mask;
+ }
+ blendMatcap(finalColor, float(0), float(0), float(0), matcap2, matcap2Mask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap2
+ #endif
+ );
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
new file mode 100644
index 00000000..c8f6dff3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 60a66f812c187e1479b9e87ca9f00c69
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
new file mode 100644
index 00000000..b2d07a38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
@@ -0,0 +1,104 @@
+/*
+MIT License
+
+Copyright (c) 2019 wraikny
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+VertexTransformShader is dependent on:
+*/
+
+#ifndef POI_MATH
+ #define POI_MATH
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float4 quaternion_conjugate(float4 v)
+ {
+ return float4(
+ v.x, -v.yzw
+ );
+ }
+
+ float4 quaternion_mul(float4 v1, float4 v2)
+ {
+ float4 result1 = (v1.x * v2 + v1 * v2.x);
+
+ float4 result2 = float4(
+ - dot(v1.yzw, v2.yzw),
+ cross(v1.yzw, v2.yzw)
+ );
+
+ return float4(result1 + result2);
+ }
+
+ // angle : radians
+ float4 get_quaternion_from_angle(float3 axis, float angle)
+ {
+ return float4(
+ cos(angle / 2.0),
+ normalize(axis) * sin(angle / 2.0)
+ );
+ }
+
+ float4 quaternion_from_vector(float3 inVec)
+ {
+ return float4(0.0, inVec);
+ }
+
+ float degree_to_radius(float degree)
+ {
+ return(
+ degree / 180.0 * pi
+ );
+ }
+
+ float3 rotate_with_quaternion(float3 inVec, float3 rotation)
+ {
+ float4 qx = get_quaternion_from_angle(float3(1, 0, 0), degree_to_radius(rotation.x));
+ float4 qy = get_quaternion_from_angle(float3(0, 1, 0), degree_to_radius(rotation.y));
+ float4 qz = get_quaternion_from_angle(float3(0, 0, 1), degree_to_radius(rotation.z));
+
+ #define MUL3(A, B, C) quaternion_mul(quaternion_mul((A), (B)), (C))
+ float4 quaternion = normalize(MUL3(qx, qy, qz));
+ float4 conjugate = quaternion_conjugate(quaternion);
+
+ float4 inVecQ = quaternion_from_vector(inVec);
+
+ float3 rotated = (
+ MUL3(quaternion, inVecQ, conjugate)
+ ).yzw;
+
+ return rotated;
+ }
+
+ float4 transform(float4 input, float4 pos, float4 rotation, float4 scale)
+ {
+ input.rgb *= (scale.xyz * scale.w);
+ input = float4(
+ rotate_with_quaternion(input.xyz, rotation.xyz * rotation.w)
+ + (pos.xyz * pos.w),
+ input.w
+ );
+ return input;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
new file mode 100644
index 00000000..ee9064ab
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 912fc0e31df84e64da6206403f182b0b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
new file mode 100644
index 00000000..916f65eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
@@ -0,0 +1,130 @@
+#ifndef POI_METAL
+ #define POI_METAL
+
+ samplerCUBE _CubeMap;
+ float _SampleWorld;
+ POI_TEXTURE_NOSAMPLER(_MetallicMask);
+ POI_TEXTURE_NOSAMPLER(_SmoothnessMask);
+ float _Metallic;
+ float _InvertSmoothness;
+ float _Smoothness;
+ float _EnableMetallic;
+ float3 _MetalReflectionTint;
+ POI_TEXTURE_NOSAMPLER(_MetallicTintMap);
+
+ float3 finalreflections;
+ float metalicMap;
+ float3 reflection;
+ float roughness;
+ float lighty_boy_uwu_var;
+
+ bool shouldMetalHappenBeforeLighting()
+ {
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool probeExists = !(unity_SpecCube0_HDR.a == 0 && envSample.a == 0);
+ return probeExists && !float(0);
+ }
+
+ float3 fresnelRelflection(in float4 albedo)
+ {
+ half3 dotNV = 1 - abs(poiLight.nDotV);
+ half f = dotNV * dotNV * dotNV * dotNV;
+ //f *= i_sold.fresnel;
+ return lerp(lerp(DielectricSpec.rgb, albedo.rgb, metalicMap), saturate(1 - roughness + metalicMap), f);
+ }
+
+ void calculateMetallicness()
+ {
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ }
+
+ void ApplyMetallics(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflection = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflection = probe0;
+ }
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+
+ void ApplyMetallicsFake(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+ reflection = texCUBElod(_CubeMap, float4(poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
new file mode 100644
index 00000000..0e7a1df2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 35a830cbf6144c04b853ff228dd191fc
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
new file mode 100644
index 00000000..8bb16398
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
@@ -0,0 +1,77 @@
+#ifndef POI_MIRROR
+ #define POI_MIRROR
+
+ float _Mirror;
+ float _EnableMirrorTexture;
+ POI_TEXTURE_NOSAMPLER(_MirrorTexture);
+
+
+ void applyMirrorRenderVert(inout float4 vertex)
+ {
+
+ if (float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ void applyMirrorRenderFrag()
+ {
+
+ if(float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ #if(defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ void applyMirrorTexture(inout float4 mainTexture)
+ {
+
+ if(float(0))
+ {
+ if(IsInMirror())
+ {
+ mainTexture = POI2D_SAMPLER_PAN(_MirrorTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ }
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
new file mode 100644
index 00000000..e9c35f59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 761fdc95d5c79fc43bbd37a47ae48b8f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
new file mode 100644
index 00000000..62e63c91
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
@@ -0,0 +1,107 @@
+float _OutlineRimLightBlend;
+float _OutlineLit;
+float _OutlineTintMix;
+float2 _MainTexPan;
+float _MainTextureUV;
+
+float4 frag(v2f i, uint facing: SV_IsFrontFace): COLOR
+{
+ float4 finalColor = 1;
+
+ if (float(0))
+ {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ float3 finalEmission = 0;
+ float4 albedo = 1;
+
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ float3 uselessData0;
+ float3 uselessData1;
+ initTextureData(albedo, mainTexture, uselessData0, uselessData1, detailMask);
+
+
+ fixed4 col = mainTexture;
+ float alphaMultiplier = smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(getCameraPosition(), i.worldPos));
+ float OutlineMask = tex2D(_OutlineMask, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0)).r;
+ clip(OutlineMask * float(0) - 0.001);
+
+ col = col * 0.00000000001 + tex2D(_OutlineTexture, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineTexture) + _Time.x * float4(0,0,0,0) );
+ col.a *= albedo.a;
+ col.a *= alphaMultiplier;
+
+ #ifdef POI_RANDOM
+ col.a *= i.angleAlpha;
+ #endif
+
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ col.a *= float4(1,1,1,1).a;
+
+
+ if(float(0) == 1)
+ {
+ applyDithering(col);
+ }
+
+ clip(col.a - float(0.5));
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+
+ if(float(0) == 1)
+ {
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ col.rgb = mainTexture.rgb;
+ }
+ else if(float(0) == 2)
+ {
+ col.rgb = lerp(col.rgb, poiLight.color, float(0));
+ }
+ col.rgb *= float4(1,1,1,1).rgb;
+
+ if(float(0) == 1)
+ {
+ col.rgb = lerp(col.rgb, mainTexture.rgb, float(0));
+ }
+
+ finalColor = col;
+
+ #ifdef POI_LIGHTING
+
+ if(float(1))
+ {
+ finalColor.rgb *= calculateFinalLighting(finalColor.rgb, finalColor);
+ }
+ #endif
+ finalColor.rgb += (col.rgb * float(0));
+ }
+ else
+ {
+ clip(-1);
+ }
+ return finalColor;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
new file mode 100644
index 00000000..d1797b66
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 93427099f2b68fe43b645292dcc0c924
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
new file mode 100644
index 00000000..900e9e43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
@@ -0,0 +1,105 @@
+#ifndef OutlineVert
+ #define OutlineVert
+
+ #include "CGI_PoiV2F.cginc"
+
+ float _OutlineMode;
+ float4 _OutlinePersonaDirection;
+ float4 _OutlineDropShadowOffset;
+ float _OutlineUseVertexColors;
+ float _OutlineFixedSize;
+ float _commentIfZero_EnableOutlinePass;
+
+ sampler2D _OutlineMask; float4 _OutlineMask_ST; float2 _OutlineMaskPan; float _OutlineMaskUV;
+ v2f vert(appdata v)
+ {
+
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+
+ float2 uvArray[4];
+ uvArray[0] = o.uv0.xy;
+ uvArray[1] = o.uv0.zw;
+ uvArray[2] = o.uv1.xy;
+ uvArray[3] = o.uv1.zw;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ o.uv0.xy = v.uv0 + _OutlineGlobalPan.xy * _Time.y;
+ float outlineMask = 1;
+
+ outlineMask = poiMax(tex2Dlod(_OutlineMask, float4(TRANSFORM_TEX(uvArray[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0), 0, 0)).rgb);
+
+ if (float(0) == 2)
+ {
+ outlineMask *= v.color.r;
+ }
+
+
+ if(float(0) != 1)
+ {
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ }
+ else
+ {
+ o.normal = UnityObjectToWorldNormal(v.color);
+ }
+
+
+ half offsetMultiplier = 1;
+ half distanceOffset = 1;
+
+ if(float(0))
+ {
+ distanceOffset *= distance(_WorldSpaceCameraPos, mul(unity_ObjectToWorld, v.vertex).xyz);
+ }
+
+ float3 offset = o.normal * (float(0) * float(0) / 100) * outlineMask * distanceOffset;
+
+
+ if(float(0) == 2)
+ {
+ float3 lightDirection = poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ offsetMultiplier = saturate(dot(lightDirection, o.normal));
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 3)
+ {
+ half3 viewNormal = mul((float3x3)UNITY_MATRIX_V, o.normal);
+ offsetMultiplier = saturate(dot(viewNormal.xy, normalize(float4(1,0,0,0).xy)));
+
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 4)
+ {
+ offset = mul((float3x3)transpose(UNITY_MATRIX_V), float4(1,0,0,0));
+ offset *= distanceOffset;
+ }
+
+ o.worldPos = mul(unity_ObjectToWorld, v.vertex) + float4(offset, 0);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.pos = UnityWorldToClipPos(o.worldPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0);
+ UNITY_TRANSFER_FOG(o, o.pos);
+ return o;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
new file mode 100644
index 00000000..66e9b20b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ef229b6ab92333a4f872ca9f6b093c39
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
new file mode 100644
index 00000000..da64a89d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
@@ -0,0 +1,63 @@
+#ifndef PANOSPHERE
+ #define PANOSPHERE
+
+ sampler2D _PanosphereTexture; float4 _PanosphereTexture_ST;
+ POI_TEXTURE_NOSAMPLER(_PanoMask);
+ float _PanoEmission;
+ float _PanoBlend;
+ float4 _PanosphereColor;
+ float3 _PanospherePan;
+ float _PanoToggle;
+ float _PanoCubeMapToggle;
+ float _PanoInfiniteStereoToggle;
+ samplerCUBE _PanoCubeMap; half4 _PanoCubeMap_HDR;
+
+ float3 panoColor;
+ float panoMask;
+
+ float2 projectIt(float3 coords)
+ {
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude + _Time.y * float4(0,0,0,0).x, latitude + _Time.y * float4(0,0,0,0).y) * float2(1.0 / UNITY_PI, 1.0 / UNITY_PI);
+ sphereCoords = float2(1.0, 1.0) - sphereCoords;
+ return(sphereCoords + float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).xy) * float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).zw;
+ }
+
+ void applyPanosphereColor(inout float4 albedo, inout float3 panosphereEmission)
+ {
+ panoMask = POI2D_SAMPLER_PAN(_PanoMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskPanosphere != 4)
+ {
+ panoMask *= blackLightMask[_BlackLightMaskPanosphere];
+ }
+ #endif
+
+
+ if(float(0))
+ {
+ float3 cubeUV = mul(poiRotationMatrixFromAngles(float4(0,0,0,0).xyz * _Time.y), float4(-poiCam.viewDir, 1));
+ half4 cubemap = texCUBE(_PanoCubeMap, cubeUV);
+ panoColor = DecodeHDR(cubemap, _PanoCubeMap_HDR);
+ }
+ else
+ {
+ float2 uv = projectIt(normalize(lerp(getCameraPosition().xyz, poiCam.worldPos.xyz, float(0)) - poiMesh.worldPos.xyz) * - 1);
+
+ float2 ddxuv = ddx(uv);
+ float2 ddyuv = ddy(uv);
+ if(any(fwidth(uv) > .5))
+ {
+ ddxuv = ddyuv = 0.001;
+ }
+ panoColor = tex2D(_PanosphereTexture, TRANSFORM_TEX(uv, _PanosphereTexture), ddxuv, ddyuv).rgb * float4(1,1,1,1).rgb;
+ }
+ panosphereEmission = panoColor * float(0) * panoMask * float(0);
+ albedo.rgb = lerp(albedo.rgb, panoColor, float(0) * panoMask);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
new file mode 100644
index 00000000..d4c12bff
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 32ac14e552a5ecc48a301e83d9bcb20c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
new file mode 100644
index 00000000..6cd94900
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
@@ -0,0 +1,143 @@
+#ifndef POI_PARALLAX
+ #define POI_PARALLAX
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxHeightMap); float4 _ParallaxHeightMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxHeightMapMask);
+ float2 _ParallaxHeightMapPan;
+ float _ParallaxStrength;
+ float _ParallaxHeightMapEnabled;
+ float _ParallaxUV;
+
+ //Internal
+ float _ParallaxInternalMapEnabled;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxInternalMap); float4 _ParallaxInternalMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxInternalMapMask);
+ float _ParallaxInternalIterations;
+ float _ParallaxInternalMinDepth;
+ float _ParallaxInternalMaxDepth;
+ float _ParallaxInternalMinFade;
+ float _ParallaxInternalMaxFade;
+ float4 _ParallaxInternalMinColor;
+ float4 _ParallaxInternalMaxColor;
+ float4 _ParallaxInternalPanSpeed;
+ float4 _ParallaxInternalPanDepthSpeed;
+ float _ParallaxInternalHeightmapMode;
+ float _ParallaxInternalHeightFromAlpha;
+
+ float GetParallaxHeight(float2 uv)
+ {
+ return clamp(UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxHeightMap, _MainTex, TRANSFORM_TEX(uv, _ParallaxHeightMap) + _Time.x * float4(0,0,0,0)).g, 0, .99999);
+ }
+ /*
+ float2 ParallaxOffset(float2 viewDir)
+ {
+ float height = GetParallaxHeight();
+ height -= 0.5;
+ height *= float(0);
+ return viewDir * height;
+ }
+ */
+ float2 ParallaxRaymarching(float2 viewDir)
+ {
+ float2 uvOffset = 0;
+ float stepSize = 0.1;
+ float2 uvDelta = viewDir * (stepSize * float(0));
+
+ float stepHeight = 1;
+ float surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)]);
+
+
+ float2 prevUVOffset = uvOffset;
+ float prevStepHeight = stepHeight;
+ float prevSurfaceHeight = surfaceHeight;
+
+ for (int i = 1; i < 10 && stepHeight > surfaceHeight; i ++)
+ {
+ prevUVOffset = uvOffset;
+ prevStepHeight = stepHeight;
+ prevSurfaceHeight = surfaceHeight;
+
+ uvOffset -= uvDelta;
+ stepHeight -= stepSize;
+ surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)] + uvOffset);
+ }
+
+ float prevDifference = prevStepHeight - prevSurfaceHeight;
+ float difference = surfaceHeight - stepHeight;
+ float t = prevDifference / (prevDifference + difference);
+ uvOffset = prevUVOffset -uvDelta * t;
+
+ return uvOffset *= POI2D_SAMPLER_PAN(_ParallaxHeightMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+
+ void calculateandApplyParallax()
+ {
+
+ if (float(0))
+ {
+ float2 parallaxOffset = ParallaxRaymarching(poiCam.tangentViewDir.xy);
+
+ if(float(0) == 0)
+ {
+ poiMesh.uv[0] += parallaxOffset;
+ }
+
+ if(float(0) == 1)
+ {
+ poiMesh.uv[1] += parallaxOffset;
+ }
+
+ if(float(0) == 2)
+ {
+ poiMesh.uv[2] += parallaxOffset;
+ }
+
+ if(float(0) == 3)
+ {
+ poiMesh.uv[3] += parallaxOffset;
+ }
+ }
+ }
+
+ void calculateAndApplyInternalParallax(inout float4 finalColor)
+ {
+ #if defined(_PARALLAXMAP)
+
+ if(float(0))
+ {
+ float3 parallax = 0;
+
+ for (int j = float(1); j > 0; j --)
+ {
+ float ratio = (float)j / float(1);
+ float2 parallaxOffset = _Time.y * (float4(0,0,0,0) + (1 - ratio) * float4(0,0,0,0));
+ float fade = lerp(float(0), float(1), ratio);
+ float4 parallaxColor = UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxInternalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _ParallaxInternalMap) + lerp(float(0), float(1), ratio) * - poiCam.tangentViewDir.xy + parallaxOffset);
+ float3 parallaxTint = lerp(float4(1,1,1,1), float4(1,1,1,1), ratio);
+ float parallaxHeight;
+ if(float(0))
+ {
+ parallaxTint *= parallaxColor.rgb;
+ parallaxHeight = parallaxColor.a;
+ }
+ else
+ {
+ parallaxHeight = parallaxColor.r;
+ }
+ //float parallaxColor *= lerp(float4(1,1,1,1), float4(1,1,1,1), 1 - ratio);
+
+ if (float(0) == 1)
+ {
+ parallax = lerp(parallax, parallaxTint * fade, parallaxHeight >= 1 - ratio);
+ }
+ else
+ {
+ parallax += parallaxTint * parallaxHeight * fade;
+ }
+ }
+ //parallax /= float(1);
+ finalColor.rgb += parallax * POI2D_SAMPLER_PAN(_ParallaxInternalMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
new file mode 100644
index 00000000..b98ecfc0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 16a4bf0b828b2a54ca1b91f8063e36d9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
new file mode 100644
index 00000000..81230e8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
@@ -0,0 +1,233 @@
+/*
+USED---------------------------------------------
+"_PARALLAXMAP",
+"_REQUIRE_UV2",
+"_SUNDISK_NONE",
+"_DETAIL_MULX2",
+"_GLOSSYREFLECTIONS_OFF",
+"_METALLICGLOSSMAP",
+"_COLORADDSUBDIFF_ON",
+"_SPECGLOSSMAP",
+"_TERRAIN_NORMAL_MAP",
+"_SUNDISK_SIMPLE",
+"_EMISSION",
+"_COLORCOLOR_ON",
+"_COLOROVERLAY_ON",
+"_ALPHAMODULATE_ON",
+"_SUNDISK_HIGH_QUALITY",
+"_MAPPING_6_FRAMES_LAYOUT",
+"_NORMALMAP"
+"EFFECT_BUMP",
+"BLOOM",
+"BLOOM_LOW",
+"GRAIN",
+"DEPTH_OF_FIELD",
+"USER_LUT",
+"CHROMATIC_ABERRATION_LOW",
+"BLOOM_LENS_DIRT",
+"_FADING_ON",
+"CHROMATIC_ABERRATION",
+"DISTORT",
+"GEOM_TYPE_BRANCH",
+"_SPECULARHIGHLIGHTS_OFF",
+"_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A",
+"EFFECT_HUE_VARIATION",
+"GEOM_TYPE_LEAF",
+"GEOM_TYPE_MESH",
+"FINALPASS",
+"AUTO_EXPOSURE"
+"VIGNETTE",
+"VIGNETTE_MASKED",
+"COLOR_GRADING_HDR",
+
+UNUSED-------------------------------------------
+"_ALPHABLEND_ON",
+"_ALPHAPREMULTIPLY_ON",
+"_ALPHATEST_ON",
+"GEOM_TYPE_BRANCH_DETAIL",
+"GEOM_TYPE_FROND",
+"PIXELSNAP_ON",
+"SOFTPARTICLES_ON",
+"DITHERING",
+"TONEMAPPING_NEUTRAL",
+"TONEMAPPING_FILMIC",
+"TONEMAPPING_ACES",
+"TONEMAPPING_CUSTOM",
+"DEPTH_OF_FIELD_COC_VIEW",
+"COLOR_GRADING",
+"COLOR_GRADING_LOG_VIEW",
+"VIGNETTE_CLASSIC",
+"COLOR_GRADING_HDR_3D",
+
+DO NOT USE -----------------------------------------
+"BILLBOARD_FACE_CAMERA_POS",
+*/
+
+
+#ifndef POI_PASS
+ #define POI_PASS
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #ifdef POI_META_PASS
+ #include "UnityMetaPass.cginc"
+ #endif
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+
+ #include "CGI_PoiSpawnInVert.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+
+ #ifdef BLOOM_LOW
+ #include "CGI_PoiBulge.cginc"
+ #endif
+
+ #include "CGI_PoiVert.cginc"
+
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+
+ #include "CGI_PoiDithering.cginc"
+
+ #ifdef _PARALLAXMAP
+ #include "CGI_PoiParallax.cginc"
+ #endif
+
+ #ifdef USER_LUT
+ #include "CGI_PoiUVDistortion.cginc"
+ #endif
+
+ #ifdef VIGNETTE
+ #include "CGI_PoiRGBMask.cginc"
+ #endif
+
+ #include "CGI_PoiData.cginc"
+
+ #ifdef _SPECULARHIGHLIGHTS_OFF
+ #include "CGI_PoiBlackLight.cginc"
+ #endif
+
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+
+ #ifdef DEPTH_OF_FIELD
+ #include "CGI_PoiHologram.cginc"
+ #endif
+
+ #ifdef BLOOM_LENS_DIRT
+ #include "CGI_PoiIridescence.cginc"
+ #endif
+
+
+ #ifdef FUR
+ #include "CGI_PoiFur.cginc"
+ #include "CGI_PoiGeomFur.cginc"
+ #endif
+
+ #ifdef VIGNETTE_MASKED
+ #include "CGI_PoiLighting.cginc"
+ #endif
+
+ #include "CGI_PoiMainTex.cginc"
+
+ #ifdef GEOM_TYPE_BRANCH
+ #include "CGI_PoiDecal.cginc"
+ #endif
+
+ #ifdef CHROMATIC_ABERRATION
+ #include "CGI_PoiVoronoi.cginc"
+ #endif
+
+ #ifdef _DETAIL_MULX2
+ #include "CGI_PoiPanosphere.cginc"
+ #endif
+
+ #ifdef EFFECT_BUMP
+ #include "CGI_PoiMSDF.cginc"
+ #endif
+
+ #ifdef GRAIN
+ #include "CGI_PoiDepthColor.cginc"
+ #endif
+
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _GLOSSYREFLECTIONS_OFF
+ #include "CGI_PoiRimLighting.cginc"
+ #endif
+
+ #ifdef _MAPPING_6_FRAMES_LAYOUT
+ #include "CGI_PoiEnvironmentalRimLighting.cginc"
+ #endif
+
+ #ifdef _METALLICGLOSSMAP
+ #include "CGI_PoiMetal.cginc"
+ #endif
+
+ #ifdef _COLORADDSUBDIFF_ON
+ #include "CGI_PoiMatcap.cginc"
+ #endif
+
+ #ifdef _SPECGLOSSMAP
+ #include "CGI_PoiSpecular.cginc"
+ #endif
+
+ #ifdef BLOOM
+ #include "CGI_PoiVideo.cginc"
+ #endif
+
+ #ifdef _TERRAIN_NORMAL_MAP
+ #include "CGI_PoiSubsurfaceScattering.cginc"
+ #endif
+
+ #include "CGI_PoiBlending.cginc"
+ #include "CGI_PoiGrab.cginc"
+
+ #ifdef _SUNDISK_SIMPLE
+ #include "CGI_PoiGlitter.cginc"
+ #endif
+
+ #ifdef _EMISSION
+ #include "CGI_PoiEmission.cginc"
+ #endif
+
+ #ifdef _COLORCOLOR_ON
+ #include "CGI_PoiClearCoat.cginc"
+ #endif
+
+ #include "CGI_PoiAlphaToCoverage.cginc"
+
+ #ifdef _COLOROVERLAY_ON
+ #include "CGI_PoiDebug.cginc"
+ #endif
+ #include "CGI_PoiFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
new file mode 100644
index 00000000..7802662d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 66c307d7cd19a564f8ab9589a34f95de
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
new file mode 100644
index 00000000..5e365972
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
@@ -0,0 +1,26 @@
+#ifndef POI_PASS_OUTLINE
+ #define POI_PASS_OUTLINE
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiOutlineVert.cginc"
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiLighting.cginc"
+ #include "CGI_PoiMainTex.cginc"
+ #include "CGI_PoiData.cginc"
+ #include "CGI_PoiDithering.cginc"
+ #include "CGI_PoiOutlineFrag.cginc"
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
new file mode 100644
index 00000000..c9bcd9cb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e6856f52c3b87424d87005696237b2b9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
new file mode 100644
index 00000000..d21a5d4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
@@ -0,0 +1,44 @@
+#ifndef POI_PASS_SHADOW
+ #define POI_PASS_SHADOW
+
+ #pragma multi_compile_shadowcaster
+ #include "UnityCG.cginc"
+ #include "UnityShaderVariables.cginc"
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiShadowIncludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiMirror.cginc"
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+ #include "CGI_PoiData.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+ #include "CGI_PoiDithering.cginc"
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+ #include "CGI_PoiSpawnInVert.cginc"
+ #include "CGI_PoiShadowVert.cginc"
+ #include "CGI_PoiShadowFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
new file mode 100644
index 00000000..d8bfcd0d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6c23428b1727a4441bd8afde316257f6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
new file mode 100644
index 00000000..d4cd1697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
@@ -0,0 +1,131 @@
+#ifndef POI_RGBMASK
+ #define POI_RGBMASK
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RGBMask); float4 _RGBMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RedTexure); float4 _RedTexure_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_GreenTexture); float4 _GreenTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BlueTexture); float4 _BlueTexture_ST;
+
+ #ifdef GEOM_TYPE_MESH
+ POI_NORMAL_NOSAMPLER(_RgbNormalR);
+ POI_NORMAL_NOSAMPLER(_RgbNormalG);
+ POI_NORMAL_NOSAMPLER(_RgbNormalB);
+ float _RgbNormalsEnabled;
+ #endif
+
+ float4 _RedColor;
+ float4 _GreenColor;
+ float4 _BlueColor;
+
+ float4 _RGBMaskPanning;
+ float4 _RGBRedPanning;
+ float4 _RGBGreenPanning;
+ float4 _RGBBluePanning;
+
+ float _RGBBlendMultiplicative;
+
+ float _RGBMaskUV;
+ float _RGBRed_UV;
+ float _RGBGreen_UV;
+ float _RGBBlue_UV;
+ float _RGBUseVertexColors;
+ float _RGBNormalBlend;
+
+ static float3 rgbMask;
+
+ void calculateRGBNormals(inout half3 mainTangentSpaceNormal)
+ {
+ #ifdef GEOM_TYPE_MESH
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+
+ if(float(0))
+ {
+
+ if(float(0) == 0)
+ {
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.r);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.g);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.b);
+ }
+ return;
+ }
+ else
+ {
+ half3 newNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0) * rgbMask.r);
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.g);
+ normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.b);
+ mainTangentSpaceNormal = BlendNormals(newNormal, mainTangentSpaceNormal);
+ return;
+ }
+ }
+ #endif
+ }
+
+ float3 calculateRGBMask(float3 baseColor)
+ {
+ //If RGB normals are in use this data will already exist
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+ float4 red = POI2D_SAMPLER_PAN(_RedTexure, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 green = POI2D_SAMPLER_PAN(_GreenTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 blue = POI2D_SAMPLER_PAN(_BlueTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+
+ if(float(0))
+ {
+ float3 RGBColor = 1;
+ RGBColor = lerp(RGBColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ baseColor *= RGBColor;
+ }
+ else
+ {
+ baseColor = lerp(baseColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ }
+
+ return baseColor;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
new file mode 100644
index 00000000..1b324be1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 26d0374ddaa6bd147a0dffd7cc51aa7d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
new file mode 100644
index 00000000..137ef6de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
@@ -0,0 +1,4 @@
+#ifndef POI_RNG
+ #define POI_RNG
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
new file mode 100644
index 00000000..25f77a57
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cf5650ac8e4b0804ea36d4e65833b3d5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
new file mode 100644
index 00000000..11f3eea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_RANDOM
+ #define POI_RANDOM
+
+ float _EnableRandom;
+ float m_start_Angle;
+ float _AngleType;
+ float3 _AngleForwardDirection;
+ float _CameraAngleMin;
+ float _CameraAngleMax;
+ float _ModelAngleMin;
+ float _ModelAngleMax;
+ float _AngleMinAlpha;
+ float _AngleCompareTo;
+
+ float ApplyAngleBasedRendering(float3 modelPos, float3 worldPos)
+ {
+ half cameraAngleMin = float(45) / 180;
+ half cameraAngleMax = float(90) / 180;
+ half modelAngleMin = float(45) / 180;
+ half modelAngleMax = float(90) / 180;
+ float3 pos = float(0) == 0 ? modelPos : worldPos;
+ half3 cameraToModelDirection = normalize(pos - getCameraPosition());
+ half3 modelForwardDirection = normalize(mul(unity_ObjectToWorld, normalize(float4(0,0,1,0))));
+ half cameraLookAtModel = remapClamped(.5 * dot(cameraToModelDirection, getCameraForward()) + .5, cameraAngleMax, cameraAngleMin, 0, 1);
+ half modelLookAtCamera = remapClamped(.5 * dot(-cameraToModelDirection, modelForwardDirection) + .5, modelAngleMax, modelAngleMin, 0, 1);
+ if (float(0) == 0)
+ {
+ return max(cameraLookAtModel, float(0));
+ }
+ else if(float(0) == 1)
+ {
+ return max(modelLookAtCamera, float(0));
+ }
+ else if(float(0) == 2)
+ {
+ return max(cameraLookAtModel * modelLookAtCamera, float(0));
+ }
+ return 1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
new file mode 100644
index 00000000..a5ef55a2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 450bf5dade7962341bdae6e81a70518b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
new file mode 100644
index 00000000..d4571c0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
@@ -0,0 +1,47 @@
+#ifndef POI_RIM
+ #define POI_RIM
+
+ float4 _RimLightColor;
+ float _RimLightingInvert;
+ float _RimWidth;
+ float _RimStrength;
+ float _RimSharpness;
+ float _RimLightColorBias;
+ float _ShadowMix;
+ float _ShadowMixThreshold;
+ float _ShadowMixWidthMod;
+ float _EnableRimLighting;
+ float _RimBrighten;
+ float _RimLightNormal;
+
+ POI_TEXTURE_NOSAMPLER(_RimTex);
+ POI_TEXTURE_NOSAMPLER(_RimMask);
+ POI_TEXTURE_NOSAMPLER(_RimWidthNoiseTexture);
+
+ float _RimWidthNoiseStrength;
+
+ float4 rimColor = float4(0, 0, 0, 0);
+ float rim = 0;
+
+ void applyRimLighting(inout float4 albedo, inout float3 rimLightEmission)
+ {
+ float rimNoise = POI2D_SAMPLER_PAN(_RimWidthNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimNoise = (rimNoise - .5) * float(0.1);
+
+ float viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+
+ if (float(0))
+ {
+ viewDotNormal = 1 - abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+ }
+ float rimWidth = float(0.8);
+ rimWidth -= rimNoise;
+ float rimMask = POI2D_SAMPLER_PAN(_RimMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimColor = POI2D_SAMPLER_PAN(_RimTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ rimWidth = max(lerp(rimWidth, rimWidth * lerp(0, 1, poiLight.lightMap - float(0.5)) * float(0.5), float(0)),0);
+ rim = 1 - smoothstep(min(float(0.25), rimWidth), rimWidth, viewDotNormal);
+ rim *= float4(1,1,1,1).a * rimColor.a * rimMask;
+ rimLightEmission = rim * lerp(albedo, rimColor, float(0)) * float(0);
+ albedo.rgb = lerp(albedo.rgb, lerp(albedo.rgb, rimColor, float(0)) + lerp(albedo.rgb, rimColor, float(0)) * float(0), rim);
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
new file mode 100644
index 00000000..46f3f10f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2e6e32f08682f944b8e0b0a36299a08d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
new file mode 100644
index 00000000..16701f61
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
@@ -0,0 +1,116 @@
+#ifndef SHADOW_FRAG
+ #define SHADOW_FRAG
+
+ float2 _MainDistanceFade;
+ float _ForceOpaque;
+ float _MainShadowClipMod;
+ float2 _AlphaMaskPan;
+ float _AlphaMaskUV;
+ sampler3D _DitherMaskLOD;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+
+ half4 fragShadowCaster(
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ V2FShadow i, uint facing: SV_IsFrontFace
+ #endif
+ ): SV_Target
+ {
+ poiMesh.uv[0] = i.uv;
+ poiMesh.uv[1] = i.uv1;
+ poiMesh.uv[2] = i.uv2;
+ poiMesh.uv[3] = i.uv3;
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+
+
+ //Possible Bug with clip
+ float clipValue = clamp(float(0.5) + float(0), - .001, 1.001);
+
+ poiMesh.vertexColor = saturate(i.vertexColor);
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+ #if defined(UNITY_STANDARD_USE_SHADOW_UVS)
+
+ half4 alpha = mainTexture;
+
+
+ if (float(0))
+ {
+ if(IsInMirror())
+ {
+ alpha.a = UNITY_SAMPLE_TEX2D_SAMPLER(_MirrorTexture, _MainTex, TRANSFORM_TEX(i.uv, _MirrorTexture)).a;
+ }
+ }
+
+
+ alpha.a *= smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(i.modelPos, _WorldSpaceCameraPos));
+ half alphaMask = POI2D_PAN(_AlphaMask, poiMesh.uv[float(0)], float4(0,0,0,0));
+ alpha.a *= alphaMask;
+ alpha.a *= float4(1,1,1,1).a + .0001;
+ alpha.a += float(0);
+ alpha.a = saturate(alpha.a);
+
+
+ if(float(0) == 0)
+ {
+ alpha.a = 1;
+ }
+
+
+ if(float(0) == 1)
+ {
+ applyShadowDithering(alpha.a, calcScreenUVs(i.grabPos).xy);
+ }
+
+ #ifdef POI_DISSOLVE
+ float3 fakeEmission = 1;
+ calculateDissolve(alpha, fakeEmission);
+ #endif
+
+ if(float(0) == 1)
+ {
+ clip(alpha.a - 0.001);
+ }
+
+ /*
+ return poiMesh.vertexColor.g;
+
+ #ifdef POI_RANDOM
+ alpha.a *= i.angleAlpha;
+ #endif
+
+
+ if(float(0) >= 1)
+ {
+ applySpawnInShadow(uv[0], i.localPos);
+
+ #if defined(POI_FLIPBOOK)
+ alpha.a *= applyFlipbookAlphaToShadow(uv[float(0)]);
+ #endif
+ }
+ */
+
+ if (float(0) == 1)
+ {
+ clip(alpha.a - clipValue);
+ }
+
+
+ if(float(0) > 1)
+ {
+ float dither = tex3D(_DitherMaskLOD, float3(i.pos.xy * .25, alpha.a * 0.9375)).a;
+ clip(dither - 0.01);
+ }
+
+ #endif
+ SHADOW_CASTER_FRAGMENT(i)
+ }
+
+ #endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
new file mode 100644
index 00000000..1146b79d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0dbb5426e95324c4d905415b0bb527a2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
new file mode 100644
index 00000000..fd8f19a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
@@ -0,0 +1,41 @@
+#ifndef SHADOW_INCLUDES
+ #define SHADOW_INCLUDES
+
+ #define UNITY_STANDARD_USE_SHADOW_UVS 1
+
+ float4 _Color;
+ sampler2D _AlphaMask; float4 _AlphaMask_ST;
+
+ struct VertexInputShadow
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ struct V2FShadow
+ {
+ V2F_SHADOW_CASTER_NOPOS
+ float4 pos: SV_POSITION;
+ float2 uv: TEXCOORD1;
+ float2 uv1: TEXCOORD2;
+ float2 uv2: TEXCOORD3;
+ float2 uv3: TEXCOORD4;
+ float3 modelPos: TEXCOORD5;
+ float4 worldPos: TEXCOORD6;
+ float4 localPos: TEXCOORD7;
+ float3 angleAlpha: TEXCOORD8;
+ float4 grabPos: TEXCOORD9;
+ fixed3 barycentricCoordinates: TEXCOORD10;
+ float4 vertexColor: TEXCOORD11;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
new file mode 100644
index 00000000..0da3dbc9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f2e136c8bfa055d40b6001888a77a637
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
new file mode 100644
index 00000000..f0b7184a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
@@ -0,0 +1,80 @@
+float _EnableTouchGlow;
+float _EnableBulge;
+float _VertexManipulationHeightUV;
+
+V2FShadow vertShadowCaster(VertexInputShadow v)
+{
+ V2FShadow o;
+ UNITY_SETUP_INSTANCE_ID(v);
+
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(V2FShadow, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.uv = v.uv0;
+ o.uv1 = v.uv1;
+ o.uv2 = v.uv2;
+ o.uv3 = v.uv3;
+
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, v.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.vertexColor = v.color;
+
+
+ if(_EnableTouchGlow || _EnableBulge)
+ {
+ o.pos = UnityObjectToClipPos(float3(0, 0, -5));
+ o.localPos.xyz = float3(0, 0, -5);
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ }
+
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+
+ o.pos = UnityClipSpaceShadowCasterPos(o.localPos, v.normal);
+ o.pos = UnityApplyLinearShadowBias(o.pos);
+
+ return o;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
new file mode 100644
index 00000000..b2eee2df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 46fe42764f897a647ace117cb77d056a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
new file mode 100644
index 00000000..0c18d1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+ #endif
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_SpawnInNoise); float4 _SpawnInNoise_ST;
+
+ float calculateGradientValueFrag(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnIn(inout float4 finalColor, inout float3 spawnInEmission, float2 uv, float3 localPos)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ spawnInEmission = saturate(inverseGradient + _SpawnInAlpha + _SpawnInEmissionOffset +noise - 1) * _SpawnInEmissionColor;
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+
+ void applySpawnInShadow(float2 uv, float3 localPos)
+ {
+
+ if(_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float alpha = gradient - _SpawnInAlpha - noise + length(_SpawnInVertOffset);
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
new file mode 100644
index 00000000..6b3cd956
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e47f0bb0d16406047ac220b19cebcc8c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
new file mode 100644
index 00000000..fdcc457f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
@@ -0,0 +1,40 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+
+ #endif
+ //sampler2D _SpawnInNoiseVert; float4 _SpawnInNoiseVert_ST;
+
+ float calculateGradientValueVert(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnInVert(inout float4 worldPos, inout float4 localPos, float2 uv)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = 0;
+ float gradient = calculateGradientValueVert(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ worldPos.xyz += saturate(inverseGradient + _SpawnInAlpha + _SpawnInVertOffsetOffset -1) * float3(0, _SpawnInVertOffset, 0);
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+ //float noise = tex2Dlod(_SpawnInNoise, float4(TRANSFORM_TEX(uv, _SpawnInNoise))).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
new file mode 100644
index 00000000..9c91dc9a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8530686c84718f144985dbd5af11588b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
new file mode 100644
index 00000000..f5287465
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
@@ -0,0 +1,488 @@
+#ifndef POI_SPECULAR
+ #define POI_SPECULAR
+ float _SpecWhatTangent;
+ float _SpecularType;
+ float _SmoothnessFrom;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap);
+ fixed _CenterOutSpecColor;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro);
+ float _SpecularAnisoJitterMirrored;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoFakeUV);
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask);
+ float _SpecularAnisoJitterMicroMultiplier;
+ float _SpecularAnisoJitterMacroMultiplier;
+ float4 _SpecularTint;
+ float _SpecularSmoothness;
+ float _Spec1Offset;
+ float _Spec1JitterStrength;
+ float _Spec2Smoothness;
+ float _Spec2Offset;
+ float _Spec2JitterStrength;
+ float _AnisoUseTangentMap;
+ float _AnisoSpec1Alpha;
+ float _AnisoSpec2Alpha;
+ float _SpecularInvertSmoothness;
+ half _SpecularMetallic;
+ float _SpecularNormal;
+ float _SpecularNormal1;
+ // Toon
+ fixed _SpecularToonStart;
+ fixed _SpecularToonEnd;
+ half4 _SpecularToonInnerOuter;
+
+ float _EnableSpecular1;
+ float _SpecWhatTangent1;
+ float _SpecularType1;
+ float _SmoothnessFrom1;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro1);
+ float _SpecularAnisoJitterMirrored1;
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask1);
+ float _SpecularAnisoJitterMicroMultiplier1;
+ float _SpecularAnisoJitterMacroMultiplier1;
+ float4 _SpecularTint1;
+ float _SpecularSmoothness1;
+ float _Spec1Offset1;
+ float _Spec1JitterStrength1;
+ float _Spec2Smoothness1;
+ float _Spec2Offset1;
+ float _Spec2JitterStrength1;
+ float _AnisoUseTangentMap1;
+ float _AnisoSpec1Alpha1;
+ float _AnisoSpec2Alpha1;
+ float _SpecularInvertSmoothness1;
+ half _SpecularMetallic1;
+ // Toon
+ half4 _SpecularToonInnerOuter1;
+ fixed _SpecularToonStart1;
+ fixed _SpecularToonEnd1;
+
+ UnityIndirect ZeroIndirect()
+ {
+ UnityIndirect ind;
+ ind.diffuse = 0;
+ ind.specular = 0;
+ return ind;
+ }
+
+ // From unity just putting it here in case I want to mod it
+ half4 poiRealisticSpecular(half3 diffColor, half3 specColor, half oneMinusReflectivity, half smoothness,
+ float3 normal, float3 halfDir,
+ UnityLight light, UnityIndirect gi)
+ {
+ float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
+ #define UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV 0
+
+ #if UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV
+ half shiftAmount = dot(normal, poiCam.viewDir);
+ normal = shiftAmount < 0.0f ? normal + poiCam.viewDir * (-shiftAmount + 1e-5f): normal;
+ float nv = saturate(dot(normal, poiCam.viewDir));
+ #else
+ half nv = abs(dot(normal, poiCam.viewDir));
+ #endif
+
+ float nl = saturate(dot(normal, light.dir));
+ float nh = saturate(dot(normal, halfDir));
+
+ half lv = saturate(dot(light.dir, poiCam.viewDir));
+ half lh = saturate(dot(light.dir, halfDir));
+
+ half diffuseTerm = DisneyDiffuse(nv, nl, lh, perceptualRoughness) * nl;
+
+ float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
+
+ roughness = max(roughness, 0.002);
+ float V = SmithJointGGXVisibilityTerm(nl, nv, roughness);
+ float D = GGXTerm(nh, roughness);
+
+ float specularTerm = V * D * UNITY_PI;
+
+ #ifdef UNITY_COLORSPACE_GAMMA
+ specularTerm = sqrt(max(1e-4h, specularTerm));
+ #endif
+
+ specularTerm = max(0, specularTerm * nl);
+ #if defined(_POI_SPECULARHIGHLIGHTS_OFF)
+ specularTerm = 0.0;
+ #endif
+
+ half surfaceReduction;
+ #ifdef UNITY_COLORSPACE_GAMMA
+ surfaceReduction = 1.0 - 0.28 * roughness * perceptualRoughness;
+ #else
+ surfaceReduction = 1.0 / (roughness * roughness + 1.0);
+ #endif
+
+ specularTerm *= any(specColor) ? 1.0: 0.0;
+
+ half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
+ half3 color = diffColor * (gi.diffuse + light.color * diffuseTerm)
+ + specularTerm * light.color * FresnelTerm(specColor, lh)
+ + surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, nv);
+
+ return half4(color, 1);
+ }
+
+ half3 calculateRealisticSpecular(float4 albedo, float2 uv, float4 specularTint, float specularSmoothness, float invertSmoothness, float mixAlbedoWithTint, float4 specularMap, float3 specularLight, float3 normal, float attenuation, float3 lightDirection, float nDotL, float3 halfDir)
+ {
+ half oneMinusReflectivity;
+ half3 finalSpecular;
+ UnityLight unityLight;
+ unityLight.color = specularLight;
+ unityLight.dir = lightDirection;
+ unityLight.ndotl = nDotL;
+
+
+ if (float(1) == 0)
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularMap.rgb * specularTint.rgb, /*out*/ oneMinusReflectivity);
+ finalSpecular = poiRealisticSpecular(diffColor, specularMap.rgb, oneMinusReflectivity, specularMap.a * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ else
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularTint.rgb, /*out*/ oneMinusReflectivity);
+ float smoothness = max(max(specularMap.r, specularMap.g), specularMap.b);
+ finalSpecular = poiRealisticSpecular(diffColor, 1, oneMinusReflectivity, smoothness * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ finalSpecular *= lerp(1, albedo.rgb, mixAlbedoWithTint);
+ return finalSpecular;
+ }
+
+ half3 calculateToonSpecular(float4 albedo, float2 uv, float2 specularToonInnerOuter, float specularMixAlbedoIntoTint, float smoothnessFrom, float4 specularMap, float3 specularLight, float3 normal, float3 halfDir, float attenuation)
+ {
+ half3 finalSpecular = smoothstep(1 - specularToonInnerOuter.y, 1 - specularToonInnerOuter.x, dot(halfDir, normal)) * specularLight;
+
+ if (smoothnessFrom == 0)
+ {
+ finalSpecular.rgb *= specularMap.rgb * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ finalSpecular *= specularMap.a;
+ }
+ else
+ {
+ finalSpecular *= specularMap.r * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+ return finalSpecular;
+ }
+
+ float3 strandSpecular(float TdotL, float TdotV, float specPower, float nDotL)
+ {
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+ float Specular = saturate(nDotL) * pow(saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV), specPower);
+ half normalization = sqrt((specPower + 1) * ((specPower) + 1)) / (8 * pi);
+ Specular *= normalization;
+ return Specular;
+ }
+
+ half3 AnisotropicSpecular(
+ float specWhatTangent, float anisoUseTangentMap, float specularSmoothness, float spec2Smoothness,
+ float anisoSpec1Alpha, float anisoSpec2Alpha, float4 specularTint, float specularMixAlbedoIntoTint, float4 specularMap, float3 specularLight, float3 lightDirection, float3 halfDir, float nDotL, float jitter, float4 packedTangentMap, in float4 albedo)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ tangentDirectionMap += float(0) +jitter;
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+ half specPower = RoughnessToSpecPower(1.0 - specularSmoothness * specularMap.a);
+ half spec2Power = RoughnessToSpecPower(1.0 - spec2Smoothness * specularMap.a);
+ half Specular = 0;
+
+ float3 spec = strandSpecular(TdotL, TdotV, specPower, nDotL) * anisoSpec1Alpha;
+ float3 spec2 = strandSpecular(TdotL, TdotV, spec2Power, nDotL) * anisoSpec2Alpha;
+
+ return max(spec, spec2) * specularMap.rgb * specularTint.a * specularLight * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+
+ inline float3 toonAnisoSpecular(float specWhatTangent, float anisoUseTangentMap, float3 lightDirection, float halfDir, float4 specularMap, float nDotL, fixed gradientStart, fixed gradientEnd, float4 specColor, float4 finalColor, fixed metallic, float jitter, float mirrored, float4 packedTangentMap)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ if (!mirrored)
+ {
+ tangentDirectionMap += jitter;
+ }
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+
+ float specular = saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV);
+
+ fixed smoothAlpha = specular;
+ if(mirrored)
+ {
+ smoothAlpha = max(specular - jitter, 0);
+ }
+
+ specular = smoothstep(gradientStart, gradientEnd, smoothAlpha);
+
+ /*
+
+ if(_CenterOutSpecColor)
+ {
+ specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, clamp(float2(specular, specular), 0.01, .99), float4(0,0,0,0));
+ }
+ */
+
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+
+ return saturate(nDotL) * specular * poiLight.color * specColor * specularMap.rgb * lerp(1, finalColor, metallic) * specularMap.a;
+ }
+
+ inline float SpecularHQ(half roughness, half dotNH, half dotLH)
+ {
+ roughness = saturate(roughness);
+ roughness = max((roughness * roughness), 0.002);
+ half roughnessX2 = roughness * roughness;
+
+ half denom = dotNH * dotNH * (roughnessX2 - 1.0) + 1.0f;
+ half D = roughnessX2 / (3.14159 * denom * denom);
+
+ half k = roughness / 2.0f;
+ half k2 = k * k;
+ half invK2 = 1.0f - k2;
+
+ half vis = rcp(dotLH * dotLH * invK2 + k2);
+
+ float specTerm = vis * D;
+
+ return specTerm;
+ }
+
+ float3 calculateNewSpecular(in float3 specularMap, uint colorFrom, in float4 albedo, in float3 specularTint, in float specularMetallic, in float specularSmoothness, in half dotNH, in half dotLH, in float3 lightColor, in float attenuation)
+ {
+ float3 specColor = specularTint;
+ float metallic = specularMetallic;
+ float roughness = 1 - specularSmoothness;
+ float perceptualRoughness = roughness;
+ //float reflectInverse = DielectricSpec.a - metallic * DielectricSpec.a;
+ //float reflectivity = 1.0h - reflectInverse;
+ float3 specMapColor = lerp(specularMap, 1, colorFrom);
+ float3 specularColor = lerp(DielectricSpec.rgb * specMapColor, lerp(specularMap, albedo.rgb, colorFrom), metallic);
+ //albedo.rgb *= reflectInverse;
+ return clamp(specularColor * lightColor * attenuation * specularTint * SpecularHQ(perceptualRoughness, dotNH, dotLH), 0, lightColor * specularTint);
+ }
+
+ float3 calculateSpecular(in float4 albedo)
+ {
+ half3 finalSpecular = 0;
+ half3 finalSpecular1 = 0;
+ float4 realisticAlbedo = albedo;
+ float4 realisticAlbedo1 = albedo;
+ float4 specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half metallic = POI2D_SAMPLER_PAN(_SpecularMetallicMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ half specularMask = POI2D_SAMPLER_PAN(_SpecularMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float attenuation = saturate(poiLight.nDotL);
+ #ifdef POI_LIGHTING
+
+ if (float(0) && float(0) == 0 && float(0) == 1)
+ {
+ attenuation = poiLight.rampedLightMap;
+ }
+ #endif
+
+
+ if(float(1) == 1) // Realistic
+ {
+ if (float(1) == 1)
+ {
+ specularMap.a = specularMap.r;
+ specularMap.rgb = 1;
+ }
+
+ if(float(0))
+ {
+ specularMap.a = 1 - specularMap.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, attenuation);
+ #else
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic, jitter, float(0), packedTangentMap);
+ finalSpecular *= attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular += calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic, float(1), specularMap, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += AnisotropicSpecular(float(0), float(0), float(1), float(0), float(1), float(1), float4(1,1,1,1), metallic, specularMap, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular *= float4(1,1,1,1);
+ finalSpecular *= attenuation;
+ }
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+
+ finalSpecular *= float4(1,1,1,1).a;
+ finalSpecular = finalSpecular.rgb;
+ finalSpecular *= specularMask;
+
+
+ if (float(0))
+ {
+ float4 specularMap1 = POI2D_SAMPLER_PAN(_SpecularMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half specularMask1 = POI2D_SAMPLER_PAN(_SpecularMask1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ half metallic1 = POI2D_SAMPLER_PAN(_SpecularMetallicMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ float attenuation = poiLight.attenuation;
+
+ if(float(1) == 1) // Realistic
+ {
+
+ if (float(1) == 1)
+ {
+ specularMap1.a = specularMap1.r;
+ specularMap1.rgb = 1;
+ }
+ else
+ {
+ realisticAlbedo1.rgb = specularMap1.rgb;
+ }
+
+
+ if(float(0))
+ {
+ specularMap1.a = 1 - specularMap1.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, saturate(poiLight.nDotL));
+ #else
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap1, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic1, jitter, float(0), packedTangentMap);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular1 = calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic1, float(1), specularMap1, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular1 *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 = AnisotropicSpecular(float(0), float(0), float(0.75), float(0), float(1), float(1), float4(1,1,1,1), metallic1, specularMap1, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular1 *= float4(1,1,1,1);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ // Non Important Lights
+ #ifdef VERTEXLIGHT_ON
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular1 += calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+ #endif
+
+ finalSpecular1 *= float4(1,1,1,1).a;
+ finalSpecular1 = finalSpecular1.rgb;
+ finalSpecular1 *= specularMask1;
+ }
+ return finalSpecular + finalSpecular1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
new file mode 100644
index 00000000..c00ab3c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 68299de3a2970b6429933e1d34de7aca
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
new file mode 100644
index 00000000..b7c21c01
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
@@ -0,0 +1,28 @@
+#ifndef SUBSURFACE
+ #define SUBSURFACE
+
+ float _SSSThicknessMod;
+ float _SSSSCale;
+ float _SSSPower;
+ float _SSSDistortion;
+ float4 _SSSColor;
+ float _EnableSSS;
+
+ POI_TEXTURE_NOSAMPLER(_SSSThicknessMap);
+
+ float3 calculateSubsurfaceScattering()
+ {
+ float SSS = 1 - POI2D_SAMPLER_PAN(_SSSThicknessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ half3 vLTLight = poiLight.direction + poiMesh.normals[0] * float(1);
+ half flTDot = pow(saturate(dot(poiCam.viewDir, -vLTLight)), float(5)) * float(0.25);
+ #ifdef FORWARD_BASE_PASS
+ half3 fLT = (flTDot) * saturate(SSS + - 1 * float(0));
+ #else
+ half3 fLT = poiLight.attenuation * (flTDot) * saturate(SSS + - 1 * float(0));
+ #endif
+
+ return fLT * poiLight.color * float4(1,0,0,1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
new file mode 100644
index 00000000..bcffc869
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6b88082d4f5f44d498c2a3c6c256a7df
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
new file mode 100644
index 00000000..4912473d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
@@ -0,0 +1,117 @@
+#ifndef POI_TESSELLATION
+ #define POI_TESSELLATION
+
+ float _TessellationPhongStrength;
+ float _TessellationEdgeLength;
+ float _TessellationExtrusionAmount;
+ float _TessellationUniform;
+
+ struct TessellationControlPoint
+ {
+ float4 vertex: INTERNALTESSPOS;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ };
+
+ struct TessellationFactors
+ {
+ float edge[3]: SV_TessFactor;
+ float inside: SV_InsideTessFactor;
+ };
+
+ TessellationControlPoint poiTessellationVert(appdata v)
+ {
+ TessellationControlPoint p;
+ p.vertex = v.vertex;
+ p.normal = v.normal;
+ p.tangent = v.tangent;
+ p.color = v.color;
+ p.uv0 = v.uv0;
+ p.uv1 = v.uv1;
+ p.uv2 = v.uv2;
+ p.uv3 = v.uv3;
+ return p;
+ }
+
+ float TessellationEdgeFactor(float3 p0, float3 p1)
+ {
+ #ifndef _FADING_ON
+ float edgeLength = distance(p0, p1);
+
+ float3 edgeCenter = (p0 + p1) * 0.5;
+ float viewDistance = distance(edgeCenter, _WorldSpaceCameraPos);
+
+ return edgeLength * _ScreenParams.y /
+ (_TessellationEdgeLength * viewDistance);
+ #else
+ return _TessellationUniform;
+ #endif
+ }
+
+ TessellationFactors poiPatchConst(
+ InputPatch < TessellationControlPoint, 3 > patch
+ )
+ {
+
+ TessellationFactors f;
+ float3 p0 = mul(unity_ObjectToWorld, patch[0].vertex).xyz;
+ float3 p1 = mul(unity_ObjectToWorld, patch[1].vertex).xyz;
+ float3 p2 = mul(unity_ObjectToWorld, patch[2].vertex).xyz;
+ f.edge[0] = TessellationEdgeFactor(p1, p2);
+ f.edge[1] = TessellationEdgeFactor(p2, p0);
+ f.edge[2] = TessellationEdgeFactor(p0, p1);
+ f.inside = (TessellationEdgeFactor(p1, p2) +
+ TessellationEdgeFactor(p2, p0) +
+ TessellationEdgeFactor(p0, p1)) * (1 / 3.0);
+ return f;
+ }
+
+ [UNITY_domain("tri")]
+ [UNITY_outputcontrolpoints(3)]
+ [UNITY_outputtopology("triangle_cw")]
+ [UNITY_partitioning("fractional_odd")]
+ [UNITY_patchconstantfunc("poiPatchConst")]
+ TessellationControlPoint poiHull(
+ InputPatch < TessellationControlPoint, 3 > patch,
+ uint id: SV_OutputControlPointID
+ )
+ {
+ return patch[id];
+ }
+
+ [UNITY_domain("tri")]
+ v2f poiDomain(
+ TessellationFactors factors,
+ OutputPatch < TessellationControlPoint, 3 > patch,
+ float3 barycentricCoordinates: SV_DomainLocation
+ )
+ {
+ appdata data;
+
+ #define MY_DOMAIN_PROGRAM_INTERPOLATE(fieldName) data.fieldName = patch[0].fieldName * barycentricCoordinates.x + patch[1].fieldName * barycentricCoordinates.y + patch[2].fieldName * barycentricCoordinates.z;
+
+ MY_DOMAIN_PROGRAM_INTERPOLATE(vertex)
+ float3 pp[3];
+ for (int i = 0; i < 3; ++ i)
+ {
+ pp[i] = data.vertex.xyz - patch[i].normal * (dot(data.vertex.xyz, patch[i].normal) - dot(patch[i].vertex.xyz, patch[i].normal));
+ }
+ data.vertex.xyz = _TessellationPhongStrength * (pp[0] * barycentricCoordinates.x + pp[1] * barycentricCoordinates.y + pp[2] * barycentricCoordinates.z) + (1.0f - _TessellationPhongStrength) * data.vertex.xyz;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(normal)
+ data.vertex.xyz += data.normal.xyz * _TessellationExtrusionAmount;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(tangent)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(color)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv0)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv1)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv2)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv3)
+
+ return vert(data);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
new file mode 100644
index 00000000..d140d278
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 64b8be1a413e96d4c83dd3b38e4abde6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
new file mode 100644
index 00000000..38d5fd75
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_UV_DISTORTION
+ #define POI_UV_DISTORTION
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture); float4 _DistortionFlowTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture1); float4 _DistortionFlowTexture1_ST;
+ POI_TEXTURE_NOSAMPLER(_DistortionMask);
+
+ float _DistortionStrength;
+ float _DistortionStrength1;
+ float2 _DistortionSpeed;
+ float2 _DistortionSpeed1;
+
+ float2 getTorusUv(float2 uv)
+ {
+ // translated to hlsl from https://www.shadertoy.com/view/Md3Bz7
+ // http://web.cs.ucdavis.edu/~amenta/s12/findnorm.pdf
+ float phi = 6.28318530718f * uv.x;
+ float theta = 6.28318530718f * uv.y;
+ float3 c = cos(float3(phi, phi + 1.57079632679f, theta));
+ float2 result = float2(c.x * c.z, -c.y * c.z);
+ return result * 0.5 + 0.5;
+ }
+
+ float2 calculateDistortionUV(float2 uv)
+ {
+ half distortionMask = POI2D_SAMPLER_PAN(_DistortionMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flowVector = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ float4 flowVector1 = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture1, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture1) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ flowVector *= float(0.5);
+ flowVector1 *= float(0.5);
+ return uv + ((flowVector.xy + flowVector1.xy) / 2) * distortionMask;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
new file mode 100644
index 00000000..ae72ea3c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8e6906f92ea62004c8c055d576a76c20
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
new file mode 100644
index 00000000..0e29a179
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_V2F
+ #define POI_V2F
+
+ struct v2f
+ {
+ float4 pos: SV_POSITION;
+ float4 uv0: TEXCOORD0;
+ float4 uv1: TEXCOORD1;
+ float3 normal: TEXCOORD2;
+ float3 tangentViewDir: TEXCOORD3;
+ float4 tangent: TEXCOORD4;
+ float4 worldPos: TEXCOORD5;
+ float4 localPos: TEXCOORD6;
+ float4 grabPos: TEXCOORD7;
+ float3 barycentricCoordinates: TEXCOORD8;
+ #if defined(GRAIN)
+ float4 worldDirection: TEXCOORD9;
+ #endif
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV: TEXCOORD10;
+ #endif
+ float3 modelPos: TEXCOORD11;
+ float angleAlpha: TEXCOORD12;
+ float4 vertexColor: TEXCOORD14;
+ #ifdef FUR
+ float furAlpha: TEXCOORD15;
+ #endif
+ UNITY_SHADOW_COORDS(16)
+ UNITY_FOG_COORDS(17)
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ UNITY_VERTEX_OUTPUT_STEREO
+ };
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
new file mode 100644
index 00000000..e37c8733
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 20ca6ac0827384c45b6ec2588b97e2ef
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
new file mode 100644
index 00000000..1558e937
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
@@ -0,0 +1,126 @@
+#ifndef POI_VERT
+ #define POI_VERT
+
+ float _VertexManipulationHeightUV;
+ float _VertexUnwrap;
+
+ #define PM UNITY_MATRIX_P
+
+ inline float4 CalculateFrustumCorrection()
+ {
+ float x1 = -PM._31 / (PM._11 * PM._34);
+ float x2 = -PM._32 / (PM._22 * PM._34);
+ return float4(x1, x2, 0, PM._33 / PM._34 + x1 * PM._13 + x2 * PM._23);
+ }
+
+ v2f vert(appdata v)
+ {
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ #ifdef _COLOROVERLAY_ON
+ v.vertex.xyz = lerp(v.vertex.xyz, float3(v.uv0.x - .5, v.uv0.y - .5, 0), float(0));
+ #endif
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.tangent, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ #ifdef _REQUIRE_UV2 //POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ TANGENT_SPACE_ROTATION;
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ //o.localPos.x *= -1;
+ //o.localPos.xz += sin(o.localPos.y * 100 + _Time.y * 5) * .0025;
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, o.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+ o.vertexColor = v.color;
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.tangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
+
+ #ifdef POI_BULGE
+ bulgyWolgy(o);
+ #endif
+
+
+ o.angleAlpha = 1;
+ #ifdef _SUNDISK_NONE //POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ #if defined(LIGHTMAP_ON)
+ o.lightmapUV.xy = v.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
+ #endif
+ #ifdef DYNAMICLIGHTMAP_ON
+ o.lightmapUV.zw = v.uv2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0.xy);
+ UNITY_TRANSFER_FOG(o, o.pos);
+
+ #if defined(_PARALLAXMAP) // POI_PARALLAX
+ v.tangent.xyz = normalize(v.tangent.xyz);
+ v.normal = normalize(v.normal);
+ float3x3 objectToTangent = float3x3(
+ v.tangent.xyz,
+ cross(v.normal, v.tangent.xyz) * v.tangent.w,
+ v.normal
+ );
+ o.tangentViewDir = mul(objectToTangent, ObjSpaceViewDir(v.vertex));
+ #endif
+
+ #ifdef POI_META_PASS
+ o.pos = UnityMetaVertexPosition(v.vertex, v.uv1.xy, v.uv2.xy, unity_LightmapST, unity_DynamicLightmapST);
+ #endif
+
+ #if defined(GRAIN)
+ float4 worldDirection;
+
+ worldDirection.xyz = o.worldPos.xyz - _WorldSpaceCameraPos;
+ worldDirection.w = dot(o.pos, CalculateFrustumCorrection());
+ o.worldDirection = worldDirection;
+ #endif
+
+ return o;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
new file mode 100644
index 00000000..b51b6deb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 59b1ffca4184a0b4882a48f674fd98c0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
new file mode 100644
index 00000000..94c16148
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
@@ -0,0 +1,93 @@
+#ifndef POI_VERTEX_MANIPULATION
+ #define POI_VERTEX_MANIPULATION
+
+ #include "CGI_PoiMath.cginc"
+
+ float4 _VertexManipulationLocalTranslation;
+ float4 _VertexManipulationLocalRotation;
+ float4 _VertexManipulationLocalScale;
+ float4 _VertexManipulationWorldTranslation;
+
+ float _VertexManipulationHeight;
+ float _VertexManipulationHeightBias;
+ sampler2D _VertexManipulationHeightMask; float4 _VertexManipulationHeightMask_ST;
+ float2 _VertexManipulationHeightPan;
+
+
+ //Vertex Glitching
+ float _EnableVertexGlitch;
+ sampler2D _VertexGlitchMap; float4 _VertexGlitchMap_ST;
+ float _VertexGlitchThreshold;
+ float _VertexGlitchFrequency;
+ float _VertexGlitchStrength;
+ // Rounding
+ float _VertexRoundingDivision;
+ float _VertexRoundingEnabled;
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 tangent, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ tangent.xyz = rotate_with_quaternion(tangent.xyz, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyWorldVertexTransformation(inout float4 worldPos, inout float4 localPos, inout float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyWorldVertexTransformationShadow(inout float4 worldPos, inout float4 localPos, float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyVertexRounding(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if (float(0))
+ {
+ worldPos.xyz = (ceil(worldPos * float(500)) / float(500)) - 1 / float(500) * .5;
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+ void applyVertexGlitching(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if(_EnableVertexGlitch)
+ {
+ float3 forward = getCameraPosition() - mul(unity_ObjectToWorld, float4(0, 0, 0, 1)).xyz;
+ forward.y = 0;
+ forward = normalize(forward);
+ float3 glitchDirection = normalize(cross(float3(0, 1, 0), forward));
+ float glitchAmount = frac(sin(dot(_Time.xy + worldPos.y, float2(12.9898, 78.233))) * 43758.5453123) * 2 - 1;
+ /*
+ float uvl = worldPos.y * _VertexGlitchDensity + _Time.x * _VertexGlitchMapPanSpeed;
+ float uvr = worldPos.y * _VertexGlitchDensity - _Time.x * _VertexGlitchMapPanSpeed;
+ float glitchAmountLeft = tex2Dlod(_VertexGlitchMap, float4(uvl, uvl, 0, 0)).r;
+ float glitchAmountRight = -tex2Dlod(_VertexGlitchMap, float4(uvr, uvr, 0, 0)).r;
+ float glitchAmount = glitchAmountLeft + glitchAmountRight;
+ */
+ float time = _Time.y * _VertexGlitchFrequency;
+ float randomGlitch = (sin(time) + sin(2.2 * time + 5.52) + sin(2.9 * time + 0.93) + sin(4.6 * time + 8.94)) / 4;
+ worldPos.xyz += glitchAmount * glitchDirection * (_VertexGlitchStrength * .01) * step(_VertexGlitchThreshold, randomGlitch);
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+#endif
+//
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
new file mode 100644
index 00000000..fe640bb2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8b087ad7a32e6424d863b0d05f0fa230
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
new file mode 100644
index 00000000..ec2d37e4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
@@ -0,0 +1,266 @@
+#ifndef POI_VIDEO
+ #define POI_VIDEO
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoPixelTexture); float4 _VideoPixelTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoMaskTexture); float4 _VideoMaskTexture_ST;
+
+ float _VideoUVNumber;
+ float _VideoType;
+ float3 pixels;
+ float2 _VideoResolution;
+ sampler2D _VideoGameboyRamp;
+ half _VideoBacklight;
+ half _VideoCRTRefreshRate;
+ half _VideoCRTPixelEnergizedTime;
+ half _VideoEnableVideoPlayer;
+ half _VideoRepeatVideoTexture;
+ half _VideoPixelateToResolution;
+ float2 _VideoMaskPanning;
+ // Video Settings
+ half _VideoSaturation;
+ half _VideoContrast;
+ float2 _VideoTiling;
+ float2 _VideoOffset;
+ float2 _VideoPanning;
+ //Debug
+ half _VideoEnableDebug;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoDebugTexture); float4 _VideoDebugTexture_ST;
+
+
+ sampler2D _VRChat_VideoPlayer;
+ float4 _VRChat_VideoPlayer_TexelSize;
+
+ float4 globalVideoPlayerColor;
+ float3 globalColorToDisplayOnScreen;
+ float globalVideoOn;
+
+ float3 applyBacklight(float3 albedo, half backlightStrength)
+ {
+ return max(backlightStrength, albedo.rgb);
+ }
+
+ float3 applyViewAngleTN(float3 albedo)
+ {
+ float3 reflectionVector = normalize(reflect(poiCam.viewDir.rgb, poiMesh.normals[1].rgb));
+ float upwardShift = dot(reflectionVector, poiMesh.binormal);
+ upwardShift = pow(upwardShift, 1);
+ float sideShift = dot(reflectionVector, poiMesh.tangent);
+ sideShift *= pow(sideShift, 3);
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = LinearToGammaSpace(albedo);
+ #endif
+ albedo = saturate(lerp(half3(0.5, 0.5, 0.5), albedo, upwardShift + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = GammaToLinearSpace(albedo);
+ #endif
+ albedo = (lerp(albedo, albedo.gbr, sideShift));
+ return albedo;
+ }
+
+ float calculateCRTPixelBrightness()
+ {
+ float totalPixels = _VideoResolution.x * _VideoResolution.y;
+ float2 uvPixel = float2((floor((1 - poiMesh.uv[_VideoUVNumber].y) * _VideoResolution.y)) / _VideoResolution.y, (floor(poiMesh.uv[_VideoUVNumber].x * _VideoResolution.x)) / _VideoResolution.x);
+ float currentPixelNumber = _VideoResolution.x * (_VideoResolution.y * uvPixel.x) + _VideoResolution.y * uvPixel.y;
+ float currentPixelAlpha = currentPixelNumber / totalPixels;
+ half electronBeamAlpha = frac(_Time.y * _VideoCRTRefreshRate);
+ float electronBeamPixelNumber = totalPixels * electronBeamAlpha;
+
+ float DistanceInPixelsFromCurrentElectronBeamPixel = 0;
+ if (electronBeamPixelNumber >= currentPixelNumber)
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber - currentPixelNumber;
+ }
+ else
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber + (totalPixels - currentPixelNumber);
+ }
+ float CRTFrameTime = 1 / _VideoCRTRefreshRate;
+ float timeSincecurrentPixelWasHitByElectronBeam = (DistanceInPixelsFromCurrentElectronBeamPixel / totalPixels);
+
+ return saturate(_VideoCRTPixelEnergizedTime - timeSincecurrentPixelWasHitByElectronBeam);
+ }
+
+ void applyContrastSettings(inout float3 pixel)
+ {
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = LinearToGammaSpace(pixel);
+ #endif
+ pixel = saturate(lerp(half3(0.5, 0.5, 0.5), pixel, _VideoContrast + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = GammaToLinearSpace(pixel);
+ #endif
+ }
+
+ void applySaturationSettings(inout float3 pixel)
+ {
+ pixel = lerp(pixel.rgb, dot(pixel.rgb, float3(0.3, 0.59, 0.11)), -_VideoSaturation);
+ }
+
+ void applyVideoSettings(inout float3 pixel)
+ {
+ applySaturationSettings(pixel);
+ applyContrastSettings(pixel);
+ }
+
+ void calculateLCD(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateTN(inout float4 albedo)
+ {
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ globalColorToDisplayOnScreen = applyViewAngleTN(globalColorToDisplayOnScreen);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateCRT(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ float brightness = calculateCRTPixelBrightness();
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * brightness * _VideoBacklight;
+ }
+ void calculateOLED(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateGameboy(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ half brightness = saturate((globalColorToDisplayOnScreen.r + globalColorToDisplayOnScreen.g + globalColorToDisplayOnScreen.b) * .3333333);
+ albedo.rgb = tex2D(_VideoGameboyRamp, brightness);
+ }
+ void calculateProjector(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+
+ float3 projectorColor = albedo * globalColorToDisplayOnScreen * _VideoBacklight;
+ albedo.r = clamp(projectorColor.r, albedo.r, 1000);
+ albedo.g = clamp(projectorColor.g, albedo.g, 1000);
+ albedo.b = clamp(projectorColor.b, albedo.b, 1000);
+ }
+
+ void applyScreenEffect(inout float4 albedo, inout float3 videoEmission)
+ {
+ float4 albedoBeforeScreen = albedo;
+
+ pixels = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoPixelTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoPixelTexture) * _VideoResolution);
+ globalVideoOn = 0;
+
+ if(_VideoEnableVideoPlayer == 1)
+ {
+ float4 videoTexture = 0;
+
+ if(_VideoPixelateToResolution)
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, round(TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoResolution + .5) / _VideoResolution);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, round(poiMesh.uv[_VideoUVNumber] * _VideoResolution + .5) / _VideoResolution);
+ }
+ }
+ else
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoTiling + _VideoOffset);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, ((poiMesh.uv[_VideoUVNumber] + _Time.x * _VideoPanning) * _VideoTiling) + _VideoOffset);
+ }
+ }
+ if(videoTexture.a == 1)
+ {
+ globalColorToDisplayOnScreen = videoTexture.rgb;
+ globalVideoOn = 1;
+ }
+ }
+
+
+ if(_VideoRepeatVideoTexture == 1)
+ {
+ if(poiMesh.uv[_VideoUVNumber].x > 1 || poiMesh.uv[_VideoUVNumber].x < 0 || poiMesh.uv[_VideoUVNumber].y > 1 || poiMesh.uv[_VideoUVNumber].y < 0)
+ {
+ return;
+ }
+ }
+
+ switch(_VideoType)
+ {
+ case 0: // LCD
+ {
+ calculateLCD(albedo);
+ break;
+ }
+ case 1: // TN
+ {
+ calculateTN(albedo);
+ break;
+ }
+ case 2: // CRT
+ {
+ calculateCRT(albedo);
+ break;
+ }
+ case 3: // OLED
+ {
+ calculateOLED(albedo);
+ break;
+ }
+ case 4: // Gameboy
+ {
+ calculateGameboy(albedo);
+ break;
+ }
+ case 5: // Projector
+ {
+ calculateProjector(albedo);
+ break;
+ }
+ }
+
+ float screenMask = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoMaskTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoMaskTexture) + _Time.x * _VideoMaskPanning);
+ albedo = lerp(albedoBeforeScreen, albedo, screenMask);
+ videoEmission = max(albedo.rgb * screenMask - 1, 0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
new file mode 100644
index 00000000..4b5d8f3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 253d159e80a0ad041adb3acf37d53e3b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
new file mode 100644
index 00000000..db3d3130
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
@@ -0,0 +1,304 @@
+#ifndef POI_VORONOI
+ #define POI_VORONOI
+
+ #include "CGI_PoiRNG.cginc"
+
+ float _VoronoiSpace;
+ float _VoronoiBlend;
+ float _VoronoiType;
+ float4 _VoronoiColor0;
+ float _VoronoiEmission0;
+ float4 _VoronoiColor1;
+ float _VoronoiEmission1;
+ float2 _VoronoiGradient;
+ float _VoronoiScale;
+ float3 _VoronoiSpeed;
+ float _VoronoiEnableRandomCellColor;
+ float2 _VoronoiRandomMinMaxSaturation;
+ float2 _VoronoiRandomMinMaxBrightness;
+ float3 randomPoint;
+ float _VoronoiEffectsMaterialAlpha;
+
+ POI_TEXTURE_NOSAMPLER(_VoronoiMask);
+ POI_TEXTURE_NOSAMPLER(_VoronoiNoise);
+ float _VoronoiNoiseIntensity;
+
+ float2 inoise(float3 P, float jitter)
+ {
+ float3 Pi = mod(floor(P), 289.0);
+ float3 Pf = frac(P);
+ float3 oi = float3(-1.0, 0.0, 1.0);
+ float3 of = float3(-0.5, 0.5, 1.5);
+ float3 px = Permutation(Pi.x + oi);
+ float3 py = Permutation(Pi.y + oi);
+
+ float3 p, ox, oy, oz, dx, dy, dz;
+ float2 F = 1e6;
+
+ for (int i = 0; i < 3; i ++)
+ {
+ for (int j = 0; j < 3; j ++)
+ {
+ p = Permutation(px[i] + py[j] + Pi.z + oi); // pij1, pij2, pij3
+
+ ox = frac(p * K) - Ko;
+ oy = mod(floor(p * K), 7.0) * K - Ko;
+
+ p = Permutation(p);
+
+ oz = frac(p * K) - Ko;
+
+ dx = Pf.x - of[i] + jitter * ox;
+ dy = Pf.y - of[j] + jitter * oy;
+ dz = Pf.z - of + jitter * oz;
+
+ float3 d = dx * dx + dy * dy + dz * dz; // dij1, dij2 and dij3, squared
+
+ //Find lowest and second lowest distances
+ for (int n = 0; n < 3; n ++)
+ {
+ if (d[n] < F[0])
+ {
+ F[1] = F[0];
+ F[0] = d[n];
+ randomPoint = p;
+ }
+ else if(d[n] < F[1])
+ {
+ F[1] = d[n];
+ }
+ }
+ }
+ }
+
+ return F;
+ }
+
+ float voronoi2D(in float2 x, float scale, float2 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float2 n = floor(x);
+ float2 f = frac(x);
+
+ // first pass: regular voronoi
+ float2 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 g = float2(float(i), float(j));
+ float2 o = random2(n + g);
+ float2 currentPoint = o;
+
+ float2 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint.xy = currentPoint;
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ float2 g = mg + float2(float(q), float(r));
+ float2 o = random2(n + g);
+
+ float2 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ return md;
+ }
+
+ float voronoi3D(in float3 x, float scale, float3 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float3 n = floor(x);
+ float3 f = frac(x);
+
+ // first pass: regular voronoi
+ float3 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ for (int h = -1; h <= 1; h ++)
+ {
+ float3 g = float3(float(h), float(i), float(j));
+ float3 o = random3(n + g);
+ float3 currentPoint = o;
+
+ float3 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint = currentPoint;
+ }
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ for (int p = -2; p <= 2; p ++)
+ {
+ float3 g = mg + float3(float(p), float(q), float(r));
+ float3 o = random3(n + g);
+
+ float3 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ }
+ return md;
+ }
+
+
+
+ // fracal sum, range -1.0 - 1.0
+ float VoronoiNoise_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ float VoronoiNoiseDiff_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[1]) - sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ void applyVoronoi(inout float4 finalColor, inout float3 VoronoiEmission)
+ {
+ float voronoiOctaveNumber = 1;
+ float voronoiOctaveScale = 1;
+ float voronoiOctaveAttenuation = 1;
+ randomPoint = 0;
+ float4 voronoiColor1 = _VoronoiColor1;
+
+ float voronoi = 0;
+
+ float3 position = 0;
+
+
+ if (_VoronoiSpace == 0)
+ {
+ position = poiMesh.localPos;
+ }
+
+ if(_VoronoiSpace == 1)
+ {
+ position = poiMesh.worldPos;
+ }
+
+ if(_VoronoiSpace == 2)
+ {
+ position = float3(poiMesh.uv[0].x, poiMesh.uv[0].y, 0);
+ }
+
+ float mask = POI2D_SAMPLER_PAN(_VoronoiMask, _MainTex, poiMesh.uv[_VoronoiMaskUV], _VoronoiMaskPan).r;
+ float edgeNoise = POI2D_SAMPLER_PAN(_VoronoiNoise, _MainTex, poiMesh.uv[_VoronoiNoiseUV], _VoronoiNoisePan).r * _VoronoiNoiseIntensity;
+
+
+ if(_VoronoiType == 0) // Basic
+ {
+ voronoi = voronoi2D(position.xy, _VoronoiScale, _VoronoiSpeed);
+ }
+
+ if (_VoronoiType == 1) // Diff
+ {
+ voronoi = VoronoiNoiseDiff_Octaves(position, _VoronoiScale, _VoronoiSpeed, voronoiOctaveNumber, voronoiOctaveScale, voronoiOctaveAttenuation, 1, _Time.x);
+ }
+
+ if (_VoronoiType == 2) // Fixed Border
+ {
+ voronoi = voronoi3D(position, _VoronoiScale, _VoronoiSpeed);
+ // isolines
+ //color = c.x * (0.5 + 0.5 * sin(64.0 * c.x)) * 1.0;
+ }
+
+ if (_VoronoiEnableRandomCellColor == 1)
+ {
+ float3 rando = random3(randomPoint);
+ fixed hue = rando.x;
+ fixed saturation = lerp(_VoronoiRandomMinMaxSaturation.x, _VoronoiRandomMinMaxSaturation.y, rando.y);
+ fixed value = lerp(_VoronoiRandomMinMaxBrightness.x, _VoronoiRandomMinMaxBrightness.y, rando.z);
+ float3 hsv = float3(hue, saturation, value);
+
+ voronoiColor1.rgb = HSVtoRGB(hsv);
+ }
+
+ float2 voronoiGradient = _VoronoiGradient;
+ voronoiGradient.xy += edgeNoise;
+ float ramp = smoothstep(voronoiGradient.x, voronoiGradient.y, voronoi);
+
+
+ if(_VoronoiBlend == 0)
+ {
+ float4 voronoiColor = lerp(_VoronoiColor0, voronoiColor1, ramp);
+
+ if(_VoronoiEffectsMaterialAlpha)
+ {
+ finalColor.rgba = lerp(finalColor, voronoiColor, mask);
+ }
+ else
+ {
+ finalColor.rgb = lerp(finalColor.rgb, voronoiColor.rgb, mask * voronoiColor.a);
+ }
+ }
+ float4 voronoiEmissionColor = lerp(_VoronoiColor0 * _VoronoiEmission0, voronoiColor1 * _VoronoiEmission1, ramp);
+ VoronoiEmission = voronoiEmissionColor.rgb * mask * voronoiEmissionColor.a;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
new file mode 100644
index 00000000..0338bbde
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 09b4410163642574aa95c74faaa6f147
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
new file mode 100644
index 00000000..49c602c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
@@ -0,0 +1,111 @@
+#ifndef POI_WIREFRAME
+ #define POI_WIREFRAME
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_WireframeTexture); float4 _WireframeTexture_ST;
+ float2 _WireframeTexturePan;
+ float _WireframeSmoothing;
+ float _WireframeThickness;
+ float4 _WireframeColor;
+ float _WireframeAlpha;
+ float _WireframeEnable;
+ float _WireframeWaveEnabled;
+ float _WireframeWaveDensity;
+ float _WireframeWaveSpeed;
+ float _WireframeEdgeOpacity;
+ float _WireframeFaceOpacity;
+ half _WireframeEmissionAlpha;
+ float _WireframeEmissionStrength;
+ float _WireframeQuad;
+ float _WireframeUV;
+
+ #ifndef POI_SHADOW
+ void applyWireframe(inout float3 wireframeEmission, inout float4 albedo)
+ {
+
+ if (_WireframeEnable)
+ {
+ float4 colorMap = UNITY_SAMPLE_TEX2D_SAMPLER(_WireframeTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_WireframeUV], _WireframeTexture) + _Time.x * _WireframeTexturePan);
+ float size = _WireframeThickness;
+ half3 width = abs(ddx(poiMesh.barycentricCoordinates)) + abs(ddy(poiMesh.barycentricCoordinates));
+ half3 eF = smoothstep(0, width * size, poiMesh.barycentricCoordinates);
+ half minBary = size > 0 ? min(min(eF.x, eF.y), eF.z): 1;
+
+ float4 wireframeColor = _WireframeColor * colorMap;
+
+ albedo.a *= lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ albedo.rgb = lerp(lerp(albedo.rgb, wireframeColor.rgb, wireframeColor.a), albedo.rgb, minBary);
+ wireframeEmission = wireframeColor.rgb * _WireframeEmissionStrength * (1 - minBary) * _WireframeColor.a;
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle v2f IN[3], inout TriangleStream < v2f > tristream)
+ {
+
+ if(_WireframeQuad)
+ {
+ float e1 = length(IN[0].localPos - IN[1].localPos);
+ float e2 = length(IN[1].localPos - IN[2].localPos);
+ float e3 = length(IN[2].localPos - IN[0].localPos);
+
+ float3 quad = 0;
+ if(e1 > e2 && e1 > e3)
+ quad.y = 1.;
+ else if(e2 > e3 && e2 > e1)
+ quad.x = 1;
+ else
+ quad.z = 1;
+
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0) + quad;
+ IN[1].barycentricCoordinates = fixed3(0, 0, 1) + quad;
+ IN[2].barycentricCoordinates = fixed3(0, 1, 0) + quad;
+ }
+ else
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ }
+
+
+
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #else
+
+ float applyShadowWireframe(float2 uv, float3 barycentricCoordinates, float3 normal, float3 worldPos)
+ {
+
+ if(_WireframeEnable)
+ {
+ float wireframeFadeAlpha = _WireframeAlpha;
+ float3 finalWireframeColor = 0;
+
+ float3 barys;
+ barys.xy = barycentricCoordinates;
+ barys.z = 1 - barys.x - barys.y;
+ float3 deltas = fwidth(barys);
+ float3 smoothing = deltas * _WireframeSmoothing;
+ float wireframeThickness = _WireframeThickness;
+ float3 thickness = deltas * wireframeThickness;
+ barys = smoothstep(thickness, thickness + smoothing, barys);
+ float minBary = min(barys.x, min(barys.y, barys.z));
+
+ return lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle V2FShadow IN[3], inout TriangleStream < V2FShadow > tristream)
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
new file mode 100644
index 00000000..eab44036
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2743774db88693149a4f5e64514d6242
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
new file mode 100644
index 00000000..319de57c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
@@ -0,0 +1,171 @@
+#ifndef POICLUDES
+ #define POICLUDES
+
+ UNITY_DECLARE_TEX2D(_MainTex); float4 _MainTex_ST; float4 _MainTex_TexelSize;
+ sampler2D _PoiGrab;
+ sampler2D _CameraDepthTexture;
+ float _Cutoff;
+ float _AlphaMod;
+
+ //Structs
+ struct appdata
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #ifdef OUTLINE
+ float _LineWidth;
+ float _OutlineEmission;
+ float4 _LineColor;
+ sampler2D _OutlineTexture; float4 _OutlineTexture_ST; float2 _OutlineTexturePan; float _OutlineTextureUV;
+ float4 _OutlineFadeDistance;
+ float4 _OutlineGlobalPan;
+ #endif
+
+ struct PoiLighting
+ {
+ half3 direction;
+ half3 color;
+ fixed attenuation;
+ #ifdef FORWARD_ADD_PASS
+ fixed additiveShadow;
+ #endif
+ half3 directLighting;
+ half3 indirectLighting;
+ half lightMap;
+ half3 rampedLightMap;
+ half3 finalLighting;
+ half3 halfDir;
+ half nDotL;
+ half nDotH;
+ half lDotv;
+ half lDotH;
+ half nDotV;
+ half N0DotV;
+ half diffuseTerm;
+
+ // World normal dot half direction
+ #ifdef POI_VAR_DOTNH
+ half dotNH;
+ #endif
+
+ // Light direction dot half direction
+ #ifdef POI_VAR_DOTLH
+ half dotLH;
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ float4 vDotNL;
+ float3 vColor[4];
+ float4 vCorrectedDotNL;
+ float4 vAttenuation;
+ float4 vAttenuationDotNL;
+ float3 vPosition[4];
+ float3 vDirection[4];
+ float3 vFinalLighting;
+ float3 vHalfDir[4];
+
+ #ifdef POI_VAR_DOTLH
+ half4 vDotLH;
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ half4 vDotNH;
+ #endif
+
+ #endif
+ };
+
+ struct PoiCamera
+ {
+ half3 viewDir;
+ half3 tangentViewDir;
+ half3 forwardDir;
+ half3 worldPos;
+ float viewDotNormal;
+ float distanceToModel;
+ float distanceToVert;
+ float3 reflectionDir;
+ float3 vertexReflectionDir;
+ float2 screenUV;
+ float4 clipPos;
+ #if defined(GRAIN)
+ float4 worldDirection;
+ #endif
+ float4 grabPos;
+ };
+
+ struct PoiMesh
+ {
+ float3 normals[2];
+ float3 tangent;
+ float3 binormal;
+ float3 localPos;
+ float3 worldPos;
+ float3 modelPos;
+ float3 tangentSpaceNormal;
+ float2 uv[5];
+ float4 vertexColor;
+ fixed3 barycentricCoordinates;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV;
+ #endif
+ float isFrontFace;
+ #ifdef FUR
+ float furAlpha;
+ #endif
+ };
+
+ struct PoiTangentData
+ {
+ float3x3 tangentTransform;
+ float3x3 tangentToWorld;
+ };
+
+ struct FragmentCommonData
+ {
+ half3 diffColor, specColor;
+ // Note: smoothness & oneMinusReflectivity for optimization purposes, mostly for DX9 SM2.0 level.
+ // Most of the math is being done on these (1-x) values, and that saves a few precious ALU slots.
+ half oneMinusReflectivity, smoothness;
+ float3 normalWorld;
+ float3 eyeVec;
+ half alpha;
+ float3 posWorld;
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 reflUVW;
+ #endif
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 tangentSpaceNormal;
+ #endif
+ };
+
+ struct Debug
+ {
+ float debug1;
+ float2 debug2;
+ float3 debug3;
+ float4 debug4;
+ };
+
+ static Debug debug;
+ static PoiLighting poiLight;
+ static PoiCamera poiCam;
+ static PoiMesh poiMesh;
+ static UnityGI gi;
+ static FragmentCommonData s;
+ static PoiTangentData poiTData;
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
new file mode 100644
index 00000000..8e613efa
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 25ec3747cb7f80e4fa642a2460378ab1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
new file mode 100644
index 00000000..693a5d8f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b59215726334b4944bab779178a9f210
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
new file mode 100644
index 00000000..cfbbe242
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
@@ -0,0 +1,7648 @@
+Shader "Hidden/.poiyomi/• Poiyomi Toon •/heartby1010浣-10b0e5a7"
+{
+ Properties
+ {
+ [HideInInspector] shader_is_using_thry_editor ("", Float) = 0
+ [HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Toon V7.0.100</color>", Float) = 0
+ [HideInInspector] shader_presets ("poiToonPresets", Float) = 0
+ [HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
+
+ [HideInInspector] footer_youtube ("youtube footer button", Float) = 0
+ [HideInInspector] footer_twitter ("twitter footer button", Float) = 0
+ [HideInInspector] footer_patreon ("patreon footer button", Float) = 0
+ [HideInInspector] footer_discord ("discord footer button", Float) = 0
+ [HideInInspector] footer_github ("github footer button", Float) = 0
+
+ // Keyword to remind users in the VRChat SDK that this material hasn't been locked. Inelegant but it works.
+ [HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Int) = 1
+ [ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Int) = 0
+ [Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Int) = 0
+
+ [ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)]_Mode("Rendering Preset--{on_value_actions:[
+ {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2450}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=1}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2451}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
+ {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:RenderType=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
+ }]}]}", Int) = 0
+ [HideInInspector] m_LockingInfo ("Locking Info--{button_right:{text:Tutorial,action:{type:URL,data:https://youtu.be/asWeDJb5LAo},hover:YouTube},is_hideable:true}", Float) = 0
+ [Helpbox(1)] _HelpBoxLocking ("LOCKING IN THE SHADER WILL DRAMATICALLY INCREASE PERFORMANCE AND DRAMATICALLY LOWER THE FILE SIZE OF AN AVATAR PACKAGE.
+
+ LOCKED IN MATERIALS CANNOT BE ANIMATED WITHOUT SETTING THE SPECIFIC PROPERTY TO DYNAMIC. RIGHT CLICK MATERIAL PROPERTIES YOU WISH TO ANIMATE, A CLOCK ICON WILL APPEAR BESIDE THE PROPERTY SIGNIFYING THAT IT CAN BE ANIMATED.
+
+ FOR MORE INFORMATION ON LOCKING PLEASE WATCH THE LOCKING TUTORIAL IN THE HEADER ABOVE.", Int) = 0
+ [Helpbox(2)] _HelpBoxHideLocking ("TO HIDE THIS CATEGORY SELECT CUSTOM UI AT THE TOP AND UNCHECK THE LOCKING INFO CATEGORY", Float) = 0
+ // Main
+ [HideInInspector] m_mainOptions ("Main", Float) = 0
+ _Color ("Color & Alpha", Color) = (1, 1, 1, 1)
+ _MainTex ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainTextureUV ("UV", Int) = 0
+ _Saturation ("Saturation", Range(-1, 1)) = 0
+ _MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
+ [Normal]_BumpMap ("Normal Map", 2D) = "bump" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _BumpMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_BumpMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ _BumpScale ("Normal Intensity", Range(0, 10)) = 1
+ _AlphaMask ("Alpha Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_AlphaMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AlphaMaskUV ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector] m_start_MainHueShift ("Hue Shift", Float) = 0
+ [HideInInspector][Toggle(COLOR_GRADING_HDR)]_MainHueShiftToggle ("Toggle Hueshift", Float) = 0
+ [ToggleUI]_MainHueShiftReplace ("Replace?", Float) = 1
+ _MainHueShift ("Hue Shift", Range(0, 1)) = 0
+ _MainHueShiftSpeed ("Shift Speed", Float) = 0
+ _MainHueShiftMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainHueShiftMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainHueShiftMaskUV ("UV", Int) = 0
+ [HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
+
+ // RGB Masking
+ [HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
+ [HideInInspector][Toggle(VIGNETTE)]_RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
+ [ToggleUI]_RGBUseVertexColors ("Use Vertex Colors", Float) = 0
+ [ToggleUI]_RGBBlendMultiplicative ("Multiplicative?", Float) = 0
+ _RGBMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBMaskPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBMaskUV ("UV", int) = 0
+ _RedColor ("R Color", Color) = (1, 1, 1, 1)
+ _RedTexure ("R Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBRedPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBRed_UV ("UV", int) = 0
+ _GreenColor ("G Color", Color) = (1, 1, 1, 1)
+ _GreenTexture ("G Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBGreenPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBGreen_UV ("UV", int) = 0
+ _BlueColor ("B Color", Color) = (1, 1, 1, 1)
+ _BlueTexture ("B Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBBluePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBBlue_UV ("UV", int) = 0
+ // RGB MASKED NORMALS
+ [Toggle(GEOM_TYPE_MESH)]_RgbNormalsEnabled ("Enable Normals", Float) = 0
+ [ToggleUI]_RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
+ [Normal]_RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalRPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalRUV ("UV", int) = 0
+ _RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalGPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalGUV ("UV", int) = 0
+ _RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalBPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalBUV ("UV", int) = 0
+ _RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
+
+ // Detail Options
+ [HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(FINALPASS)]_DetailEnabled ("Enable", Float) = 0
+ _DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" { }
+ [HideInInspector][Vector2]_DetailMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailMaskUV ("UV", Int) = 0
+ _DetailTint ("Detail Texture Tint", Color) = (1, 1, 1)
+ _DetailTex ("Detail Texture", 2D) = "gray" { }
+ [HideInInspector][Vector2]_DetailTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailTexUV ("UV", Int) = 0
+ _DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
+ _DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
+ [Normal]_DetailNormalMap ("Detail Normal", 2D) = "bump" { }
+ _DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
+ [HideInInspector][Vector2]_DetailNormalMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailNormalMapUV ("UV", Int) = 0
+ [HideInInspector] m_end_DetailOptions ("Details", Float) = 0
+
+ // Vertex Colors
+ [HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
+ _MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
+ _MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
+
+ //Vertex Manipulations
+ [HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(AUTO_EXPOSURE)]_VertexManipulationsEnabled ("Enabled", Float) = 0
+ [Vector3]_VertexManipulationLocalTranslation ("Local Translation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalRotation ("Local Rotation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalScale ("Local Scale", Vector) = (1, 1, 1, 1)
+ [Vector3]_VertexManipulationWorldTranslation ("World Translation", Vector) = (0, 0, 0, 1)
+ _VertexManipulationHeight ("Vertex Height", Float) = 0
+ _VertexManipulationHeightMask ("Height Map", 2D) = "while" { }
+ [HideInInspector][Vector2]_VertexManipulationHeightPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _VertexManipulationHeightUV ("UV", Int) = 0
+ _VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
+ [ToggleUI]_VertexRoundingEnabled ("Rounding Enabled", Float) = 0
+ _VertexRoundingDivision ("Division Amount", Float) = 500
+ [HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
+
+ // Alpha Options
+ [HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
+ _Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
+ [ToggleUI]_DitheringEnabled ("Enable Dithering", Float) = 0
+ _DitherGradient ("Dither Gradient", Range(0, 1)) = .1
+ [ToggleUI]_ForceOpaque ("Force Opaque", Float) = 0
+ _MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
+ [Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
+ [ToggleUI]_MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
+ _MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
+ [ToggleUI]_AlphaPremultiply ("Alpha Premultiply", Float) = 0
+ _AlphaMod ("Alpha Mod", Range(-1, 1)) = 0.0
+ [HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
+
+ // Decal Texture
+ [HideInInspector] m_start_DecalSection ("Decal", Float) = 0
+ [HideInInspector][Toggle(GEOM_TYPE_BRANCH)]_DecalEnabled ("Enable", Float) = 0
+ _DecalColor ("Color", Color) = (1, 1, 1, 1)
+ _DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _DecalTexture ("Decal", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalTextureUV ("UV", Int) = 0
+ _DecalMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalMaskUV ("UV", Int) = 0
+ [ToggleUI]_DecalTiled ("Tiled?", Float) = 0
+ [Vector2]_DecalScale ("Scale", Vector) = (1, 1, 0, 0)
+ [Vector2]_DecalPosition ("Position", Vector) = (.5, .5, 0, 0)
+ _DecalRotation ("Rotation", Range(0, 360)) = 0
+ _DecalRotationSpeed ("Rotation Speed", Float) = 0
+ _DecalBlendAdd ("Add", Range(0, 1)) = 0
+ _DecalBlendMultiply ("Multiply", Range(0, 1)) = 0
+ _DecalBlendReplace ("Replace", Range(0, 1)) = 0
+ [HideInInspector] m_end_DecalSection ("Decal", Float) = 0
+
+ // Back Face Textures and Emission
+ [HideInInspector] m_start_backFace ("Back Face", Float) = 0
+ [ToggleUI]_BackFaceEnabled ("Enable Back Face Options", Float) = 0
+ _BackFaceColor ("Color", Color) = (1, 1, 1, 1)
+ _BackFaceTexture ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_BackFacePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_BackFaceTextureUV ("UV#", Int) = 0
+ _BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
+ _BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
+ _BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [HideInInspector] m_end_backFace ("Back Face", Float) = 0
+
+ // Lighting
+ [HideInInspector] m_lightingOptions ("Lighting", Float) = 0
+ [HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
+ [Toggle(VIGNETTE_MASKED)]_EnableLighting ("Enable Lighting", Float) = 1
+ [Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Int) = 0
+ _LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
+ [Enum(Ramp Texture, 0, Math Gradient, 1)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Int) = 0
+ [Gradient]_ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" { }
+ _LightingShadowMask ("Ramp Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowMaskUV ("UV", Int) = 0
+ _ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
+ _LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
+ _LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = .5
+ _LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Color) = (1, 1, 1, 1)
+ _ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 1
+ _AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+
+ [HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
+ [Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Int) = 0
+ [ToggleUI]_LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
+ [ToggleUI]_LightingUncapped ("Uncapped Lighting", Float) = 0
+ [ToggleUI]_LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
+ _LightingMonochromatic ("Monochromatic Lighting?", Range(0,1)) = 0
+ _LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
+ _LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
+ [HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
+
+ [HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
+ _LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingDetailShadowsPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingDetailShadowsUV ("UV", Int) = 0
+ _LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
+
+ [HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableAO ("Enable AO", Float) = 0
+ _LightingAOTex ("AO Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingAOTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingAOTexUV ("UV", Int) = 0
+ _AOStrength ("AO Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
+
+ [HideInInspector] m_start_shadowTexture ("Shadow Texture--{reference_property:_UseShadowTexture, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ [HideInInspector][ToggleUI]_UseShadowTexture ("EnableShadowTexture--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ _LightingShadowTexture ("Shadow Texture--{reference_properties:[_LightingShadowTexturePan, _LightingShadowTextureUV], condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_shadowTexture ("Shadow Texture", Float) = 0
+
+ // HSL Lighting
+ [HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
+ _LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
+ _LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
+ _LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
+ _LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
+ [HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
+
+ // point/spot Light Settings
+ [HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
+ [HideInInspector][ToggleUI]_commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
+ [Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Int) = 1
+ _LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
+ _LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = .5
+ _LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = .5
+ _LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
+ [ToggleUI]_LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
+ _LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
+ [Toggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)]_DisableDirectionalInAdd ("No Directional", Float) = 1
+ [HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
+ [HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
+
+ // Subsurface Scattering
+ [HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
+ [Toggle(_TERRAIN_NORMAL_MAP)]_EnableSSS ("Enable Subsurface Scattering", Float) = 0
+ _SSSColor ("Subsurface Color", Color) = (1, 0, 0, 1)
+ _SSSThicknessMap ("Thickness Map", 2D) = "black" { }
+ [HideInInspector][Vector2]_SSSThicknessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SSSThicknessMapUV ("UV", Int) = 0
+ _SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
+ _SSSSCale ("Light Strength", Range(0, 1)) = 0.25
+ _SSSPower ("Light Spread", Range(1, 100)) = 5
+ _SSSDistortion ("Light Distortion", Range(0, 1)) = 1
+ [HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
+
+ // Rim Lighting
+ [HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
+ [Toggle(_GLOSSYREFLECTIONS_OFF)]_EnableRimLighting ("Enable Rim Lighting", Float) = 0
+ [Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Int) = 1
+ [ToggleUI]_RimLightingInvert ("Invert Rim Lighting", Float) = 0
+ _RimLightColor ("Rim Color", Color) = (1, 1, 1, 1)
+ _RimWidth ("Rim Width", Range(0, 1)) = 0.8
+ _RimSharpness ("Rim Sharpness", Range(0, 1)) = .25
+ _RimStrength ("Rim Emission", Range(0, 20)) = 0
+ _RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
+ _RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 0
+ _RimTex ("Rim Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimTexUV ("UV", Int) = 0
+ _RimMask ("Rim Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimMaskUV ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
+ _RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_RimWidthNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimWidthNoiseTextureUV ("UV", Int) = 0
+ _RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
+ [HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
+ _ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
+ _ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = .5
+ _ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = .5
+ [HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
+ [HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
+ [Toggle(_MAPPING_6_FRAMES_LAYOUT)]_EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
+ _RimEnviroMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimEnviroMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimEnviroMaskUV ("UV", Int) = 0
+ _RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
+ _RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
+ _RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
+ _RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
+ _RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
+ [HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
+
+ // Baked Lighting
+ [HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
+ _GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
+ [HideInInspector] DSGI ("DSGI", Float) = 0 //add this property for double sided illumination settings to be shown
+ [HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0 //add this property for lightmap flags settings to be shown
+ [HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
+
+ // Metallics
+ [HideInInspector] m_start_Metallic ("Metallics", Float) = 0
+ [Toggle(_METALLICGLOSSMAP)]_EnableMetallic ("Enable Metallics", Float) = 0
+ _CubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _MetalReflectionTint ("Reflection Tint", Color) = (1, 1, 1)
+ _MetallicTintMap ("Tint Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicTintMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicTintMapUV ("UV", Int) = 0
+ _MetallicMask ("Metallic Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicMaskUV ("UV", Int) = 0
+ _Metallic ("Metallic", Range(0, 1)) = 0
+ _SmoothnessMask ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SmoothnessMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SmoothnessMaskUV ("UV", Int) = 0
+ [ToggleUI]_InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _Smoothness ("Smoothness", Range(0, 1)) = 0
+ [HideInInspector] m_end_Metallic ("Metallics", Float) = 0
+
+ // Clearcoat
+ [HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
+ [Toggle(_COLORCOLOR_ON)]_EnableClearCoat ("Enable Clear Coat", Float) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _ClearCoatNormalToUse ("What Normal?", Int) = 0
+ _ClearCoatCubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_ClearCoatSampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _ClearCoatTint ("Reflection Tint", Color) = (1, 1, 1)
+ _ClearCoatMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatMaskUV ("UV", Int) = 0
+ _ClearCoat ("Clear Coat", Range(0, 1)) = 1
+ _ClearCoatSmoothnessMap ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatSmoothnessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatSmoothnessMapUV ("UV", Int) = 0
+ [ToggleUI]_ClearCoatInvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _ClearCoatSmoothness ("Smoothness", Range(0, 1)) = 0
+ [ToggleUI]_ClearCoatForceLighting ("Force Lighting", Float) = 0
+ [HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
+
+ // First Matcap
+ [HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
+ [Toggle(_COLORADDSUBDIFF_ON)]_MatcapEnable ("Enable Matcap", Float) = 0
+ _MatcapColor ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap ("Matcap", 2D) = "white" { }
+ _MatcapBorder ("Border", Range(0, .5)) = 0.43
+ _MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_MatcapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MatcapMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_MatcapMaskInvert("Invert", Float) = 0
+ _MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _MatcapIntensity ("Intensity", Range(0, 5)) = 1
+ _MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
+ _MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
+ _MatcapAdd ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_matcap ("Matcap", Float) = 0
+
+ // Second Matcap
+ [HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
+ [ToggleUI]_Matcap2Enable ("Enable Matcap 2", Float) = 0
+ _Matcap2Color ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap2 ("Matcap", 2D) = "white" { }
+ _Matcap2Border ("Border", Range(0, .5)) = 0.43
+ _Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_Matcap2MaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _Matcap2MaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_Matcap2MaskInvert("Invert", Float) = 0
+ _Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _Matcap2Intensity ("Intensity", Range(0, 5)) = 1
+ _Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
+ _Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
+ _Matcap2Add ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
+
+ // Specular
+ [HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
+ [Toggle(_SPECGLOSSMAP)]_EnableSpecular ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Int) = 1
+ _SpecularTint ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMapUV ("UV", Int) = 0
+ _SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
+ [Gradient]_SpecularMap ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMapUV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
+ _SpecularMask ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMaskUV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Int) = 1
+ // Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Int) = 0
+ _AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
+ _AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMapUV ("UV", Int) = 0
+ //toon aniso
+ _SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicroUV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacroUV ("UV", Int) = 0
+ // Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
+
+ // Second Specular
+ [HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
+ [ToggleUI]_EnableSpecular1 ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Int) = 1
+ _SpecularTint1 ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMap1UV ("UV", Int) = 0
+ _SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = .75
+ _SpecularMap1 ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMap1UV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
+ _SpecularMask1 ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMask1UV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Int) = 1
+ // Second Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Int) = 0
+ _AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
+ _AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMap1UV ("UV", Int) = 0
+ // Second toon aniso
+ _SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor1 ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicro1UV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacro1UV ("UV", Int) = 0
+ // Second Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
+
+ // First Emission
+ [HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
+ [HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
+ [Toggle(_EMISSION)]_EnableEmission ("Enable Emission", Float) = 0
+ [ToggleUI]_EmissionReplace ("Replace Base Color", Float) = 0
+ [HDR]_EmissionColor ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMapUV ("UV", Int) = 0
+ _EmissionMask ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMaskUV ("UV", Int) = 0
+ _EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
+
+ // Center out emission
+ [HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+
+ // Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor ("VColor as position", float) = 0
+ _EmissiveScroll_Direction ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width ("Width", Float) = 10
+ _EmissiveScroll_Velocity ("Velocity", Float) = 10
+ _EmissiveScroll_Interval ("Interval", Float) = 20
+ _EmissionScrollingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
+
+ // Second Enission
+ [HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
+ [Toggle(EFFECT_HUE_VARIATION)]_EnableEmission1 ("Enable Emission 2", Float) = 0
+ [HDR]_EmissionColor1 ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap1 ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMap1UV ("UV", Int) = 0
+ _EmissionMask1 ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMask1UV ("UV", Int) = 0
+ _EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
+
+ // Second Center Out Enission
+ [HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Second Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve1 ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve1 ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor1 ("VColor as position", float) = 0
+ _EmissiveScroll_Direction1 ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width1 ("Width", Float) = 10
+ _EmissiveScroll_Velocity1 ("Velocity", Float) = 10
+ _EmissiveScroll_Interval1 ("Interval", Float) = 20
+ _EmissionScrollingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
+
+ // Flipbook
+ [HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
+ [Toggle(_SUNDISK_HIGH_QUALITY)]_EnableFlipbook ("Enable Flipbook", Float) = 0
+ [ToggleUI]_FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
+ [TextureArray]_FlipbookTexArray ("Texture Array", 2DArray) = "" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookTexArrayUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookTexArrayPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookMaskUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookColor ("Color & alpha", Color) = (1, 1, 1, 1)
+ _FlipbookTotalFrames ("Total Frames", Int) = 1
+ _FlipbookFPS ("FPS", Float) = 30.0
+ _FlipbookScaleOffset ("Scale | Offset", Vector) = (1, 1, 0, 0)
+ [ToggleUI]_FlipbookTiled ("Tiled?", Float) = 0
+ _FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _FlipbookRotation ("Rotation", Range(0, 360)) = 0
+ _FlipbookRotationSpeed ("Rotation Speed", Float) = 0
+ _FlipbookReplace ("Replace", Range(0, 1)) = 1
+ _FlipbookMultiply ("Multiply", Range(0, 1)) = 0
+ _FlipbookAdd ("Add", Range(0, 1)) = 0
+
+ // Flipbook Manual Control
+ [HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
+ _FlipbookCurrentFrame ("Current Frame", Float) = -1
+ [HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
+ [HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
+
+ // Dissolve
+ [HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
+ [Toggle(DISTORT)]_EnableDissolve ("Enable Dissolve", Float) = 0
+ [Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Int) = 1
+ _DissolveEdgeWidth ("Edge Width", Range(0, .5)) = 0.025
+ _DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
+ _DissolveEdgeColor ("Edge Color", Color) = (1, 1, 1, 1)
+ [Gradient]_DissolveEdgeGradient ("Edge Gradient", 2D) = "white" { }
+ _DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
+ _DissolveTextureColor ("Dissolved Color", Color) = (1, 1, 1, 1)
+ _DissolveToTexture ("Dissolved Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveToTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveToTextureUV ("UV", Int) = 0
+ _DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
+ _DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveNoiseTextureUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertNoise ("Invert?", Float) = 0
+ _DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_DissolveDetailNoisePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveDetailNoiseUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertDetailNoise ("Invert?", Float) = 0
+ _DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
+ _DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
+ _DissolveMask ("Dissolve Mask", 2D) = "white" { }
+ [ToggleUI]_DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
+ [HideInInspector][Vector2]_DissolveMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveMaskInvert ("Invert?", Float) = 0
+ _ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
+ [HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Int) = 2
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Int) = 2
+ [HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
+ [Enum(Local, 0, World, 1)] _DissolveP2PWorldLocal ("World/Local", Int) = 0
+ _DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
+ [Vector3]_DissolveStartPoint ("Start Point", Vector) = (0, -1, 0, 0)
+ [Vector3]_DissolveEndPoint ("End Point", Vector) = (0, 1, 0, 0)
+ [HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
+
+ // Locked in anim sldiers
+ [HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
+ _DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
+ _DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
+ _DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
+ _DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
+ _DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
+ _DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
+ _DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
+ _DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
+ _DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
+ _DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
+ [HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
+ [HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
+
+ // Panosphere
+ [HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+ [Toggle(_DETAIL_MULX2)]_PanoToggle ("Enable Panosphere", Float) = 0
+ [ToggleUI]_PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
+ _PanosphereColor ("Color", Color) = (1, 1, 1, 1)
+ _PanosphereTexture ("Texture", 2D) = "white" { }
+ _PanoMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_PanoMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _PanoMaskUV ("UV", Int) = 0
+ _PanoEmission ("Emission Strength", Range(0, 10)) = 0
+ _PanoBlend ("Alpha", Range(0, 1)) = 0
+ [Vector3]_PanospherePan ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [ToggleUI]_PanoCubeMapToggle ("Use Cubemap", Float) = 0
+ [TextureNoSO]_PanoCubeMap ("CubeMap", Cube) = "" { }
+ [HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+
+ // Glitter
+ [HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
+ [Toggle(_SUNDISK_SIMPLE)]_GlitterEnable ("Enable Glitter?", Float) = 0
+ [Enum(Angle, 0, Linear Emission, 1)]_GlitterMode ("Mode", Int) = 0
+ [Enum(Circle, 0, Square, 1)]_GlitterShape ("Shape", Int) = 0
+ [Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Int) = 0
+ [HDR]_GlitterColor ("Color", Color) = (1, 1, 1)
+ _GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
+ _GlitterColorMap ("Glitter Color Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterColorMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterColorMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_GlitterPan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterMask ("Glitter Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterMaskUV ("UV", Int) = 0
+ _GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterTextureRotation ("Rotation Speed", Float) = 0
+ _GlitterFrequency ("Glitter Density", Float) = 300.0
+ _GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1.0
+ _GlitterSpeed ("Glitter Speed", Float) = 10.0
+ _GlitterSize ("Glitter Size", Range(0, 1)) = .3
+ _GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
+ _GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
+ _GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
+ _GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
+ _GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = .8
+ _GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = .08
+ _glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
+ _GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, .1)) = .0
+
+ // Glitter Random Colors
+ [HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
+ [ToggleUI]_GlitterRandomColors ("Random Colors", Float) = 0
+ [MultiSlider]_GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8, 1, 0, 1)
+ [MultiSlider]_GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8, 1, 0, 1)
+ [ToggleUI]_GlitterRandomSize("Random Size?", Float) = 0
+ [MultiSlider]_GlitterMinMaxSize ("Size Range", Vector) = (0.1, 0.5, 0, 1)
+ [ToggleUI]_GlitterRandomRotation("Random Tex Rotation", Float) = 0
+ [HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
+ [HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
+ _TextGlyphs ("Font Array", 2D) = "black" { }
+ _TextPixelRange ("Pixel Range", Float) = 4.0
+ [Toggle(EFFECT_BUMP)]_TextEnabled ("Text?", Float) = 0
+
+ // FPS
+ [HideInInspector] m_start_TextFPS ("FPS", Float) = 0
+ [ToggleUI]_TextFPSEnabled ("FPS Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Int) = 0
+ _TextFPSColor ("Color", Color) = (1, 1, 1, 1)
+ _TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextFPSOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextFPSRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextFPSScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextFPSPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextFPS ("FPS", Float) = 0
+
+ // POSITION
+ [HideInInspector] m_start_TextPosition ("Position", Float) = 0
+ [ToggleUI]_TextPositionEnabled ("Position Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVertical ("Vertical?", Float) = 0
+ _TextPositionColor ("Color", Color) = (1, 0, 1, 1)
+ _TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextPositionOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextPositionRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextPositionScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextPositionPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextPosition ("Position", Float) = 0
+
+ // INSTANCE TIME
+ [HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
+ [ToggleUI]_TextTimeEnabled ("Time Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Int) = 0
+ _TextTimeColor ("Color", Color) = (1, 0, 1, 1)
+ _TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextTimeOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextTimeRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextTimeScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextTimePadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
+ [HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
+
+ // Mirror Rendering
+ [HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
+ [Toggle(_REQUIRE_UV2)]_EnableMirrorOptions ("Enable Mirror Options", Float) = 0
+ [Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Int) = 0
+ [ToggleUI]_EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
+ _MirrorTexture ("Mirror Tex", 2D) = "white" { }
+ [HideInInspector][Vector2]_MirrorTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MirrorTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
+
+ // Distance Fade
+ [HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
+ _MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
+ _MainFadeTexture ("Fade Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainFadeTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainFadeTextureUV ("UV", Int) = 0
+ [Vector2]_MainDistanceFade ("Distance Fade X to Y", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
+
+ // Angular Fade
+ [HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
+ [Toggle(_SUNDISK_NONE)]_EnableRandom ("Enable Angular Fade", Float) = 0
+ [Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Int) = 0
+ [Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Int) = 0
+ [Vector3]_AngleForwardDirection ("Forward Direction", Vector) = (0, 0, 1, 0)
+ _CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
+ _CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
+ _ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
+ _ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
+ _AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
+
+ // UV Distortion
+ [HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
+ [Toggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
+ _DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_DistortionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _DistortionMaskUV ("UV", Int) = 0
+ _DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" { }
+ _DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" { }
+ _DistortionStrength ("Strength1", Float) = 0.5
+ _DistortionStrength1 ("Strength2", Float) = 0.5
+ [Vector2]_DistortionSpeed ("Speed1", Vector) = (0.5, 0.5, 0, 0)
+ [Vector2]_DistortionSpeed1 ("Speed2", Vector) = (0.5, 0.5, 0, 0)
+ [HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
+
+ // Outline Options
+ [HideInInspector] m_outlineOptions ("Outlines", Float) = 0
+ [ToggleUI]_commentIfZero_EnableOutlinePass ("Enable Outlines", float) = 0
+ [Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)]_OutlineMode ("Mode", Int) = 0
+ _OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
+ _OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
+ _OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1, 0, 0, 0)
+ _OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1, 0, 0, 0)
+ [ToggleUI]_OutlineFixedSize ("Fixed Size?", Float) = 0
+ [Enum(Off, 0, Normals, 1, Mask VC.r, 2)]_OutlineUseVertexColors ("Vertex Color", Float) = 0
+ [ToggleUI]_OutlineLit ("Enable Lighting", Float) = 1
+ _LineWidth ("Width", Float) = 0
+ _LineColor ("Color", Color) = (1, 1, 1, 1)
+ _OutlineEmission ("Outline Emission", Float) = 0
+ _OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineTexturePan ("Outline Texture Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineTextureUV ("UV", Int) = 0
+ _OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineMaskUV ("UV", Int) = 0
+ _OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
+ [HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
+ [Vector2]_OutlineFadeDistance ("Outline distance Fade", Vector) = (0, 0, 0, 0)
+ [Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
+ _OutlineOffsetFactor("Offset Factor", Float) = 0
+ _OutlineOffsetUnits("Offset Units", Float) = 0
+ [HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
+
+ // Parallax Mapping
+ [HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
+ [Toggle(_PARALLAXMAP)]_ParallaxMap ("Enable Parallax FX", Float) = 0
+ [ToggleUI]_ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
+ [ToggleUI]_ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
+ [HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
+ [Vector2]_ParallaxHeightMapPan ("Pan", Vector) = (0, 0, 0, 0)
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Int) = 0
+ _ParallaxHeightMap ("Height Map", 2D) = "black" { }
+ _ParallaxHeightMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxHeightMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxHeightMapMaskUV ("UV", Int) = 0
+ _ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
+ [HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
+ [HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
+ [Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Int) = 0
+ [ToggleUI]_ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
+ _ParallaxInternalMap ("Internal Map", 2D) = "black" { }
+ _ParallaxInternalMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxInternalMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxInternalMapMaskUV ("UV", Int) = 0
+ _ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
+ _ParallaxInternalMinDepth ("Min Depth", Float) = 0
+ _ParallaxInternalMaxDepth ("Max Depth", Float) = 1
+ _ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
+ _ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
+ _ParallaxInternalMinColor ("Min Depth Color", Color) = (1, 1, 1, 1)
+ _ParallaxInternalMaxColor ("Max Depth Color", Color) = (1, 1, 1, 1)
+ [Vector2]_ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [Vector2]_ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
+ [HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
+ _ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
+ [HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
+
+ // Rendering Options
+ [HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
+ [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
+ [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
+ [Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Int) = 1
+ [Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Int) = 15
+ _OffsetFactor ("Offset Factor", Float) = 0.0
+ _OffsetUnits ("Offset Units", Float) = 0.0
+ [ToggleUI]_IgnoreFog ("Ignore Fog", Float) = 0
+ [HideInInspector] Instancing ("Instancing", Float) = 0 //add this property for instancing variants settings to be shown
+
+ // Blending Options
+ [HideInInspector] m_start_blending ("Blending", Float) = 0
+ [Enum(Thry.BlendOp)]_BlendOp ("RGB Blend Op", Int) = 0
+ [Enum(Thry.BlendOp)]_BlendOpAlpha ("Alpha Blend Op", Int) = 0
+ [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Int) = 1
+ [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Int) = 0
+ [HideInInspector] m_end_blending ("Blending", Float) = 0
+
+ // Stencils
+ [HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
+ [IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
+
+ // Outline Stencil
+ [HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
+ [IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
+
+ // Debug Options
+ [HideInInspector] m_start_debugOptions ("Debug", Float) = 0
+ [HideInInspector][Toggle(_COLOROVERLAY_ON)]_DebugEnabled ("Display Debug Info", Float) = 0
+ _VertexUnwrap ("Unwrap", Range(0, 1)) = 0
+ [Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Int) = 0
+ [Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Int) = 0
+ [Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Int) = 0
+ [HideInInspector] m_end_debugOptions ("Debug", Float) = 0
+
+ //[HideInInspector] m_animationToggles ("Animation Support Toggles", Float) = 0
+ //[HelpBox(1)] _AnimationToggleHelp ("You don't need to search through this list. You can enable animation support on any property by right clicking it", Int) = 0
+
+ // Main
+ [HideInInspector]_ColorAnimated ("Color & Alpha", Int) = 0
+ [HideInInspector]_MainTexAnimated ("Texture", Int) = 0
+ [HideInInspector]_MainTex_STAnimated ("Texture Offset/Scale", Int) = 0
+ [HideInInspector]_MainTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_MainVertexColoringAnimated ("Use Vertex Color", Int) = 0
+ [HideInInspector]_MainUseVertexColorAlphaAnimated ("Use Vertex Alpha", Int) = 0
+ [HideInInspector]_MainEmissionStrengthAnimated ("Basic Emission", Int) = 0
+ [HideInInspector]_BumpMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_BumpMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_BumpMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_BumpScaleAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_AlphaMaskAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_AlphaMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AlphaMaskUVAnimated ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector]_MainHueShiftToggleAnimated ("Toggle Hueshift", Int) = 0
+ [HideInInspector]_MainHueShiftReplaceAnimated ("Replace?", Int) = 0
+ [HideInInspector]_MainHueShiftAnimated ("Hue Shift", Int) = 0
+ [HideInInspector]_MainHueShiftSpeedAnimated ("Shift Speed", Int) = 0
+ [HideInInspector]_MainHueShiftMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MainHueShiftMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainHueShiftMaskUVAnimated ("UV", Int) = 0
+
+ // RGB Masking
+ [HideInInspector]_RGBMaskEnabledAnimated ("RGB Mask Enabled", Int) = 0
+ [HideInInspector]_RGBUseVertexColorsAnimated ("Use Vertex Colors", Int) = 0
+ [HideInInspector]_RGBBlendMultiplicativeAnimated ("Multiplicative?", Int) = 0
+ [HideInInspector]_RGBMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RGBMaskPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RedColorAnimated ("R Color", Int) = 0
+ [HideInInspector]_RedTexureAnimated ("R Texture", Int) = 0
+ [HideInInspector]_RGBRedPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBRed_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_GreenColorAnimated ("G Color", Int) = 0
+ [HideInInspector]_GreenTextureAnimated ("G Texture", Int) = 0
+ [HideInInspector]_RGBGreenPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBGreen_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_BlueColorAnimated ("B Color", Int) = 0
+ [HideInInspector]_BlueTextureAnimated ("B Texture", Int) = 0
+ [HideInInspector]_RGBBluePanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBBlue_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_RGBNormalBlendAnimated ("UV", Int) = 0
+
+ // Detail Options
+ [HideInInspector]_DetailMaskAnimated ("Detail Mask (R:Texture, G:Normal)", Int) = 0
+ [HideInInspector]_DetailMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTintAnimated ("Detail Texture Tint", Int) = 0
+ [HideInInspector]_DetailTexAnimated ("Detail Texture", Int) = 0
+ [HideInInspector]_DetailTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTexIntensityAnimated ("Detail Tex Intensity", Int) = 0
+ [HideInInspector]_DetailBrightnessAnimated ("Detail Brightness:", Int) = 0
+ [HideInInspector]_DetailNormalMapAnimated ("Detail Normal", Int) = 0
+ [HideInInspector]_DetailNormalMapScaleAnimated ("Detail Normal Intensity", Int) = 0
+ [HideInInspector]_DetailNormalMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailNormalMapUVAnimated ("UV", Int) = 0
+
+ //Vertex Manipulations
+ [HideInInspector]_VertexManipulationLocalTranslationAnimated ("Local Translation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalRotationAnimated ("Local Rotation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalScaleAnimated ("Local Scale", Int) = 0
+ [HideInInspector]_VertexManipulationWorldTranslationAnimated ("World Translation", Int) = 0
+ [HideInInspector]_VertexManipulationHeightAnimated ("Vertex Height", Int) = 0
+ [HideInInspector]_VertexManipulationHeightMaskAnimated ("Height Map", Int) = 0
+ [HideInInspector]_VertexManipulationHeightPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VertexManipulationHeightUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VertexManipulationHeightBiasAnimated ("Mask Bias", Int) = 0
+ [HideInInspector]_VertexRoundingEnabledAnimated ("Rounding Enabled", Int) = 0
+ [HideInInspector]_VertexRoundingDivisionAnimated ("Division Amount", Int) = 0
+
+ // Alpha Options
+ [HideInInspector]_AlphaModAnimated ("Alpha Mod", Int) = 0
+ [HideInInspector]_CutoffAnimated ("Alpha Cuttoff", Int) = 0
+ [HideInInspector]_DitheringEnabledAnimated ("Enable Dithering", Int) = 0
+ [HideInInspector]_DitherGradientAnimated ("Dither Gradient", Int) = 0
+ [HideInInspector]_ForceOpaqueAnimated ("Force Opaque", Int) = 0
+ [HideInInspector]_MainShadowClipModAnimated ("Shadow Clip Mod", Int) = 0
+ [HideInInspector]_AlphaToMaskAnimated ("Alpha To Coverage", Int) = 0
+ [HideInInspector]_MainAlphaToCoverageAnimated ("Sharpenned A2C", Int) = 0
+ [HideInInspector]_AlphaPremultiplyAnimated ("Alpha Premultiply", Int) = 0
+ [HideInInspector]_MainMipScaleAnimated ("Mip Level Alpha Scale", Int) = 0
+
+ // Decal Texture
+ [HideInInspector]_DecalEnabledAnimated ("Enable", Int) = 0
+ [HideInInspector]_DecalColorAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalEmissionStrengthAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalTextureAnimated ("Decal", Int) = 0
+ [HideInInspector]_DecalTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DecalMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_DecalScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_DecalPositionAnimated ("Position", Int) = 0
+ [HideInInspector]_DecalRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_DecalRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_DecalBlendAddAnimated ("Add", Int) = 0
+ [HideInInspector]_DecalBlendMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_DecalBlendReplaceAnimated ("Replace", Int) = 0
+
+ // Lighting
+ [HideInInspector]_EnableLightingAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LightingModeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingStandardSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_LightingShadingEnabledAnimated ("Enable Shading-",Int) = 0
+ [HideInInspector]_LightingRampTypeAnimated ("Ramp Type", Int) = 0
+ [HideInInspector]_ToonRampAnimated ("Lighting Ramp", Int) = 0
+ [HideInInspector]_LightingShadowMaskAnimated ("Ramp Mask", Int) = 0
+ [HideInInspector]_LightingShadowMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ShadowOffsetAnimated ("Ramp Offset", Int) = 0
+ [HideInInspector]_LightingGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingShadowColorAnimated ("Shadow Tint", Int) = 0
+ [HideInInspector]_ShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_AttenuationMultiplierAnimated ("Unity Shadows", Int) = 0
+ [HideInInspector]_LightingIgnoreAmbientColorAnimated ("Ignore Ambient Color", Int) = 0
+
+ [HideInInspector]_LightingDirectColorModeAnimated ("D Color", Int) = 0
+ [HideInInspector]_LightingIndirectColorModeAnimated ("I Color?", Int) = 0
+ [HideInInspector]_LightingMonochromaticAnimated ("Monochromatic Lighting?", Int) = 0
+ [HideInInspector]_LightingUncappedAnimated ("Uncapped Lighting", Int) = 0
+ [HideInInspector]_LightingOnlyUnityShadowsAnimated ("Only Unity Shadows", Int) = 0
+ [HideInInspector]_LightingMinLightBrightnessAnimated ("Min Brightnes", Int) = 0
+ [HideInInspector]_LightingMinShadowBrightnessRatioAnimated ("Shadow:Light min Ratio", Int) = 0
+
+ [HideInInspector]_LightingDetailShadowsEnabledAnimated ("Enabled Detail Shadows?", Int) = 0
+ [HideInInspector]_LightingDetailShadowsAnimated ("Detail Shadows", Int) = 0
+ [HideInInspector]_LightingDetailShadowsPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingDetailShadowsUVAnimated ("UV", Int) = 0
+ [HideInInspector]_LightingDetailStrengthAnimated ("Detail Strength", Int) = 0
+
+ [HideInInspector]_LightingEnableAOAnimated ("Enable AO", Int) = 0
+ [HideInInspector]_LightingAOTexAnimated ("AO Map", Int) = 0
+ [HideInInspector]_LightingAOTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingAOTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_AOStrengthAnimated ("AO Strength", Range(0, 1)) = 0
+
+ [HideInInspector]_UseShadowTextureAnimated ("EnableShadowTexture", Int) = 0
+ [HideInInspector]_LightingShadowTextureAnimated ("Shadow Texture", Int) = 0
+ [HideInInspector]_LightingShadowTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowTextureUVAnimated ("UV", Int) = 0
+
+ [HideInInspector]_LightingEnableHSLAnimated ("Enabled HSL Lighting", Int) = 0
+ [HideInInspector]_LightingHSLIntensityAnimated ("Shadow HSL Intensity", Int) = 0
+ [HideInInspector]_LightingShadowHueAnimated ("Shadow Hue Change", Int) = 0
+ [HideInInspector]_LightingShadowSaturationAnimated ("Shadow Saturation Change", Int) = 0
+ [HideInInspector]_LightingShadowLightnessAnimated ("Shadow Lightness Change", Int) = 0
+
+ // point/spot Light Settings
+ [HideInInspector]_commentIfZero_LightingAdditiveEnableAnimated ("Enable Additive", Int) = 0
+ [HideInInspector]_LightingAdditiveTypeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingAdditivePassthroughAnimated ("Point Light Passthrough", Int) = 0
+ [HideInInspector]_LightingAdditiveDetailStrengthAnimated ("Detail Shadow Strength", Int) = 0
+ [HideInInspector]_LightingAdditiveLimitIntensityAnimated ("Limit Intensity", Int) = 0
+ [HideInInspector]_LightingAdditiveMaxIntensityAnimated ("Max Intensity", Int) = 0
+
+ // Subsurface Scattering
+ [HideInInspector]_EnableSSSAnimated ("Enable Subsurface Scattering", Int) = 0
+ [HideInInspector]_SSSColorAnimated ("Subsurface Color", Int) = 0
+ [HideInInspector]_SSSThicknessMapAnimated ("Thickness Map", Int) = 0
+ [HideInInspector]_SSSThicknessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SSSThicknessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SSSThicknessModAnimated ("Thickness mod", Int) = 0
+ [HideInInspector]_SSSSCaleAnimated ("Light Strength", Int) = 0
+ [HideInInspector]_SSSPowerAnimated ("Light Spread", Int) = 0
+ [HideInInspector]_SSSDistortionAnimated ("Light Distortion", Int) = 0
+
+ // Rim Lighting
+ [HideInInspector]_EnableRimLightingAnimated ("Enable Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_RimLightingInvertAnimated ("Invert Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightColorAnimated ("Rim Color", Int) = 0
+ [HideInInspector]_RimWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimStrengthAnimated ("Rim Emission", Int) = 0
+ [HideInInspector]_RimBrightenAnimated ("Rim Color Brighten", Int) = 0
+ [HideInInspector]_RimLightColorBiasAnimated ("Rim Color Bias", Int) = 0
+ [HideInInspector]_RimTexAnimated ("Rim Texture", Int) = 0
+ [HideInInspector]_RimTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimMaskAnimated ("Rim Mask", Int) = 0
+ [HideInInspector]_RimMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimMaskUVAnimated ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector]_RimWidthNoiseTextureAnimated ("Rim Width Noise", Int) = 0
+ [HideInInspector]_RimWidthNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimWidthNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimWidthNoiseStrengthAnimated ("Intensity", Int) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector]_ShadowMixAnimated ("Shadow Mix In", Int) = 0
+ [HideInInspector]_ShadowMixThresholdAnimated ("Shadow Mix Threshold", Int) = 0
+ [HideInInspector]_ShadowMixWidthModAnimated ("Shadow Mix Width Mod", Int) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector]_EnableEnvironmentalRimAnimated ("Enable Environmental Rim", Int) = 0
+ [HideInInspector]_RimEnviroMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RimEnviroMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimEnviroMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimEnviroBlurAnimated ("Blur", Int) = 0
+ [HideInInspector]_RimEnviroWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimEnviroSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimEnviroMinBrightnessAnimated ("Min Brightness Threshold", Int) = 0
+ [HideInInspector]_RimEnviroIntensityAnimated ("Intensity", Int) = 0
+
+ // Metallics
+ [HideInInspector]_EnableMetallicAnimated ("Enable Metallics", Int) = 0
+ [HideInInspector]_CubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_SampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_MetalReflectionTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_MetallicTintMapAnimated ("Tint Map", Int) = 0
+ [HideInInspector]_MetallicTintMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicTintMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicMaskAnimated ("Metallic Mask", Int) = 0
+ [HideInInspector]_MetallicMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SmoothnessMaskAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SmoothnessMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_InvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessAnimated ("Smoothness", Int) = 0
+
+ // Clearcoat
+ [HideInInspector]_EnableClearCoatAnimated ("Enable Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatNormalToUseAnimated ("What Normal?", Int) = 0
+ [HideInInspector]_ClearCoatCubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_ClearCoatSampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_ClearCoatTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_ClearCoatMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ClearCoatMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatInvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_ClearCoatForceLightingAnimated ("Force Lighting", Int) = 0
+
+ // First Matcap
+ [HideInInspector]_MatcapEnableAnimated ("Enable Matcap", Int) = 0
+ [HideInInspector]_MatcapColorAnimated ("Color", Int) = 0
+ [HideInInspector]_MatcapAnimated ("Matcap", Int) = 0
+ [HideInInspector]_MatcapBorderAnimated ("Border", Int) = 0
+ [HideInInspector]_MatcapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MatcapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MatcapMaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_MatcapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MatcapEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_MatcapIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_MatcapLightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_MatcapReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_MatcapMultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_MatcapAddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_MatcapNormalAnimated ("Normal to use", Int) = 0
+
+ // Second Matcap
+ [HideInInspector]_Matcap2EnableAnimated ("Enable Matcap 2", Int) = 0
+ [HideInInspector]_Matcap2ColorAnimated ("Color", Int) = 0
+ [HideInInspector]_Matcap2Animated ("Matcap", Int) = 0
+ [HideInInspector]_Matcap2BorderAnimated ("Border", Int) = 0
+ [HideInInspector]_Matcap2MaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_Matcap2MaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_Matcap2MaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_Matcap2MaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_Matcap2EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_Matcap2IntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_Matcap2LightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_Matcap2ReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_Matcap2MultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_Matcap2AddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_Matcap2NormalAnimated ("Normal to use", Int) = 0
+
+ // Specular
+ [HideInInspector]_EnableSpecularAnimated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularTypeAnimated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTintAnimated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMapAnimated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothnessAnimated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMaskAnimated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFromAnimated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangentAnimated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1AlphaAnimated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2AlphaAnimated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1OffsetAnimated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2SmoothnessAnimated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMapAnimated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMapAnimated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStartAnimated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEndAnimated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColorAnimated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirroredAnimated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroAnimated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplierAnimated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroAnimated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplierAnimated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuterAnimated ("Inner/Outer Edge", Int) = 0
+
+ // Second Specular
+ [HideInInspector]_EnableSpecular1Animated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularType1Animated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormal1Animated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTint1Animated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallic1Animated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothness1Animated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMap1Animated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothness1Animated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMask1Animated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFrom1Animated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangent1Animated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1Alpha1Animated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2Alpha1Animated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1Offset1Animated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2Smoothness1Animated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMap1Animated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMap1Animated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStart1Animated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEnd1Animated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColor1Animated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirrored1Animated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1Animated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplier1Animated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1Animated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplier1Animated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuter1Animated ("Inner/Outer Edge", Int) = 0
+
+ // First Emission
+ [HideInInspector]_EnableEmissionAnimated ("Enable Emission", Int) = 0
+ [HideInInspector]_EmissionReplaceAnimated ("Replace Base Color", Int) = 0
+ [HideInInspector]_EmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMapAnimated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMapAnimated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMaskAnimated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabledAnimated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShiftAnimated ("Hue Shift", Int) = 0
+
+ // Center out emission
+ [HideInInspector]_EmissionCenterOutEnabledAnimated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeedAnimated ("Flow Speed", Int) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector]_EnableGITDEmissionAnimated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMeshAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplierAnimated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplierAnimated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLightAnimated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLightAnimated ("Max Lighting", Int) = 0
+
+ // Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_MinAnimated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_MaxAnimated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_VelocityAnimated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffsetAnimated ("Offset", Int) = 0
+
+ // Scrolling Emission
+ [HideInInspector]_ScrollingEmissionAnimated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurveAnimated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurveAnimated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColorAnimated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_DirectionAnimated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_WidthAnimated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_VelocityAnimated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_IntervalAnimated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffsetAnimated ("Offset", Int) = 0
+
+ // Second Enission
+ [HideInInspector]_EnableEmission1Animated ("Enable Emission 2", Int) = 0
+ [HideInInspector]_EmissionColor1Animated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMap1Animated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMap1Animated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMask1Animated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrength1Animated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabled1Animated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShift1Animated ("Hue Shift", Int) = 0
+
+ // Second Center Out Enission
+ [HideInInspector]_EmissionCenterOutEnabled1Animated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeed1Animated ("Flow Speed", Int) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector]_EnableGITDEmission1Animated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMesh1Animated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplier1Animated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplier1Animated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLight1Animated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLight1Animated ("Max Lighting", Int) = 0
+
+ // Second Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_Min1Animated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_Max1Animated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_Velocity1Animated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffset1Animated ("Offset", Int) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector]_ScrollingEmission1Animated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurve1Animated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurve1Animated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColor1Animated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_Direction1Animated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_Width1Animated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_Velocity1Animated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_Interval1Animated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffset1Animated ("Offset", Int) = 0
+
+ // Flipbook
+ [HideInInspector]_EnableFlipbookAnimated ("Enable Flipbook", Int) = 0
+ [HideInInspector]_FlipbookAlphaControlsFinalAlphaAnimated ("Flipbook Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookIntensityControlsAlphaAnimated ("Intensity Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookColorReplacesAnimated ("Color Replaces Flipbook", Int) = 0
+ [HideInInspector]_FlipbookTexArrayAnimated ("Texture Array", Int) = 0
+ [HideInInspector]_FlipbookTexArrayUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookTexArrayPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_FlipbookMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookColorAnimated ("Color & alpha", Int) = 0
+ [HideInInspector]_FlipbookTotalFramesAnimated ("Total Frames", Int) = 0
+ [HideInInspector]_FlipbookFPSAnimated ("FPS", Int) = 0
+ [HideInInspector]_FlipbookScaleOffsetAnimated ("Scale | Offset", Int) = 0
+ [HideInInspector]_FlipbookTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_FlipbookEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_FlipbookRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_FlipbookRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_FlipbookReplaceAnimated ("Replace", Int) = 0
+ [HideInInspector]_FlipbookMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_FlipbookAddAnimated ("Add", Int) = 0
+ [HideInInspector]_FlipbookCurrentFrameAnimated ("Current Frame", Int) = 0
+
+ // Dissolve
+ [HideInInspector]_EnableDissolveAnimated ("Enable Dissolve", Int) = 0
+ [HideInInspector]_DissolveTypeAnimated ("Dissolve Type", Int) = 0
+ [HideInInspector]_DissolveEdgeWidthAnimated ("Edge Width", Int) = 0
+ [HideInInspector]_DissolveEdgeHardnessAnimated ("Edge Hardness", Int) = 0
+ [HideInInspector]_DissolveEdgeColorAnimated ("Edge Color", Int) = 0
+ [HideInInspector]_DissolveEdgeGradientAnimated ("Edge Gradient", Int) = 0
+ [HideInInspector]_DissolveEdgeEmissionAnimated ("Edge Emission", Int) = 0
+ [HideInInspector]_DissolveTextureColorAnimated ("Dissolved Color", Int) = 0
+ [HideInInspector]_DissolveToTextureAnimated ("Dissolved Texture", Int) = 0
+ [HideInInspector]_DissolveToTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveToTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveToEmissionStrengthAnimated ("Dissolved Emission Strength", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureAnimated ("Dissolve Noise", Int) = 0
+ [HideInInspector]_DissolveNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseAnimated ("Dissolve Detail Noise", Int) = 0
+ [HideInInspector]_DissolveDetailNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertDetailNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailStrengthAnimated ("Dissolve Detail Strength", Int) = 0
+ [HideInInspector]_DissolveAlphaAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveUseVertexColorsAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveMaskAnimated ("Dissolve Mask", Int) = 0
+ [HideInInspector]_DissolveMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveMaskInvertAnimated ("Invert?", Int) = 0
+ [HideInInspector]_ContinuousDissolveAnimated ("Continuous Dissolve Speed", Int) = 0
+ [HideInInspector]_DissolveEmissionSideAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_DissolveEmission1SideAnimated ("Emission 2", Int) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector]_DissolveP2PWorldLocalAnimated ("World/Local", Int) = 0
+ [HideInInspector]_DissolveP2PEdgeLengthAnimated ("Edge Length", Int) = 0
+ [HideInInspector]_DissolveStartPointAnimated ("Start Point", Int) = 0
+ [HideInInspector]_DissolveEndPointAnimated ("End Point", Int) = 0
+
+ [HideInInspector]_DissolveAlpha0Animated ("_DissolveAlpha0", Int) = 0
+ [HideInInspector]_DissolveAlpha1Animated ("_DissolveAlpha1", Int) = 0
+ [HideInInspector]_DissolveAlpha2Animated ("_DissolveAlpha2", Int) = 0
+ [HideInInspector]_DissolveAlpha3Animated ("_DissolveAlpha3", Int) = 0
+ [HideInInspector]_DissolveAlpha4Animated ("_DissolveAlpha4", Int) = 0
+ [HideInInspector]_DissolveAlpha5Animated ("_DissolveAlpha5", Int) = 0
+ [HideInInspector]_DissolveAlpha6Animated ("_DissolveAlpha6", Int) = 0
+ [HideInInspector]_DissolveAlpha7Animated ("_DissolveAlpha7", Int) = 0
+ [HideInInspector]_DissolveAlpha8Animated ("_DissolveAlpha8", Int) = 0
+ [HideInInspector]_DissolveAlpha9Animated ("_DissolveAlpha9", Int) = 0
+
+ // Panosphere
+ [HideInInspector]_PanoToggleAnimated ("Enable Panosphere", Int) = 0
+ [HideInInspector]_PanoInfiniteStereoToggleAnimated ("Infinite Stereo", Int) = 0
+ [HideInInspector]_PanosphereColorAnimated ("Color", Int) = 0
+ [HideInInspector]_PanosphereTextureAnimated ("Texture", Int) = 0
+ [HideInInspector]_PanoMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_PanoMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_PanoMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_PanoEmissionAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_PanoBlendAnimated ("Alpha", Int) = 0
+ [HideInInspector]_PanospherePanAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_PanoCubeMapToggleAnimated ("Use Cubemap", Int) = 0
+ [HideInInspector]_PanoCubeMapAnimated ("CubeMap", Int) = 0
+
+ // Glitter
+ [HideInInspector]_GlitterEnableAnimated ("Enable Glitter?", Int) = 0
+ [HideInInspector]_GlitterModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterShapeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterBlendTypeAnimated ("Blend Mode", Int) = 0
+ [HideInInspector]_GlitterColorAnimated ("Color", Int) = 0
+ [HideInInspector]_GlitterUseSurfaceColorAnimated ("Use Surface Color", Int) = 0
+ [HideInInspector]_GlitterColorMapAnimated ("Glitter Color Map", Int) = 0
+ [HideInInspector]_GlitterColorMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterColorMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterTextureAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterRandomRotationAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterFrequencyAnimated ("Glitter Density", Int) = 0
+ [HideInInspector]_GlitterJitterAnimated ("Glitter Jitter", Int) = 0
+ [HideInInspector]_GlitterSpeedAnimated ("Glitter Wobble Speed", Int) = 0
+ [HideInInspector]_GlitterSizeAnimated ("Glitter Size", Int) = 0
+ [HideInInspector]_GlitterContrastAnimated ("Glitter Contrast", Int) = 0
+ [HideInInspector]_GlitterAngleRangeAnimated ("Glitter Angle Range", Int) = 0
+ [HideInInspector]_GlitterMinBrightnessAnimated ("Glitter Min Brightness", Int) = 0
+ [HideInInspector]_GlitterBrightnessAnimated ("Glitter Max Brightness", Int) = 0
+ [HideInInspector]_GlitterBiasAnimated ("Glitter Bias", Int) = 0
+ [HideInInspector]_GlitterCenterSizeAnimated ("center size", Int) = 0
+ [HideInInspector]_GlitterTextureRotationAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_glitterFrequencyLinearEmissiveAnimated ("Frequency", Int) = 0
+ [HideInInspector]_GlitterJaggyFixAnimated ("Jaggy Fix", Int) = 0
+
+ // Glitter Random Colors
+ [HideInInspector]_GlitterRandomColorsAnimated ("Enable", Int) = 0
+ [HideInInspector]_GlitterMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_GlitterMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+ [HideInInspector]_GlitterRandomSizeAnimated ("random Size Toggle", Int) = 0
+ [HideInInspector]_GlitterMinMaxSizeAnimated ("Min Max Random Size", Int) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector]_TextGlyphsAnimated ("Font Array", Int) = 0
+ [HideInInspector]_TextPixelRangeAnimated ("Pixel Range", Int) = 0
+ [HideInInspector]_TextEnabledAnimated ("Text?", Int) = 0
+
+ // FPS
+ [HideInInspector]_TextFPSEnabledAnimated ("FPS Text?", Int) = 0
+ [HideInInspector]_TextFPSUVAnimated ("FPS UV", Int) = 0
+ [HideInInspector]_TextFPSColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextFPSEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextFPSOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextFPSRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextFPSScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextFPSPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // POSITION
+ [HideInInspector]_TextPositionEnabledAnimated ("Position Text?", Int) = 0
+ [HideInInspector]_TextPositionUVAnimated ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVerticalAnimated ("Vertical?", Int) = 0
+ [HideInInspector]_TextPositionColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextPositionEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextPositionOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextPositionRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextPositionScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextPositionPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // INSTANCE TIME
+ [HideInInspector]_TextTimeEnabledAnimated ("Time Text?", Int) = 0
+ [HideInInspector]_TextTimeUVAnimated ("Time UV", Int) = 0
+ [HideInInspector]_TextTimeColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextTimeEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextTimeOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextTimeRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextTimeScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextTimePaddingAnimated ("Padding Reduction", Int) = 0
+
+ // Mirror Rendering
+ [HideInInspector]_EnableMirrorOptionsAnimated ("Enable Mirror Options", Int) = 0
+ [HideInInspector]_MirrorAnimated ("Show in mirror", Int) = 0
+ [HideInInspector]_EnableMirrorTextureAnimated ("Enable Mirror Texture", Int) = 0
+ [HideInInspector]_MirrorTextureAnimated ("Mirror Tex", Int) = 0
+ [HideInInspector]_MirrorTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MirrorTextureUVAnimated ("UV", Int) = 0
+
+ // Distance Fade
+ [HideInInspector]_MainMinAlphaAnimated ("Minimum Alpha", Int) = 0
+ [HideInInspector]_MainFadeTextureAnimated ("Fade Mask", Int) = 0
+ [HideInInspector]_MainFadeTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainFadeTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MainDistanceFadeAnimated ("Distance Fade X to Y", Int) = 0
+
+ // Angular Fade
+ [HideInInspector]_EnableRandomAnimated ("Enable Angular Fade", Int) = 0
+ [HideInInspector]_AngleTypeAnimated ("Angle Type", Int) = 0
+ [HideInInspector]_AngleCompareToAnimated ("Model or Vert Positon", Int) = 0
+ [HideInInspector]_AngleForwardDirectionAnimated ("Forward Direction", Int) = 0
+ [HideInInspector]_CameraAngleMinAnimated ("Camera Angle Min", Int) = 0
+ [HideInInspector]_CameraAngleMaxAnimated ("Camera Angle Max", Int) = 0
+ [HideInInspector]_ModelAngleMinAnimated ("Model Angle Min", Int) = 0
+ [HideInInspector]_ModelAngleMaxAnimated ("Model Angle Max", Int) = 0
+ [HideInInspector]_AngleMinAlphaAnimated ("Min Alpha", Int) = 0
+
+ // UV Distortion
+ [HideInInspector]_EnableDistortionAnimated ("Enabled?", Int) = 0
+ [HideInInspector]_DistortionMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DistortionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DistortionMaskUVAnimated ("Distortion Mask UV", Int) = 0
+ [HideInInspector]_DistortionFlowTextureAnimated ("Distortion Texture 1", Int) = 0
+ [HideInInspector]_DistortionFlowTexture1Animated ("Distortion Texture 2", Int) = 0
+ [HideInInspector]_DistortionStrengthAnimated ("Strength1", Int) = 0
+ [HideInInspector]_DistortionStrength1Animated ("Strength2", Int) = 0
+ [HideInInspector]_DistortionSpeedAnimated ("Speed1", Int) = 0
+ [HideInInspector]_DistortionSpeed1Animated ("Speed2", Int) = 0
+
+ // Video Options
+ [HideInInspector]_EnableVideoAnimated ("Enable Video", Int) = 0
+ [HideInInspector]_VideoUVNumberAnimated ("Screen UV#", Int) = 0
+ [HideInInspector]_VideoTypeAnimated ("Screen Type", Int) = 0
+ [HideInInspector]_VideoBacklightAnimated ("Brightness", Int) = 0
+ [HideInInspector]_VideoPixelTextureAnimated ("Pixel Texture", Int) = 0
+ [HideInInspector]_VideoResolutionAnimated ("Resolution", Int) = 0
+ [HideInInspector]_VideoMaskTextureAnimated ("Mask", Int) = 0
+ [HideInInspector]_VideoMaskPanningAnimated ("Mask Pan Speed", Int) = 0
+ [HideInInspector]_VideoEnableVideoPlayerAnimated ("Enable Video Player", Int) = 0
+ [HideInInspector]_VideoPixelateToResolutionAnimated ("Pixelate To Resolution", Int) = 0
+ [HideInInspector]_VideoRepeatVideoTextureAnimated ("Clamp To UV", Int) = 0
+ [HideInInspector]_VideoPanningAnimated ("Panning Speed", Int) = 0
+ [HideInInspector]_VideoTilingAnimated ("Tiling", Int) = 0
+ [HideInInspector]_VideoOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_VideoSaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_VideoContrastAnimated ("Contrast boost", Int) = 0
+ [HideInInspector]_VideoEnableDebugAnimated ("Enable Debug", Int) = 0
+ [HideInInspector]_VideoDebugTextureAnimated ("Video Debug Tex", Int) = 0
+ [HideInInspector]_VideoCRTRefreshRateAnimated ("Refresh Rate", Int) = 0
+ [HideInInspector]_VideoCRTPixelEnergizedTimeAnimated ("Pixel Fade Time", Int) = 0
+ [HideInInspector]_VideoGameboyRampAnimated ("Color Ramp", Int) = 0
+
+ // TouchFX
+ [HideInInspector]_EnableBulgeAnimated ("Bulge", Int) = 0
+ [HideInInspector]_BulgeMaskAnimated ("Bulge Mask", Int) = 0
+ [HideInInspector]_BuldgeFadeLengthAnimated ("Touch Distance", Int) = 0
+ [HideInInspector]_BuldgeHeightAnimated ("Bulge Height", Int) = 0
+
+ [HideInInspector]_EnableTouchGlowAnimated ("Enable Touch Glow", Int) = 0
+ [HideInInspector]_DepthGradientTextureUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientBlendAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGlowColorAnimated ("Depth Glow Color", Int) = 0
+ [HideInInspector]_DepthGradientAnimated ("Depth Gradient", Int) = 0
+ [HideInInspector]_DepthMaskAnimated ("Depth Mask", Int) = 0
+ [HideInInspector]_DepthGlowEmissionAnimated ("Depth Glow Emission", Int) = 0
+ [HideInInspector]_FadeLengthAnimated ("Fade Length", Int) = 0
+ [HideInInspector]_DepthAlphaMinAnimated ("Alpha Min", Int) = 0
+ [HideInInspector]_DepthAlphaMaxAnimated ("Alpha Max", Int) = 0
+
+ // Hologram
+ [HideInInspector]_EnableHoloAnimated ("Enable Hologram Alpha", Int) = 0
+ [HideInInspector]_HoloAlphaMapAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_HoloCoordinateSpaceAnimated ("Coordinate Space", Int) = 0
+ [HideInInspector]_HoloDirectionAnimated ("Scroll Direction", Int) = 0
+ [HideInInspector]_HoloLineDensityAnimated ("Line Density", Int) = 0
+ [HideInInspector]_HoloScrollSpeedAnimated ("Scroll Speed", Int) = 0
+ [HideInInspector]_HoloFresnelAlphaAnimated ("Intensity", Int) = 0
+ [HideInInspector]_HoloRimSharpnessAnimated ("Sharpness", Int) = 0
+ [HideInInspector]_HoloRimWidthAnimated ("Width", Int) = 0
+
+ // GrabPass
+ [HideInInspector]_GrabPassUseAlphaAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabPassBlendFactorAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabSrcBlendAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabDstBlendAnimated ("Destination Blend", Int) = 0
+ [HideInInspector]_RefractionEnabledAnimated ("Enable Refraction,", Int) = 0
+ [HideInInspector]_RefractionIndexAnimated ("Refraction", Int) = 0
+ [HideInInspector]_RefractionChromaticAberattionAnimated ("Chromatic Aberration", Int) = 0
+ [HideInInspector]_EnableBlurAnimated ("Enable Blur", Int) = 0
+ [HideInInspector]_GrabBlurDistanceAnimated ("Blur Distance", Int) = 0
+ [HideInInspector]_GrabBlurQualityAnimated ("Blur Quality", Int) = 0
+ [HideInInspector]_GrabBlurDirectionsAnimated ("Blur Direction", Int) = 0
+
+ // Iridescence
+ [HideInInspector]_EnableIridescenceAnimated ("Enable Iridescence", Int) = 0
+ [HideInInspector]_IridescenceRampAnimated ("Ramp", Int) = 0
+ [HideInInspector]_IridescenceNormalToggleAnimated ("Custom Normals?", Int) = 0
+ [HideInInspector]_IridescenceNormalMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_IridescenceMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_IridescenceNormalIntensityAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_IridescenceNormalUVAnimated ("Normal UV", Int) = 0
+ [HideInInspector]_IridescenceMaskUVAnimated ("Mask UV", Int) = 0
+ [HideInInspector]_IridescenceNormalSelectionAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_IridescenceIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_IridescenceAddBlendAnimated ("Blend Add", Int) = 0
+ [HideInInspector]_IridescenceReplaceBlendAnimated ("Blend Replace", Int) = 0
+ [HideInInspector]_IridescenceMultiplyBlendAnimated ("Blend Multiply", Int) = 0
+ [HideInInspector]_IridescenceEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_IridescenceTimeAnimated ("When To Run", Int) = 0
+
+ // Vertex Glitching
+ [HideInInspector]_EnableVertexGlitchAnimated ("Enable Vertex Glitching", Int) = 0
+ [HideInInspector]_VertexGlitchFrequencyAnimated ("Glitch Interval", Int) = 0
+ [HideInInspector]_VertexGlitchThresholdAnimated ("Glitch Threshold", Int) = 0
+ [HideInInspector]_VertexGlitchStrengthAnimated ("Glitch Strength", Int) = 0
+
+ // Spawn In Effects
+ [HideInInspector]_EnableScifiSpawnInAnimated ("Enable Sci Fi Spawn", Int) = 0
+ [HideInInspector]_SpawnInNoiseAnimated ("Spawn Noise", Int) = 0
+ [HideInInspector]_SpawnInNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_SpawnInAlphaAnimated ("Spawn Alpha", Int) = 0
+ [HideInInspector]_SpawnInGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_SpawnInGradientFinishAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_SpawnInEmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_SpawnInEmissionOffsetAnimated ("Emission Width", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetAnimated ("Vertex Offset Speed", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetOffsetAnimated ("vert width", Int) = 0
+
+ // Voronoi
+ [HideInInspector]_VoronoiTypeAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiSpaceAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiBlendAnimated ("Blend", Int) = 0
+ [HideInInspector]_EnableVoronoiAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiEffectsMaterialAlphaAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_VoronoiMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseAnimated ("Edge Noise", Int) = 0
+ [HideInInspector]_VoronoiNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_VoronoiColor0Animated ("Color 0", Int) = 0
+ [HideInInspector]_VoronoiEmission0Animated ("Emission 0", Int) = 0
+ [HideInInspector]_VoronoiColor1Animated ("Color 1", Int) = 0
+ [HideInInspector]_VoronoiEmission1Animated ("Emission 1", Int) = 0
+ [HideInInspector]_VoronoiGradientAnimated ("Gradient", Int) = 0
+ [HideInInspector]_VoronoiScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_VoronoiSpeedAnimated ("Speed", Int) = 0
+ [HideInInspector]_VoronoiEnableRandomCellColorAnimated ("Rando Cell Col", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+
+ // Blacklight mask
+ [HideInInspector]_BlackLightMaskEnabledAnimated ("Black Light Mask Enabled", Int) = 0
+ [HideInInspector]_BlackLightMaskKeysAnimated ("Mask Keys", Int) = 0
+ [HideInInspector]_BlackLightMaskStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_BlackLightMaskEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_BlackLightMaskDebugAnimated ("Visualize", Int) = 0
+ [HideInInspector]_BlackLightMaskMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_BlackLightMaskClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcapAnimated ("Matcap 1", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcap2Animated ("Matcap 2", Int) = 0
+ [HideInInspector]_BlackLightMaskEmissionAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_BlackLightMaskEmission2Animated ("Emission 2", Int) = 0
+ [HideInInspector]_BlackLightMaskFlipbookAnimated ("Flipbook", Int) = 0
+ [HideInInspector]_BlackLightMaskDissolveAnimated ("Dissolve", Int) = 0
+ [HideInInspector]_BlackLightMaskPanosphereAnimated ("Panosphere", Int) = 0
+ [HideInInspector]_BlackLightMaskGlitterAnimated ("Glitter", Int) = 0
+ [HideInInspector]_BlackLightMaskIridescenceAnimated ("Iridescence", Int) = 0
+
+ // Outline Options
+ [HideInInspector]_OutlineModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_OutlineFixedSizeAnimated ("Fixed Size?", Int) = 0
+ [HideInInspector]_OutlineUseVertexColorsAnimated ("V Color", Int) = 0
+ [HideInInspector]_OutlineLitAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LineWidthAnimated ("Width", Int) = 0
+ [HideInInspector]_LineColorAnimated ("Color", Int) = 0
+ [HideInInspector]_OutlineTintMixAnimated ("Tint Mix", Int) = 0
+ [HideInInspector]_OutlineEmissionAnimated ("Outline Emission", Int) = 0
+ [HideInInspector]_OutlineTextureAnimated ("Outline Texture", Int) = 0
+ [HideInInspector]_OutlineMaskAnimated ("Outline Mask", Int) = 0
+ [HideInInspector]_OutlineTexturePanAnimated ("Outline Texture Pan", Int) = 0
+ [HideInInspector]_OutlineShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_OutlineRimLightBlendAnimated ("Rim Light Blend", Int) = 0
+ [HideInInspector]_OutlinePersonaDirectionAnimated ("directional Offset XY", Int) = 0
+ [HideInInspector]_OutlineDropShadowOffsetAnimated ("Drop Direction XY", Int) = 0
+ [HideInInspector]_OutlineFadeDistanceAnimated ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetFactor ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetUnits ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineCullAnimated ("Cull", Int) = 0
+
+ // Parallax Mapping
+ [HideInInspector]_ParallaxMapAnimated ("Enable Parallax FX", Int) = 0
+ [HideInInspector]_ParallaxHeightMapEnabledAnimated ("Enable Parallax Height", Int) = 0
+ [HideInInspector]_ParallaxInternalMapEnabledAnimated ("Enable Parallax Internal", Int) = 0
+ [HideInInspector]_ParallaxHeightMapPanAnimated ("Pan", Int) = 0
+ [HideInInspector]_ParallaxUVAnimated ("Parallax UV", Int) = 0
+ [HideInInspector]_ParallaxHeightMapAnimated ("Height Map", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxStrengthAnimated ("Parallax Strength", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightmapModeAnimated ("Parallax Mode", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightFromAlphaAnimated ("HeightFromAlpha", Int) = 0
+ [HideInInspector]_ParallaxInternalMapAnimated ("Internal Map", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxInternalIterationsAnimated ("Parallax Internal Iterations", Int) = 0
+ [HideInInspector]_ParallaxInternalMinDepthAnimated ("Min Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxDepthAnimated ("Max Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMinFadeAnimated ("Min Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxFadeAnimated ("Max Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMinColorAnimated ("Min Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxColorAnimated ("Max Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalPanSpeedAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_ParallaxInternalPanDepthSpeedAnimated ("Per Level Speed Multiplier", Int) = 0
+ [HideInInspector]_ParallaxBiasAnimated ("Parallax Bias (0.42)", Int) = 0
+
+ // Rendering Options
+ [HideInInspector]_CullAnimated ("Cull", Int) = 0
+ [HideInInspector]_ZTestAnimated ("ZTest", Int) = 0
+ [HideInInspector]_ZWriteAnimated ("ZWrite", Int) = 0
+ [HideInInspector]_ColorMaskAnimated ("Color Mask", Int) = 0
+ [HideInInspector]_OffsetFactorAnimated ("Offset Factor", Int) = 0
+ [HideInInspector]_OffsetUnitsAnimated ("Offset Units", Int) = 0
+ [HideInInspector]_IgnoreFogAnimated ("Ignore Fog", Int) = 0
+
+ // Blending Options
+ [HideInInspector]_BlendOpAnimated ("RGB Blend Op", Int) = 0
+ [HideInInspector]_BlendOpAlphaAnimated ("Alpha Blend Op", Int) = 0
+ [HideInInspector]_SrcBlendAnimated ("RGB Source Blend", Int) = 0
+ [HideInInspector]_DstBlendAnimated ("RGB Destination Blend", Int) = 0
+
+ // Stencils
+ [HideInInspector]_StencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_StencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_StencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_StencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_StencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_StencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_StencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Outline Stencil
+ [HideInInspector]_OutlineStencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_OutlineStencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_OutlineStencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_OutlineStencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_OutlineStencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Debug Options
+ [HideInInspector]_VertexUnwrapAnimated ("Unwrap", Range(0, 1)) = 0
+ [HideInInspector]_DebugMeshDataAnimated ("Mesh Data", Int) = 0
+ [HideInInspector]_DebugLightingDataAnimated ("Lighting Data", Int) = 0
+ [HideInInspector]_DebugCameraDataAnimated ("Camera Data", Int) = 0
+ }
+
+
+ //originalEditorCustomEditor "PoiToon"
+ CustomEditor "Thry.ShaderEditor"
+ SubShader
+ {
+ Tags { "RenderType" = "Opaque" "Queue" = "Geometry" }
+
+// //EnableOutlinePass
+// Pass
+// {
+// Name "Outline"
+// Tags { "LightMode" = "ForwardBase" }
+// Stencil
+// {
+// Ref [_OutlineStencilRef]
+// ReadMask [_OutlineStencilReadMask]
+// WriteMask [_OutlineStencilWriteMask]
+// Comp [_OutlineStencilCompareFunction]
+// Pass [_OutlineStencilPassOp]
+// Fail [_OutlineStencilFailOp]
+// ZFail [_OutlineStencilZFailOp]
+// }
+// ZTest [_ZTest]
+// ColorMask [_ColorMask]
+// Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
+// BlendOp [_BlendOp], [_BlendOpAlpha]
+// Blend [_SrcBlend] [_DstBlend]
+// ZWrite [_ZWrite]
+// AlphaToMask [_AlphaToMask]
+// Cull [_OutlineCull]
+// CGPROGRAM
+//
+// #pragma target 5.0
+// #define FORWARD_BASE_PASS
+// #define OUTLINE
+// float _Mode;
+// // patreon Additive
+// // Black Light Mask
+//// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+// // voronoi
+//// #pragma shader_feature CHROMATIC_ABERRATION
+// // UV Distortion
+//// #pragma shader_feature USER_LUT
+// // Vertex Offsets
+//// #pragma shader_feature AUTO_EXPOSURE
+// // Mirror
+//// #pragma shader_feature _REQUIRE_UV2
+// // Random
+//// #pragma shader_feature _SUNDISK_NONE
+// // Dissolve
+//// #pragma shader_feature DISTORT
+// // Lighting
+//// #pragma shader_feature VIGNETTE_MASKED
+// #pragma multi_compile_fwdbase
+// #pragma fragmentoption ARB_precision_hint_fastest
+// #pragma multi_compile_fog
+// #pragma multi_compile_instancing
+// #pragma vertex vert
+// #pragma fragment frag
+// #include "../Includes/CGI_PoiPassOutline.cginc"
+// ENDCG
+//
+// }
+ //EnableOutlinePass
+
+ Pass
+ {
+ Name "MainPass"
+ Tags { "LightMode" = "ForwardBase" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ AlphaToMask [_AlphaToMask]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend [_SrcBlend] [_DstBlend]
+
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 69
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_BASE_PASS
+ float _Mode;
+ // Base Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ #pragma multi_compile _ VERTEXLIGHT_ON
+ // patreon Base
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Grab Pass Blur
+// #pragma shader_feature CHROMATIC_ABERRATION_LOW
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Touch Color
+// #pragma shader_feature GRAIN
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdbase
+ #pragma fragmentoption ARB_precision_hint_fastest
+ #pragma multi_compile_fog
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+
+ //LightingAdditiveEnable
+ Pass
+ {
+ Name "ForwardAddPass"
+ Tags { "LightMode" = "ForwardAdd" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ ZWrite Off
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend One One
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 69
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_ADD_PASS
+ float _Mode;
+ // Add Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ // patreon Additive
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+// #pragma shader_feature _PARALLAX_MAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Disable Directionals
+// #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdadd_fullshadows
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ //LightingAdditiveEnable
+
+ //LightingCastShadows
+ Pass
+ {
+ Name "ShadowCasterPass"
+ Tags { "LightMode" = "ShadowCaster" }
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ AlphaToMask Off
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 69
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_SHADOW
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Dissolve
+// #pragma shader_feature DISTORT
+ #pragma multi_compile_instancing
+ #pragma vertex vertShadowCaster
+ #pragma fragment fragShadowCaster
+ #include "../Includes/CGI_PoiPassShadow.cginc"
+ ENDCG
+
+ }
+ //LightingCastShadows
+
+ Pass
+ {
+ Tags { "LightMode" = "Meta" }
+ Cull Off
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 69
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_META_PASS
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
new file mode 100644
index 00000000..36d15ae5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/heartby1010浣-10b0e5a7/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c7c0d8c663a95b34cb8d3a4f6200dfbf
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a.meta
new file mode 100644
index 00000000..3942735e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 44ba4932c37597c48a6b92902f15698e
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets.meta
new file mode 100644
index 00000000..e049416c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: dff4242f81d37764f869a6db2bf89859
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders.meta
new file mode 100644
index 00000000..d1e23f71
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: c55e36e61ae1b3d4c8c683932c627577
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders.meta
new file mode 100644
index 00000000..275ebb7c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 23425b4ba675ed845bff672b7fb54e57
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon.meta
new file mode 100644
index 00000000..50fa8f48
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 42a9a244d35f97c40b263cbc393398bc
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
new file mode 100644
index 00000000..f4d36576
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 0c752d97471234f4fab1a3c4e289d43e
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
new file mode 100644
index 00000000..47683c72
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_ALPHA_TO_COVERAGE
+ #define POI_ALPHA_TO_COVERAGE
+
+ half _MainMipScale;
+ float _MainAlphaToCoverage;
+
+ float CalcMipLevel(float2 texture_coord)
+ {
+ float2 dx = ddx(texture_coord);
+ float2 dy = ddy(texture_coord);
+ float delta_max_sqr = max(dot(dx, dx), dot(dy, dy));
+
+ return 0.5 * log2(delta_max_sqr);
+ }
+
+ void ApplyAlphaToCoverage(inout float4 finalColor)
+ {
+ // Force Model Opacity to 1 if desired
+
+ if (float(0) == 1)
+ {
+
+ if(float(0))
+ {
+ // rescale alpha by mip level
+ finalColor.a *= 1 + max(0, CalcMipLevel(poiMesh.uv[0] * float4(0.0078125,0.0078125,128,128).zw)) * float(0.25);
+ // rescale alpha by partial derivative
+ finalColor.a = (finalColor.a - float(0.5)) / max(fwidth(finalColor.a), 0.0001) + float(0.5);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
new file mode 100644
index 00000000..9e923d2d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 57b5f789fa0213c4fabf914db869bae3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
new file mode 100644
index 00000000..e529136f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_BACKFACE
+ #define POI_BACKFACE
+
+ float _BackFaceEnabled;
+ float _BackFaceTextureUV;
+ float _BackFaceDetailIntensity;
+ float _BackFaceEmissionStrength;
+ float2 _BackFacePanning;
+ float _BackFaceHueShift;
+ float4 _BackFaceColor;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
+
+ float3 BackFaceColor;
+ void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
+ {
+ backFaceEmission = 0;
+ BackFaceColor = 0;
+
+ if (float(0))
+ {
+ if(!poiMesh.isFrontFace)
+ {
+ albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ backFaceDetailIntensity = float(1);
+ BackFaceColor = albedo.rgb;
+ mixedHueShift = float(0);
+ backFaceEmission = BackFaceColor * float(0);
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
new file mode 100644
index 00000000..33236077
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9cb334760d6f3ac4dae981bcddd550bb
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
new file mode 100644
index 00000000..750364ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
@@ -0,0 +1,54 @@
+#ifndef POI_BLACKLIGHT
+ #define POI_BLACKLIGHT
+
+ float4 _BlackLightMaskStart;
+ float4 _BlackLightMaskEnd;
+ float4 _BlackLightMaskKeys;
+ float _BlackLightMaskDebug;
+ float _BlackLightMaskDissolve;
+ float _BlackLightMaskMetallic;
+ float _BlackLightMaskClearCoat;
+ float _BlackLightMaskMatcap;
+ float _BlackLightMaskMatcap2;
+ float _BlackLightMaskEmission;
+ float _BlackLightMaskEmission2;
+ float _BlackLightMaskFlipbook;
+ float _BlackLightMaskPanosphere;
+ float _BlackLightMaskIridescence;
+
+ half _BlackLightMaskGlitter;
+
+ half4 blackLightMask;
+
+ void createBlackLightMask()
+ {
+ blackLightMask = 0;
+ #ifdef VERTEXLIGHT_ON
+
+ for (int lightIndex = 0; lightIndex < 4; lightIndex ++)
+ {
+ float3 lightPos = float3(unity_4LightPosX0[lightIndex], unity_4LightPosY0[lightIndex], unity_4LightPosZ0[lightIndex]);
+ if (!distance(unity_LightColor[lightIndex].rgb, float3(0, 0, 0)))
+ {
+ for (int maskIndex = 0; maskIndex < 4; maskIndex ++)
+ {
+ float4 comparison = _BlackLightMaskKeys;
+ if(unity_LightColor[lightIndex].a == comparison[maskIndex])
+ {
+ blackLightMask[maskIndex] = max(blackLightMask[maskIndex], smoothstep(_BlackLightMaskEnd[maskIndex], _BlackLightMaskStart[maskIndex], distance(poiMesh.worldPos, lightPos)));
+ }
+ }
+ }
+ }
+ #endif
+ }
+#endif
+
+/*
+#ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskDissolve != 4)
+ {
+ blackLightMask[mask];
+ }
+#endif
+*/
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
new file mode 100644
index 00000000..38eb0895
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ee11beac3763dfd41983a363d8ba1798
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
new file mode 100644
index 00000000..f87ae6dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
@@ -0,0 +1,39 @@
+#ifndef POI_BLENDING
+ #define POI_BLENDING
+
+ /*
+ 0: Zero float4(0.0, 0.0, 0.0, 0.0),
+ 1: One float4(1.0, 1.0, 1.0, 1.0),
+ 2: DstColor destinationColor,
+ 3: SrcColor sourceColor,
+ 4: OneMinusDstColor float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ 5: SrcAlpha sourceColor.aaaa,
+ 6: OneMinusSrcColor float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ 7: DstAlpha destinationColor.aaaa,
+ 8: OneMinusDstAlpha float4(1.0, 1.0, 1.0, 1.0) - destinationColor.,
+ 9: SrcAlphaSaturate saturate(sourceColor.aaaa),
+ 10: OneMinusSrcAlpha float4(1.0, 1.0, 1.0, 1.0) - sourceColor.aaaa,
+ */
+
+ float4 poiBlend(const float sourceFactor, const float4 sourceColor, const float destinationFactor, const float4 destinationColor, const float4 blendFactor)
+ {
+ float4 sA = 1-blendFactor;
+ const float4 blendData[11] = {
+ float4(0.0, 0.0, 0.0, 0.0),
+ float4(1.0, 1.0, 1.0, 1.0),
+ destinationColor,
+ sourceColor,
+ float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sA,
+ saturate(sourceColor.aaaa),
+ 1 - sA,
+ };
+
+ return lerp(blendData[sourceFactor] * sourceColor + blendData[destinationFactor] * destinationColor,sourceColor, sA);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
new file mode 100644
index 00000000..7effffd3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f8732c4832fdf204982c653a49ba1abe
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
new file mode 100644
index 00000000..6e4db3fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_BULGE
+ #define POI_BULGE
+
+
+ sampler2D _BulgeMask;
+ float _BuldgeFadeLength;
+ float _BuldgeHeight;
+
+ void bulgyWolgy(inout v2f o)
+ {
+ float depth = DecodeFloatRG(tex2Dlod(_CameraDepthTexture, float4(o.grabPos.xy / o.grabPos.w, 0, 0)));
+ float bulgeMask = tex2Dlod(_BulgeMask, float4(o.uv0.xy, 0, 0));
+ depth = Linear01Depth(depth);
+
+ float intersect = 0;
+ if (depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(o.pos.z / o.pos.w));
+ if(diff > 0)
+ {
+ intersect = 1 - smoothstep(0, _ProjectionParams.w * _BuldgeFadeLength, diff);
+ }
+ }
+ float4 offset = intersect * _BuldgeHeight * float4(o.normal, 0);
+
+ offset = IsInMirror() ? 0: offset;
+ offset *= bulgeMask;
+
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos) + offset;
+ o.localPos = mul(unity_WorldToObject, o.worldPos);
+ o.pos = UnityObjectToClipPos(o.localPos);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
new file mode 100644
index 00000000..c4530a4c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6306afd37e705aa4a9d281e5400a5de3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
new file mode 100644
index 00000000..5adf7340
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
@@ -0,0 +1,108 @@
+#ifndef POI_CLEARCOAT
+ #define POI_CLEARCOAT
+
+ samplerCUBE _ClearCoatCubeMap;
+ float _ClearCoatSampleWorld;
+ POI_TEXTURE_NOSAMPLER(_ClearCoatMask);
+ POI_TEXTURE_NOSAMPLER(_ClearCoatSmoothnessMap);
+ float _ClearCoatInvertSmoothness;
+ float _ClearCoat;
+ float _ClearCoatSmoothness;
+ float3 _ClearCoatTint;
+ float _ClearCoatNormalToUse;
+ float _ClearCoatForceLighting;
+ float lighty_clear_boy_uwu_var;
+
+
+ float3 CalculateClearCoatEnvironmentalReflections()
+ {
+ float3 reflectionColor;
+
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_ClearCoatSmoothnessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+ if (float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ float roughness = 1 - smoothnessMap;
+
+ lighty_clear_boy_uwu_var = 0;
+
+ float3 reflectedDir = float(0) == 0 ? poiCam.vertexReflectionDir: poiCam.reflectionDir;
+
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool no_probe = unity_SpecCube0_HDR.a == 0 && envSample.a == 0;
+
+
+ if(float(0) == 0 && no_probe == 0)
+ {
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflectionColor = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflectionColor = probe0;
+ }
+ }
+ else
+ {
+ lighty_clear_boy_uwu_var = 1;
+ reflectionColor = texCUBElod(_ClearCoatCubeMap, float4(reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+ }
+
+ if(float(0))
+ {
+ lighty_clear_boy_uwu_var = 1;
+ }
+
+ return reflectionColor * float4(1,1,1,1);
+ }
+
+ void calculateAndApplyClearCoat(inout float4 finalColor)
+ {
+ half clearCoatMap = POI2D_SAMPLER_PAN(_ClearCoatMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskClearCoat != 4)
+ {
+ clearCoatMap *= blackLightMask[_BlackLightMaskClearCoat];
+ }
+ #endif
+
+ half3 reflectionColor = CalculateClearCoatEnvironmentalReflections();
+
+ float NormalDotView = abs(dot(float(1), float(0) == 0 ? poiLight.N0DotV: poiLight.nDotV).r);
+ #ifdef POI_LIGHTING
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var), clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ //finalColor.rgb += reflectionColor;
+ //finalColor.rgb = finalColor.rgb * (1- (reflectionColor.r + reflectionColor.g + reflectionColor.b)/3) + reflectionColor * clearCoatMap * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var);
+ #else
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor, clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
new file mode 100644
index 00000000..24d884ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d108194e9cf7a6441a4b1efb353451b2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
new file mode 100644
index 00000000..687dc443
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
@@ -0,0 +1,262 @@
+#ifndef POI_COLOR
+ #define POI_COLOR
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ static const float Epsilon = 1e-10;
+ // The weights of RGB contributions to luminance.
+ // Should sum to unity.
+ static const float3 HCYwts = float3(0.299, 0.587, 0.114);
+ static const float HCLgamma = 3;
+ static const float HCLy0 = 100;
+ static const float HCLmaxL = 0.530454533953517; // == exp(HCLgamma / HCLy0) - 0.5
+ static const float3 wref = float3(1.0, 1.0, 1.0);
+ #define TAU 6.28318531
+
+ float3 HUEtoRGB(in float H)
+ {
+ float R = abs(H * 6 - 3) - 1;
+ float G = 2 - abs(H * 6 - 2);
+ float B = 2 - abs(H * 6 - 4);
+ return saturate(float3(R, G, B));
+ }
+
+ float3 RGBtoHCV(in float3 RGB)
+ {
+ // Based on work by Sam Hocevar and Emil Persson
+ float4 P = (RGB.g < RGB.b) ? float4(RGB.bg, -1.0, 2.0 / 3.0): float4(RGB.gb, 0.0, -1.0 / 3.0);
+ float4 Q = (RGB.r < P.x) ? float4(P.xyw, RGB.r): float4(RGB.r, P.yzx);
+ float C = Q.x - min(Q.w, Q.y);
+ float H = abs((Q.w - Q.y) / (6 * C + Epsilon) + Q.z);
+ return float3(H, C, Q.x);
+ }
+
+ float3 HSVtoRGB(in float3 HSV)
+ {
+ float3 RGB = HUEtoRGB(HSV.x);
+ return((RGB - 1) * HSV.y + 1) * HSV.z;
+ }
+
+ float3 RGBtoHSV(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float S = HCV.y / (HCV.z + Epsilon);
+ return float3(HCV.x, S, HCV.z);
+ }
+
+ float3 HSLtoRGB(in float3 HSL)
+ {
+ float3 RGB = HUEtoRGB(HSL.x);
+ float C = (1 - abs(2 * HSL.z - 1)) * HSL.y;
+ return(RGB - 0.5) * C + HSL.z;
+ }
+
+ float3 RGBtoHSL(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float L = HCV.z - HCV.y * 0.5;
+ float S = HCV.y / (1 - abs(L * 2 - 1) + Epsilon);
+ return float3(HCV.x, S, L);
+ }
+
+ float3 HCYtoRGB(in float3 HCY)
+ {
+
+
+ float3 RGB = HUEtoRGB(HCY.x);
+ float Z = dot(RGB, HCYwts);
+ if (HCY.z < Z)
+ {
+ HCY.y *= HCY.z / Z;
+ }
+ else if(Z < 1)
+ {
+ HCY.y *= (1 - HCY.z) / (1 - Z);
+ }
+ return(RGB - Z) * HCY.y + HCY.z;
+ }
+
+ float3 RGBtoHCY(in float3 RGB)
+ {
+ // Corrected by David Schaeffer
+ float3 HCV = RGBtoHCV(RGB);
+ float Y = dot(RGB, HCYwts);
+ float Z = dot(HUEtoRGB(HCV.x), HCYwts);
+ if (Y < Z)
+ {
+ HCV.y *= Z / (Epsilon + Y);
+ }
+ else
+ {
+ HCV.y *= (1 - Z) / (Epsilon + 1 - Y);
+ }
+ return float3(HCV.x, HCV.y, Y);
+ }
+
+ float3 HCLtoRGB(in float3 HCL)
+ {
+ float3 RGB = 0;
+ if(HCL.z != 0)
+ {
+ float H = HCL.x;
+ float C = HCL.y;
+ float L = HCL.z * HCLmaxL;
+ float Q = exp((1 - C / (2 * L)) * (HCLgamma / HCLy0));
+ float U = (2 * L - C) / (2 * Q - 1);
+ float V = C / Q;
+ float A = (H + min(frac(2 * H) / 4, frac(-2 * H) / 8)) * pi * 2;
+ float T;
+ H *= 6;
+ if(H <= 0.999)
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.g = T / (1 + T);
+ }
+ else if(H <= 1.001)
+ {
+ RGB.r = 1;
+ RGB.g = 1;
+ }
+ else if(H <= 2)
+ {
+ T = tan(A);
+ RGB.r = (1 + T) / T;
+ RGB.g = 1;
+ }
+ else if(H <= 3)
+ {
+ T = tan(A);
+ RGB.g = 1;
+ RGB.b = 1 + T;
+ }
+ else if(H <= 3.999)
+ {
+ T = tan(A);
+ RGB.g = 1 / (1 + T);
+ RGB.b = 1;
+ }
+ else if(H <= 4.001)
+ {
+ RGB.g = 0;
+ RGB.b = 1;
+ }
+ else if(H <= 5)
+ {
+ T = tan(A);
+ RGB.r = -1 / T;
+ RGB.b = 1;
+ }
+ else
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.b = -T;
+ }
+ RGB = RGB * V + U;
+ }
+ return RGB;
+ }
+
+ float3 RGBtoHCL(in float3 RGB)
+ {
+ float3 HCL;
+ float H = 0;
+ float U = min(RGB.r, min(RGB.g, RGB.b));
+ float V = max(RGB.r, max(RGB.g, RGB.b));
+ float Q = HCLgamma / HCLy0;
+ HCL.y = V - U;
+ if(HCL.y != 0)
+ {
+ H = atan2(RGB.g - RGB.b, RGB.r - RGB.g) / pi;
+ Q *= U / V;
+ }
+ Q = exp(Q);
+ HCL.x = frac(H / 2 - min(frac(H), frac(-H)) / 6);
+ HCL.y *= Q;
+ HCL.z = lerp(-U, V, Q) / (HCLmaxL * 2);
+ return HCL;
+ }
+
+ //HSL MODIFT
+ float3 ModifyViaHSL(float3 color, float3 HSLMod)
+ {
+ float3 colorHSL = RGBtoHSL(color);
+ colorHSL.r = frac(colorHSL.r + HSLMod.r);
+ colorHSL.g = saturate(colorHSL.g + HSLMod.g);
+ colorHSL.b = saturate(colorHSL.b + HSLMod.b);
+ return HSLtoRGB(colorHSL);
+ }
+
+ float3 hueShift(float3 col, float hueAdjust)
+ {
+ hueAdjust *= 2 * pi;
+ const float3 k = float3(0.57735, 0.57735, 0.57735);
+ half cosAngle = cos(hueAdjust);
+ return col * cosAngle + cross(k, col) * sin(hueAdjust) + k * dot(k, col) * (1.0 - cosAngle);
+ }
+
+ float3 poiSaturation(float3 In, float Saturation)
+ {
+ float luma = dot(In, float3(0.2126729, 0.7151522, 0.0721750));
+ return luma.xxx + Saturation.xxx * (In - luma.xxx);
+ }
+ // LCH
+ float xyzF(float t)
+ {
+ return lerp(pow(t, 1. / 3.), 7.787037 * t + 0.139731, step(t, 0.00885645));
+ }
+ float xyzR(float t)
+ {
+ return lerp(t * t * t, 0.1284185 * (t - 0.139731), step(t, 0.20689655));
+ }
+ float3 rgb2lch(in float3 c)
+ {
+ c = mul(float3x3(0.4124, 0.3576, 0.1805,
+ 0.2126, 0.7152, 0.0722,
+ 0.0193, 0.1192, 0.9505), c);
+ c.x = xyzF(c.x / wref.x);
+ c.y = xyzF(c.y / wref.y);
+ c.z = xyzF(c.z / wref.z);
+ float3 lab = float3(max(0., 116.0 * c.y - 16.0), 500.0 * (c.x - c.y), 200.0 * (c.y - c.z));
+ return float3(lab.x, length(float2(lab.y, lab.z)), atan2(lab.z, lab.y));
+ }
+
+ float3 lch2rgb(in float3 c)
+ {
+ c = float3(c.x, cos(c.z) * c.y, sin(c.z) * c.y);
+
+ float lg = 1. / 116. * (c.x + 16.);
+ float3 xyz = float3(wref.x * xyzR(lg + 0.002 * c.y),
+ wref.y * xyzR(lg),
+ wref.z * xyzR(lg - 0.005 * c.z));
+
+ float3 rgb = mul(float3x3(3.2406, -1.5372, -0.4986,
+ - 0.9689, 1.8758, 0.0415,
+ 0.0557, -0.2040, 1.0570), xyz);
+
+ return rgb;
+ }
+
+ //cheaply lerp around a circle
+ float lerpAng(in float a, in float b, in float x)
+ {
+ float ang = fmod(fmod((a - b), TAU) + pi * 3., TAU) - pi;
+ return ang * x + b;
+ }
+
+ //Linear interpolation between two colors in Lch space
+ float3 lerpLch(in float3 a, in float3 b, in float x)
+ {
+ float hue = lerpAng(a.z, b.z, x);
+ return float3(lerp(b.xy, a.xy, x), hue);
+ }
+
+ float3 poiExpensiveColorBlend(float3 col1, float3 col2, float alpha)
+ {
+ return lch2rgb(lerpLch(rgb2lch(col1), rgb2lch(col2), alpha));
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
new file mode 100644
index 00000000..873cb75d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4cc74997ef08b7c43b43002e4db4c30d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
new file mode 100644
index 00000000..cd354f85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
@@ -0,0 +1,249 @@
+#ifndef POI_DATA
+ #define POI_DATA
+
+ float _ParallaxBias;
+ float _LightingAdditiveLimitIntensity;
+ float _LightingAdditiveMaxIntensity;
+ POI_TEXTURE_NOSAMPLER(_BumpMap);
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailMask);
+ POI_TEXTURE_NOSAMPLER(_DetailNormalMap);
+ float _DetailNormalMapScale;
+ #endif
+ float _BumpScale;
+
+ void calculateAttenuation(v2f i)
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if defined(POINT) || defined(SPOT)
+ POI_LIGHT_ATTENUATION(attenuation, shadow, i, i.worldPos.xyz)
+ poiLight.additiveShadow = shadow;
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ poiLight.additiveShadow == 0;
+ #endif
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ // fix for rare bug where light atten is 0 when there is no directional light in the scene
+ #ifdef FORWARD_BASE_PASS
+ if (all(_LightColor0.rgb == 0.0))
+ {
+ attenuation = 1.0;
+ }
+ #endif
+ #endif
+ poiLight.attenuation = attenuation;
+ }
+
+ void calculateVertexLightingData(in v2f i)
+ {
+ #ifdef VERTEXLIGHT_ON
+ float4 toLightX = unity_4LightPosX0 - i.worldPos.x;
+ float4 toLightY = unity_4LightPosY0 - i.worldPos.y;
+ float4 toLightZ = unity_4LightPosZ0 - i.worldPos.z;
+ float4 lengthSq = 0;
+ lengthSq += toLightX * toLightX;
+ lengthSq += toLightY * toLightY;
+ lengthSq += toLightZ * toLightZ;
+
+ float4 lightAttenSq = unity_4LightAtten0;
+ float4 atten = 1.0 / (1.0 + lengthSq * lightAttenSq);
+ float4 vLightWeight = saturate(1 - (lengthSq * lightAttenSq / 25));
+ poiLight.vAttenuation = min(atten, vLightWeight * vLightWeight);
+
+ poiLight.vDotNL = 0;
+ poiLight.vDotNL += toLightX * poiMesh.normals[1].x;
+ poiLight.vDotNL += toLightY * poiMesh.normals[1].y;
+ poiLight.vDotNL += toLightZ * poiMesh.normals[1].z;
+
+ float4 corr = rsqrt(lengthSq);
+ poiLight.vDotNL = max(0, poiLight.vDotNL * corr);
+ poiLight.vAttenuationDotNL = poiLight.vAttenuation * poiLight.vDotNL;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vPosition[index] = float3(unity_4LightPosX0[index], unity_4LightPosY0[index], unity_4LightPosZ0[index]);
+
+ float3 vertexToLightSource = poiLight.vPosition[index] - poiMesh.worldPos;
+ poiLight.vDirection[index] = normalize(vertexToLightSource);
+ //poiLight.vAttenuationDotNL[index] = 1.0 / (1.0 + unity_4LightAtten0[index] * poiLight.vDotNL[index]);
+ poiLight.vColor[index] = unity_LightColor[index].rgb;
+
+ if (float(0) == 1)
+ {
+ float intensity = max(0.001, (0.299 * poiLight.vColor[index].r + 0.587 * poiLight.vColor[index].g + 0.114 * poiLight.vColor[index].b));
+ poiLight.vColor[index] = min(poiLight.vColor[index], poiLight.vColor[index] / (intensity / float(1)));
+ }
+ poiLight.vHalfDir[index] = Unity_SafeNormalize(poiLight.vDirection[index] + poiCam.viewDir);
+ poiLight.vDotNL[index] = dot(poiMesh.normals[1], -poiLight.vDirection[index]);
+ poiLight.vCorrectedDotNL[index] = .5 * (poiLight.vDotNL[index] + 1);
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.vDotLH[index] = saturate(dot(poiLight.vDirection[index], poiLight.vHalfDir[index]));
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.vDotNH[index] = saturate(dot(poiMesh.normals[1], poiLight.vHalfDir[index]));
+ #endif
+ }
+ #endif
+ }
+
+ void calculateLightingData(in v2f i)
+ {
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ float3 magic = max(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb;
+ poiLight.color = magic + normalLight;
+ #else
+ #ifdef FORWARD_ADD_PASS
+ poiLight.color = _LightColor0.rgb;
+
+
+ if (float(0) == 1)
+ {
+ float additiveLightIntensity = max(0.001, (0.299 * poiLight.color.r + 0.587 * poiLight.color.g + 0.114 * poiLight.color.b));
+ poiLight.color = min(poiLight.color, poiLight.color / (additiveLightIntensity / float(1)));
+ }
+ #endif
+ #endif
+
+ #ifdef FORWARD_BASE_PASS
+ poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ #else
+ #if defined(POINT) || defined(SPOT)
+ poiLight.direction = normalize(_WorldSpaceLightPos0.xyz - i.worldPos);
+ #else
+ poiLight.direction = _WorldSpaceLightPos0;
+ #endif
+ #endif
+
+ poiLight.halfDir = normalize(poiLight.direction + poiCam.viewDir);
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.dotNH = saturate(dot(poiMesh.normals[1], poiLight.halfDir));
+ #endif
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.dotLH = saturate(dot(poiLight.direction, poiLight.halfDir));
+ #endif
+
+ poiLight.nDotV = dot(poiMesh.normals[1], poiCam.viewDir);
+ poiLight.N0DotV = dot(poiMesh.normals[0], poiCam.viewDir);
+ poiLight.nDotL = dot(poiMesh.normals[1], poiLight.direction);
+ poiLight.nDotH = dot(poiMesh.normals[1], poiLight.halfDir);
+ poiLight.lDotv = dot(poiLight.direction, poiCam.viewDir);
+ poiLight.lDotH = dot(poiLight.direction, poiLight.halfDir);
+ }
+
+ float3 CreateBinormal(float3 normal, float3 tangent, float binormalSign)
+ {
+ return cross(normal, tangent.xyz) * (binormalSign * unity_WorldTransformParams.w);
+ }
+
+ void InitializeMeshData(inout v2f i, uint facing)
+ {
+ poiMesh.isFrontFace = facing;
+ poiMesh.normals[0] = normalize(i.normal);
+ poiMesh.binormal = CreateBinormal(i.normal, i.tangent.xyz, i.tangent.w);
+ poiMesh.tangent = i.tangent.xyz;
+
+ #ifndef OUTLINE
+ if(!poiMesh.isFrontFace)
+ {
+ poiMesh.normals[0] *= -1;
+ poiMesh.tangent *= -1;
+ poiMesh.binormal *= -1;
+ }
+ #endif
+
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+ poiMesh.barycentricCoordinates = i.barycentricCoordinates;
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ #ifdef POI_UV_DISTORTION
+ poiMesh.uv[4] = calculateDistortionUV(i.uv0.xy);
+ #else
+ poiMesh.uv[4] = poiMesh.uv[0];
+ #endif
+
+ poiMesh.vertexColor = i.vertexColor;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ poiMesh.lightmapUV = i.lightmapUV;
+ #endif
+ poiMesh.modelPos = i.modelPos;
+
+ #ifdef FUR
+ poiMesh.furAlpha = i.furAlpha;
+ #endif
+ }
+
+ void initializeCamera(v2f i)
+ {
+ poiCam.viewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
+ poiCam.forwardDir = getCameraForward();
+ poiCam.worldPos = _WorldSpaceCameraPos;
+ poiCam.distanceToModel = distance(poiMesh.modelPos, poiCam.worldPos);
+ poiCam.distanceToVert = distance(poiMesh.worldPos, poiCam.worldPos);
+ poiCam.grabPos = i.grabPos;
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ poiCam.clipPos = i.pos;
+ #if defined(GRAIN)
+ poiCam.worldDirection = i.worldDirection;
+ #endif
+
+ poiCam.tangentViewDir = normalize(i.tangentViewDir);
+ poiCam.tangentViewDir.xy /= (poiCam.tangentViewDir.z + float(0.42));
+ }
+
+ void calculateTangentData()
+ {
+ poiTData.tangentTransform = float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]);
+ poiTData.tangentToWorld = transpose(float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]));
+ }
+
+ void CalculateReflectionData()
+ {
+ #if defined(_METALLICGLOSSMAP) || defined(_COLORCOLOR_ON)
+ poiCam.reflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[1]);
+ poiCam.vertexReflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[0]);
+ #endif
+ }
+
+ void calculateNormals(inout half3 detailMask)
+ {
+ half3 mainNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_BumpMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ #ifdef FINALPASS
+ detailMask = POI2D_SAMPLER_PAN(_DetailMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(1) > 0)
+ {
+ half3 detailNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_DetailNormalMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1) * detailMask.g);
+ poiMesh.tangentSpaceNormal = BlendNormals(mainNormal, detailNormal);
+ }
+ else
+ {
+ poiMesh.tangentSpaceNormal = mainNormal;
+ }
+ #else
+ poiMesh.tangentSpaceNormal = mainNormal;
+ #endif
+
+ #ifdef POI_RGBMASK
+ calculateRGBNormals(poiMesh.tangentSpaceNormal);
+ #endif
+
+ poiMesh.normals[1] = normalize(
+ poiMesh.tangentSpaceNormal.x * poiMesh.tangent +
+ poiMesh.tangentSpaceNormal.y * poiMesh.binormal +
+ poiMesh.tangentSpaceNormal.z * poiMesh.normals[0]
+ );
+
+ poiCam.viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[1]));
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
new file mode 100644
index 00000000..96520d0e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c541a8dcd8092c64191ef803b0b69a34
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
new file mode 100644
index 00000000..125d2cd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
@@ -0,0 +1,107 @@
+#ifndef POI_DEBUG
+ #define POI_DEBUG
+
+ float _DebugEnabled;
+ float _DebugMeshData;
+ float _DebugLightingData;
+ float _DebugCameraData;
+
+ void displayDebugInfo(inout float4 finalColor)
+ {
+
+ if (float(0) != 0)
+ {
+ //Mesh Data
+ if (float(0) == 1)
+ {
+ finalColor.rgb = poiMesh.normals[0];
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiMesh.normals[1];
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiMesh.tangent;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiMesh.binormal;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiMesh.localPos;
+ return;
+ }
+
+ #ifdef POI_LIGHTING
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiLight.attenuation;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiLight.directLighting;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiLight.indirectLighting;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiLight.lightMap;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiLight.rampedLightMap;
+ return;
+ }
+ else if(float(0) == 6)
+ {
+ finalColor.rgb = poiLight.finalLighting;
+ return;
+ }
+ else if(float(0) == 7)
+ {
+ finalColor.rgb = poiLight.nDotL;
+ return;
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiCam.viewDir;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiCam.tangentViewDir;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiCam.forwardDir;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiCam.worldPos;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiCam.viewDotNormal;
+ return;
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
new file mode 100644
index 00000000..480c0a6a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 532c75de8a4230f45b3353d2444f60ae
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
new file mode 100644
index 00000000..280fcbc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_DECAL
+ #define POI_DECAL
+
+ POI_TEXTURE_NOSAMPLER(_DecalTexture);
+ POI_TEXTURE_NOSAMPLER(_DecalMask);
+ float4 _DecalColor;
+ fixed _DecalTiled;
+ fixed _DecalBlendAdd;
+ fixed _DecalBlendMultiply;
+ fixed _DecalBlendReplace;
+ half _DecalRotation;
+ half2 _DecalScale;
+ half2 _DecalPosition;
+ half _DecalRotationSpeed;
+ float _DecalEmissionStrength;
+
+ void applyDecal(inout float4 albedo, inout float3 decalEmission)
+ {
+ float2 uv = poiMesh.uv[float(0)];
+ float2 decalCenter = float4(0.5,0.5,0,0);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - decalCenter.x) * cs - (uv.y - decalCenter.y) * sn + decalCenter.x, (uv.x - decalCenter.x) * sn + (uv.y - decalCenter.y) * cs + decalCenter.y);
+ uv = remap(uv, float2(0, 0) - float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float2(0, 0), float2(1, 1));
+
+ half decalAlpha = 1;
+ //float2 uv = TRANSFORM_TEX(poiMesh.uv[float(0)], _DecalTexture) + _Time.x * float4(0,0,0,0);
+ float4 decalColor = POI2D_SAMPLER_PAN(_DecalTexture, _MainTex, uv, float4(0,0,0,0)) * float4(1,1,1,1);
+ decalAlpha *= POI2D_SAMPLER_PAN(_DecalMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if (!float(0))
+ {
+ if(uv.x > 1 || uv.y > 1 || uv.x < 0 || uv.y < 0)
+ {
+ decalAlpha = 0;
+ }
+ }
+
+ if(float(0))
+ {
+ albedo.rgb = lerp(albedo.rgb, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb *= lerp(1, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb += decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+ albedo = saturate(albedo);
+ decalEmission = decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
new file mode 100644
index 00000000..ea871d8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 5620c2aa85855314ea924f2c21fe8f76
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
new file mode 100644
index 00000000..9b70067a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
@@ -0,0 +1,21 @@
+#ifndef POI_DEFINES
+ #define POI_DEFINES
+
+ #define DielectricSpec float4(0.04, 0.04, 0.04, 1.0 - 0.04)
+
+ #ifdef _SPECGLOSSMAP // Specular
+ #ifndef POI_VAR_DOTNH
+ #define POI_VAR_DOTNH
+ #endif
+ #ifndef POI_VAR_DOTLH
+ #define POI_VAR_DOTLH
+ #endif
+ #endif
+
+ #ifdef VIGNETTE_MASKED // Lighting
+ #ifndef POI_VAR_DOTNL
+ #define POI_VAR_DOTNL
+ #endif
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
new file mode 100644
index 00000000..13d5babe
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: afe7a4979514d744c9bed4f277262181
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
new file mode 100644
index 00000000..828460bc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
@@ -0,0 +1,112 @@
+#ifndef POI_DEPTH_COLOR
+ #define POI_DEPTH_COLOR
+
+ float4 _DepthGlowColor;
+ float _DepthGlowEmission;
+ float _FadeLength;
+ float _DepthAlphaMin;
+ float _DepthAlphaMax;
+ POI_TEXTURE_NOSAMPLER(_DepthGradient);
+ POI_TEXTURE_NOSAMPLER(_DepthMask);
+ float _DepthGradientTextureUV;
+ float _DepthGradientBlend;
+
+ /*
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, float4 worldDirection, float4 clipPos)
+ {
+ float3 touchEmission = 0;
+ if (!IsInMirror())
+ {
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+ float depth = DecodeFloatRG(tex2Dproj(_CameraDepthTexture, worldDirection));
+ depth = Linear01Depth(depth);
+ if(depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(clipPos.z));
+ float intersect = 0;
+ if(diff > 0)
+ {
+ intersect = clamp(1 - smoothstep(0, _ProjectionParams.w * fadeLength, diff), 0, 1);
+ }
+ half4 depthGradient = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthGradient, _MainTex, intersect);
+ half3 depthMask = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthMask, _MainTex, poiMesh.uv[0]);
+ half3 depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+ }
+ }
+ depthTouchEmission = touchEmission;
+ }
+ */
+
+ inline float CorrectedLinearEyeDepth(float z, float B)
+ {
+ return 1.0 / (z / PM._34 + B);
+ }
+
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, in float4 worldDirection)
+ {
+ float3 touchEmission = 0;
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+
+ float perspectiveDivide = 1.0f / poiCam.clipPos.w;
+ float4 direction = worldDirection * perspectiveDivide;
+ float2 screenPos = poiCam.grabPos.xy * perspectiveDivide;
+ float z = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, screenPos);
+
+ #if UNITY_REVERSED_Z
+ if (z == 0)
+ #else
+ if(z == 1)
+ #endif
+ return;
+
+ float depth = CorrectedLinearEyeDepth(z, direction.w);
+ float3 worldpos = direction * depth + _WorldSpaceCameraPos.xyz;
+ /*
+ finalColor.rgb = frac(worldpos);
+ return;
+ */
+
+ float diff = distance(worldpos, poiMesh.worldPos);
+ float intersect = 0;
+ intersect = clamp(1 - smoothstep(0, fadeLength, diff), 0, 1);
+ half3 depthMask = POI2D_SAMPLER_PAN(_DepthMask, _MainTex, poiMesh.uv[_DepthMaskUV], _DepthMaskPan);
+
+ half4 depthGradient = 0;
+ half3 depthColor = 0;
+
+
+ if (_DepthGradientTextureUV == 0)
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, float2(intersect, intersect), _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ }
+ else
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, poiMesh.uv[_DepthGradientUV], _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb * intersect;
+ }
+
+
+ if(_DepthGradientBlend == 0) // rpelace
+ {
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ }
+ else if(_DepthGradientBlend == 1) // add
+ {
+ finalColor.rgb += depthColor * intersect * depthMask;
+ }
+ else if(_DepthGradientBlend == 2) // multiply
+ {
+ finalColor.rgb *= lerp(1, depthColor, intersect * depthMask);
+ }
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect * depthMask);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+
+ depthTouchEmission = touchEmission;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
new file mode 100644
index 00000000..d29639ce
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d3a31e83744fd3e4e8f76202c55b8edb
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
new file mode 100644
index 00000000..13175f00
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
@@ -0,0 +1,171 @@
+#ifndef POI_DISSOLVE
+ #define POI_DISSOLVE
+
+ float _DissolveType;
+ float _DissolveEdgeWidth;
+ float4 _DissolveEdgeColor;
+ sampler2D _DissolveEdgeGradient; float4 _DissolveEdgeGradient_ST;
+ float _DissolveEdgeEmission;
+ float4 _DissolveTextureColor;
+
+ POI_TEXTURE_NOSAMPLER(_DissolveToTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveNoiseTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveDetailNoise);
+ POI_TEXTURE_NOSAMPLER(_DissolveMask);
+
+ float _DissolveMaskInvert;
+ float _DissolveAlpha;
+ float _ContinuousDissolve;
+ float _DissolveDetailStrength;
+ float _DissolveEdgeHardness;
+ float _DissolveInvertNoise;
+ float _DissolveInvertDetailNoise;
+ float _DissolveToEmissionStrength;
+
+ // Point to Point
+ float _DissolveP2PWorldLocal;
+ float _DissolveP2PEdgeLength;
+ float4 _DissolveStartPoint;
+ float4 _DissolveEndPoint;
+
+ // World Dissolve
+ float _DissolveWorldShape;
+ float4 _DissolveShapePosition;
+ float4 _DissolveShapeRotation;
+ float _DissolveShapeScale;
+ float _DissolveInvertShape;
+ float _DissolveShapeEdgeLength;
+
+ float _DissolveAlpha0;
+ float _DissolveAlpha1;
+ float _DissolveAlpha2;
+ float _DissolveAlpha3;
+ float _DissolveAlpha4;
+ float _DissolveAlpha5;
+ float _DissolveAlpha6;
+ float _DissolveAlpha7;
+ float _DissolveAlpha8;
+ float _DissolveAlpha9;
+
+ // Masking
+ float _DissolveEmissionSide;
+ float _DissolveEmission1Side;
+ float _DissolveUseVertexColors;
+
+ float4 edgeColor;
+ float edgeAlpha;
+ float dissolveAlpha;
+ float4 dissolveToTexture;
+ //Globals
+
+
+ void calculateDissolve(inout float4 albedo, inout float3 dissolveEmission)
+ {
+
+ float dissolveMask = POI2D_SAMPLER_PAN(_DissolveMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+
+ if (float(0))
+ {
+ // Vertex Color Imprecision hype
+ dissolveMask = ceil(poiMesh.vertexColor.g * 100000) / 100000;
+ }
+
+ dissolveToTexture = POI2D_SAMPLER_PAN(_DissolveToTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ float dissolveNoiseTexture = POI2D_SAMPLER_PAN(_DissolveNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ float da = float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0);
+ da = saturate(da);
+
+ float dds = float(0.1);
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskDissolve != 4)
+ {
+ dissolveMask *= blackLightMask[_BlackLightMaskDissolve];
+ }
+ #endif
+
+ if(float(0))
+ {
+ dissolveMask = 1 - dissolveMask;
+ }
+
+ float dissolveDetailNoise = POI2D_SAMPLER_PAN(_DissolveDetailNoise, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(0))
+ {
+ dissolveNoiseTexture = 1 - dissolveNoiseTexture;
+ }
+ if(float(0))
+ {
+ dissolveDetailNoise = 1 - dissolveDetailNoise;
+ }
+ if(float(0) != 0)
+ {
+ da = sin(_Time.y * float(0)) * .5 + .5;
+ }
+ da *= dissolveMask;
+ dissolveAlpha = da;
+ edgeAlpha = 0;
+
+
+ if(float(1) == 1) // Basic
+ {
+ da = remap(da, 0, 1, -float(0.025), 1);
+ dissolveAlpha = da;
+ //Adjust detail strength to avoid artifacts
+ dds *= smoothstep(1, .99, da);
+ float noise = saturate(dissolveNoiseTexture - dissolveDetailNoise * dds);
+
+ noise = saturate(noise + 0.001);
+ //noise = remap(noise, 0, 1, float(0.025), 1 - float(0.025));
+ dissolveAlpha = dissolveAlpha >= noise;
+ edgeAlpha = remapClamped(noise, da + float(0.025), da, 0, 1) * (1 - dissolveAlpha);
+ }
+ else if (float(1) == 2) // Point to Point
+ {
+ float3 direction;
+ float3 currentPos;
+ float distanceTo = 0;
+ direction = normalize(float4(0,1,0,0) - float4(0,-1,0,0));
+ currentPos = lerp(float4(0,-1,0,0), float4(0,1,0,0), dissolveAlpha);
+ if (float(0) == 0)
+ {
+ distanceTo = dot(poiMesh.localPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ else
+ {
+ distanceTo = dot(poiMesh.worldPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ }
+
+ albedo = lerp(albedo, dissolveToTexture, dissolveAlpha);
+
+
+ if(float(0.025))
+ {
+ edgeColor = tex2D(_DissolveEdgeGradient, TRANSFORM_TEX(float2(edgeAlpha, edgeAlpha), _DissolveEdgeGradient)) * float4(1,1,1,1);
+ albedo.rgb = lerp(albedo.rgb, edgeColor.rgb, smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+ dissolveEmission = lerp(0, dissolveToTexture * float(0), dissolveAlpha) + lerp(0, edgeColor.rgb * float(0), smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
new file mode 100644
index 00000000..7faa2d7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c2964ee12e3e7b944b90bd5de0561598
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
new file mode 100644
index 00000000..91efad39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_DITHERING
+ #define POI_DITHERING
+ fixed _DitheringEnabled;
+ fixed _DitherGradient;
+
+ half calcDither(half2 grabPos)
+ {
+ half dither = Dither8x8Bayer(fmod(grabPos.x, 8), fmod(grabPos.y, 8));
+ return dither;
+ }
+
+ #ifndef POI_SHADOW
+ void applyDithering(inout float4 finalColor)
+ {
+
+ if (float(0))
+ {
+ half dither = calcDither(poiCam.screenUV.xy);
+ finalColor.a = finalColor.a - (dither * (1 - finalColor.a) * float(0.1));
+ }
+ }
+ #else
+ void applyShadowDithering(inout float alpha, float2 screenUV)
+ {
+
+ if(float(0))
+ {
+ half dither = calcDither(screenUV);
+ alpha = alpha - (dither * (1 - alpha) * float(0.1));
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
new file mode 100644
index 00000000..d66fad9b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9a96f0f290d74c346bd072ac02c9873b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
new file mode 100644
index 00000000..4888c2ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
@@ -0,0 +1,240 @@
+#ifndef POI_EMISSION
+ #define POI_EMISSION
+
+ float4 _EmissionColor;
+ POI_TEXTURE_NOSAMPLER(_EmissionMap);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve); float4 _EmissionScrollingCurve_ST;
+ float _EmissionBaseColorAsMap;
+ float _EmissionStrength;
+ float _EnableEmission;
+ float _EmissionHueShift;
+ float4 _EmissiveScroll_Direction;
+ float _EmissiveScroll_Width;
+ float _EmissiveScroll_Velocity;
+ float _EmissiveScroll_Interval;
+ float _EmissionBlinkingEnabled;
+ float _EmissiveBlink_Min;
+ float _EmissiveBlink_Max;
+ float _EmissiveBlink_Velocity;
+ float _ScrollingEmission;
+ float _EnableGITDEmission;
+ float _GITDEMinEmissionMultiplier;
+ float _GITDEMaxEmissionMultiplier;
+ float _GITDEMinLight;
+ float _GITDEMaxLight;
+ float _GITDEWorldOrMesh;
+ float _EmissionCenterOutEnabled;
+ float _EmissionCenterOutSpeed;
+ float _EmissionHueShiftEnabled;
+ float _EmissionBlinkingOffset;
+ float _EmissionScrollingOffset;
+
+ float4 _EmissionColor1;
+ #ifdef EFFECT_HUE_VARIATION
+ POI_TEXTURE_NOSAMPLER(_EmissionMap1);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask1);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve1); float4 _EmissionScrollingCurve1_ST;
+ #endif
+ float _EmissionBaseColorAsMap1;
+ float _EmissionStrength1;
+ float _EnableEmission1;
+ float _EmissionHueShift1;
+ float4 _EmissiveScroll_Direction1;
+ float _EmissiveScroll_Width1;
+ float _EmissiveScroll_Velocity1;
+ float _EmissiveScroll_Interval1;
+ float _EmissionBlinkingEnabled1;
+ float _EmissiveBlink_Min1;
+ float _EmissiveBlink_Max1;
+ float _EmissiveBlink_Velocity1;
+ float _ScrollingEmission1;
+ float _EnableGITDEmission1;
+ float _GITDEMinEmissionMultiplier1;
+ float _GITDEMaxEmissionMultiplier1;
+ float _GITDEMinLight1;
+ float _GITDEMaxLight1;
+ float _GITDEWorldOrMesh1;
+ float _EmissionCenterOutEnabled1;
+ float _EmissionCenterOutSpeed1;
+ float _EmissionHueShiftEnabled1;
+ float _EmissionBlinkingOffset1;
+ float _EmissionScrollingOffset1;
+
+ float _EmissionReplace;
+
+ float _EmissionScrollingVertexColor;
+ float _EmissionScrollingVertexColor1;
+
+ float _EmissionScrollingUseCurve;
+ float _EmissionScrollingUseCurve1;
+
+ float calculateGlowInTheDark(in float minLight, in float maxLight, in float minEmissionMultiplier, in float maxEmissionMultiplier, in float enabled)
+ {
+ float glowInTheDarkMultiplier = 1;
+
+ if (enabled)
+ {
+ #ifdef POI_LIGHTING
+ float3 lightValue = float(0) ? poiLight.finalLighting.rgb: poiLight.directLighting.rgb;
+ float gitdeAlpha = (clamp(poiMax(lightValue), minLight, maxLight) - minLight) / (maxLight - minLight);
+ glowInTheDarkMultiplier = lerp(minEmissionMultiplier, maxEmissionMultiplier, gitdeAlpha);
+ #endif
+ }
+ return glowInTheDarkMultiplier;
+ }
+
+ float calculateScrollingEmission(in float3 direction, in float velocity, in float interval, in float scrollWidth, float offset, float3 position)
+ {
+ float phase = 0;
+ phase = dot(position, direction);
+ phase -= (_Time.y + offset) * velocity;
+ phase /= interval;
+ phase -= floor(phase);
+ phase = saturate(phase);
+ return(pow(phase, scrollWidth) + pow(1 - phase, scrollWidth * 4)) * 0.5;
+ }
+
+ float calculateBlinkingEmission(in float blinkMin, in float blinkMax, in float blinkVelocity, float offset)
+ {
+ float amplitude = (blinkMax - blinkMin) * 0.5f;
+ float base = blinkMin + amplitude;
+ return sin((_Time.y + offset) * blinkVelocity) * amplitude + base;
+ }
+
+ float3 calculateEmissionNew(in float4 baseColor, inout float4 finalColor)
+ {
+ // First Emission
+ float3 emission0 = 0;
+ float emissionStrength0 = float(0);
+ float3 emissionColor0 = 0;
+
+ float glowInTheDarkMultiplier0 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor0 = POI2D_SAMPLER_PAN(_EmissionMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+ else
+ {
+ emissionColor0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve) + (dot(pos, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength0 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos);
+ }
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor0 = hueShift(emissionColor0, float(0) * float(0));
+ float emissionMask0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask) + _Time.x * float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission != 4)
+ {
+ emissionMask0 *= blackLightMask[_BlackLightMaskEmission];
+ }
+ #endif
+
+ emissionStrength0 *= glowInTheDarkMultiplier0 * emissionMask0;
+ emission0 = emissionStrength0 * emissionColor0;
+
+ #ifdef POI_DISSOLVE
+
+ if(float(2) != 2)
+ {
+ emission0 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+
+ // Second Emission
+ float3 emission1 = 0;
+ float emissionStrength1 = 0;
+ float3 emissionColor1 = 0;
+
+ #ifdef EFFECT_HUE_VARIATION
+ emissionStrength1 = float(0);
+ float glowInTheDarkMultiplier1 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor1 = POI2D_SAMPLER_PAN(_EmissionMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ emissionColor1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap1, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)).rgb * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos1 = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos1 = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength1 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve1) + (dot(pos1, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength1 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos1);
+ }
+ }
+
+ if(float(0))
+ {
+ emissionStrength1 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor1 = hueShift(emissionColor1, float(0) * float(0));
+ float emissionMask1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask1) + _Time.x * float4(0,0,0,0));
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission2 != 4)
+ {
+ emissionMask1 *= blackLightMask[_BlackLightMaskEmission2];
+ }
+ #endif
+ emissionStrength1 *= glowInTheDarkMultiplier1 * emissionMask1;
+ emission1 = emissionStrength1 * emissionColor1;
+
+ #ifdef POI_DISSOLVE
+ if(float(2) != 2)
+ {
+ emission1 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+ #endif
+ finalColor.rgb = lerp(finalColor.rgb, saturate(emissionColor0 + emissionColor1), saturate(emissionStrength0 + emissionStrength1) * float(0) * poiMax(emission0 + emission1));
+
+ return emission0 + emission1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
new file mode 100644
index 00000000..3b2e133b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1a3b1471e5a652d4f8ea0d090dc3973f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
new file mode 100644
index 00000000..1e9188ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
@@ -0,0 +1,43 @@
+#ifndef POI_ENVIRONMENTAL_RIM
+ #define POI_ENVIRONMENTAL_RIM
+
+ //enviro rim
+ float _EnableEnvironmentalRim;
+ POI_TEXTURE_NOSAMPLER(_RimEnviroMask);
+ float _RimEnviroBlur;
+ float _RimEnviroMinBrightness;
+ float _RimEnviroWidth;
+ float _RimEnviroSharpness;
+ float _RimEnviroIntensity;
+
+ float3 calculateEnvironmentalRimLighting(in float4 albedo)
+ {
+ float enviroRimAlpha = saturate(1 - smoothstep(min(float(0), float(0.45)), float(0.45), poiCam.viewDotNormal));
+ float(0.7) *= 1.7 - 0.7 * float(0.7);
+
+ float3 enviroRimColor = 0;
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if (interpolator < 0.99999)
+ {
+ //Probe 1
+ float4 reflectionData0 = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor0 = DecodeHDR(reflectionData0, unity_SpecCube0_HDR);
+
+ //Probe 2
+ float4 reflectionData1 = UNITY_SAMPLE_TEXCUBE_SAMPLER_LOD(unity_SpecCube1, unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor1 = DecodeHDR(reflectionData1, unity_SpecCube1_HDR);
+
+ enviroRimColor = lerp(reflectionColor1, reflectionColor0, interpolator);
+ }
+ else
+ {
+ float4 reflectionData = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ enviroRimColor = DecodeHDR(reflectionData, unity_SpecCube0_HDR);
+ }
+
+ half enviroMask = poiMax(POI2D_SAMPLER_PAN(_RimEnviroMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb);
+ return lerp(0, max(0, (enviroRimColor - float(0)) * albedo.rgb), enviroRimAlpha).rgb * enviroMask * float(1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
new file mode 100644
index 00000000..dc7482b8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d4e26b7b5aaea56438bc209ccdc0f15e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
new file mode 100644
index 00000000..0ed89b59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
@@ -0,0 +1,153 @@
+#ifndef POI_FLIPBOOK
+ #define POI_FLIPBOOK
+
+ UNITY_DECLARE_TEX2DARRAY(_FlipbookTexArray); float4 _FlipbookTexArray_ST;
+ float4 _FlipbookColor;
+ float _FlipbookFPS;
+ float _FlipbookTotalFrames;
+ float4 _FlipbookScaleOffset;
+ float _FlipbookTiled;
+ float _FlipbookCurrentFrame;
+ float _FlipbookEmissionStrength;
+ float _FlipbookRotation;
+ float _EnableFlipbook;
+ float _FlipbookTexArrayUV;
+ float _FlipbookAlphaControlsFinalAlpha;
+ float _FlipbookRotationSpeed;
+ float _FlipbookIntensityControlsAlpha;
+ float _FlipbookColorReplaces;
+ float2 _FlipbookTexArrayPan;
+
+ // blending
+ float _FlipbookReplace;
+ float _FlipbookMultiply;
+ float _FlipbookAdd;
+ POI_TEXTURE_NOSAMPLER(_FlipbookMask);
+
+ // anim
+ float _FlipbookMovementType;
+ float4 _FlipbookStartEndOffset;
+ float _FlipbookMovementSpeed;
+
+ // Global
+ float4 flipBookPixel;
+ float4 flipBookPixelMultiply;
+ float flipBookMask;
+
+ #ifndef POI_SHADOW
+
+ void applyFlipbook(inout float4 finalColor, inout float3 flipbookEmission)
+ {
+ flipBookMask = POI2D_SAMPLER_PAN(_FlipbookMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float2 uv = frac(poiMesh.uv[float(0)]);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ // 2d rotation
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ if (float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipBookPixel = 0;
+ return;
+ }
+ }
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ flipBookPixel = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipBookPixel.a = poiMax(flipBookPixel.rgb);
+ }
+
+ if(float(0))
+ {
+ flipBookPixel.rgb = float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ flipBookPixel.rgb *= float4(1,1,1,1).rgb;
+ }
+
+ #ifdef POI_BLACKLIGHT
+
+ if(_BlackLightMaskFlipbook != 4)
+ {
+ flipBookMask *= blackLightMask[_BlackLightMaskFlipbook];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * float(1) * flipBookMask);
+ finalColor.rgb = finalColor + flipBookPixel.rgb * float(0) * flipBookMask;
+ finalColor.rgb = finalColor * lerp(1, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * flipBookMask * float(0));
+
+
+ if(float(0))
+ {
+ finalColor.a = lerp(finalColor.a, flipBookPixel.a * float4(1,1,1,1).a, flipBookMask);
+ }
+ flipbookEmission = lerp(0, flipBookPixel.rgb * float(0), flipBookPixel.a * float4(1,1,1,1).a * flipBookMask);
+ }
+
+ #else
+
+ float applyFlipbookAlphaToShadow(float2 uv)
+ {
+
+ if(float(0))
+ {
+ float flipbookShadowAlpha = 0;
+
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float theta = radians(float(0));
+
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ half4 flipbookColor = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipbookColor.a = poiMax(flipbookColor.rgb);
+ }
+
+
+ if(float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipbookColor.a = 0;
+ }
+ }
+ return flipbookColor.a * float4(1,1,1,1).a;
+ }
+ return 1;
+ }
+
+ #endif
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
new file mode 100644
index 00000000..adfee471
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: bcd940095d2f05d4fae23ffa159a693c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
new file mode 100644
index 00000000..aa950e7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
@@ -0,0 +1,376 @@
+#ifndef POIFRAG
+ #define POIFRAG
+
+ float _MainEmissionStrength;
+ float _IgnoreFog;
+ half _GIEmissionMultiplier;
+ float _IridescenceTime;
+ float _AlphaToMask;
+ float _ForceOpaque;
+ float _commentIfZero_EnableGrabpass;
+ float _AlphaPremultiply;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+ float _commentIfZero_LightingAdditiveEnable;
+
+ float4 frag(v2f i, uint facing: SV_IsFrontFace): SV_Target
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if !defined(POI_LIGHTING)
+ return 0;
+ #endif
+ #if defined(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A) && defined(DIRECTIONAL)
+ return 0;
+ #endif
+ #endif
+ #ifdef FORWARD_ADD_PASS
+
+ if (float(1) == 0)
+ {
+ return 0;
+ }
+ #endif
+ UNITY_SETUP_INSTANCE_ID(i);
+ // Color
+ float4 albedo = 1;
+ float4 finalColor = 1;
+
+ // Lighting
+ float bakedCubemap = 0; // Whether or not metallic should run before or after lighting multiplication
+ float3 finalSpecular0 = 0;
+ float3 finalSpecular1 = 0;
+ float3 finalSSS = 0;
+ fixed lightingAlpha = 1;
+ float3 finalEnvironmentalRim = 0;
+
+ // Emissions
+ float3 finalEmission = 0;
+ float3 finalLighting = 1;
+ float3 IridescenceEmission = 0;
+ float3 spawnInEmission = 0;
+ float3 voronoiEmission = 0;
+ float3 matcapEmission = 0;
+ float3 depthTouchEmission = 0;
+ float3 decalEmission = 0;
+ float3 glitterEmission = 0;
+ float3 panosphereEmission = 0;
+ float3 backFaceEmission = 0;
+ float3 dissolveEmission = 0;
+ float3 rimLightEmission = 0;
+ float3 flipbookEmission = 0;
+ float3 textOverlayEmission = 0;
+ float3 videoEmission = 0;
+ /**********************************************************************
+ Initialize the base data that's needed everywhere else in the shader
+ **********************************************************************/
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+
+ #ifdef POI_BLACKLIGHT
+ createBlackLightMask();
+
+ if (_BlackLightMaskDebug)
+ {
+ return float4(blackLightMask.rgb, 1);
+ }
+ #endif
+
+ // This has to happen in the initializbecause it alters UV data globally
+ #ifdef POI_PARALLAX
+ calculateandApplyParallax();
+ #endif
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+ calculateVertexLightingData(i);
+ /**********************************************************************
+ Calculate Light Maps
+ **********************************************************************/
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ /**********************************************************************
+ Calculate Color Data
+ **********************************************************************/
+
+ initTextureData(albedo, mainTexture, backFaceEmission, dissolveEmission, detailMask);
+
+ #ifdef POI_DECAL
+ applyDecal(albedo, decalEmission);
+ #endif
+
+
+ #ifdef POI_IRIDESCENCE
+
+ if (_IridescenceTime == 0)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VORONOI
+ applyVoronoi(albedo, voronoiEmission);
+ #endif
+
+ #ifdef POI_MSDF
+ ApplyTextOverlayColor(albedo, textOverlayEmission);
+ #endif
+
+ #ifdef POI_ENVIRONMENTAL_RIM
+ finalEnvironmentalRim = calculateEnvironmentalRimLighting(albedo);
+ #endif
+
+ #if defined(POI_METAL) || defined(POI_CLEARCOAT)
+ CalculateReflectionData();
+ #endif
+
+ #ifdef POI_DATA
+ distanceFade(albedo);
+ #endif
+
+ #ifdef POI_RANDOM
+ albedo.a *= i.angleAlpha;
+ #endif
+
+ #ifdef MATCAP
+ applyMatcap(albedo, matcapEmission);
+ #endif
+
+ #ifdef PANOSPHERE
+ applyPanosphereColor(albedo, panosphereEmission);
+ #endif
+
+ #ifdef POI_FLIPBOOK
+ applyFlipbook(albedo, flipbookEmission);
+ #endif
+
+ #ifdef POI_GLITTER
+ applyGlitter(albedo, glitterEmission);
+ #endif
+
+ #ifdef POI_RIM
+ applyRimLighting(albedo, rimLightEmission);
+ #endif
+
+ #ifdef POI_DEPTH_COLOR
+ applyDepthColor(albedo, depthTouchEmission, finalEmission, i.worldDirection);
+ #endif
+
+ #ifdef POI_IRIDESCENCE
+
+ if(_IridescenceTime == 1)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VIDEO
+ applyScreenEffect(albedo, videoEmission);
+ #endif
+
+ applySpawnIn(albedo, spawnInEmission, poiMesh.uv[0], poiMesh.localPos);
+
+ /**********************************************************************
+ Handle a few alpha options
+ **********************************************************************/
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 0)
+ {
+ applyDithering(albedo);
+ }
+ }
+
+ albedo.a = max(float(0), albedo.a);
+
+
+ if(float(0) >= 1)
+ {
+ clip(albedo.a - float(0.5));
+ }
+
+
+ if(float(0))
+ {
+ albedo.rgb *= saturate(albedo.a + 0.0000000001);
+ }
+
+ /**********************************************************************
+ Lighting Time :)
+ **********************************************************************/
+
+ #ifdef POI_LIGHTING
+ finalLighting = calculateFinalLighting(albedo.rgb, finalColor);
+
+ #ifdef SUBSURFACE
+ finalSSS = calculateSubsurfaceScattering();
+ #endif
+ #endif
+
+ float4 finalColorBeforeLighting = albedo;
+ finalColor = finalColorBeforeLighting;
+
+ #ifdef POI_SPECULAR
+ finalSpecular0 = calculateSpecular(finalColorBeforeLighting);
+ #endif
+ #ifdef POI_PARALLAX
+ calculateAndApplyInternalParallax(finalColor);
+ #endif
+
+ #ifdef POI_ALPHA_TO_COVERAGE
+ ApplyAlphaToCoverage(finalColor);
+ #endif
+
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 1)
+ {
+ applyDithering(finalColor);
+ }
+ }
+
+ #ifdef POI_METAL
+ calculateMetallicness();
+ bool probeExists = shouldMetalHappenBeforeLighting();
+
+ if(!probeExists)
+ {
+ ApplyMetallicsFake(finalColor, albedo);
+ }
+ #endif
+
+ #ifdef POI_LIGHTING
+ #if defined(FORWARD_ADD_PASS) && defined(POI_METAL)
+ finalLighting *= 1 - metalicMap;
+ #endif
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ finalColor.rgb *= finalLighting + poiLight.vFinalLighting;
+ #else
+ finalColor.rgb *= finalLighting;
+ #endif
+
+ #ifdef POI_METAL
+
+ if(probeExists)
+ {
+ ApplyMetallics(finalColor, albedo);
+ }
+ #endif
+
+ finalColor.rgb += finalSpecular0 + finalEnvironmentalRim + finalSSS;
+
+ #ifdef FORWARD_BASE_PASS
+ #ifdef POI_CLEARCOAT
+ calculateAndApplyClearCoat(finalColor);
+ #endif
+ #endif
+
+ finalColor.a = saturate(finalColor.a);
+
+ /**********************************************************************
+ Add Up all the emission values :D
+ **********************************************************************/
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ finalEmission += finalColorBeforeLighting.rgb * float(0) * albedo.a;
+ finalEmission += wireframeEmission;
+ finalEmission += IridescenceEmission;
+ finalEmission += spawnInEmission;
+ finalEmission += voronoiEmission;
+ finalEmission += matcapEmission;
+ finalEmission += depthTouchEmission;
+ finalEmission += decalEmission;
+ finalEmission += glitterEmission;
+ finalEmission += panosphereEmission;
+ finalEmission += backFaceEmission;
+ finalEmission += rimLightEmission;
+ finalEmission += flipbookEmission;
+ finalEmission += videoEmission;
+ finalEmission += textOverlayEmission;
+ finalEmission += dissolveEmission;
+ #ifdef POI_EMISSION
+ finalEmission += calculateEmissionNew(finalColorBeforeLighting, finalColor);
+ #endif
+ #endif
+
+ /**********************************************************************
+ Meta Pass Hype :D
+ **********************************************************************/
+ #ifdef POI_META_PASS
+ UnityMetaInput meta;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, meta);
+ meta.Emission = finalEmission * float(1);
+ meta.Albedo = saturate(finalColor.rgb);
+ #ifdef POI_SPECULAR
+ meta.SpecularColor = poiLight.color.rgb * float4(1,1,1,1).rgb * lerp(1, albedo.rgb, float(0)) * float4(1,1,1,1).a;
+ #else
+ meta.SpecularColor = poiLight.color.rgb * albedo.rgb;
+ #endif
+ return UnityMetaFragment(meta);
+ #endif
+
+ /**********************************************************************
+ Apply Emission to finalColor
+ **********************************************************************/
+ finalColor.rgb += finalEmission;
+
+ /**********************************************************************
+ Grabpass features
+ **********************************************************************/
+
+
+ if (_commentIfZero_EnableGrabpass)
+ {
+ applyGrabEffects(finalColor);
+ }
+
+ /**********************************************************************
+ Unity Fog
+ **********************************************************************/
+ #ifdef FORWARD_BASE_PASS
+
+ if (float(0) == 0)
+ {
+ UNITY_APPLY_FOG(i.fogCoord, finalColor);
+ }
+ #endif
+
+ #ifdef FORWARD_ADD_PASS
+ if(float(0) > 0)
+ {
+ finalColor.rgb *= finalColor.a;
+ }
+ #endif
+
+
+ if(float(0) == 0)
+ {
+ finalColor.a = 1;
+ }
+
+ #ifdef FORWARD_ADD_PASS
+ //finalColor.rgb = smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5));
+ #endif
+
+ #ifdef POI_DEBUG
+ displayDebugInfo(finalColor);
+ #endif
+
+ //finalColor.rgb = frac(finalColor.rgb);
+ return finalColor;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
new file mode 100644
index 00000000..5f25b6fb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 889ed156e2de9ab42a1350ad344d611f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
new file mode 100644
index 00000000..8d260cdf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_FUR
+ #define POI_FUR
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurTexture); float4 _FurTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurHeightMap); float4 _FurHeightMap_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurMask); float4 _FurMask_ST;
+ float _FurAO;
+ float4 _FurColor;
+ float _FurLayers;
+ float _FurMinDistance;
+ float _FurMaxDistance;
+ float _FurHeightMapMin;
+ float _FurHeightMapMax;
+ float _FurDebug;
+ float _AoRampMin;
+ float _AoRampMax;
+ float _FurTipAlpha;
+ float _FurFadeStart;
+
+ //globals
+ half furHeightMap;
+ half furMask;
+
+ void calculateFur()
+ {
+
+ furHeightMap = UNITY_SAMPLE_TEX2D_SAMPLER(_FurHeightMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurHeightMap)).x;
+ furHeightMap = remap(furHeightMap, 0, _FurHeightMapMax, _FurHeightMapMin, 1);
+ furMask = poiMax(UNITY_SAMPLE_TEX2D_SAMPLER(_FurMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurMask)).xyz);
+ half3 furTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_FurTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurTexture));
+ clip(furHeightMap - poiMesh.furAlpha);
+ clip(furMask - poiMesh.furAlpha);
+
+ albedo.rgb = lerp(mainTexture.rgb, furTexture.rgb * _FurColor.rgb, ceil(poiMesh.furAlpha));
+ float aoRampMax = _AoRampMax - (1 - furMask);
+ albedo.rgb *= lerp(1, smoothstep(_AoRampMin, aoRampMax, furHeightMap), _FurAO);
+
+ albedo.a *= smoothstep(1.01, _FurTipAlpha, remapClamped(poiMesh.furAlpha, _FurFadeStart, 1, 0, 1)) + float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
new file mode 100644
index 00000000..8b54231f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f71062131ec0f26449a55c12175291f6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
new file mode 100644
index 00000000..032f3b08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
@@ -0,0 +1,37 @@
+float _FurLength;
+float _FurGravityStrength;
+
+[instance(4)]
+[maxvertexcount(20)]
+void geomFur(triangle v2f IN[3], inout TriangleStream < v2f > tristream, uint InstanceID : SV_GSInstanceID)
+{
+ float4 fur_worldPos[3];
+ v2f o_fur[3];
+ float3 offset = (float3(0, -1, 0) * (_FurLength*.9) *_FurGravityStrength);
+
+ for (int i = 0; i < 3; i++)
+ {
+ if (InstanceID == 0) {
+ IN[i].furAlpha = 0;
+ tristream.Append(IN[i]);
+ }
+ o_fur[i] = IN[i];
+ fur_worldPos[i] = float4(IN[i].worldPos + IN[i].normal * _FurLength, 1);
+ }
+ if (InstanceID == 0) {
+ tristream.RestartStrip();
+ }
+ int Total_FurLayers = clamp(floor(_FurLayers * (1 - smoothstep(_FurMinDistance, _FurMaxDistance, distance(IN[0].worldPos, getCameraPosition())))), min(1, _FurLayers), _FurLayers);
+
+ int startLayer = max(int(InstanceID) * 6 - 1, 0);
+ for (int layer = startLayer; layer < Total_FurLayers; layer++) {
+ for (int i = 0; i < 3; i++) {
+ o_fur[i].furAlpha = float(layer) / Total_FurLayers;
+ o_fur[i].worldPos = float4(lerp(IN[i].worldPos, fur_worldPos[i] + offset * o_fur[i].furAlpha, o_fur[i].furAlpha),1);
+ o_fur[i].pos = UnityWorldToClipPos(o_fur[i].worldPos);
+ o_fur[i].furAlpha += .01;
+ tristream.Append(o_fur[i]);
+ }
+ tristream.RestartStrip();
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
new file mode 100644
index 00000000..f534d815
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cb4f46ef800fa1048a76c1421b5a2ea3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
new file mode 100644
index 00000000..e31b6498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
@@ -0,0 +1,232 @@
+#ifndef POI_GLITTER
+ #define POI_GLITTER
+
+ half3 _GlitterColor;
+ POI_TEXTURE_NOSAMPLER(_GlitterMask);
+ float2 _GlitterPan;
+ POI_TEXTURE_NOSAMPLER(_GlitterColorMap);
+ POI_TEXTURE_NOSAMPLER(_GlitterTexture);
+ half _GlitterSpeed;
+ half _GlitterBrightness;
+ float _GlitterFrequency;
+ float _GlitterJitter;
+ half _GlitterSize;
+ half _GlitterContrast;
+ half _GlitterAngleRange;
+ half _GlitterMinBrightness;
+ half _GlitterBias;
+ float _GlitterRandomColors;
+ float2 _GlitterMinMaxSaturation;
+ float2 _GlitterMinMaxBrightness;
+ fixed _GlitterUseSurfaceColor;
+ float _GlitterBlendType;
+ float _GlitterMode;
+ float _GlitterShape;
+ float _GlitterCenterSize;
+ float _glitterFrequencyLinearEmissive;
+ float _GlitterJaggyFix;
+ float _GlitterRandomRotation;
+ float _GlitterTextureRotation;
+ float4 _GlitterMinMaxSize;
+ float _GlitterRandomSize;
+
+
+ float3 randomFloat3(float2 Seed, float maximum)
+ {
+ return(.5 + float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed), float2(12.9898, 78.233))) * 43758.5453)
+ ) * .5) * (maximum);
+ }
+
+ float3 randomFloat3Range(float2 Seed, float Range)
+ {
+ return(float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1) * Range;
+ }
+
+ float3 randomFloat3WiggleRange(float2 Seed, float Range)
+ {
+ float3 rando = (float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1);
+ float speed = 1 + float(10);
+ return float3(sin((_Time.x + rando.x * pi) * speed), sin((_Time.x + rando.y * pi) * speed), sin((_Time.x + rando.z * pi) * speed)) * Range;
+ }
+
+ void Unity_RandomRange_float(float2 Seed, float Min, float Max, out float Out)
+ {
+ float randomno = frac(sin(dot(Seed, float2(12.9898, 78.233))) * 43758.5453);
+ Out = lerp(Min, Max, randomno);
+ }
+
+ float3 RandomColorFromPoint(float2 rando)
+ {
+ fixed hue = random2(rando.x + rando.y).x;
+ fixed saturation = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.x);
+ fixed value = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.y);
+ float3 hsv = float3(hue, saturation, value);
+ return HSVtoRGB(hsv);
+ }
+
+ void applyGlitter(inout float4 albedo, inout float3 glitterEmission)
+ {
+
+
+ // Scale
+ float2 st = poiMesh.uv[0] * float(300);
+
+ // Tile the space
+ float2 i_st = floor(st);
+ float2 f_st = frac(st);
+
+ float m_dist = 10.; // minimun distance
+ float2 m_point = 0; // minimum point
+ float2 randoPoint = 0;
+ float2 dank;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 neighbor = float2(i, j);
+ float2 pos = random2(i_st + neighbor);
+ float2 rando = pos;
+ pos = 0.5 + 0.5 * sin(float(1) * 6.2831 * pos);
+ float2 diff = neighbor + pos - f_st;
+ float dist = length(diff);
+
+ if (dist < m_dist)
+ {
+ dank = diff;
+ m_dist = dist;
+ m_point = pos;
+ randoPoint = rando;
+ }
+ }
+ }
+
+ float randomFromPoint = random(randoPoint);
+
+ float size = float(0.3);
+
+ if(float(0))
+ {
+ size = remapClamped(randomFromPoint, 0, 1, float4(0.1,0.5,0,1).x, float4(0.1,0.5,0,1).y);
+ }
+
+
+ // Assign a color using the closest point position
+ //color += dot(m_point, float2(.3, .6));
+
+ // Add distance field to closest point center
+ // color.g = m_dist;
+
+ // Show isolines
+ //color -= abs(sin(40.0 * m_dist)) * 0.07;
+
+ // Draw cell center
+ half glitterAlpha = 1;
+ switch(float(0))
+ {
+ case 0: //circle
+ glitterAlpha = (1. - step(size, m_dist));
+ break;
+ case 1: //sqaure
+ float jaggyFix = pow(poiCam.distanceToVert, 2) * float(0);
+
+
+ if (float(0))
+ {
+ float2 center = float2(0, 0);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ dank = float2((dank.x - center.x) * cs - (dank.y - center.y) * sn + center.x, (dank.x - center.x) * sn + (dank.y - center.y) * cs + center.y);
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ else
+ {
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ break;
+ }
+
+ float3 finalGlitter = 0;
+
+ switch(float(0))
+ {
+ case 0:
+ float3 randomRotation = 0;
+
+ if(float(10) > 0)
+ {
+ randomRotation = randomFloat3WiggleRange(randoPoint, float(90));
+ }
+ else
+ {
+ randomRotation = randomFloat3Range(randoPoint, float(90));
+ }
+ float3 norm = poiMesh.normals[0];
+
+ float3 glitterReflectionDirection = normalize(mul(poiRotationMatrixFromAngles(randomRotation), norm));
+ finalGlitter = lerp(0, float(0) * glitterAlpha, glitterAlpha) + max(pow(saturate(dot(lerp(glitterReflectionDirection, poiCam.viewDir, float(0.8)), poiCam.viewDir)), float(300)), 0);
+ finalGlitter *= glitterAlpha;
+ break;
+ case 1:
+ float offset = random(randoPoint);
+ float brightness = sin((_Time.x + offset) * float(10)) * float(20) - (float(20) - 1);
+ finalGlitter = max(float(0) * glitterAlpha, brightness * glitterAlpha * smoothstep(0, 1, 1 - m_dist * float(0.08) * 10));
+ break;
+ }
+
+
+ half3 glitterColor = float4(1,1,1,1);
+ glitterColor *= lerp(1, albedo, float(0));
+ glitterColor *= POI2D_SAMPLER_PAN(_GlitterColorMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+
+ float2 uv = remapClamped(dank, -size, size, 0, 1);
+
+ if(float(0) && !float(0))
+ {
+ float2 fakeUVCenter = float2(.5, .5);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - fakeUVCenter.x) * cs - (uv.y - fakeUVCenter.y) * sn + fakeUVCenter.x, (uv.x - fakeUVCenter.x) * sn + (uv.y - fakeUVCenter.y) * cs + fakeUVCenter.y);
+ }
+ float4 glitterTexture = POI2D_SAMPLER_PAN(_GlitterTexture, _MainTex, uv, float4(0,0,0,0));
+ //float4 glitterTexture = _GlitterTexture.SampleGrad(sampler_MainTex, frac(uv), ddx(uv), ddy(uv));
+ glitterColor *= glitterTexture.rgb;
+ float glitterMask = POI2D_SAMPLER_PAN(_GlitterMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskGlitter != 4)
+ {
+ glitterMask *= blackLightMask[_BlackLightMaskGlitter];
+ }
+ #endif
+
+ if(float(0))
+ {
+ glitterColor *= RandomColorFromPoint(random2(randoPoint.x + randoPoint.y));
+ }
+
+
+ if(float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, finalGlitter * glitterColor * float(3), finalGlitter * glitterTexture.a * glitterMask);
+ glitterEmission = finalGlitter * glitterColor * max(0, (float(3) - 1) * glitterTexture.a) * glitterMask;
+ }
+ else
+ {
+ glitterEmission = finalGlitter * glitterColor * float(3) * glitterTexture.a * glitterMask;
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
new file mode 100644
index 00000000..33b3372c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3d090b5362217ca4ba317d97c8d90814
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
new file mode 100644
index 00000000..060cb720
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
@@ -0,0 +1,127 @@
+#ifndef POI_GRAB
+ #define POI_GRAB
+
+ float _RefractionIndex;
+ float _RefractionOpacity;
+ float _RefractionChromaticAberattion;
+ float _RefractionEnabled;
+ float _GrabSrcBlend;
+ float _GrabDstBlend;
+ float _GrabPassUseAlpha;
+ float _GrabPassBlendFactor;
+ float _GrabBlurDistance;
+ float _GrabBlurQuality;
+ float _GrabBlurDirections;
+ POI_TEXTURE_NOSAMPLER(_GrabPassBlendMap);
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RefractionOpacityMask); float4 _RefractionOpacityMask_ST;
+
+ float4 blur(float2 uv)
+ {
+ float two_pi = 6.28318530718;
+
+ float2 radius = _GrabBlurDistance / _ScreenParams.xy * 100; // Arbitrary constant to match old blur
+ float quality = floor(_GrabBlurQuality);
+ float directions = floor(_GrabBlurDirections);
+
+ // Pixel colour
+ float4 color = tex2D(_PoiGrab, uv);
+
+ float deltaAngle = two_pi / directions;
+ float deltaQuality = 1.0 / quality;
+ for (int i = 0; i < directions; i ++)
+ {
+ for (int j = 0; j < quality; j ++)
+ {
+ float angle = deltaAngle * i + j;
+ float offset = deltaQuality * (j + 1);
+ color += tex2D(_PoiGrab, uv + float2(cos(angle), sin(angle)) * radius * offset);
+ }
+ }
+
+ // Output to screen
+ color /= quality * directions + 1;
+ return color;
+ }
+
+ inline float4 Refraction(float indexOfRefraction, float chromaticAberration, float2 projectedGrabPos)
+ {
+ float4 refractionColor;
+ float3 worldViewDir = normalize(UnityWorldSpaceViewDir(poiMesh.worldPos));
+ float3 refractionOffset = ((((indexOfRefraction - 1.0) * mul(UNITY_MATRIX_V, float4(poiMesh.normals[1], 0.0))) * (1.0 / (poiCam.grabPos.z + 1.0))) * (1.0 - dot(poiMesh.normals[1], worldViewDir)));
+ float2 cameraRefraction = float2(refractionOffset.x, - (refractionOffset.y * _ProjectionParams.x));
+
+
+ if (_RefractionChromaticAberattion > 0)
+ {
+ float4 redAlpha = tex2D(_PoiGrab, (projectedGrabPos + cameraRefraction));
+ float green = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 - chromaticAberration)))).g;
+ float blue = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 + chromaticAberration)))).b;
+ refractionColor = float4(redAlpha.r, green, blue, redAlpha.a);
+ }
+ else
+ {
+ float2 refractedGrab = projectedGrabPos + cameraRefraction;
+
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refractionColor = blur(refractedGrab);
+ #else
+ refractionColor = tex2D(_PoiGrab, (refractedGrab));
+ #endif
+ }
+ return refractionColor;
+ }
+
+ void calculateRefraction(float2 projectedGrabPos, inout float4 finalColor)
+ {
+ float3 refraction = 1;
+
+ if(_RefractionEnabled == 1)
+ {
+ refraction = Refraction(_RefractionIndex, _RefractionChromaticAberattion, projectedGrabPos).rgb;
+ }
+ else
+ {
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refraction = blur(projectedGrabPos);
+ #else
+ refraction = tex2Dproj(_PoiGrab, poiCam.grabPos);
+ #endif
+ }
+
+ float blendFactor = _GrabPassBlendFactor * POI2D_SAMPLER_PAN(_GrabPassBlendMap, _MainTex, poiMesh.uv[_GrabPassBlendMapUV], _GrabPassBlendMapPan).r;
+
+ if(_GrabPassUseAlpha)
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor * (1 - finalColor.a));
+ finalColor.a = 1;
+ }
+ else
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor);
+ }
+ }
+
+ float2 calculateGrabPosition()
+ {
+ float4 grabPos = poiCam.grabPos;
+ #if UNITY_UV_STARTS_AT_TOP
+ float scale = -1.0;
+ #else
+ float scale = 1.0;
+ #endif
+ float halfPosW = grabPos.w * 0.5;
+ grabPos.y = (grabPos.y - halfPosW) * _ProjectionParams.x * scale + halfPosW;
+ #if SHADER_API_D3D9 || SHADER_API_D3D11
+ grabPos.w += 0.00000000001;
+ #endif
+ return(grabPos / grabPos.w).xy;
+ }
+
+ void applyGrabEffects(inout float4 finalColor)
+ {
+ float2 projectedGrabPos = calculateGrabPosition();
+ calculateRefraction(projectedGrabPos, finalColor);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
new file mode 100644
index 00000000..47eb8652
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 955d5d4c89904974eae55281613028cf
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
new file mode 100644
index 00000000..9ae9e754
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
@@ -0,0 +1,338 @@
+#ifndef POI_HELPER
+ #define POI_HELPER
+
+ #include "CGI_PoiColors.cginc"
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float linearSin(float x)
+ {
+ return pow(min(cos(pi * x / 2.0), 1.0 - abs(x)), 1.0);
+ }
+
+ float random(float2 p)
+ {
+ return frac(sin(dot(p, float2(12.9898, 78.2383))) * 43758.5453123);
+ }
+
+ float2 random2(float2 p)
+ {
+ return frac(sin(float2(dot(p, float2(127.1, 311.7)), dot(p, float2(269.5, 183.3)))) * 43758.5453);
+ }
+
+ float3 random3(float3 p)
+ {
+ return frac(sin(float3(dot(p, float3(127.1, 311.7, 248.6)), dot(p, float3(269.5, 183.3, 423.3)), dot(p, float3(248.3, 315.9, 184.2)))) * 43758.5453);
+ }
+
+ float3 mod(float3 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+ float2 mod(float2 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+
+ //1/7
+ #define K 0.142857142857
+ //3/7
+ #define Ko 0.428571428571
+
+ // Permutation polynomial: (34x^2 + x) mod 289
+ float3 Permutation(float3 x)
+ {
+ return mod((34.0 * x + 1.0) * x, 289.0);
+ }
+
+ bool IsInMirror()
+ {
+ return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f;
+ }
+
+ float3 BoxProjection(float3 direction, float3 position, float4 cubemapPosition, float3 boxMin, float3 boxMax)
+ {
+ #if UNITY_SPECCUBE_BOX_PROJECTION
+
+ if (cubemapPosition.w > 0)
+ {
+ float3 factors = ((direction > 0 ? boxMax: boxMin) - position) / direction;
+ float scalar = min(min(factors.x, factors.y), factors.z);
+ direction = direction * scalar + (position - cubemapPosition);
+ }
+ #endif
+ return direction;
+ }
+
+ // Camera
+ float3 getCameraPosition()
+ {
+ #ifdef USING_STEREO_MATRICES
+ return lerp(unity_StereoWorldSpaceCameraPos[0], unity_StereoWorldSpaceCameraPos[1], 0.5);
+ #endif
+ return _WorldSpaceCameraPos;
+ }
+
+ float3 getCameraForward()
+ {
+ #if UNITY_SINGLE_PASS_STEREO
+ float3 p1 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 0, 1));
+ #else
+ float3 p1 = mul(unity_CameraToWorld, float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_CameraToWorld, float4(0, 0, 0, 1));
+ #endif
+ return normalize(p2 - p1);
+ }
+
+ float3 grayscale_vector_node()
+ {
+ return float3(0, 0.3823529, 0.01845836);
+ }
+
+ float3 grayscale_for_light()
+ {
+ return float3(0.298912, 0.586611, 0.114478);
+ }
+
+ //Math Operators
+
+ float remap(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float2 remap(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float3 remap(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float4 remap(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float remapClamped(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float2 remapClamped(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float3 remapClamped(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float4 remapClamped(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float poiMax(float2 i)
+ {
+ return max(i.x, i.y);
+ }
+
+ float poiMax(float3 i)
+ {
+ return max(max(i.x, i.y), i.z);
+ }
+
+ float poiMax(float4 i)
+ {
+ return max(max(max(i.x, i.y), i.z), i.w);
+ }
+
+ float4x4 poiAngleAxisRotationMatrix(float angle, float3 axis)
+ {
+ axis = normalize(axis);
+ float s = sin(angle);
+ float c = cos(angle);
+ float oc = 1.0 - c;
+
+ return float4x4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
+ oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
+ oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
+ 0.0, 0.0, 0.0, 1.0);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float x, float y, float z)
+ {
+ float angleX = radians(x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float3 angles)
+ {
+ float angleX = radians(angles.x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(angles.y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(angles.z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+#endif
+
+half2 calcScreenUVs(half4 grabPos)
+{
+ half2 uv = grabPos / (grabPos.w + 0.0000000001);
+ #if UNITY_SINGLE_PASS_STEREO
+ uv.xy *= half2(_ScreenParams.x * 2, _ScreenParams.y);
+ #else
+ uv.xy *= _ScreenParams.xy;
+ #endif
+
+ return uv;
+}
+
+float inverseLerp(float A, float B, float T)
+{
+ return(T - A) / (B - A);
+}
+
+float inverseLerp2(float2 a, float2 b, float2 value)
+{
+ float2 AB = b - a;
+ float2 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp3(float3 a, float3 b, float3 value)
+{
+ float3 AB = b - a;
+ float3 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp4(float4 a, float4 b, float4 value)
+{
+ float4 AB = b - a;
+ float4 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+// Dithering
+inline half Dither8x8Bayer(int x, int y)
+{
+ const half dither[ 64 ] = {
+ 1, 49, 13, 61, 4, 52, 16, 64,
+ 33, 17, 45, 29, 36, 20, 48, 32,
+ 9, 57, 5, 53, 12, 60, 8, 56,
+ 41, 25, 37, 21, 44, 28, 40, 24,
+ 3, 51, 15, 63, 2, 50, 14, 62,
+ 35, 19, 47, 31, 34, 18, 46, 30,
+ 11, 59, 7, 55, 10, 58, 6, 54,
+ 43, 27, 39, 23, 42, 26, 38, 22
+ };
+ int r = y * 8 + x;
+ return dither[r] / 64;
+}
+
+// UV Manipulation
+float2 TransformUV(half2 offset, half rotation, half2 scale, float2 uv)
+{
+ float theta = radians(rotation);
+ scale = 1 - scale;
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 centerPoint = offset + .5;
+ uv = float2((uv.x - centerPoint.x) * cs - (uv.y - centerPoint.y) * sn + centerPoint.x, (uv.x - centerPoint.x) * sn + (uv.y - centerPoint.y) * cs + centerPoint.y);
+
+ return remap(uv, float2(0, 0) + offset + (scale * .5), float2(1, 1) + offset - (scale * .5), float2(0, 0), float2(1, 1));
+}
+
+bool isVR()
+{
+ // USING_STEREO_MATRICES
+ #if UNITY_SINGLE_PASS_STEREO
+ return true;
+ #else
+ return false;
+ #endif
+}
+
+bool isVRHandCamera()
+{
+ return !isVR() && abs(UNITY_MATRIX_V[0].y) > 0.0000005;
+}
+
+bool isDesktop()
+{
+ return !isVRHandCamera();
+}
+
+bool isVRHandCameraPreview()
+{
+ return isVRHandCamera() && _ScreenParams.y == 720;
+}
+
+bool isVRHandCameraPicture()
+{
+ return isVRHandCamera() && _ScreenParams.y == 1080;
+}
+
+bool isPanorama()
+{
+ // Crude method
+ // FOV=90=camproj=[1][1]
+ return unity_CameraProjection[1][1] == 1 && _ScreenParams.x == 1075 && _ScreenParams.y == 1025;
+}
+
+float3 calculateluminance(float3 color)
+{
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
new file mode 100644
index 00000000..21a1d8f3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4be2c14c849e27f4cba3bd2785713522
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
new file mode 100644
index 00000000..6ee66d3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
@@ -0,0 +1,36 @@
+#ifndef POI_HOLOGRAM
+ #define POI_HOLOGRAM
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_HoloAlphaMap); float4 _HoloAlphaMap_ST;
+ float _HoloCoordinateSpace; // 0 World, 1 Local, 2 UV
+ float3 _HoloDirection;
+ float _HoloScrollSpeed;
+ float _HoloLineDensity;
+
+ fixed _HoloFresnelAlpha;
+ fixed _HoloRimSharpness;
+ fixed _HoloRimWidth;
+ void ApplyHoloAlpha(inout float4 color)
+ {
+ float uv = 0;
+
+ if (_HoloCoordinateSpace == 0)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.worldPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 1)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.localPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 2)
+ {
+ uv = dot(_HoloDirection, poiMesh.uv[0] * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+ float holoRim = saturate(1 - smoothstep(min(_HoloRimSharpness, _HoloRimWidth), _HoloRimWidth, poiCam.viewDotNormal));
+ holoRim = abs(lerp(1, holoRim, _HoloFresnelAlpha));
+ color.a *= UNITY_SAMPLE_TEX2D_SAMPLER(_HoloAlphaMap, _MainTex, uv).r * holoRim;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
new file mode 100644
index 00000000..6ed4300b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 58fd16a369b31af4d9657fbe75fe20f5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
new file mode 100644
index 00000000..bcea8ccc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
@@ -0,0 +1,61 @@
+#ifndef POI_IRIDESCENCE
+ #define POI_IRIDESCENCE
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceRamp); float4 _IridescenceRamp_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceMask); float4 _IridescenceMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceNormalMap); float4 _IridescenceNormalMap_ST;
+ float _IridescenceNormalUV;
+ float _IridescenceMaskUV;
+ float _IridescenceNormalSelection;
+ float _IridescenceNormalIntensity;
+ float _IridescenceNormalToggle;
+ float _IridescenceIntensity;
+ fixed _IridescenceAddBlend;
+ fixed _IridescenceReplaceBlend;
+ fixed _IridescenceMultiplyBlend;
+ float _IridescenceEmissionStrength;
+
+ //global
+
+ float3 calculateNormal(float3 baseNormal)
+ {
+ float3 normal = UnpackScaleNormal(UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceNormalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceNormalUV], _IridescenceNormalMap)), _IridescenceNormalIntensity);
+ return normalize(
+ normal.x * poiMesh.tangent +
+ normal.y * poiMesh.binormal +
+ normal.z * baseNormal
+ );
+ }
+
+ void applyIridescence(inout float4 albedo, inout float3 IridescenceEmission)
+ {
+ float3 normal = poiMesh.normals[_IridescenceNormalSelection];
+
+ // Use custom normal map
+
+ if (_IridescenceNormalToggle)
+ {
+ normal = calculateNormal(normal);
+ }
+
+ float ndotv = dot(normal, poiCam.viewDir);
+
+ float4 iridescenceColor = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceRamp, _MainTex, 1 - abs(ndotv));
+ float4 iridescenceMask = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceMaskUV], _IridescenceMask));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskIridescence != 4)
+ {
+ iridescenceMask *= blackLightMask[_BlackLightMaskIridescence];
+ }
+ #endif
+
+
+ albedo.rgb = lerp(albedo.rgb, saturate(iridescenceColor.rgb * _IridescenceIntensity), iridescenceColor.a * _IridescenceReplaceBlend * iridescenceMask);
+ albedo.rgb += saturate(iridescenceColor.rgb * _IridescenceIntensity * iridescenceColor.a * _IridescenceAddBlend * iridescenceMask);
+ albedo.rgb *= saturate(lerp(1, iridescenceColor.rgb * _IridescenceIntensity, iridescenceColor.a * _IridescenceMultiplyBlend * iridescenceMask));
+
+ IridescenceEmission = saturate(iridescenceColor.rgb * _IridescenceIntensity) * iridescenceColor.a * iridescenceMask * _IridescenceEmissionStrength;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
new file mode 100644
index 00000000..ecaaee1a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e090a7908c3e6a3448ed85fb5d820cad
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
new file mode 100644
index 00000000..8f35cb62
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
@@ -0,0 +1,668 @@
+
+#ifndef POI_LIGHTING
+ #define POI_LIGHTING
+
+ float _LightingShadingEnabled;
+ float _LightingRampType;
+ float _LightingIgnoreAmbientColor;
+ float _UseShadowTexture;
+ float _LightingEnableAO;
+ float _LightingDetailShadowsEnabled;
+
+ float _LightingOnlyUnityShadows;
+ float _LightingMode;
+ float _ForceLightDirection;
+ float _ShadowStrength;
+ float _OutlineShadowStrength;
+ float _ShadowOffset;
+ float3 _LightDirection;
+ float _ForceShadowStrength;
+ float _CastedShadowSmoothing;
+ float _AttenuationMultiplier;
+ float _EnableLighting;
+ float _LightingControlledUseLightColor;
+ fixed _LightingStandardSmoothness;
+ fixed _LightingStandardControlsToon;
+ fixed _LightingMinLightBrightness;
+ float _LightingUseShadowRamp;
+ float _LightingMinShadowBrightnessRatio;
+ UNITY_DECLARE_TEX2D(_ToonRamp);
+ fixed _LightingMonochromatic;
+
+ fixed _LightingGradientStart;
+ fixed _LightingGradientEnd;
+ float3 _LightingShadowColor;
+ POI_TEXTURE_NOSAMPLER(_LightingShadowTexture);
+ float _AOStrength;
+ fixed _LightingDetailStrength;
+ fixed _LightingAdditiveDetailStrength;
+ fixed _LightingNoIndirectMultiplier;
+ fixed _LightingNoIndirectThreshold;
+ float _LightingUncapped;
+
+ float _LightingDirectColorMode;
+ float _LightingIndirectColorMode;
+ float _LightingAdditiveType;
+ fixed _LightingAdditiveGradientStart;
+ fixed _LightingAdditiveGradientEnd;
+ fixed _LightingAdditivePassthrough;
+ float _LightingDirectAdjustment;
+ float _LightingIndirect;
+ // HSL JUNK
+ float _LightingEnableHSL;
+ float _LightingShadowHue;
+ float _LightingShadowSaturation;
+ float _LightingShadowLightness;
+ float _LightingHSLIntensity;
+ /*
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ToonRamp3);
+ half _LightingShadowStrength3;
+ half _ShadowOffset3;
+ */
+
+ half4 shadowStrength;
+
+ POI_TEXTURE_NOSAMPLER(_LightingDetailShadows);
+ POI_TEXTURE_NOSAMPLER(_LightingAOTex);
+ POI_TEXTURE_NOSAMPLER(_LightingShadowMask);
+
+ /*
+ * MIT License
+ *
+ * Copyright (c) 2018 s-ilent
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+ /*
+ * Silent's code starts here
+ */
+
+ float shEvaluateDiffuseL1Geomerics_local(float L0, float3 L1, float3 n)
+ {
+ // average energy
+ float R0 = max(0, L0);
+
+ // avg direction of incoming light
+ float3 R1 = 0.5f * L1;
+
+ // directional brightness
+ float lenR1 = length(R1);
+
+ // linear angle between normal and direction 0-1
+ //float q = 0.5f * (1.0f + dot(R1 / lenR1, n));
+ //float q = dot(R1 / lenR1, n) * 0.5 + 0.5;
+ float q = dot(normalize(R1), n) * 0.5 + 0.5;
+ q = saturate(q); // Thanks to ScruffyRuffles for the bug identity.
+
+ // power for q
+ // lerps from 1 (linear) to 3 (cubic) based on directionality
+ float p = 1.0f + 2.0f * lenR1 / R0;
+
+ // dynamic range constant
+ // should vary between 4 (highly directional) and 0 (ambient)
+ float a = (1.0f - lenR1 / R0) / (1.0f + lenR1 / R0);
+
+ return R0 * (a + (1.0f - a) * (p + 1.0f) * pow(q, p));
+ }
+
+ half3 BetterSH9(half4 normal)
+ {
+ float3 indirect;
+ float3 L0 = float3(unity_SHAr.w, unity_SHAg.w, unity_SHAb.w) + float3(unity_SHBr.z, unity_SHBg.z, unity_SHBb.z) / 3.0;
+ indirect.r = shEvaluateDiffuseL1Geomerics_local(L0.r, unity_SHAr.xyz, normal);
+ indirect.g = shEvaluateDiffuseL1Geomerics_local(L0.g, unity_SHAg.xyz, normal);
+ indirect.b = shEvaluateDiffuseL1Geomerics_local(L0.b, unity_SHAb.xyz, normal);
+ indirect = max(0, indirect);
+ indirect += SHEvalLinearL2(normal);
+ return indirect;
+ }
+
+ float3 BetterSH9(float3 normal)
+ {
+ return BetterSH9(float4(normal, 1));
+ }
+
+ /*
+ * Standard stuff starts here
+ */
+ UnityLight CreateLight(float3 normal, fixed detailShadowMap)
+ {
+ UnityLight light;
+ light.dir = poiLight.direction;
+ light.color = saturate(_LightColor0.rgb * lerp(1, poiLight.attenuation, float(0)) * detailShadowMap);
+ light.ndotl = DotClamped(normal, poiLight.direction);
+ return light;
+ }
+
+ float FadeShadows(float attenuation)
+ {
+ #if HANDLE_SHADOWS_BLENDING_IN_GI || ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ // UNITY_LIGHT_ATTENUATION doesn't fade shadows for us.
+
+ #if ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ attenuation = lerp(1, poiLight.attenuation, float(0));
+ #endif
+
+ float viewZ = dot(_WorldSpaceCameraPos - poiMesh.worldPos, UNITY_MATRIX_V[2].xyz);
+ float shadowFadeDistance = UnityComputeShadowFadeDistance(poiMesh.worldPos, viewZ);
+ float shadowFade = UnityComputeShadowFade(shadowFadeDistance);
+ float bakedAttenuation = UnitySampleBakedOcclusion(poiMesh.lightmapUV.xy, poiMesh.worldPos);
+ attenuation = UnityMixRealtimeAndBakedShadows(
+ attenuation, bakedAttenuation, shadowFade
+ );
+ #endif
+
+ return attenuation;
+ }
+
+ void ApplySubtractiveLighting(inout UnityIndirect indirectLight)
+ {
+ #if SUBTRACTIVE_LIGHTING
+ poiLight.attenuation = FadeShadows(lerp(1, poiLight.attenuation, float(0)));
+
+ float ndotl = saturate(dot(i.normal, _WorldSpaceLightPos0.xyz));
+ float3 shadowedLightEstimate = ndotl * (1 - poiLight.attenuation) * _LightColor0.rgb;
+ float3 subtractedLight = indirectLight.diffuse - shadowedLightEstimate;
+ subtractedLight = max(subtractedLight, unity_ShadowColor.rgb);
+ subtractedLight = lerp(subtractedLight, indirectLight.diffuse, _LightShadowData.x);
+ indirectLight.diffuse = min(subtractedLight, indirectLight.diffuse);
+ #endif
+ }
+
+ float3 weightedBlend(float3 layer1, float3 layer2, float2 weights)
+ {
+ return(weights.x * layer1 + weights.y * layer2) / (weights.x + weights.y);
+ }
+
+ UnityIndirect CreateIndirectLight(float3 normal)
+ {
+ UnityIndirect indirectLight;
+ indirectLight.diffuse = 0;
+ indirectLight.specular = 0;
+
+ #if defined(FORWARD_BASE_PASS)
+ #if defined(LIGHTMAP_ON)
+ indirectLight.diffuse = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap, poiMesh.lightmapUV.xy));
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 lightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_LightmapInd, unity_Lightmap, poiMesh.lightmapUV.xy
+ );
+ indirectLight.diffuse = DecodeDirectionalLightmap(
+ indirectLight.diffuse, lightmapDirection, normal
+ );
+ #endif
+ ApplySubtractiveLighting(indirectLight);
+ #endif
+
+ #if defined(DYNAMICLIGHTMAP_ON)
+ float3 dynamicLightDiffuse = DecodeRealtimeLightmap(
+ UNITY_SAMPLE_TEX2D(unity_DynamicLightmap, poiMesh.lightmapUV.zw)
+ );
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 dynamicLightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_DynamicDirectionality, unity_DynamicLightmap,
+ poiMesh.lightmapUV.zw
+ );
+ indirectLight.diffuse += DecodeDirectionalLightmap(
+ dynamicLightDiffuse, dynamicLightmapDirection, normal
+ );
+ #else
+ indirectLight.diffuse += dynamicLightDiffuse;
+ #endif
+ #endif
+
+ #if !defined(LIGHTMAP_ON) && !defined(DYNAMICLIGHTMAP_ON)
+ #if UNITY_LIGHT_PROBE_PROXY_VOLUME
+ if (unity_ProbeVolumeParams.x == 1)
+ {
+ indirectLight.diffuse = SHEvalLinearL0L1_SampleProbeVolume(
+ float4(normal, 1), poiMesh.worldPos
+ );
+ indirectLight.diffuse = max(0, indirectLight.diffuse);
+ #if defined(UNITY_COLORSPACE_GAMMA)
+ indirectLight.diffuse = LinearToGammaSpace(indirectLight.diffuse);
+ #endif
+ }
+ else
+ {
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ }
+ #else
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ #endif
+ #endif
+
+ float3 reflectionDir = reflect(-poiCam.viewDir, normal);
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = 1 - float(0);
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+ #if UNITY_SPECCUBE_BLENDING
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ indirectLight.specular = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ indirectLight.specular = probe0;
+ }
+ #else
+ indirectLight.specular = probe0;
+ #endif
+ float occlusion = 1;
+
+ if(float(0))
+ {
+ occlusion = lerp(1, POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ }
+
+ indirectLight.diffuse *= occlusion;
+ indirectLight.diffuse = max(indirectLight.diffuse, float(0));
+ indirectLight.specular *= occlusion;
+ #endif
+
+ return indirectLight;
+ }
+
+ /*
+ * Poiyomi's cool as heck code starts here :smug:
+ */
+
+ half PoiDiffuse(half NdotV, half NdotL, half LdotH)
+ {
+ half fd90 = 0.5 + 2 * LdotH * LdotH * SmoothnessToPerceptualRoughness(.5);
+ // Two schlick fresnel term
+ half lightScatter = (1 + (fd90 - 1) * Pow5(1 - NdotL));
+ half viewScatter = (1 + (fd90 - 1) * Pow5(1 - NdotV));
+
+ return lightScatter * viewScatter;
+ }
+
+ float3 ShadeSH9Indirect()
+ {
+ return ShadeSH9(half4(0.0, -1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Direct()
+ {
+ return ShadeSH9(half4(0.0, 1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Normal(float3 normalDirection)
+ {
+ return ShadeSH9(half4(normalDirection, 1.0));
+ }
+
+ half3 GetSHLength()
+ {
+ half3 x, x1;
+ x.r = length(unity_SHAr);
+ x.g = length(unity_SHAg);
+ x.b = length(unity_SHAb);
+ x1.r = length(unity_SHBr);
+ x1.g = length(unity_SHBg);
+ x1.b = length(unity_SHBb);
+ return x + x1;
+ }
+
+ float3 calculateRealisticLighting(float4 colorToLight, fixed detailShadowMap)
+ {
+ return UNITY_BRDF_PBS(1, 0, 0, float(0), poiMesh.normals[1], poiCam.viewDir, CreateLight(poiMesh.normals[1], detailShadowMap), CreateIndirectLight(poiMesh.normals[1]));
+ }
+
+ void calculateBasePassLightMaps()
+ {
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ float AOMap = 1;
+ float AOStrength = 1;
+ float3 lightColor = poiLight.color;
+ /*
+ * Generate Basic Light Maps
+ */
+
+ bool lightExists = false;
+ if (all(_LightColor0.rgb >= 0.002))
+ {
+ lightExists = true;
+ }
+ #ifndef OUTLINE
+
+ if(float(0))
+ {
+ AOMap = POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ AOStrength = float(1);
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ if (lightExists)
+ {
+ lightColor = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+ }
+ else
+ {
+ lightColor = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ }
+
+ //lightColor = magic * magiratio + normalLight * normaRatio;
+ //lightColor = magic + normalLight;
+ #endif
+ #endif
+
+ float3 grayscale_vector = float3(.33333, .33333, .33333);
+ float3 ShadeSH9Plus = GetSHLength();
+ float3 ShadeSH9Minus = BetterSH9(float4(0, 0, 0, 1));
+
+ shadowStrength = 1;
+ #ifndef OUTLINE
+ shadowStrength = POI2D_SAMPLER_PAN(_LightingShadowMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(1);
+ #else
+ shadowStrength = float(1);
+ #endif
+
+ float bw_lightColor = dot(lightColor, grayscale_vector);
+ float bw_directLighting = (((poiLight.nDotL * 0.5 + 0.5) * bw_lightColor * lerp(1, poiLight.attenuation, float(0))) + dot(ShadeSH9Normal(poiMesh.normals[1]), grayscale_vector));
+ float bw_bottomIndirectLighting = dot(ShadeSH9Minus, grayscale_vector);
+ float bw_topIndirectLighting = dot(ShadeSH9Plus, grayscale_vector);
+ float lightDifference = ((bw_topIndirectLighting + bw_lightColor) - bw_bottomIndirectLighting);
+
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(0))
+ {
+ poiLight.lightMap = poiLight.attenuation;
+ }
+ else
+ {
+ poiLight.lightMap = smoothstep(0, lightDifference, bw_directLighting - bw_bottomIndirectLighting);
+ }
+ poiLight.lightMap *= detailShadow;
+
+ /*
+ * Decide on light colors
+ */
+
+ float3 indirectLighting = 0;
+ float3 directLighting = 0;
+
+
+
+
+ if (float(0) == 1)
+ {
+ indirectLighting = BetterSH9(float4(poiMesh.normals[0], 1));
+ }
+ else
+ {
+ indirectLighting = ShadeSH9Minus;
+ }
+
+ poiLight.directLighting = lightColor;
+ poiLight.indirectLighting = indirectLighting;
+
+
+ if(float(0) == 0)
+ {
+ float3 magic = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+
+ float magiLumi = calculateluminance(magic);
+ float normaLumi = calculateluminance(normalLight);
+ float maginormalumi = magiLumi + normaLumi;
+
+ float magiratio = magiLumi / maginormalumi;
+ float normaRatio = normaLumi / maginormalumi;
+
+ float target = calculateluminance(magic * magiratio + normalLight * normaRatio);
+ float3 properLightColor = magic + normalLight;
+ float properLuminance = calculateluminance(magic + normalLight);
+ directLighting = properLightColor * max(0.0001, (target / properLuminance));
+ }
+ else
+ {
+ directLighting = lightColor;
+ }
+
+
+ if(!float(0))
+ {
+ float directluminance = calculateluminance(directLighting);
+ float indirectluminance = calculateluminance(indirectLighting);
+ directLighting = min(directLighting, directLighting / max(0.0001, (directluminance / 1)));
+ indirectLighting = min(indirectLighting, indirectLighting / max(0.0001, (indirectluminance / 1)));
+ }
+
+ directLighting = lerp(directLighting, dot(directLighting, float3(0.299, 0.587, 0.114)), float(0));
+ indirectLighting = lerp(indirectLighting, dot(indirectLighting, float3(0.299, 0.587, 0.114)), float(0));
+
+ if(max(max(indirectLighting.x, indirectLighting.y), indirectLighting.z) <= _LightingNoIndirectThreshold && max(max(directLighting.x, directLighting.y), directLighting.z) >= 0)
+ {
+ indirectLighting = directLighting * _LightingNoIndirectMultiplier;
+ }
+
+
+ if(float(0))
+ {
+ float directluminance = clamp(directLighting.r * 0.299 + directLighting.g * 0.587 + directLighting.b * 0.114, 0, 1);
+ if(directluminance > 0)
+ {
+ indirectLighting = max(0.001, indirectLighting);
+ }
+ float indirectluminance = clamp(indirectLighting.r * 0.299 + indirectLighting.g * 0.587 + indirectLighting.b * 0.114, 0, 1);
+ float targetluminance = directluminance * float(0);
+ if(indirectluminance < targetluminance)
+ {
+ indirectLighting = indirectLighting / max(0.0001, indirectluminance / targetluminance);
+ }
+ }
+
+ /*
+ * Create Shade Maps
+ */
+
+ if (float(0))
+ {
+ switch(float(0))
+ {
+ case 0: // Ramp Texture
+ {
+ poiLight.rampedLightMap = lerp(1, UNITY_SAMPLE_TEX2D(_ToonRamp, poiLight.lightMap + float(0)), shadowStrength.r);
+
+ if (float(0))
+ {
+ poiLight.finalLighting = lerp(poiLight.rampedLightMap * directLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ else
+ {
+ poiLight.finalLighting = lerp(indirectLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ }
+ break;
+ case 1: // Math Gradient
+ {
+ poiLight.rampedLightMap = saturate(1 - smoothstep(float(0) - .000001, float(0.5), 1 - poiLight.lightMap));
+ float3 shadowColor = float4(1,1,1,1);
+
+ if (float(0))
+ {
+ shadowColor = 1;
+ }
+
+ if(float(0))
+ {
+ poiLight.finalLighting = lerp((directLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ else
+ {
+ poiLight.finalLighting = lerp((indirectLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ }
+ break;
+ }
+ }
+ else
+ {
+ poiLight.rampedLightMap = 1 - smoothstep(0, .5, 1 - poiLight.lightMap);
+ poiLight.finalLighting = directLighting;
+ }
+
+ if(!float(0))
+ {
+ poiLight.finalLighting = saturate(poiLight.finalLighting);
+ }
+ //poiLight.finalLighting *= .8;
+ #endif
+ }
+
+ void applyShadowTexture(inout float4 albedo)
+ {
+
+ if (float(0) && float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, POI2D_SAMPLER_PAN(_LightingShadowTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1), (1 - poiLight.rampedLightMap) * shadowStrength);
+ }
+ }
+
+ float3 calculateNonImportantLighting(float attenuation, float attenuationDotNL, float3 albedo, float3 lightColor, half dotNL)
+ {
+ fixed detailShadow = 1;
+
+ if(float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ return lightColor * attenuationDotNL * detailShadow;
+ }
+ else
+ {
+ return lerp(lightColor * attenuation, lightColor * float(0.5) * attenuation, smoothstep(float(0), float(0.5), dotNL)) * detailShadow;
+ }
+ }
+
+
+ float3 calculateFinalLighting(inout float3 albedo, float4 finalColor)
+ {
+ float3 finalLighting = 1;
+ // Additive Lighting
+ #ifdef FORWARD_ADD_PASS
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ finalLighting = poiLight.color * poiLight.attenuation * max(0, poiLight.nDotL) * detailShadow;
+ }
+ else
+ {
+ #if defined(POINT) || defined(SPOT)
+ finalLighting = lerp(poiLight.color * max(poiLight.additiveShadow, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * poiLight.attenuation * detailShadow;
+ #else
+ finalLighting = lerp(poiLight.color * max(poiLight.attenuation, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * detailShadow;
+ #endif
+ }
+ #endif
+
+ // Base and Meta Lighting
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ #ifdef VERTEXLIGHT_ON
+ poiLight.vFinalLighting = 0;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vFinalLighting += calculateNonImportantLighting(poiLight.vAttenuation[index], poiLight.vAttenuationDotNL[index], albedo, poiLight.vColor[index], poiLight.vCorrectedDotNL[index]);
+ }
+ #endif
+
+ switch(float(0))
+ {
+ case 0: // Toon Lighting
+ {
+ // HSL Shading
+
+ if (float(0))
+ {
+ float3 HSLMod = float3(float(0.5) * 2 - 1, float(0.5) * 2 - 1, float(0.5) * 2 - 1) * (1 - poiLight.rampedLightMap);
+ albedo = lerp(albedo.rgb, ModifyViaHSL(albedo.rgb, HSLMod), float(1));
+ }
+
+ // Normal Shading
+
+ if (float(0) > 0)
+ {
+ poiLight.finalLighting = max(0.001, poiLight.finalLighting);
+ float finalluminance = calculateluminance(poiLight.finalLighting);
+ finalLighting = max(poiLight.finalLighting, poiLight.finalLighting / max(0.0001, (finalluminance / float(0))));
+ }
+ else
+ {
+ finalLighting = poiLight.finalLighting;
+ }
+ }
+ break;
+ case 1: // realistic
+ {
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ float3 realisticLighting = calculateRealisticLighting(finalColor, detailShadow).rgb;
+ finalLighting = lerp(realisticLighting, dot(realisticLighting, float3(0.299, 0.587, 0.114)), float(0));
+ }
+ break;
+ }
+ #endif
+ return finalLighting;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
new file mode 100644
index 00000000..0438893d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2dc227ddc2b7aa342878e294b9b2bbea
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
new file mode 100644
index 00000000..c23736df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
@@ -0,0 +1,243 @@
+#ifndef POI_MSDF
+ #define POI_MSDF
+
+ sampler2D _TextGlyphs;
+ float4 _TextGlyphs_ST;
+ float4 _TextGlyphs_TexelSize;
+ float _TextFPSUV;
+ float _TextTimeUV;
+ float _TextPositionUV;
+ float _TextPixelRange;
+
+ float _TextFPSEnabled;
+ float _TextPositionEnabled;
+ float _TextTimeEnabled;
+
+
+ float4 _TextFPSColor;
+ half _TextFPSEmissionStrength;
+ fixed4 _TextFPSPadding;
+ half2 _TextFPSOffset;
+ half2 _TextFPSScale;
+ half _TextFPSRotation;
+
+ fixed _TextPositionVertical;
+ float4 _TextPositionColor;
+ half _TextPositionEmissionStrength;
+ fixed4 _TextPositionPadding;
+ half2 _TextPositionOffset;
+ half2 _TextPositionScale;
+ half _TextPositionRotation;
+
+ float4 _TextTimeColor;
+ half _TextTimeEmissionStrength;
+ fixed4 _TextTimePadding;
+ half2 _TextTimeOffset;
+ half2 _TextTimeScale;
+ half _TextTimeRotation;
+
+ #define glyphWidth 0.0625
+
+ #define ASCII_LEFT_PARENTHESIS 40
+ #define ASCII_RIGHT_PARENTHESIS 41
+ #define ASCII_POSITIVE 43
+ #define ASCII_PERIOD 46
+ #define ASCII_NEGATIVE 45
+ #define ASCII_COMMA 44
+ #define ASCII_E 69
+ #define ASCII_F 70
+ #define ASCII_I 73
+ #define ASCII_M 77
+ #define ASCII_O 79
+ #define ASCII_P 80
+ #define ASCII_S 83
+ #define ASCII_T 54
+ #define ASCII_SEMICOLON 58
+
+ float3 globalTextEmission;
+
+ half2 getAsciiCoordinate(float index)
+ {
+ return half2((index - 1) / 16, 1 - ((floor(index / 16 - glyphWidth)) / 16));
+ }
+
+ float median(float r, float g, float b)
+ {
+ return max(min(r, g), min(max(r, g), b));
+ }
+
+ void ApplyPositionText(inout float4 albedo, float2 uv)
+ {
+ float3 cameraPos = clamp(getCameraPosition(), -999, 999);
+ float3 absCameraPos = abs(cameraPos);
+ float totalCharacters = 20;
+ float positionArray[20];
+ positionArray[0] = cameraPos.x >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[1] = floor((absCameraPos.x * .01) % 10) + 48;
+ positionArray[2] = floor((absCameraPos.x * .1) % 10) + 48;
+ positionArray[3] = floor(absCameraPos.x % 10) + 48;
+ positionArray[4] = ASCII_PERIOD;
+ positionArray[5] = floor((absCameraPos.x * 10) % 10) + 48;
+ positionArray[6] = ASCII_COMMA;
+ positionArray[7] = cameraPos.y >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[8] = floor((absCameraPos.y * .01) % 10) + 48;
+ positionArray[9] = floor((absCameraPos.y * .1) % 10) + 48;
+ positionArray[10] = floor(absCameraPos.y % 10) + 48;
+ positionArray[11] = ASCII_PERIOD;
+ positionArray[12] = floor((absCameraPos.y * 10) % 10) + 48;
+ positionArray[13] = ASCII_COMMA;
+ positionArray[14] = cameraPos.z >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[15] = floor((absCameraPos.z * .01) % 10) + 48;
+ positionArray[16] = floor((absCameraPos.z * .1) % 10) + 48;
+ positionArray[17] = floor(absCameraPos.z % 10) + 48;
+ positionArray[18] = ASCII_PERIOD;
+ positionArray[19] = floor((absCameraPos.z * 10) % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if (uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(positionArray[currentCharacter]);
+
+ float2 startUV = float2(1 / totalCharacters * currentCharacter, 0);
+ float2 endUV = float2(1 / totalCharacters * (currentCharacter + 1), 1);
+
+ fixed4 textPositionPadding = float4(0,0,0,0);
+ textPositionPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, startUV, endUV, float2(glyphPos.x + textPositionPadding.x, glyphPos.y - glyphWidth + textPositionPadding.y), float2(glyphPos.x + glyphWidth - textPositionPadding.z, glyphPos.y - textPositionPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textPositionPadding.z - .001 || uv.x < glyphPos.x + textPositionPadding.x + .001 || uv.y > glyphPos.y - textPositionPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textPositionPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTimeText(inout float4 albedo, float2 uv)
+ {
+ float instanceTime = _Time.y;
+ float hours = instanceTime / 3600;
+ float minutes = (instanceTime / 60) % 60;
+ float seconds = instanceTime % 60;
+ float totalCharacters = 8;
+ float timeArray[8];
+ timeArray[0] = floor((hours * .1) % 10) + 48;
+ timeArray[1] = floor(hours % 10) + 48;
+ timeArray[2] = ASCII_SEMICOLON;
+ timeArray[3] = floor((minutes * .1) % 10) + 48;
+ timeArray[4] = floor(minutes % 10) + 48;
+ timeArray[5] = ASCII_SEMICOLON;
+ timeArray[6] = floor((seconds * .1) % 10) + 48;
+ timeArray[7] = floor(seconds % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(timeArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+ fixed4 textTimePadding = float4(0,0,0,0);
+ textTimePadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textTimePadding.x, glyphPos.y - glyphWidth + textTimePadding.y), float2(glyphPos.x + glyphWidth - textTimePadding.z, glyphPos.y - textTimePadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textTimePadding.z - .001 || uv.x < glyphPos.x + textTimePadding.x + .001 || uv.y > glyphPos.y - textTimePadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textTimePadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyFPSText(inout float4 albedo, float2 uv)
+ {
+ float smoothDeltaTime = clamp(unity_DeltaTime.w, 0, 999);
+ float totalCharacters = 7;
+ float fpsArray[7];
+ fpsArray[0] = ASCII_F;
+ fpsArray[1] = ASCII_P;
+ fpsArray[2] = ASCII_S;
+ fpsArray[3] = ASCII_SEMICOLON;
+ fpsArray[4] = floor((smoothDeltaTime * .01) % 10) + 48;
+ fpsArray[5] = floor((smoothDeltaTime * .1) % 10) + 48;
+ fpsArray[6] = floor(smoothDeltaTime % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(fpsArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+
+ fixed4 textFPSPadding = float4(0,0,0,0);
+ textFPSPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textFPSPadding.x, glyphPos.y - glyphWidth + textFPSPadding.y), float2(glyphPos.x + glyphWidth - textFPSPadding.z, glyphPos.y - textFPSPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textFPSPadding.z - .001 || uv.x < glyphPos.x + textFPSPadding.x + .001 || uv.y > glyphPos.y - textFPSPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textFPSPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,1,1,1).rgb, opacity * float4(1,1,1,1).a);
+ globalTextEmission += float4(1,1,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTextOverlayColor(inout float4 albedo, inout float3 textOverlayEmission)
+ {
+ globalTextEmission = 0;
+ half positionalOpacity = 0;
+ #ifdef EFFECT_BUMP
+
+ if(float(0))
+ {
+ ApplyFPSText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyPositionText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyTimeText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ textOverlayEmission = globalTextEmission;
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
new file mode 100644
index 00000000..f1b076de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c6ca69a39e951ce4aa8da9255f7cd5af
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
new file mode 100644
index 00000000..ecac0805
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
@@ -0,0 +1,33 @@
+#ifndef POI_MACROS
+ #define POI_MACROS
+
+ #define POI_TEXTURE_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_TEXTURE(tex) UNITY_DECLARE_TEX2D(tex##); float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_NORMAL_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV; float tex##Scale
+
+ #define POI2D_SAMPLER_PAN(tex, texSampler, uv, pan) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D_SAMPLER(tex, texSampler, uv) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex)))
+ #define POI2D_PAN(tex, uv, pan) (tex2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D(tex, uv) (tex2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D(tex, uv) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D_PAN(tex, uv, pan) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+
+ #ifdef POINT
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ unityShadowCoord3 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1)).xyz; \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = tex2D(_LightTexture0, dot(lightCoord, lightCoord).rr).r;
+ #endif
+
+ #ifdef SPOT
+ #if !defined(UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS)
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1))
+ #else
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = input._LightCoord
+ #endif
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ DECLARE_LIGHT_COORD(input, worldPos); \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = (lightCoord.z > 0) * UnitySpotCookie(lightCoord) * UnitySpotAttenuate(lightCoord.xyz);
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
new file mode 100644
index 00000000..418878ff
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7d0f433ebe2321441a490f68087c88d9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
new file mode 100644
index 00000000..270384af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
@@ -0,0 +1,147 @@
+#ifndef POI_MAINTEXTURE
+ #define POI_MAINTEXTURE
+
+
+
+ POI_TEXTURE_NOSAMPLER(_AlphaMask);
+ POI_TEXTURE_NOSAMPLER(_MainFadeTexture);
+ float4 _Color;
+ float _MainVertexColoring;
+ float _MainUseVertexColorAlpha;
+ float _Saturation;
+ float2 _MainDistanceFade;
+ half _MainMinAlpha;
+ float _MainHueShift;
+ #ifdef COLOR_GRADING_HDR
+ POI_TEXTURE_NOSAMPLER(_MainHueShiftMask);
+ float _MainHueShiftToggle;
+ float _MainHueShiftSpeed;
+ float _MainHueShiftReplace;
+ #endif
+
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailTex);
+ half _DetailTexIntensity;
+ half3 _DetailTint;
+ float _DetailBrightness;
+ #endif
+ //globals
+ float alphaMask;
+ half3 diffColor;
+
+ #include "CGI_PoiBackFace.cginc"
+
+ float3 wireframeEmission;
+
+ inline FragmentCommonData SpecularSetup(float4 i_tex, inout float4 albedo)
+ {
+ half4 specGloss = 0;
+ half3 specColor = specGloss.rgb;
+ half smoothness = specGloss.a;
+
+ half oneMinusReflectivity;
+ diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specColor, /*out*/ oneMinusReflectivity);
+
+ FragmentCommonData o = (FragmentCommonData)0;
+ o.diffColor = diffColor;
+ o.specColor = specColor;
+ o.oneMinusReflectivity = oneMinusReflectivity;
+ o.smoothness = smoothness;
+ return o;
+ }
+
+ inline FragmentCommonData FragmentSetup(float4 i_tex, half3 i_viewDirForParallax, float3 i_posWorld, inout float4 albedo)
+ {
+ i_tex = i_tex;
+
+ FragmentCommonData o = SpecularSetup(i_tex, albedo);
+ o.normalWorld = float4(0, 0, 0, 1);
+ o.eyeVec = poiCam.viewDir;
+ o.posWorld = i_posWorld;
+
+ // NOTE: shader relies on pre-multiply alpha-blend (float(1) = One, float(0) = OneMinusSrcAlpha)
+ o.diffColor = PreMultiplyAlpha(o.diffColor, 1, o.oneMinusReflectivity, /*out*/ o.alpha);
+ return o;
+ }
+
+ void initTextureData(inout float4 albedo, inout float4 mainTexture, inout float3 backFaceEmission, inout float3 dissolveEmission, in half3 detailMask)
+ {
+ dissolveEmission = 0;
+
+ #if (defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ #endif
+
+ alphaMask = POI2D_SAMPLER_PAN(_AlphaMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ mainTexture.a *= alphaMask;
+
+ #ifndef POI_SHADOW
+ albedo = float4(lerp(mainTexture.rgb, dot(mainTexture.rgb, float3(0.3, 0.59, 0.11)), -float(0)) * max(float4(1,1,1,1).rgb, float3(0.000000001, 0.000000001, 0.000000001)) * lerp(1, GammaToLinearSpace(poiMesh.vertexColor.rgb), float(0)), mainTexture.a * max(float4(1,1,1,1).a, 0.0000001));
+
+ #ifdef POI_LIGHTING
+ applyShadowTexture(albedo);
+ #endif
+
+ albedo *= lerp(1, poiMesh.vertexColor.a, float(0));
+ #ifdef POI_RGBMASK
+ albedo.rgb = calculateRGBMask(albedo.rgb);
+ #endif
+
+ albedo.a = saturate(float(0) + albedo.a);
+
+ wireframeEmission = 0;
+ #ifdef POI_WIREFRAME
+ applyWireframe(wireframeEmission, albedo);
+ #endif
+ float backFaceDetailIntensity = 1;
+
+ float mixedHueShift = float(0);
+ applyBackFaceTexture(backFaceDetailIntensity, mixedHueShift, albedo, backFaceEmission);
+
+ #ifdef POI_FUR
+ calculateFur();
+ #endif
+
+ #ifdef COLOR_GRADING_HDR
+ float hueShiftAlpha = POI2D_SAMPLER_PAN(_MainHueShiftMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if(float(1))
+ {
+ albedo.rgb = lerp(albedo.rgb, hueShift(albedo.rgb, mixedHueShift + float(0) * _Time.x), hueShiftAlpha);
+ }
+ else
+ {
+ albedo.rgb = hueShift(albedo.rgb, frac((mixedHueShift - (1 - hueShiftAlpha) + float(0) * _Time.x)));
+ }
+ #endif
+ #ifdef FINALPASS
+ half3 detailTexture = POI2D_SAMPLER_PAN(_DetailTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb * float4(1,1,1,1).rgb;
+ albedo.rgb *= LerpWhiteTo(detailTexture * float(1) * unity_ColorSpaceDouble.rgb, detailMask.r * float(1) * backFaceDetailIntensity);
+ #endif
+ albedo.rgb = saturate(albedo.rgb);
+
+ #ifdef POI_HOLOGRAM
+ ApplyHoloAlpha(albedo);
+ #endif
+
+ s = FragmentSetup(float4(poiMesh.uv[0], 1, 1), poiCam.viewDir, poiMesh.worldPos, albedo);
+ #endif
+
+ #ifdef DISTORT
+ calculateDissolve(albedo, dissolveEmission);
+ #endif
+ }
+
+ void distanceFade(inout float4 albedo)
+ {
+ half fadeMap = POI2D_SAMPLER_PAN(_MainFadeTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(fadeMap)
+ {
+ half fadeValue = max(smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, poiCam.distanceToVert), float(0));
+ albedo.a *= fadeValue;
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
new file mode 100644
index 00000000..c8b6eef0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 72e77435d69166049b09633c64a56d67
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
new file mode 100644
index 00000000..3aa6d6b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
@@ -0,0 +1,115 @@
+#ifndef MATCAP
+ #define MATCAP
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap); float4 _Matcap_ST;
+ POI_TEXTURE_NOSAMPLER(_MatcapMask);
+ float _MatcapMaskInvert;
+ float _MatcapBorder;
+ float4 _MatcapColor;
+ float _MatcapIntensity;
+ float _MatcapReplace;
+ float _MatcapMultiply;
+ float _MatcapAdd;
+ float _MatcapEnable;
+ float _MatcapLightMask;
+ float _MatcapEmissionStrength;
+ float _MatcapNormal;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap2);float4 _Matcap2_ST;
+ POI_TEXTURE_NOSAMPLER(_Matcap2Mask);
+ float _Matcap2MaskInvert;
+ float _Matcap2Border;
+ float4 _Matcap2Color;
+ float _Matcap2Intensity;
+ float _Matcap2Replace;
+ float _Matcap2Multiply;
+ float _Matcap2Add;
+ float _Matcap2Enable;
+ float _Matcap2LightMask;
+ float _Matcap2EmissionStrength;
+ float _Matcap2Normal;
+
+ void blendMatcap(inout float4 finalColor, float add, float multiply, float replace, float4 matcapColor, float matcapMask, inout float3 matcapEmission, float emissionStrength
+ #ifdef POI_LIGHTING
+ , float matcapLightMask
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , uint blackLightMaskIndex
+ #endif
+ )
+ {
+ #ifdef POI_LIGHTING
+ if (matcapLightMask)
+ {
+ matcapMask *= lerp(1, poiLight.rampedLightMap, matcapLightMask);
+ }
+ #endif
+ #ifdef POI_BLACKLIGHT
+ if(blackLightMaskIndex != 4)
+ {
+ matcapMask *= blackLightMask[blackLightMaskIndex];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor.rgb, matcapColor.rgb, replace * matcapMask * matcapColor.a);
+ finalColor.rgb *= lerp(1, matcapColor.rgb, multiply * matcapMask * matcapColor.a);
+ finalColor.rgb += matcapColor.rgb * add * matcapMask * matcapColor.a;
+ matcapEmission += matcapColor.rgb * emissionStrength * matcapMask * matcapColor.a;
+ }
+
+ void applyMatcap(inout float4 finalColor, inout float3 matcapEmission)
+ {
+ float4 matcap = 0;
+ float matcapMask = 0;
+ float4 matcap2 = 0;
+ float matcap2Mask = 0;
+
+ // Both matcaps use the same coordinates
+ half3 worldViewUp = normalize(half3(0, 1, 0) - poiCam.viewDir * dot(poiCam.viewDir, half3(0, 1, 0)));
+ half3 worldViewRight = normalize(cross(poiCam.viewDir, worldViewUp));
+
+ // Matcap 1
+ half2 matcapUV = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+
+ matcap = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap, _MainTex, TRANSFORM_TEX(matcapUV, _Matcap)) * float4(1,1,1,1);
+ matcap.rgb *= float(1);
+ matcapMask = POI2D_SAMPLER_PAN(_MatcapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if (float(0))
+ {
+ matcapMask = 1 - matcapMask;
+ }
+
+ blendMatcap(finalColor, float(0), float(0), float(1), matcap, matcapMask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap
+ #endif
+ );
+
+ // Matcap 2
+
+ if (float(0))
+ {
+ half2 matcapUV2 = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+ matcap2 = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap2, _MainTex, TRANSFORM_TEX(matcapUV2, _Matcap2)) * float4(1,1,1,1);
+ matcap2.rgb *= float(1);
+ matcap2Mask = POI2D_SAMPLER_PAN(_Matcap2Mask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(float(0))
+ {
+ matcap2Mask = 1 - matcap2Mask;
+ }
+ blendMatcap(finalColor, float(0), float(0), float(0), matcap2, matcap2Mask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap2
+ #endif
+ );
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
new file mode 100644
index 00000000..af269160
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 521f90f354a582f47b2d0c570fd7c43c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
new file mode 100644
index 00000000..b2d07a38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
@@ -0,0 +1,104 @@
+/*
+MIT License
+
+Copyright (c) 2019 wraikny
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+VertexTransformShader is dependent on:
+*/
+
+#ifndef POI_MATH
+ #define POI_MATH
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float4 quaternion_conjugate(float4 v)
+ {
+ return float4(
+ v.x, -v.yzw
+ );
+ }
+
+ float4 quaternion_mul(float4 v1, float4 v2)
+ {
+ float4 result1 = (v1.x * v2 + v1 * v2.x);
+
+ float4 result2 = float4(
+ - dot(v1.yzw, v2.yzw),
+ cross(v1.yzw, v2.yzw)
+ );
+
+ return float4(result1 + result2);
+ }
+
+ // angle : radians
+ float4 get_quaternion_from_angle(float3 axis, float angle)
+ {
+ return float4(
+ cos(angle / 2.0),
+ normalize(axis) * sin(angle / 2.0)
+ );
+ }
+
+ float4 quaternion_from_vector(float3 inVec)
+ {
+ return float4(0.0, inVec);
+ }
+
+ float degree_to_radius(float degree)
+ {
+ return(
+ degree / 180.0 * pi
+ );
+ }
+
+ float3 rotate_with_quaternion(float3 inVec, float3 rotation)
+ {
+ float4 qx = get_quaternion_from_angle(float3(1, 0, 0), degree_to_radius(rotation.x));
+ float4 qy = get_quaternion_from_angle(float3(0, 1, 0), degree_to_radius(rotation.y));
+ float4 qz = get_quaternion_from_angle(float3(0, 0, 1), degree_to_radius(rotation.z));
+
+ #define MUL3(A, B, C) quaternion_mul(quaternion_mul((A), (B)), (C))
+ float4 quaternion = normalize(MUL3(qx, qy, qz));
+ float4 conjugate = quaternion_conjugate(quaternion);
+
+ float4 inVecQ = quaternion_from_vector(inVec);
+
+ float3 rotated = (
+ MUL3(quaternion, inVecQ, conjugate)
+ ).yzw;
+
+ return rotated;
+ }
+
+ float4 transform(float4 input, float4 pos, float4 rotation, float4 scale)
+ {
+ input.rgb *= (scale.xyz * scale.w);
+ input = float4(
+ rotate_with_quaternion(input.xyz, rotation.xyz * rotation.w)
+ + (pos.xyz * pos.w),
+ input.w
+ );
+ return input;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
new file mode 100644
index 00000000..3a12ee9f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ca636b1d1e043e5459910eb3f0a0ec9e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
new file mode 100644
index 00000000..916f65eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
@@ -0,0 +1,130 @@
+#ifndef POI_METAL
+ #define POI_METAL
+
+ samplerCUBE _CubeMap;
+ float _SampleWorld;
+ POI_TEXTURE_NOSAMPLER(_MetallicMask);
+ POI_TEXTURE_NOSAMPLER(_SmoothnessMask);
+ float _Metallic;
+ float _InvertSmoothness;
+ float _Smoothness;
+ float _EnableMetallic;
+ float3 _MetalReflectionTint;
+ POI_TEXTURE_NOSAMPLER(_MetallicTintMap);
+
+ float3 finalreflections;
+ float metalicMap;
+ float3 reflection;
+ float roughness;
+ float lighty_boy_uwu_var;
+
+ bool shouldMetalHappenBeforeLighting()
+ {
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool probeExists = !(unity_SpecCube0_HDR.a == 0 && envSample.a == 0);
+ return probeExists && !float(0);
+ }
+
+ float3 fresnelRelflection(in float4 albedo)
+ {
+ half3 dotNV = 1 - abs(poiLight.nDotV);
+ half f = dotNV * dotNV * dotNV * dotNV;
+ //f *= i_sold.fresnel;
+ return lerp(lerp(DielectricSpec.rgb, albedo.rgb, metalicMap), saturate(1 - roughness + metalicMap), f);
+ }
+
+ void calculateMetallicness()
+ {
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ }
+
+ void ApplyMetallics(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflection = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflection = probe0;
+ }
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+
+ void ApplyMetallicsFake(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+ reflection = texCUBElod(_CubeMap, float4(poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
new file mode 100644
index 00000000..d1aa7338
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 70c9b184e2827f24abe9fa7a13c6c8e6
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
new file mode 100644
index 00000000..8bb16398
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
@@ -0,0 +1,77 @@
+#ifndef POI_MIRROR
+ #define POI_MIRROR
+
+ float _Mirror;
+ float _EnableMirrorTexture;
+ POI_TEXTURE_NOSAMPLER(_MirrorTexture);
+
+
+ void applyMirrorRenderVert(inout float4 vertex)
+ {
+
+ if (float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ void applyMirrorRenderFrag()
+ {
+
+ if(float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ #if(defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ void applyMirrorTexture(inout float4 mainTexture)
+ {
+
+ if(float(0))
+ {
+ if(IsInMirror())
+ {
+ mainTexture = POI2D_SAMPLER_PAN(_MirrorTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ }
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
new file mode 100644
index 00000000..150348e9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f4bb36032a09ed8438e5a33caa2654c3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
new file mode 100644
index 00000000..62e63c91
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
@@ -0,0 +1,107 @@
+float _OutlineRimLightBlend;
+float _OutlineLit;
+float _OutlineTintMix;
+float2 _MainTexPan;
+float _MainTextureUV;
+
+float4 frag(v2f i, uint facing: SV_IsFrontFace): COLOR
+{
+ float4 finalColor = 1;
+
+ if (float(0))
+ {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ float3 finalEmission = 0;
+ float4 albedo = 1;
+
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ float3 uselessData0;
+ float3 uselessData1;
+ initTextureData(albedo, mainTexture, uselessData0, uselessData1, detailMask);
+
+
+ fixed4 col = mainTexture;
+ float alphaMultiplier = smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(getCameraPosition(), i.worldPos));
+ float OutlineMask = tex2D(_OutlineMask, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0)).r;
+ clip(OutlineMask * float(0) - 0.001);
+
+ col = col * 0.00000000001 + tex2D(_OutlineTexture, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineTexture) + _Time.x * float4(0,0,0,0) );
+ col.a *= albedo.a;
+ col.a *= alphaMultiplier;
+
+ #ifdef POI_RANDOM
+ col.a *= i.angleAlpha;
+ #endif
+
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ col.a *= float4(1,1,1,1).a;
+
+
+ if(float(0) == 1)
+ {
+ applyDithering(col);
+ }
+
+ clip(col.a - float(0.5));
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+
+ if(float(0) == 1)
+ {
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ col.rgb = mainTexture.rgb;
+ }
+ else if(float(0) == 2)
+ {
+ col.rgb = lerp(col.rgb, poiLight.color, float(0));
+ }
+ col.rgb *= float4(1,1,1,1).rgb;
+
+ if(float(0) == 1)
+ {
+ col.rgb = lerp(col.rgb, mainTexture.rgb, float(0));
+ }
+
+ finalColor = col;
+
+ #ifdef POI_LIGHTING
+
+ if(float(1))
+ {
+ finalColor.rgb *= calculateFinalLighting(finalColor.rgb, finalColor);
+ }
+ #endif
+ finalColor.rgb += (col.rgb * float(0));
+ }
+ else
+ {
+ clip(-1);
+ }
+ return finalColor;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
new file mode 100644
index 00000000..04d54d43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9727184d3b2c37141ace007b9b33e22f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
new file mode 100644
index 00000000..900e9e43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
@@ -0,0 +1,105 @@
+#ifndef OutlineVert
+ #define OutlineVert
+
+ #include "CGI_PoiV2F.cginc"
+
+ float _OutlineMode;
+ float4 _OutlinePersonaDirection;
+ float4 _OutlineDropShadowOffset;
+ float _OutlineUseVertexColors;
+ float _OutlineFixedSize;
+ float _commentIfZero_EnableOutlinePass;
+
+ sampler2D _OutlineMask; float4 _OutlineMask_ST; float2 _OutlineMaskPan; float _OutlineMaskUV;
+ v2f vert(appdata v)
+ {
+
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+
+ float2 uvArray[4];
+ uvArray[0] = o.uv0.xy;
+ uvArray[1] = o.uv0.zw;
+ uvArray[2] = o.uv1.xy;
+ uvArray[3] = o.uv1.zw;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ o.uv0.xy = v.uv0 + _OutlineGlobalPan.xy * _Time.y;
+ float outlineMask = 1;
+
+ outlineMask = poiMax(tex2Dlod(_OutlineMask, float4(TRANSFORM_TEX(uvArray[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0), 0, 0)).rgb);
+
+ if (float(0) == 2)
+ {
+ outlineMask *= v.color.r;
+ }
+
+
+ if(float(0) != 1)
+ {
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ }
+ else
+ {
+ o.normal = UnityObjectToWorldNormal(v.color);
+ }
+
+
+ half offsetMultiplier = 1;
+ half distanceOffset = 1;
+
+ if(float(0))
+ {
+ distanceOffset *= distance(_WorldSpaceCameraPos, mul(unity_ObjectToWorld, v.vertex).xyz);
+ }
+
+ float3 offset = o.normal * (float(0) * float(0) / 100) * outlineMask * distanceOffset;
+
+
+ if(float(0) == 2)
+ {
+ float3 lightDirection = poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ offsetMultiplier = saturate(dot(lightDirection, o.normal));
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 3)
+ {
+ half3 viewNormal = mul((float3x3)UNITY_MATRIX_V, o.normal);
+ offsetMultiplier = saturate(dot(viewNormal.xy, normalize(float4(1,0,0,0).xy)));
+
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 4)
+ {
+ offset = mul((float3x3)transpose(UNITY_MATRIX_V), float4(1,0,0,0));
+ offset *= distanceOffset;
+ }
+
+ o.worldPos = mul(unity_ObjectToWorld, v.vertex) + float4(offset, 0);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.pos = UnityWorldToClipPos(o.worldPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0);
+ UNITY_TRANSFER_FOG(o, o.pos);
+ return o;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
new file mode 100644
index 00000000..540bcbbf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: dfddf697e639b7f4293e2a860befc0a4
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
new file mode 100644
index 00000000..da64a89d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
@@ -0,0 +1,63 @@
+#ifndef PANOSPHERE
+ #define PANOSPHERE
+
+ sampler2D _PanosphereTexture; float4 _PanosphereTexture_ST;
+ POI_TEXTURE_NOSAMPLER(_PanoMask);
+ float _PanoEmission;
+ float _PanoBlend;
+ float4 _PanosphereColor;
+ float3 _PanospherePan;
+ float _PanoToggle;
+ float _PanoCubeMapToggle;
+ float _PanoInfiniteStereoToggle;
+ samplerCUBE _PanoCubeMap; half4 _PanoCubeMap_HDR;
+
+ float3 panoColor;
+ float panoMask;
+
+ float2 projectIt(float3 coords)
+ {
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude + _Time.y * float4(0,0,0,0).x, latitude + _Time.y * float4(0,0,0,0).y) * float2(1.0 / UNITY_PI, 1.0 / UNITY_PI);
+ sphereCoords = float2(1.0, 1.0) - sphereCoords;
+ return(sphereCoords + float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).xy) * float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).zw;
+ }
+
+ void applyPanosphereColor(inout float4 albedo, inout float3 panosphereEmission)
+ {
+ panoMask = POI2D_SAMPLER_PAN(_PanoMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskPanosphere != 4)
+ {
+ panoMask *= blackLightMask[_BlackLightMaskPanosphere];
+ }
+ #endif
+
+
+ if(float(0))
+ {
+ float3 cubeUV = mul(poiRotationMatrixFromAngles(float4(0,0,0,0).xyz * _Time.y), float4(-poiCam.viewDir, 1));
+ half4 cubemap = texCUBE(_PanoCubeMap, cubeUV);
+ panoColor = DecodeHDR(cubemap, _PanoCubeMap_HDR);
+ }
+ else
+ {
+ float2 uv = projectIt(normalize(lerp(getCameraPosition().xyz, poiCam.worldPos.xyz, float(0)) - poiMesh.worldPos.xyz) * - 1);
+
+ float2 ddxuv = ddx(uv);
+ float2 ddyuv = ddy(uv);
+ if(any(fwidth(uv) > .5))
+ {
+ ddxuv = ddyuv = 0.001;
+ }
+ panoColor = tex2D(_PanosphereTexture, TRANSFORM_TEX(uv, _PanosphereTexture), ddxuv, ddyuv).rgb * float4(1,1,1,1).rgb;
+ }
+ panosphereEmission = panoColor * float(0) * panoMask * float(0);
+ albedo.rgb = lerp(albedo.rgb, panoColor, float(0) * panoMask);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
new file mode 100644
index 00000000..f729a06b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 71ca435d900dfcc4b98e242f1f013c98
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
new file mode 100644
index 00000000..6cd94900
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
@@ -0,0 +1,143 @@
+#ifndef POI_PARALLAX
+ #define POI_PARALLAX
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxHeightMap); float4 _ParallaxHeightMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxHeightMapMask);
+ float2 _ParallaxHeightMapPan;
+ float _ParallaxStrength;
+ float _ParallaxHeightMapEnabled;
+ float _ParallaxUV;
+
+ //Internal
+ float _ParallaxInternalMapEnabled;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxInternalMap); float4 _ParallaxInternalMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxInternalMapMask);
+ float _ParallaxInternalIterations;
+ float _ParallaxInternalMinDepth;
+ float _ParallaxInternalMaxDepth;
+ float _ParallaxInternalMinFade;
+ float _ParallaxInternalMaxFade;
+ float4 _ParallaxInternalMinColor;
+ float4 _ParallaxInternalMaxColor;
+ float4 _ParallaxInternalPanSpeed;
+ float4 _ParallaxInternalPanDepthSpeed;
+ float _ParallaxInternalHeightmapMode;
+ float _ParallaxInternalHeightFromAlpha;
+
+ float GetParallaxHeight(float2 uv)
+ {
+ return clamp(UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxHeightMap, _MainTex, TRANSFORM_TEX(uv, _ParallaxHeightMap) + _Time.x * float4(0,0,0,0)).g, 0, .99999);
+ }
+ /*
+ float2 ParallaxOffset(float2 viewDir)
+ {
+ float height = GetParallaxHeight();
+ height -= 0.5;
+ height *= float(0);
+ return viewDir * height;
+ }
+ */
+ float2 ParallaxRaymarching(float2 viewDir)
+ {
+ float2 uvOffset = 0;
+ float stepSize = 0.1;
+ float2 uvDelta = viewDir * (stepSize * float(0));
+
+ float stepHeight = 1;
+ float surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)]);
+
+
+ float2 prevUVOffset = uvOffset;
+ float prevStepHeight = stepHeight;
+ float prevSurfaceHeight = surfaceHeight;
+
+ for (int i = 1; i < 10 && stepHeight > surfaceHeight; i ++)
+ {
+ prevUVOffset = uvOffset;
+ prevStepHeight = stepHeight;
+ prevSurfaceHeight = surfaceHeight;
+
+ uvOffset -= uvDelta;
+ stepHeight -= stepSize;
+ surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)] + uvOffset);
+ }
+
+ float prevDifference = prevStepHeight - prevSurfaceHeight;
+ float difference = surfaceHeight - stepHeight;
+ float t = prevDifference / (prevDifference + difference);
+ uvOffset = prevUVOffset -uvDelta * t;
+
+ return uvOffset *= POI2D_SAMPLER_PAN(_ParallaxHeightMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+
+ void calculateandApplyParallax()
+ {
+
+ if (float(0))
+ {
+ float2 parallaxOffset = ParallaxRaymarching(poiCam.tangentViewDir.xy);
+
+ if(float(0) == 0)
+ {
+ poiMesh.uv[0] += parallaxOffset;
+ }
+
+ if(float(0) == 1)
+ {
+ poiMesh.uv[1] += parallaxOffset;
+ }
+
+ if(float(0) == 2)
+ {
+ poiMesh.uv[2] += parallaxOffset;
+ }
+
+ if(float(0) == 3)
+ {
+ poiMesh.uv[3] += parallaxOffset;
+ }
+ }
+ }
+
+ void calculateAndApplyInternalParallax(inout float4 finalColor)
+ {
+ #if defined(_PARALLAXMAP)
+
+ if(float(0))
+ {
+ float3 parallax = 0;
+
+ for (int j = float(1); j > 0; j --)
+ {
+ float ratio = (float)j / float(1);
+ float2 parallaxOffset = _Time.y * (float4(0,0,0,0) + (1 - ratio) * float4(0,0,0,0));
+ float fade = lerp(float(0), float(1), ratio);
+ float4 parallaxColor = UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxInternalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _ParallaxInternalMap) + lerp(float(0), float(1), ratio) * - poiCam.tangentViewDir.xy + parallaxOffset);
+ float3 parallaxTint = lerp(float4(1,1,1,1), float4(1,1,1,1), ratio);
+ float parallaxHeight;
+ if(float(0))
+ {
+ parallaxTint *= parallaxColor.rgb;
+ parallaxHeight = parallaxColor.a;
+ }
+ else
+ {
+ parallaxHeight = parallaxColor.r;
+ }
+ //float parallaxColor *= lerp(float4(1,1,1,1), float4(1,1,1,1), 1 - ratio);
+
+ if (float(0) == 1)
+ {
+ parallax = lerp(parallax, parallaxTint * fade, parallaxHeight >= 1 - ratio);
+ }
+ else
+ {
+ parallax += parallaxTint * parallaxHeight * fade;
+ }
+ }
+ //parallax /= float(1);
+ finalColor.rgb += parallax * POI2D_SAMPLER_PAN(_ParallaxInternalMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
new file mode 100644
index 00000000..869c3353
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ebd94dfcf10070f48b15529e511cb3d9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
new file mode 100644
index 00000000..81230e8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
@@ -0,0 +1,233 @@
+/*
+USED---------------------------------------------
+"_PARALLAXMAP",
+"_REQUIRE_UV2",
+"_SUNDISK_NONE",
+"_DETAIL_MULX2",
+"_GLOSSYREFLECTIONS_OFF",
+"_METALLICGLOSSMAP",
+"_COLORADDSUBDIFF_ON",
+"_SPECGLOSSMAP",
+"_TERRAIN_NORMAL_MAP",
+"_SUNDISK_SIMPLE",
+"_EMISSION",
+"_COLORCOLOR_ON",
+"_COLOROVERLAY_ON",
+"_ALPHAMODULATE_ON",
+"_SUNDISK_HIGH_QUALITY",
+"_MAPPING_6_FRAMES_LAYOUT",
+"_NORMALMAP"
+"EFFECT_BUMP",
+"BLOOM",
+"BLOOM_LOW",
+"GRAIN",
+"DEPTH_OF_FIELD",
+"USER_LUT",
+"CHROMATIC_ABERRATION_LOW",
+"BLOOM_LENS_DIRT",
+"_FADING_ON",
+"CHROMATIC_ABERRATION",
+"DISTORT",
+"GEOM_TYPE_BRANCH",
+"_SPECULARHIGHLIGHTS_OFF",
+"_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A",
+"EFFECT_HUE_VARIATION",
+"GEOM_TYPE_LEAF",
+"GEOM_TYPE_MESH",
+"FINALPASS",
+"AUTO_EXPOSURE"
+"VIGNETTE",
+"VIGNETTE_MASKED",
+"COLOR_GRADING_HDR",
+
+UNUSED-------------------------------------------
+"_ALPHABLEND_ON",
+"_ALPHAPREMULTIPLY_ON",
+"_ALPHATEST_ON",
+"GEOM_TYPE_BRANCH_DETAIL",
+"GEOM_TYPE_FROND",
+"PIXELSNAP_ON",
+"SOFTPARTICLES_ON",
+"DITHERING",
+"TONEMAPPING_NEUTRAL",
+"TONEMAPPING_FILMIC",
+"TONEMAPPING_ACES",
+"TONEMAPPING_CUSTOM",
+"DEPTH_OF_FIELD_COC_VIEW",
+"COLOR_GRADING",
+"COLOR_GRADING_LOG_VIEW",
+"VIGNETTE_CLASSIC",
+"COLOR_GRADING_HDR_3D",
+
+DO NOT USE -----------------------------------------
+"BILLBOARD_FACE_CAMERA_POS",
+*/
+
+
+#ifndef POI_PASS
+ #define POI_PASS
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #ifdef POI_META_PASS
+ #include "UnityMetaPass.cginc"
+ #endif
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+
+ #include "CGI_PoiSpawnInVert.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+
+ #ifdef BLOOM_LOW
+ #include "CGI_PoiBulge.cginc"
+ #endif
+
+ #include "CGI_PoiVert.cginc"
+
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+
+ #include "CGI_PoiDithering.cginc"
+
+ #ifdef _PARALLAXMAP
+ #include "CGI_PoiParallax.cginc"
+ #endif
+
+ #ifdef USER_LUT
+ #include "CGI_PoiUVDistortion.cginc"
+ #endif
+
+ #ifdef VIGNETTE
+ #include "CGI_PoiRGBMask.cginc"
+ #endif
+
+ #include "CGI_PoiData.cginc"
+
+ #ifdef _SPECULARHIGHLIGHTS_OFF
+ #include "CGI_PoiBlackLight.cginc"
+ #endif
+
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+
+ #ifdef DEPTH_OF_FIELD
+ #include "CGI_PoiHologram.cginc"
+ #endif
+
+ #ifdef BLOOM_LENS_DIRT
+ #include "CGI_PoiIridescence.cginc"
+ #endif
+
+
+ #ifdef FUR
+ #include "CGI_PoiFur.cginc"
+ #include "CGI_PoiGeomFur.cginc"
+ #endif
+
+ #ifdef VIGNETTE_MASKED
+ #include "CGI_PoiLighting.cginc"
+ #endif
+
+ #include "CGI_PoiMainTex.cginc"
+
+ #ifdef GEOM_TYPE_BRANCH
+ #include "CGI_PoiDecal.cginc"
+ #endif
+
+ #ifdef CHROMATIC_ABERRATION
+ #include "CGI_PoiVoronoi.cginc"
+ #endif
+
+ #ifdef _DETAIL_MULX2
+ #include "CGI_PoiPanosphere.cginc"
+ #endif
+
+ #ifdef EFFECT_BUMP
+ #include "CGI_PoiMSDF.cginc"
+ #endif
+
+ #ifdef GRAIN
+ #include "CGI_PoiDepthColor.cginc"
+ #endif
+
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _GLOSSYREFLECTIONS_OFF
+ #include "CGI_PoiRimLighting.cginc"
+ #endif
+
+ #ifdef _MAPPING_6_FRAMES_LAYOUT
+ #include "CGI_PoiEnvironmentalRimLighting.cginc"
+ #endif
+
+ #ifdef _METALLICGLOSSMAP
+ #include "CGI_PoiMetal.cginc"
+ #endif
+
+ #ifdef _COLORADDSUBDIFF_ON
+ #include "CGI_PoiMatcap.cginc"
+ #endif
+
+ #ifdef _SPECGLOSSMAP
+ #include "CGI_PoiSpecular.cginc"
+ #endif
+
+ #ifdef BLOOM
+ #include "CGI_PoiVideo.cginc"
+ #endif
+
+ #ifdef _TERRAIN_NORMAL_MAP
+ #include "CGI_PoiSubsurfaceScattering.cginc"
+ #endif
+
+ #include "CGI_PoiBlending.cginc"
+ #include "CGI_PoiGrab.cginc"
+
+ #ifdef _SUNDISK_SIMPLE
+ #include "CGI_PoiGlitter.cginc"
+ #endif
+
+ #ifdef _EMISSION
+ #include "CGI_PoiEmission.cginc"
+ #endif
+
+ #ifdef _COLORCOLOR_ON
+ #include "CGI_PoiClearCoat.cginc"
+ #endif
+
+ #include "CGI_PoiAlphaToCoverage.cginc"
+
+ #ifdef _COLOROVERLAY_ON
+ #include "CGI_PoiDebug.cginc"
+ #endif
+ #include "CGI_PoiFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
new file mode 100644
index 00000000..c1eebfeb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e709fd91deec2f04583ad20d11844e4a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
new file mode 100644
index 00000000..5e365972
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
@@ -0,0 +1,26 @@
+#ifndef POI_PASS_OUTLINE
+ #define POI_PASS_OUTLINE
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiOutlineVert.cginc"
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiLighting.cginc"
+ #include "CGI_PoiMainTex.cginc"
+ #include "CGI_PoiData.cginc"
+ #include "CGI_PoiDithering.cginc"
+ #include "CGI_PoiOutlineFrag.cginc"
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
new file mode 100644
index 00000000..b91d96e0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6ad0503ca26fe4143b75a96e7dd86fe3
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
new file mode 100644
index 00000000..d21a5d4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
@@ -0,0 +1,44 @@
+#ifndef POI_PASS_SHADOW
+ #define POI_PASS_SHADOW
+
+ #pragma multi_compile_shadowcaster
+ #include "UnityCG.cginc"
+ #include "UnityShaderVariables.cginc"
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiShadowIncludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiMirror.cginc"
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+ #include "CGI_PoiData.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+ #include "CGI_PoiDithering.cginc"
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+ #include "CGI_PoiSpawnInVert.cginc"
+ #include "CGI_PoiShadowVert.cginc"
+ #include "CGI_PoiShadowFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
new file mode 100644
index 00000000..4be1f650
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 917351677102afc4f9af37cb71d3171a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
new file mode 100644
index 00000000..d4cd1697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
@@ -0,0 +1,131 @@
+#ifndef POI_RGBMASK
+ #define POI_RGBMASK
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RGBMask); float4 _RGBMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RedTexure); float4 _RedTexure_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_GreenTexture); float4 _GreenTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BlueTexture); float4 _BlueTexture_ST;
+
+ #ifdef GEOM_TYPE_MESH
+ POI_NORMAL_NOSAMPLER(_RgbNormalR);
+ POI_NORMAL_NOSAMPLER(_RgbNormalG);
+ POI_NORMAL_NOSAMPLER(_RgbNormalB);
+ float _RgbNormalsEnabled;
+ #endif
+
+ float4 _RedColor;
+ float4 _GreenColor;
+ float4 _BlueColor;
+
+ float4 _RGBMaskPanning;
+ float4 _RGBRedPanning;
+ float4 _RGBGreenPanning;
+ float4 _RGBBluePanning;
+
+ float _RGBBlendMultiplicative;
+
+ float _RGBMaskUV;
+ float _RGBRed_UV;
+ float _RGBGreen_UV;
+ float _RGBBlue_UV;
+ float _RGBUseVertexColors;
+ float _RGBNormalBlend;
+
+ static float3 rgbMask;
+
+ void calculateRGBNormals(inout half3 mainTangentSpaceNormal)
+ {
+ #ifdef GEOM_TYPE_MESH
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+
+ if(float(0))
+ {
+
+ if(float(0) == 0)
+ {
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.r);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.g);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.b);
+ }
+ return;
+ }
+ else
+ {
+ half3 newNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0) * rgbMask.r);
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.g);
+ normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.b);
+ mainTangentSpaceNormal = BlendNormals(newNormal, mainTangentSpaceNormal);
+ return;
+ }
+ }
+ #endif
+ }
+
+ float3 calculateRGBMask(float3 baseColor)
+ {
+ //If RGB normals are in use this data will already exist
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+ float4 red = POI2D_SAMPLER_PAN(_RedTexure, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 green = POI2D_SAMPLER_PAN(_GreenTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 blue = POI2D_SAMPLER_PAN(_BlueTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+
+ if(float(0))
+ {
+ float3 RGBColor = 1;
+ RGBColor = lerp(RGBColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ baseColor *= RGBColor;
+ }
+ else
+ {
+ baseColor = lerp(baseColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ }
+
+ return baseColor;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
new file mode 100644
index 00000000..b805a7a3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7350ded2faacd394986da2fbe598d5b5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
new file mode 100644
index 00000000..137ef6de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
@@ -0,0 +1,4 @@
+#ifndef POI_RNG
+ #define POI_RNG
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
new file mode 100644
index 00000000..b8dbbcd0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 948db6ecf89d225419752b0b2337e99b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
new file mode 100644
index 00000000..11f3eea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_RANDOM
+ #define POI_RANDOM
+
+ float _EnableRandom;
+ float m_start_Angle;
+ float _AngleType;
+ float3 _AngleForwardDirection;
+ float _CameraAngleMin;
+ float _CameraAngleMax;
+ float _ModelAngleMin;
+ float _ModelAngleMax;
+ float _AngleMinAlpha;
+ float _AngleCompareTo;
+
+ float ApplyAngleBasedRendering(float3 modelPos, float3 worldPos)
+ {
+ half cameraAngleMin = float(45) / 180;
+ half cameraAngleMax = float(90) / 180;
+ half modelAngleMin = float(45) / 180;
+ half modelAngleMax = float(90) / 180;
+ float3 pos = float(0) == 0 ? modelPos : worldPos;
+ half3 cameraToModelDirection = normalize(pos - getCameraPosition());
+ half3 modelForwardDirection = normalize(mul(unity_ObjectToWorld, normalize(float4(0,0,1,0))));
+ half cameraLookAtModel = remapClamped(.5 * dot(cameraToModelDirection, getCameraForward()) + .5, cameraAngleMax, cameraAngleMin, 0, 1);
+ half modelLookAtCamera = remapClamped(.5 * dot(-cameraToModelDirection, modelForwardDirection) + .5, modelAngleMax, modelAngleMin, 0, 1);
+ if (float(0) == 0)
+ {
+ return max(cameraLookAtModel, float(0));
+ }
+ else if(float(0) == 1)
+ {
+ return max(modelLookAtCamera, float(0));
+ }
+ else if(float(0) == 2)
+ {
+ return max(cameraLookAtModel * modelLookAtCamera, float(0));
+ }
+ return 1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
new file mode 100644
index 00000000..9c9fa065
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 22c6599ca590d334ab512cdec12e66b2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
new file mode 100644
index 00000000..d4571c0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
@@ -0,0 +1,47 @@
+#ifndef POI_RIM
+ #define POI_RIM
+
+ float4 _RimLightColor;
+ float _RimLightingInvert;
+ float _RimWidth;
+ float _RimStrength;
+ float _RimSharpness;
+ float _RimLightColorBias;
+ float _ShadowMix;
+ float _ShadowMixThreshold;
+ float _ShadowMixWidthMod;
+ float _EnableRimLighting;
+ float _RimBrighten;
+ float _RimLightNormal;
+
+ POI_TEXTURE_NOSAMPLER(_RimTex);
+ POI_TEXTURE_NOSAMPLER(_RimMask);
+ POI_TEXTURE_NOSAMPLER(_RimWidthNoiseTexture);
+
+ float _RimWidthNoiseStrength;
+
+ float4 rimColor = float4(0, 0, 0, 0);
+ float rim = 0;
+
+ void applyRimLighting(inout float4 albedo, inout float3 rimLightEmission)
+ {
+ float rimNoise = POI2D_SAMPLER_PAN(_RimWidthNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimNoise = (rimNoise - .5) * float(0.1);
+
+ float viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+
+ if (float(0))
+ {
+ viewDotNormal = 1 - abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+ }
+ float rimWidth = float(0.8);
+ rimWidth -= rimNoise;
+ float rimMask = POI2D_SAMPLER_PAN(_RimMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimColor = POI2D_SAMPLER_PAN(_RimTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ rimWidth = max(lerp(rimWidth, rimWidth * lerp(0, 1, poiLight.lightMap - float(0.5)) * float(0.5), float(0)),0);
+ rim = 1 - smoothstep(min(float(0.25), rimWidth), rimWidth, viewDotNormal);
+ rim *= float4(1,1,1,1).a * rimColor.a * rimMask;
+ rimLightEmission = rim * lerp(albedo, rimColor, float(0)) * float(0);
+ albedo.rgb = lerp(albedo.rgb, lerp(albedo.rgb, rimColor, float(0)) + lerp(albedo.rgb, rimColor, float(0)) * float(0), rim);
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
new file mode 100644
index 00000000..fd313c8e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7aac0c428919c1c42981dad9ad6b1cf9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
new file mode 100644
index 00000000..16701f61
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
@@ -0,0 +1,116 @@
+#ifndef SHADOW_FRAG
+ #define SHADOW_FRAG
+
+ float2 _MainDistanceFade;
+ float _ForceOpaque;
+ float _MainShadowClipMod;
+ float2 _AlphaMaskPan;
+ float _AlphaMaskUV;
+ sampler3D _DitherMaskLOD;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+
+ half4 fragShadowCaster(
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ V2FShadow i, uint facing: SV_IsFrontFace
+ #endif
+ ): SV_Target
+ {
+ poiMesh.uv[0] = i.uv;
+ poiMesh.uv[1] = i.uv1;
+ poiMesh.uv[2] = i.uv2;
+ poiMesh.uv[3] = i.uv3;
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+
+
+ //Possible Bug with clip
+ float clipValue = clamp(float(0.5) + float(0), - .001, 1.001);
+
+ poiMesh.vertexColor = saturate(i.vertexColor);
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+ #if defined(UNITY_STANDARD_USE_SHADOW_UVS)
+
+ half4 alpha = mainTexture;
+
+
+ if (float(0))
+ {
+ if(IsInMirror())
+ {
+ alpha.a = UNITY_SAMPLE_TEX2D_SAMPLER(_MirrorTexture, _MainTex, TRANSFORM_TEX(i.uv, _MirrorTexture)).a;
+ }
+ }
+
+
+ alpha.a *= smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(i.modelPos, _WorldSpaceCameraPos));
+ half alphaMask = POI2D_PAN(_AlphaMask, poiMesh.uv[float(0)], float4(0,0,0,0));
+ alpha.a *= alphaMask;
+ alpha.a *= float4(1,1,1,1).a + .0001;
+ alpha.a += float(0);
+ alpha.a = saturate(alpha.a);
+
+
+ if(float(0) == 0)
+ {
+ alpha.a = 1;
+ }
+
+
+ if(float(0) == 1)
+ {
+ applyShadowDithering(alpha.a, calcScreenUVs(i.grabPos).xy);
+ }
+
+ #ifdef POI_DISSOLVE
+ float3 fakeEmission = 1;
+ calculateDissolve(alpha, fakeEmission);
+ #endif
+
+ if(float(0) == 1)
+ {
+ clip(alpha.a - 0.001);
+ }
+
+ /*
+ return poiMesh.vertexColor.g;
+
+ #ifdef POI_RANDOM
+ alpha.a *= i.angleAlpha;
+ #endif
+
+
+ if(float(0) >= 1)
+ {
+ applySpawnInShadow(uv[0], i.localPos);
+
+ #if defined(POI_FLIPBOOK)
+ alpha.a *= applyFlipbookAlphaToShadow(uv[float(0)]);
+ #endif
+ }
+ */
+
+ if (float(0) == 1)
+ {
+ clip(alpha.a - clipValue);
+ }
+
+
+ if(float(0) > 1)
+ {
+ float dither = tex3D(_DitherMaskLOD, float3(i.pos.xy * .25, alpha.a * 0.9375)).a;
+ clip(dither - 0.01);
+ }
+
+ #endif
+ SHADOW_CASTER_FRAGMENT(i)
+ }
+
+ #endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
new file mode 100644
index 00000000..acc15494
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f58d4031af0596749960144d3ed4a86f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
new file mode 100644
index 00000000..fd8f19a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
@@ -0,0 +1,41 @@
+#ifndef SHADOW_INCLUDES
+ #define SHADOW_INCLUDES
+
+ #define UNITY_STANDARD_USE_SHADOW_UVS 1
+
+ float4 _Color;
+ sampler2D _AlphaMask; float4 _AlphaMask_ST;
+
+ struct VertexInputShadow
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ struct V2FShadow
+ {
+ V2F_SHADOW_CASTER_NOPOS
+ float4 pos: SV_POSITION;
+ float2 uv: TEXCOORD1;
+ float2 uv1: TEXCOORD2;
+ float2 uv2: TEXCOORD3;
+ float2 uv3: TEXCOORD4;
+ float3 modelPos: TEXCOORD5;
+ float4 worldPos: TEXCOORD6;
+ float4 localPos: TEXCOORD7;
+ float3 angleAlpha: TEXCOORD8;
+ float4 grabPos: TEXCOORD9;
+ fixed3 barycentricCoordinates: TEXCOORD10;
+ float4 vertexColor: TEXCOORD11;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
new file mode 100644
index 00000000..78adf556
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 17a9707033e02e541bc3947bd235c40c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
new file mode 100644
index 00000000..f0b7184a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
@@ -0,0 +1,80 @@
+float _EnableTouchGlow;
+float _EnableBulge;
+float _VertexManipulationHeightUV;
+
+V2FShadow vertShadowCaster(VertexInputShadow v)
+{
+ V2FShadow o;
+ UNITY_SETUP_INSTANCE_ID(v);
+
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(V2FShadow, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.uv = v.uv0;
+ o.uv1 = v.uv1;
+ o.uv2 = v.uv2;
+ o.uv3 = v.uv3;
+
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, v.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.vertexColor = v.color;
+
+
+ if(_EnableTouchGlow || _EnableBulge)
+ {
+ o.pos = UnityObjectToClipPos(float3(0, 0, -5));
+ o.localPos.xyz = float3(0, 0, -5);
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ }
+
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+
+ o.pos = UnityClipSpaceShadowCasterPos(o.localPos, v.normal);
+ o.pos = UnityApplyLinearShadowBias(o.pos);
+
+ return o;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
new file mode 100644
index 00000000..3cd34d18
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3c228034778c93a4d8503bbb4c16cf0a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
new file mode 100644
index 00000000..0c18d1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+ #endif
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_SpawnInNoise); float4 _SpawnInNoise_ST;
+
+ float calculateGradientValueFrag(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnIn(inout float4 finalColor, inout float3 spawnInEmission, float2 uv, float3 localPos)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ spawnInEmission = saturate(inverseGradient + _SpawnInAlpha + _SpawnInEmissionOffset +noise - 1) * _SpawnInEmissionColor;
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+
+ void applySpawnInShadow(float2 uv, float3 localPos)
+ {
+
+ if(_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float alpha = gradient - _SpawnInAlpha - noise + length(_SpawnInVertOffset);
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
new file mode 100644
index 00000000..fa13324b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 246817eeae9e795458cec078253c78ea
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
new file mode 100644
index 00000000..fdcc457f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
@@ -0,0 +1,40 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+
+ #endif
+ //sampler2D _SpawnInNoiseVert; float4 _SpawnInNoiseVert_ST;
+
+ float calculateGradientValueVert(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnInVert(inout float4 worldPos, inout float4 localPos, float2 uv)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = 0;
+ float gradient = calculateGradientValueVert(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ worldPos.xyz += saturate(inverseGradient + _SpawnInAlpha + _SpawnInVertOffsetOffset -1) * float3(0, _SpawnInVertOffset, 0);
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+ //float noise = tex2Dlod(_SpawnInNoise, float4(TRANSFORM_TEX(uv, _SpawnInNoise))).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
new file mode 100644
index 00000000..b481cbcf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 90ebc6ee649f65944b226fe3cefeb94b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
new file mode 100644
index 00000000..f5287465
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
@@ -0,0 +1,488 @@
+#ifndef POI_SPECULAR
+ #define POI_SPECULAR
+ float _SpecWhatTangent;
+ float _SpecularType;
+ float _SmoothnessFrom;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap);
+ fixed _CenterOutSpecColor;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro);
+ float _SpecularAnisoJitterMirrored;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoFakeUV);
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask);
+ float _SpecularAnisoJitterMicroMultiplier;
+ float _SpecularAnisoJitterMacroMultiplier;
+ float4 _SpecularTint;
+ float _SpecularSmoothness;
+ float _Spec1Offset;
+ float _Spec1JitterStrength;
+ float _Spec2Smoothness;
+ float _Spec2Offset;
+ float _Spec2JitterStrength;
+ float _AnisoUseTangentMap;
+ float _AnisoSpec1Alpha;
+ float _AnisoSpec2Alpha;
+ float _SpecularInvertSmoothness;
+ half _SpecularMetallic;
+ float _SpecularNormal;
+ float _SpecularNormal1;
+ // Toon
+ fixed _SpecularToonStart;
+ fixed _SpecularToonEnd;
+ half4 _SpecularToonInnerOuter;
+
+ float _EnableSpecular1;
+ float _SpecWhatTangent1;
+ float _SpecularType1;
+ float _SmoothnessFrom1;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro1);
+ float _SpecularAnisoJitterMirrored1;
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask1);
+ float _SpecularAnisoJitterMicroMultiplier1;
+ float _SpecularAnisoJitterMacroMultiplier1;
+ float4 _SpecularTint1;
+ float _SpecularSmoothness1;
+ float _Spec1Offset1;
+ float _Spec1JitterStrength1;
+ float _Spec2Smoothness1;
+ float _Spec2Offset1;
+ float _Spec2JitterStrength1;
+ float _AnisoUseTangentMap1;
+ float _AnisoSpec1Alpha1;
+ float _AnisoSpec2Alpha1;
+ float _SpecularInvertSmoothness1;
+ half _SpecularMetallic1;
+ // Toon
+ half4 _SpecularToonInnerOuter1;
+ fixed _SpecularToonStart1;
+ fixed _SpecularToonEnd1;
+
+ UnityIndirect ZeroIndirect()
+ {
+ UnityIndirect ind;
+ ind.diffuse = 0;
+ ind.specular = 0;
+ return ind;
+ }
+
+ // From unity just putting it here in case I want to mod it
+ half4 poiRealisticSpecular(half3 diffColor, half3 specColor, half oneMinusReflectivity, half smoothness,
+ float3 normal, float3 halfDir,
+ UnityLight light, UnityIndirect gi)
+ {
+ float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
+ #define UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV 0
+
+ #if UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV
+ half shiftAmount = dot(normal, poiCam.viewDir);
+ normal = shiftAmount < 0.0f ? normal + poiCam.viewDir * (-shiftAmount + 1e-5f): normal;
+ float nv = saturate(dot(normal, poiCam.viewDir));
+ #else
+ half nv = abs(dot(normal, poiCam.viewDir));
+ #endif
+
+ float nl = saturate(dot(normal, light.dir));
+ float nh = saturate(dot(normal, halfDir));
+
+ half lv = saturate(dot(light.dir, poiCam.viewDir));
+ half lh = saturate(dot(light.dir, halfDir));
+
+ half diffuseTerm = DisneyDiffuse(nv, nl, lh, perceptualRoughness) * nl;
+
+ float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
+
+ roughness = max(roughness, 0.002);
+ float V = SmithJointGGXVisibilityTerm(nl, nv, roughness);
+ float D = GGXTerm(nh, roughness);
+
+ float specularTerm = V * D * UNITY_PI;
+
+ #ifdef UNITY_COLORSPACE_GAMMA
+ specularTerm = sqrt(max(1e-4h, specularTerm));
+ #endif
+
+ specularTerm = max(0, specularTerm * nl);
+ #if defined(_POI_SPECULARHIGHLIGHTS_OFF)
+ specularTerm = 0.0;
+ #endif
+
+ half surfaceReduction;
+ #ifdef UNITY_COLORSPACE_GAMMA
+ surfaceReduction = 1.0 - 0.28 * roughness * perceptualRoughness;
+ #else
+ surfaceReduction = 1.0 / (roughness * roughness + 1.0);
+ #endif
+
+ specularTerm *= any(specColor) ? 1.0: 0.0;
+
+ half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
+ half3 color = diffColor * (gi.diffuse + light.color * diffuseTerm)
+ + specularTerm * light.color * FresnelTerm(specColor, lh)
+ + surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, nv);
+
+ return half4(color, 1);
+ }
+
+ half3 calculateRealisticSpecular(float4 albedo, float2 uv, float4 specularTint, float specularSmoothness, float invertSmoothness, float mixAlbedoWithTint, float4 specularMap, float3 specularLight, float3 normal, float attenuation, float3 lightDirection, float nDotL, float3 halfDir)
+ {
+ half oneMinusReflectivity;
+ half3 finalSpecular;
+ UnityLight unityLight;
+ unityLight.color = specularLight;
+ unityLight.dir = lightDirection;
+ unityLight.ndotl = nDotL;
+
+
+ if (float(1) == 0)
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularMap.rgb * specularTint.rgb, /*out*/ oneMinusReflectivity);
+ finalSpecular = poiRealisticSpecular(diffColor, specularMap.rgb, oneMinusReflectivity, specularMap.a * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ else
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularTint.rgb, /*out*/ oneMinusReflectivity);
+ float smoothness = max(max(specularMap.r, specularMap.g), specularMap.b);
+ finalSpecular = poiRealisticSpecular(diffColor, 1, oneMinusReflectivity, smoothness * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ finalSpecular *= lerp(1, albedo.rgb, mixAlbedoWithTint);
+ return finalSpecular;
+ }
+
+ half3 calculateToonSpecular(float4 albedo, float2 uv, float2 specularToonInnerOuter, float specularMixAlbedoIntoTint, float smoothnessFrom, float4 specularMap, float3 specularLight, float3 normal, float3 halfDir, float attenuation)
+ {
+ half3 finalSpecular = smoothstep(1 - specularToonInnerOuter.y, 1 - specularToonInnerOuter.x, dot(halfDir, normal)) * specularLight;
+
+ if (smoothnessFrom == 0)
+ {
+ finalSpecular.rgb *= specularMap.rgb * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ finalSpecular *= specularMap.a;
+ }
+ else
+ {
+ finalSpecular *= specularMap.r * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+ return finalSpecular;
+ }
+
+ float3 strandSpecular(float TdotL, float TdotV, float specPower, float nDotL)
+ {
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+ float Specular = saturate(nDotL) * pow(saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV), specPower);
+ half normalization = sqrt((specPower + 1) * ((specPower) + 1)) / (8 * pi);
+ Specular *= normalization;
+ return Specular;
+ }
+
+ half3 AnisotropicSpecular(
+ float specWhatTangent, float anisoUseTangentMap, float specularSmoothness, float spec2Smoothness,
+ float anisoSpec1Alpha, float anisoSpec2Alpha, float4 specularTint, float specularMixAlbedoIntoTint, float4 specularMap, float3 specularLight, float3 lightDirection, float3 halfDir, float nDotL, float jitter, float4 packedTangentMap, in float4 albedo)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ tangentDirectionMap += float(0) +jitter;
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+ half specPower = RoughnessToSpecPower(1.0 - specularSmoothness * specularMap.a);
+ half spec2Power = RoughnessToSpecPower(1.0 - spec2Smoothness * specularMap.a);
+ half Specular = 0;
+
+ float3 spec = strandSpecular(TdotL, TdotV, specPower, nDotL) * anisoSpec1Alpha;
+ float3 spec2 = strandSpecular(TdotL, TdotV, spec2Power, nDotL) * anisoSpec2Alpha;
+
+ return max(spec, spec2) * specularMap.rgb * specularTint.a * specularLight * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+
+ inline float3 toonAnisoSpecular(float specWhatTangent, float anisoUseTangentMap, float3 lightDirection, float halfDir, float4 specularMap, float nDotL, fixed gradientStart, fixed gradientEnd, float4 specColor, float4 finalColor, fixed metallic, float jitter, float mirrored, float4 packedTangentMap)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ if (!mirrored)
+ {
+ tangentDirectionMap += jitter;
+ }
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+
+ float specular = saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV);
+
+ fixed smoothAlpha = specular;
+ if(mirrored)
+ {
+ smoothAlpha = max(specular - jitter, 0);
+ }
+
+ specular = smoothstep(gradientStart, gradientEnd, smoothAlpha);
+
+ /*
+
+ if(_CenterOutSpecColor)
+ {
+ specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, clamp(float2(specular, specular), 0.01, .99), float4(0,0,0,0));
+ }
+ */
+
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+
+ return saturate(nDotL) * specular * poiLight.color * specColor * specularMap.rgb * lerp(1, finalColor, metallic) * specularMap.a;
+ }
+
+ inline float SpecularHQ(half roughness, half dotNH, half dotLH)
+ {
+ roughness = saturate(roughness);
+ roughness = max((roughness * roughness), 0.002);
+ half roughnessX2 = roughness * roughness;
+
+ half denom = dotNH * dotNH * (roughnessX2 - 1.0) + 1.0f;
+ half D = roughnessX2 / (3.14159 * denom * denom);
+
+ half k = roughness / 2.0f;
+ half k2 = k * k;
+ half invK2 = 1.0f - k2;
+
+ half vis = rcp(dotLH * dotLH * invK2 + k2);
+
+ float specTerm = vis * D;
+
+ return specTerm;
+ }
+
+ float3 calculateNewSpecular(in float3 specularMap, uint colorFrom, in float4 albedo, in float3 specularTint, in float specularMetallic, in float specularSmoothness, in half dotNH, in half dotLH, in float3 lightColor, in float attenuation)
+ {
+ float3 specColor = specularTint;
+ float metallic = specularMetallic;
+ float roughness = 1 - specularSmoothness;
+ float perceptualRoughness = roughness;
+ //float reflectInverse = DielectricSpec.a - metallic * DielectricSpec.a;
+ //float reflectivity = 1.0h - reflectInverse;
+ float3 specMapColor = lerp(specularMap, 1, colorFrom);
+ float3 specularColor = lerp(DielectricSpec.rgb * specMapColor, lerp(specularMap, albedo.rgb, colorFrom), metallic);
+ //albedo.rgb *= reflectInverse;
+ return clamp(specularColor * lightColor * attenuation * specularTint * SpecularHQ(perceptualRoughness, dotNH, dotLH), 0, lightColor * specularTint);
+ }
+
+ float3 calculateSpecular(in float4 albedo)
+ {
+ half3 finalSpecular = 0;
+ half3 finalSpecular1 = 0;
+ float4 realisticAlbedo = albedo;
+ float4 realisticAlbedo1 = albedo;
+ float4 specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half metallic = POI2D_SAMPLER_PAN(_SpecularMetallicMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ half specularMask = POI2D_SAMPLER_PAN(_SpecularMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float attenuation = saturate(poiLight.nDotL);
+ #ifdef POI_LIGHTING
+
+ if (float(0) && float(0) == 0 && float(0) == 1)
+ {
+ attenuation = poiLight.rampedLightMap;
+ }
+ #endif
+
+
+ if(float(1) == 1) // Realistic
+ {
+ if (float(1) == 1)
+ {
+ specularMap.a = specularMap.r;
+ specularMap.rgb = 1;
+ }
+
+ if(float(0))
+ {
+ specularMap.a = 1 - specularMap.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, attenuation);
+ #else
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic, jitter, float(0), packedTangentMap);
+ finalSpecular *= attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular += calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic, float(1), specularMap, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += AnisotropicSpecular(float(0), float(0), float(1), float(0), float(1), float(1), float4(1,1,1,1), metallic, specularMap, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular *= float4(1,1,1,1);
+ finalSpecular *= attenuation;
+ }
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+
+ finalSpecular *= float4(1,1,1,1).a;
+ finalSpecular = finalSpecular.rgb;
+ finalSpecular *= specularMask;
+
+
+ if (float(0))
+ {
+ float4 specularMap1 = POI2D_SAMPLER_PAN(_SpecularMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half specularMask1 = POI2D_SAMPLER_PAN(_SpecularMask1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ half metallic1 = POI2D_SAMPLER_PAN(_SpecularMetallicMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ float attenuation = poiLight.attenuation;
+
+ if(float(1) == 1) // Realistic
+ {
+
+ if (float(1) == 1)
+ {
+ specularMap1.a = specularMap1.r;
+ specularMap1.rgb = 1;
+ }
+ else
+ {
+ realisticAlbedo1.rgb = specularMap1.rgb;
+ }
+
+
+ if(float(0))
+ {
+ specularMap1.a = 1 - specularMap1.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, saturate(poiLight.nDotL));
+ #else
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap1, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic1, jitter, float(0), packedTangentMap);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular1 = calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic1, float(1), specularMap1, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular1 *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 = AnisotropicSpecular(float(0), float(0), float(0.75), float(0), float(1), float(1), float4(1,1,1,1), metallic1, specularMap1, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular1 *= float4(1,1,1,1);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ // Non Important Lights
+ #ifdef VERTEXLIGHT_ON
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular1 += calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+ #endif
+
+ finalSpecular1 *= float4(1,1,1,1).a;
+ finalSpecular1 = finalSpecular1.rgb;
+ finalSpecular1 *= specularMask1;
+ }
+ return finalSpecular + finalSpecular1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
new file mode 100644
index 00000000..8215e489
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a003de160d7e38748ac3f859e38883ce
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
new file mode 100644
index 00000000..b7c21c01
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
@@ -0,0 +1,28 @@
+#ifndef SUBSURFACE
+ #define SUBSURFACE
+
+ float _SSSThicknessMod;
+ float _SSSSCale;
+ float _SSSPower;
+ float _SSSDistortion;
+ float4 _SSSColor;
+ float _EnableSSS;
+
+ POI_TEXTURE_NOSAMPLER(_SSSThicknessMap);
+
+ float3 calculateSubsurfaceScattering()
+ {
+ float SSS = 1 - POI2D_SAMPLER_PAN(_SSSThicknessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ half3 vLTLight = poiLight.direction + poiMesh.normals[0] * float(1);
+ half flTDot = pow(saturate(dot(poiCam.viewDir, -vLTLight)), float(5)) * float(0.25);
+ #ifdef FORWARD_BASE_PASS
+ half3 fLT = (flTDot) * saturate(SSS + - 1 * float(0));
+ #else
+ half3 fLT = poiLight.attenuation * (flTDot) * saturate(SSS + - 1 * float(0));
+ #endif
+
+ return fLT * poiLight.color * float4(1,0,0,1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
new file mode 100644
index 00000000..3a5805e9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1e91ed2b207ae1d43be549fd4751b1fe
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
new file mode 100644
index 00000000..4912473d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
@@ -0,0 +1,117 @@
+#ifndef POI_TESSELLATION
+ #define POI_TESSELLATION
+
+ float _TessellationPhongStrength;
+ float _TessellationEdgeLength;
+ float _TessellationExtrusionAmount;
+ float _TessellationUniform;
+
+ struct TessellationControlPoint
+ {
+ float4 vertex: INTERNALTESSPOS;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ };
+
+ struct TessellationFactors
+ {
+ float edge[3]: SV_TessFactor;
+ float inside: SV_InsideTessFactor;
+ };
+
+ TessellationControlPoint poiTessellationVert(appdata v)
+ {
+ TessellationControlPoint p;
+ p.vertex = v.vertex;
+ p.normal = v.normal;
+ p.tangent = v.tangent;
+ p.color = v.color;
+ p.uv0 = v.uv0;
+ p.uv1 = v.uv1;
+ p.uv2 = v.uv2;
+ p.uv3 = v.uv3;
+ return p;
+ }
+
+ float TessellationEdgeFactor(float3 p0, float3 p1)
+ {
+ #ifndef _FADING_ON
+ float edgeLength = distance(p0, p1);
+
+ float3 edgeCenter = (p0 + p1) * 0.5;
+ float viewDistance = distance(edgeCenter, _WorldSpaceCameraPos);
+
+ return edgeLength * _ScreenParams.y /
+ (_TessellationEdgeLength * viewDistance);
+ #else
+ return _TessellationUniform;
+ #endif
+ }
+
+ TessellationFactors poiPatchConst(
+ InputPatch < TessellationControlPoint, 3 > patch
+ )
+ {
+
+ TessellationFactors f;
+ float3 p0 = mul(unity_ObjectToWorld, patch[0].vertex).xyz;
+ float3 p1 = mul(unity_ObjectToWorld, patch[1].vertex).xyz;
+ float3 p2 = mul(unity_ObjectToWorld, patch[2].vertex).xyz;
+ f.edge[0] = TessellationEdgeFactor(p1, p2);
+ f.edge[1] = TessellationEdgeFactor(p2, p0);
+ f.edge[2] = TessellationEdgeFactor(p0, p1);
+ f.inside = (TessellationEdgeFactor(p1, p2) +
+ TessellationEdgeFactor(p2, p0) +
+ TessellationEdgeFactor(p0, p1)) * (1 / 3.0);
+ return f;
+ }
+
+ [UNITY_domain("tri")]
+ [UNITY_outputcontrolpoints(3)]
+ [UNITY_outputtopology("triangle_cw")]
+ [UNITY_partitioning("fractional_odd")]
+ [UNITY_patchconstantfunc("poiPatchConst")]
+ TessellationControlPoint poiHull(
+ InputPatch < TessellationControlPoint, 3 > patch,
+ uint id: SV_OutputControlPointID
+ )
+ {
+ return patch[id];
+ }
+
+ [UNITY_domain("tri")]
+ v2f poiDomain(
+ TessellationFactors factors,
+ OutputPatch < TessellationControlPoint, 3 > patch,
+ float3 barycentricCoordinates: SV_DomainLocation
+ )
+ {
+ appdata data;
+
+ #define MY_DOMAIN_PROGRAM_INTERPOLATE(fieldName) data.fieldName = patch[0].fieldName * barycentricCoordinates.x + patch[1].fieldName * barycentricCoordinates.y + patch[2].fieldName * barycentricCoordinates.z;
+
+ MY_DOMAIN_PROGRAM_INTERPOLATE(vertex)
+ float3 pp[3];
+ for (int i = 0; i < 3; ++ i)
+ {
+ pp[i] = data.vertex.xyz - patch[i].normal * (dot(data.vertex.xyz, patch[i].normal) - dot(patch[i].vertex.xyz, patch[i].normal));
+ }
+ data.vertex.xyz = _TessellationPhongStrength * (pp[0] * barycentricCoordinates.x + pp[1] * barycentricCoordinates.y + pp[2] * barycentricCoordinates.z) + (1.0f - _TessellationPhongStrength) * data.vertex.xyz;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(normal)
+ data.vertex.xyz += data.normal.xyz * _TessellationExtrusionAmount;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(tangent)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(color)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv0)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv1)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv2)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv3)
+
+ return vert(data);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
new file mode 100644
index 00000000..3e085dd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: eacf80f85983e264b8e41e34b24bf62c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
new file mode 100644
index 00000000..38d5fd75
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_UV_DISTORTION
+ #define POI_UV_DISTORTION
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture); float4 _DistortionFlowTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture1); float4 _DistortionFlowTexture1_ST;
+ POI_TEXTURE_NOSAMPLER(_DistortionMask);
+
+ float _DistortionStrength;
+ float _DistortionStrength1;
+ float2 _DistortionSpeed;
+ float2 _DistortionSpeed1;
+
+ float2 getTorusUv(float2 uv)
+ {
+ // translated to hlsl from https://www.shadertoy.com/view/Md3Bz7
+ // http://web.cs.ucdavis.edu/~amenta/s12/findnorm.pdf
+ float phi = 6.28318530718f * uv.x;
+ float theta = 6.28318530718f * uv.y;
+ float3 c = cos(float3(phi, phi + 1.57079632679f, theta));
+ float2 result = float2(c.x * c.z, -c.y * c.z);
+ return result * 0.5 + 0.5;
+ }
+
+ float2 calculateDistortionUV(float2 uv)
+ {
+ half distortionMask = POI2D_SAMPLER_PAN(_DistortionMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flowVector = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ float4 flowVector1 = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture1, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture1) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ flowVector *= float(0.5);
+ flowVector1 *= float(0.5);
+ return uv + ((flowVector.xy + flowVector1.xy) / 2) * distortionMask;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
new file mode 100644
index 00000000..8b57bdc7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8ec5b4040172eb944afdad5b1fa3b148
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
new file mode 100644
index 00000000..0e29a179
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_V2F
+ #define POI_V2F
+
+ struct v2f
+ {
+ float4 pos: SV_POSITION;
+ float4 uv0: TEXCOORD0;
+ float4 uv1: TEXCOORD1;
+ float3 normal: TEXCOORD2;
+ float3 tangentViewDir: TEXCOORD3;
+ float4 tangent: TEXCOORD4;
+ float4 worldPos: TEXCOORD5;
+ float4 localPos: TEXCOORD6;
+ float4 grabPos: TEXCOORD7;
+ float3 barycentricCoordinates: TEXCOORD8;
+ #if defined(GRAIN)
+ float4 worldDirection: TEXCOORD9;
+ #endif
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV: TEXCOORD10;
+ #endif
+ float3 modelPos: TEXCOORD11;
+ float angleAlpha: TEXCOORD12;
+ float4 vertexColor: TEXCOORD14;
+ #ifdef FUR
+ float furAlpha: TEXCOORD15;
+ #endif
+ UNITY_SHADOW_COORDS(16)
+ UNITY_FOG_COORDS(17)
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ UNITY_VERTEX_OUTPUT_STEREO
+ };
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
new file mode 100644
index 00000000..19efa98c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9907156d74ce8594eab9a47525b6d409
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
new file mode 100644
index 00000000..1558e937
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
@@ -0,0 +1,126 @@
+#ifndef POI_VERT
+ #define POI_VERT
+
+ float _VertexManipulationHeightUV;
+ float _VertexUnwrap;
+
+ #define PM UNITY_MATRIX_P
+
+ inline float4 CalculateFrustumCorrection()
+ {
+ float x1 = -PM._31 / (PM._11 * PM._34);
+ float x2 = -PM._32 / (PM._22 * PM._34);
+ return float4(x1, x2, 0, PM._33 / PM._34 + x1 * PM._13 + x2 * PM._23);
+ }
+
+ v2f vert(appdata v)
+ {
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ #ifdef _COLOROVERLAY_ON
+ v.vertex.xyz = lerp(v.vertex.xyz, float3(v.uv0.x - .5, v.uv0.y - .5, 0), float(0));
+ #endif
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.tangent, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ #ifdef _REQUIRE_UV2 //POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ TANGENT_SPACE_ROTATION;
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ //o.localPos.x *= -1;
+ //o.localPos.xz += sin(o.localPos.y * 100 + _Time.y * 5) * .0025;
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, o.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+ o.vertexColor = v.color;
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.tangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
+
+ #ifdef POI_BULGE
+ bulgyWolgy(o);
+ #endif
+
+
+ o.angleAlpha = 1;
+ #ifdef _SUNDISK_NONE //POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ #if defined(LIGHTMAP_ON)
+ o.lightmapUV.xy = v.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
+ #endif
+ #ifdef DYNAMICLIGHTMAP_ON
+ o.lightmapUV.zw = v.uv2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0.xy);
+ UNITY_TRANSFER_FOG(o, o.pos);
+
+ #if defined(_PARALLAXMAP) // POI_PARALLAX
+ v.tangent.xyz = normalize(v.tangent.xyz);
+ v.normal = normalize(v.normal);
+ float3x3 objectToTangent = float3x3(
+ v.tangent.xyz,
+ cross(v.normal, v.tangent.xyz) * v.tangent.w,
+ v.normal
+ );
+ o.tangentViewDir = mul(objectToTangent, ObjSpaceViewDir(v.vertex));
+ #endif
+
+ #ifdef POI_META_PASS
+ o.pos = UnityMetaVertexPosition(v.vertex, v.uv1.xy, v.uv2.xy, unity_LightmapST, unity_DynamicLightmapST);
+ #endif
+
+ #if defined(GRAIN)
+ float4 worldDirection;
+
+ worldDirection.xyz = o.worldPos.xyz - _WorldSpaceCameraPos;
+ worldDirection.w = dot(o.pos, CalculateFrustumCorrection());
+ o.worldDirection = worldDirection;
+ #endif
+
+ return o;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
new file mode 100644
index 00000000..d6c6a44f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 87724d4372513074ca86bd9200c2e40f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
new file mode 100644
index 00000000..94c16148
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
@@ -0,0 +1,93 @@
+#ifndef POI_VERTEX_MANIPULATION
+ #define POI_VERTEX_MANIPULATION
+
+ #include "CGI_PoiMath.cginc"
+
+ float4 _VertexManipulationLocalTranslation;
+ float4 _VertexManipulationLocalRotation;
+ float4 _VertexManipulationLocalScale;
+ float4 _VertexManipulationWorldTranslation;
+
+ float _VertexManipulationHeight;
+ float _VertexManipulationHeightBias;
+ sampler2D _VertexManipulationHeightMask; float4 _VertexManipulationHeightMask_ST;
+ float2 _VertexManipulationHeightPan;
+
+
+ //Vertex Glitching
+ float _EnableVertexGlitch;
+ sampler2D _VertexGlitchMap; float4 _VertexGlitchMap_ST;
+ float _VertexGlitchThreshold;
+ float _VertexGlitchFrequency;
+ float _VertexGlitchStrength;
+ // Rounding
+ float _VertexRoundingDivision;
+ float _VertexRoundingEnabled;
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 tangent, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ tangent.xyz = rotate_with_quaternion(tangent.xyz, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyWorldVertexTransformation(inout float4 worldPos, inout float4 localPos, inout float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyWorldVertexTransformationShadow(inout float4 worldPos, inout float4 localPos, float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyVertexRounding(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if (float(0))
+ {
+ worldPos.xyz = (ceil(worldPos * float(500)) / float(500)) - 1 / float(500) * .5;
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+ void applyVertexGlitching(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if(_EnableVertexGlitch)
+ {
+ float3 forward = getCameraPosition() - mul(unity_ObjectToWorld, float4(0, 0, 0, 1)).xyz;
+ forward.y = 0;
+ forward = normalize(forward);
+ float3 glitchDirection = normalize(cross(float3(0, 1, 0), forward));
+ float glitchAmount = frac(sin(dot(_Time.xy + worldPos.y, float2(12.9898, 78.233))) * 43758.5453123) * 2 - 1;
+ /*
+ float uvl = worldPos.y * _VertexGlitchDensity + _Time.x * _VertexGlitchMapPanSpeed;
+ float uvr = worldPos.y * _VertexGlitchDensity - _Time.x * _VertexGlitchMapPanSpeed;
+ float glitchAmountLeft = tex2Dlod(_VertexGlitchMap, float4(uvl, uvl, 0, 0)).r;
+ float glitchAmountRight = -tex2Dlod(_VertexGlitchMap, float4(uvr, uvr, 0, 0)).r;
+ float glitchAmount = glitchAmountLeft + glitchAmountRight;
+ */
+ float time = _Time.y * _VertexGlitchFrequency;
+ float randomGlitch = (sin(time) + sin(2.2 * time + 5.52) + sin(2.9 * time + 0.93) + sin(4.6 * time + 8.94)) / 4;
+ worldPos.xyz += glitchAmount * glitchDirection * (_VertexGlitchStrength * .01) * step(_VertexGlitchThreshold, randomGlitch);
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+#endif
+//
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
new file mode 100644
index 00000000..b2bce113
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 32e944fc850feac4a8496d6693e52e83
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
new file mode 100644
index 00000000..ec2d37e4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
@@ -0,0 +1,266 @@
+#ifndef POI_VIDEO
+ #define POI_VIDEO
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoPixelTexture); float4 _VideoPixelTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoMaskTexture); float4 _VideoMaskTexture_ST;
+
+ float _VideoUVNumber;
+ float _VideoType;
+ float3 pixels;
+ float2 _VideoResolution;
+ sampler2D _VideoGameboyRamp;
+ half _VideoBacklight;
+ half _VideoCRTRefreshRate;
+ half _VideoCRTPixelEnergizedTime;
+ half _VideoEnableVideoPlayer;
+ half _VideoRepeatVideoTexture;
+ half _VideoPixelateToResolution;
+ float2 _VideoMaskPanning;
+ // Video Settings
+ half _VideoSaturation;
+ half _VideoContrast;
+ float2 _VideoTiling;
+ float2 _VideoOffset;
+ float2 _VideoPanning;
+ //Debug
+ half _VideoEnableDebug;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoDebugTexture); float4 _VideoDebugTexture_ST;
+
+
+ sampler2D _VRChat_VideoPlayer;
+ float4 _VRChat_VideoPlayer_TexelSize;
+
+ float4 globalVideoPlayerColor;
+ float3 globalColorToDisplayOnScreen;
+ float globalVideoOn;
+
+ float3 applyBacklight(float3 albedo, half backlightStrength)
+ {
+ return max(backlightStrength, albedo.rgb);
+ }
+
+ float3 applyViewAngleTN(float3 albedo)
+ {
+ float3 reflectionVector = normalize(reflect(poiCam.viewDir.rgb, poiMesh.normals[1].rgb));
+ float upwardShift = dot(reflectionVector, poiMesh.binormal);
+ upwardShift = pow(upwardShift, 1);
+ float sideShift = dot(reflectionVector, poiMesh.tangent);
+ sideShift *= pow(sideShift, 3);
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = LinearToGammaSpace(albedo);
+ #endif
+ albedo = saturate(lerp(half3(0.5, 0.5, 0.5), albedo, upwardShift + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = GammaToLinearSpace(albedo);
+ #endif
+ albedo = (lerp(albedo, albedo.gbr, sideShift));
+ return albedo;
+ }
+
+ float calculateCRTPixelBrightness()
+ {
+ float totalPixels = _VideoResolution.x * _VideoResolution.y;
+ float2 uvPixel = float2((floor((1 - poiMesh.uv[_VideoUVNumber].y) * _VideoResolution.y)) / _VideoResolution.y, (floor(poiMesh.uv[_VideoUVNumber].x * _VideoResolution.x)) / _VideoResolution.x);
+ float currentPixelNumber = _VideoResolution.x * (_VideoResolution.y * uvPixel.x) + _VideoResolution.y * uvPixel.y;
+ float currentPixelAlpha = currentPixelNumber / totalPixels;
+ half electronBeamAlpha = frac(_Time.y * _VideoCRTRefreshRate);
+ float electronBeamPixelNumber = totalPixels * electronBeamAlpha;
+
+ float DistanceInPixelsFromCurrentElectronBeamPixel = 0;
+ if (electronBeamPixelNumber >= currentPixelNumber)
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber - currentPixelNumber;
+ }
+ else
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber + (totalPixels - currentPixelNumber);
+ }
+ float CRTFrameTime = 1 / _VideoCRTRefreshRate;
+ float timeSincecurrentPixelWasHitByElectronBeam = (DistanceInPixelsFromCurrentElectronBeamPixel / totalPixels);
+
+ return saturate(_VideoCRTPixelEnergizedTime - timeSincecurrentPixelWasHitByElectronBeam);
+ }
+
+ void applyContrastSettings(inout float3 pixel)
+ {
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = LinearToGammaSpace(pixel);
+ #endif
+ pixel = saturate(lerp(half3(0.5, 0.5, 0.5), pixel, _VideoContrast + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = GammaToLinearSpace(pixel);
+ #endif
+ }
+
+ void applySaturationSettings(inout float3 pixel)
+ {
+ pixel = lerp(pixel.rgb, dot(pixel.rgb, float3(0.3, 0.59, 0.11)), -_VideoSaturation);
+ }
+
+ void applyVideoSettings(inout float3 pixel)
+ {
+ applySaturationSettings(pixel);
+ applyContrastSettings(pixel);
+ }
+
+ void calculateLCD(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateTN(inout float4 albedo)
+ {
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ globalColorToDisplayOnScreen = applyViewAngleTN(globalColorToDisplayOnScreen);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateCRT(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ float brightness = calculateCRTPixelBrightness();
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * brightness * _VideoBacklight;
+ }
+ void calculateOLED(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateGameboy(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ half brightness = saturate((globalColorToDisplayOnScreen.r + globalColorToDisplayOnScreen.g + globalColorToDisplayOnScreen.b) * .3333333);
+ albedo.rgb = tex2D(_VideoGameboyRamp, brightness);
+ }
+ void calculateProjector(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+
+ float3 projectorColor = albedo * globalColorToDisplayOnScreen * _VideoBacklight;
+ albedo.r = clamp(projectorColor.r, albedo.r, 1000);
+ albedo.g = clamp(projectorColor.g, albedo.g, 1000);
+ albedo.b = clamp(projectorColor.b, albedo.b, 1000);
+ }
+
+ void applyScreenEffect(inout float4 albedo, inout float3 videoEmission)
+ {
+ float4 albedoBeforeScreen = albedo;
+
+ pixels = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoPixelTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoPixelTexture) * _VideoResolution);
+ globalVideoOn = 0;
+
+ if(_VideoEnableVideoPlayer == 1)
+ {
+ float4 videoTexture = 0;
+
+ if(_VideoPixelateToResolution)
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, round(TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoResolution + .5) / _VideoResolution);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, round(poiMesh.uv[_VideoUVNumber] * _VideoResolution + .5) / _VideoResolution);
+ }
+ }
+ else
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoTiling + _VideoOffset);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, ((poiMesh.uv[_VideoUVNumber] + _Time.x * _VideoPanning) * _VideoTiling) + _VideoOffset);
+ }
+ }
+ if(videoTexture.a == 1)
+ {
+ globalColorToDisplayOnScreen = videoTexture.rgb;
+ globalVideoOn = 1;
+ }
+ }
+
+
+ if(_VideoRepeatVideoTexture == 1)
+ {
+ if(poiMesh.uv[_VideoUVNumber].x > 1 || poiMesh.uv[_VideoUVNumber].x < 0 || poiMesh.uv[_VideoUVNumber].y > 1 || poiMesh.uv[_VideoUVNumber].y < 0)
+ {
+ return;
+ }
+ }
+
+ switch(_VideoType)
+ {
+ case 0: // LCD
+ {
+ calculateLCD(albedo);
+ break;
+ }
+ case 1: // TN
+ {
+ calculateTN(albedo);
+ break;
+ }
+ case 2: // CRT
+ {
+ calculateCRT(albedo);
+ break;
+ }
+ case 3: // OLED
+ {
+ calculateOLED(albedo);
+ break;
+ }
+ case 4: // Gameboy
+ {
+ calculateGameboy(albedo);
+ break;
+ }
+ case 5: // Projector
+ {
+ calculateProjector(albedo);
+ break;
+ }
+ }
+
+ float screenMask = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoMaskTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoMaskTexture) + _Time.x * _VideoMaskPanning);
+ albedo = lerp(albedoBeforeScreen, albedo, screenMask);
+ videoEmission = max(albedo.rgb * screenMask - 1, 0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
new file mode 100644
index 00000000..d1fbb787
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4bb551f08447ce24b91ba63d5e59ad8c
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
new file mode 100644
index 00000000..db3d3130
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
@@ -0,0 +1,304 @@
+#ifndef POI_VORONOI
+ #define POI_VORONOI
+
+ #include "CGI_PoiRNG.cginc"
+
+ float _VoronoiSpace;
+ float _VoronoiBlend;
+ float _VoronoiType;
+ float4 _VoronoiColor0;
+ float _VoronoiEmission0;
+ float4 _VoronoiColor1;
+ float _VoronoiEmission1;
+ float2 _VoronoiGradient;
+ float _VoronoiScale;
+ float3 _VoronoiSpeed;
+ float _VoronoiEnableRandomCellColor;
+ float2 _VoronoiRandomMinMaxSaturation;
+ float2 _VoronoiRandomMinMaxBrightness;
+ float3 randomPoint;
+ float _VoronoiEffectsMaterialAlpha;
+
+ POI_TEXTURE_NOSAMPLER(_VoronoiMask);
+ POI_TEXTURE_NOSAMPLER(_VoronoiNoise);
+ float _VoronoiNoiseIntensity;
+
+ float2 inoise(float3 P, float jitter)
+ {
+ float3 Pi = mod(floor(P), 289.0);
+ float3 Pf = frac(P);
+ float3 oi = float3(-1.0, 0.0, 1.0);
+ float3 of = float3(-0.5, 0.5, 1.5);
+ float3 px = Permutation(Pi.x + oi);
+ float3 py = Permutation(Pi.y + oi);
+
+ float3 p, ox, oy, oz, dx, dy, dz;
+ float2 F = 1e6;
+
+ for (int i = 0; i < 3; i ++)
+ {
+ for (int j = 0; j < 3; j ++)
+ {
+ p = Permutation(px[i] + py[j] + Pi.z + oi); // pij1, pij2, pij3
+
+ ox = frac(p * K) - Ko;
+ oy = mod(floor(p * K), 7.0) * K - Ko;
+
+ p = Permutation(p);
+
+ oz = frac(p * K) - Ko;
+
+ dx = Pf.x - of[i] + jitter * ox;
+ dy = Pf.y - of[j] + jitter * oy;
+ dz = Pf.z - of + jitter * oz;
+
+ float3 d = dx * dx + dy * dy + dz * dz; // dij1, dij2 and dij3, squared
+
+ //Find lowest and second lowest distances
+ for (int n = 0; n < 3; n ++)
+ {
+ if (d[n] < F[0])
+ {
+ F[1] = F[0];
+ F[0] = d[n];
+ randomPoint = p;
+ }
+ else if(d[n] < F[1])
+ {
+ F[1] = d[n];
+ }
+ }
+ }
+ }
+
+ return F;
+ }
+
+ float voronoi2D(in float2 x, float scale, float2 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float2 n = floor(x);
+ float2 f = frac(x);
+
+ // first pass: regular voronoi
+ float2 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 g = float2(float(i), float(j));
+ float2 o = random2(n + g);
+ float2 currentPoint = o;
+
+ float2 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint.xy = currentPoint;
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ float2 g = mg + float2(float(q), float(r));
+ float2 o = random2(n + g);
+
+ float2 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ return md;
+ }
+
+ float voronoi3D(in float3 x, float scale, float3 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float3 n = floor(x);
+ float3 f = frac(x);
+
+ // first pass: regular voronoi
+ float3 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ for (int h = -1; h <= 1; h ++)
+ {
+ float3 g = float3(float(h), float(i), float(j));
+ float3 o = random3(n + g);
+ float3 currentPoint = o;
+
+ float3 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint = currentPoint;
+ }
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ for (int p = -2; p <= 2; p ++)
+ {
+ float3 g = mg + float3(float(p), float(q), float(r));
+ float3 o = random3(n + g);
+
+ float3 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ }
+ return md;
+ }
+
+
+
+ // fracal sum, range -1.0 - 1.0
+ float VoronoiNoise_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ float VoronoiNoiseDiff_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[1]) - sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ void applyVoronoi(inout float4 finalColor, inout float3 VoronoiEmission)
+ {
+ float voronoiOctaveNumber = 1;
+ float voronoiOctaveScale = 1;
+ float voronoiOctaveAttenuation = 1;
+ randomPoint = 0;
+ float4 voronoiColor1 = _VoronoiColor1;
+
+ float voronoi = 0;
+
+ float3 position = 0;
+
+
+ if (_VoronoiSpace == 0)
+ {
+ position = poiMesh.localPos;
+ }
+
+ if(_VoronoiSpace == 1)
+ {
+ position = poiMesh.worldPos;
+ }
+
+ if(_VoronoiSpace == 2)
+ {
+ position = float3(poiMesh.uv[0].x, poiMesh.uv[0].y, 0);
+ }
+
+ float mask = POI2D_SAMPLER_PAN(_VoronoiMask, _MainTex, poiMesh.uv[_VoronoiMaskUV], _VoronoiMaskPan).r;
+ float edgeNoise = POI2D_SAMPLER_PAN(_VoronoiNoise, _MainTex, poiMesh.uv[_VoronoiNoiseUV], _VoronoiNoisePan).r * _VoronoiNoiseIntensity;
+
+
+ if(_VoronoiType == 0) // Basic
+ {
+ voronoi = voronoi2D(position.xy, _VoronoiScale, _VoronoiSpeed);
+ }
+
+ if (_VoronoiType == 1) // Diff
+ {
+ voronoi = VoronoiNoiseDiff_Octaves(position, _VoronoiScale, _VoronoiSpeed, voronoiOctaveNumber, voronoiOctaveScale, voronoiOctaveAttenuation, 1, _Time.x);
+ }
+
+ if (_VoronoiType == 2) // Fixed Border
+ {
+ voronoi = voronoi3D(position, _VoronoiScale, _VoronoiSpeed);
+ // isolines
+ //color = c.x * (0.5 + 0.5 * sin(64.0 * c.x)) * 1.0;
+ }
+
+ if (_VoronoiEnableRandomCellColor == 1)
+ {
+ float3 rando = random3(randomPoint);
+ fixed hue = rando.x;
+ fixed saturation = lerp(_VoronoiRandomMinMaxSaturation.x, _VoronoiRandomMinMaxSaturation.y, rando.y);
+ fixed value = lerp(_VoronoiRandomMinMaxBrightness.x, _VoronoiRandomMinMaxBrightness.y, rando.z);
+ float3 hsv = float3(hue, saturation, value);
+
+ voronoiColor1.rgb = HSVtoRGB(hsv);
+ }
+
+ float2 voronoiGradient = _VoronoiGradient;
+ voronoiGradient.xy += edgeNoise;
+ float ramp = smoothstep(voronoiGradient.x, voronoiGradient.y, voronoi);
+
+
+ if(_VoronoiBlend == 0)
+ {
+ float4 voronoiColor = lerp(_VoronoiColor0, voronoiColor1, ramp);
+
+ if(_VoronoiEffectsMaterialAlpha)
+ {
+ finalColor.rgba = lerp(finalColor, voronoiColor, mask);
+ }
+ else
+ {
+ finalColor.rgb = lerp(finalColor.rgb, voronoiColor.rgb, mask * voronoiColor.a);
+ }
+ }
+ float4 voronoiEmissionColor = lerp(_VoronoiColor0 * _VoronoiEmission0, voronoiColor1 * _VoronoiEmission1, ramp);
+ VoronoiEmission = voronoiEmissionColor.rgb * mask * voronoiEmissionColor.a;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
new file mode 100644
index 00000000..e4f6e697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 5ba5fa91043789840ae98bb8e71441b7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
new file mode 100644
index 00000000..49c602c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
@@ -0,0 +1,111 @@
+#ifndef POI_WIREFRAME
+ #define POI_WIREFRAME
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_WireframeTexture); float4 _WireframeTexture_ST;
+ float2 _WireframeTexturePan;
+ float _WireframeSmoothing;
+ float _WireframeThickness;
+ float4 _WireframeColor;
+ float _WireframeAlpha;
+ float _WireframeEnable;
+ float _WireframeWaveEnabled;
+ float _WireframeWaveDensity;
+ float _WireframeWaveSpeed;
+ float _WireframeEdgeOpacity;
+ float _WireframeFaceOpacity;
+ half _WireframeEmissionAlpha;
+ float _WireframeEmissionStrength;
+ float _WireframeQuad;
+ float _WireframeUV;
+
+ #ifndef POI_SHADOW
+ void applyWireframe(inout float3 wireframeEmission, inout float4 albedo)
+ {
+
+ if (_WireframeEnable)
+ {
+ float4 colorMap = UNITY_SAMPLE_TEX2D_SAMPLER(_WireframeTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_WireframeUV], _WireframeTexture) + _Time.x * _WireframeTexturePan);
+ float size = _WireframeThickness;
+ half3 width = abs(ddx(poiMesh.barycentricCoordinates)) + abs(ddy(poiMesh.barycentricCoordinates));
+ half3 eF = smoothstep(0, width * size, poiMesh.barycentricCoordinates);
+ half minBary = size > 0 ? min(min(eF.x, eF.y), eF.z): 1;
+
+ float4 wireframeColor = _WireframeColor * colorMap;
+
+ albedo.a *= lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ albedo.rgb = lerp(lerp(albedo.rgb, wireframeColor.rgb, wireframeColor.a), albedo.rgb, minBary);
+ wireframeEmission = wireframeColor.rgb * _WireframeEmissionStrength * (1 - minBary) * _WireframeColor.a;
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle v2f IN[3], inout TriangleStream < v2f > tristream)
+ {
+
+ if(_WireframeQuad)
+ {
+ float e1 = length(IN[0].localPos - IN[1].localPos);
+ float e2 = length(IN[1].localPos - IN[2].localPos);
+ float e3 = length(IN[2].localPos - IN[0].localPos);
+
+ float3 quad = 0;
+ if(e1 > e2 && e1 > e3)
+ quad.y = 1.;
+ else if(e2 > e3 && e2 > e1)
+ quad.x = 1;
+ else
+ quad.z = 1;
+
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0) + quad;
+ IN[1].barycentricCoordinates = fixed3(0, 0, 1) + quad;
+ IN[2].barycentricCoordinates = fixed3(0, 1, 0) + quad;
+ }
+ else
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ }
+
+
+
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #else
+
+ float applyShadowWireframe(float2 uv, float3 barycentricCoordinates, float3 normal, float3 worldPos)
+ {
+
+ if(_WireframeEnable)
+ {
+ float wireframeFadeAlpha = _WireframeAlpha;
+ float3 finalWireframeColor = 0;
+
+ float3 barys;
+ barys.xy = barycentricCoordinates;
+ barys.z = 1 - barys.x - barys.y;
+ float3 deltas = fwidth(barys);
+ float3 smoothing = deltas * _WireframeSmoothing;
+ float wireframeThickness = _WireframeThickness;
+ float3 thickness = deltas * wireframeThickness;
+ barys = smoothstep(thickness, thickness + smoothing, barys);
+ float minBary = min(barys.x, min(barys.y, barys.z));
+
+ return lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle V2FShadow IN[3], inout TriangleStream < V2FShadow > tristream)
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
new file mode 100644
index 00000000..0fd37c70
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c3cf5308f5670a143b0d6b32f26f765b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
new file mode 100644
index 00000000..319de57c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
@@ -0,0 +1,171 @@
+#ifndef POICLUDES
+ #define POICLUDES
+
+ UNITY_DECLARE_TEX2D(_MainTex); float4 _MainTex_ST; float4 _MainTex_TexelSize;
+ sampler2D _PoiGrab;
+ sampler2D _CameraDepthTexture;
+ float _Cutoff;
+ float _AlphaMod;
+
+ //Structs
+ struct appdata
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #ifdef OUTLINE
+ float _LineWidth;
+ float _OutlineEmission;
+ float4 _LineColor;
+ sampler2D _OutlineTexture; float4 _OutlineTexture_ST; float2 _OutlineTexturePan; float _OutlineTextureUV;
+ float4 _OutlineFadeDistance;
+ float4 _OutlineGlobalPan;
+ #endif
+
+ struct PoiLighting
+ {
+ half3 direction;
+ half3 color;
+ fixed attenuation;
+ #ifdef FORWARD_ADD_PASS
+ fixed additiveShadow;
+ #endif
+ half3 directLighting;
+ half3 indirectLighting;
+ half lightMap;
+ half3 rampedLightMap;
+ half3 finalLighting;
+ half3 halfDir;
+ half nDotL;
+ half nDotH;
+ half lDotv;
+ half lDotH;
+ half nDotV;
+ half N0DotV;
+ half diffuseTerm;
+
+ // World normal dot half direction
+ #ifdef POI_VAR_DOTNH
+ half dotNH;
+ #endif
+
+ // Light direction dot half direction
+ #ifdef POI_VAR_DOTLH
+ half dotLH;
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ float4 vDotNL;
+ float3 vColor[4];
+ float4 vCorrectedDotNL;
+ float4 vAttenuation;
+ float4 vAttenuationDotNL;
+ float3 vPosition[4];
+ float3 vDirection[4];
+ float3 vFinalLighting;
+ float3 vHalfDir[4];
+
+ #ifdef POI_VAR_DOTLH
+ half4 vDotLH;
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ half4 vDotNH;
+ #endif
+
+ #endif
+ };
+
+ struct PoiCamera
+ {
+ half3 viewDir;
+ half3 tangentViewDir;
+ half3 forwardDir;
+ half3 worldPos;
+ float viewDotNormal;
+ float distanceToModel;
+ float distanceToVert;
+ float3 reflectionDir;
+ float3 vertexReflectionDir;
+ float2 screenUV;
+ float4 clipPos;
+ #if defined(GRAIN)
+ float4 worldDirection;
+ #endif
+ float4 grabPos;
+ };
+
+ struct PoiMesh
+ {
+ float3 normals[2];
+ float3 tangent;
+ float3 binormal;
+ float3 localPos;
+ float3 worldPos;
+ float3 modelPos;
+ float3 tangentSpaceNormal;
+ float2 uv[5];
+ float4 vertexColor;
+ fixed3 barycentricCoordinates;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV;
+ #endif
+ float isFrontFace;
+ #ifdef FUR
+ float furAlpha;
+ #endif
+ };
+
+ struct PoiTangentData
+ {
+ float3x3 tangentTransform;
+ float3x3 tangentToWorld;
+ };
+
+ struct FragmentCommonData
+ {
+ half3 diffColor, specColor;
+ // Note: smoothness & oneMinusReflectivity for optimization purposes, mostly for DX9 SM2.0 level.
+ // Most of the math is being done on these (1-x) values, and that saves a few precious ALU slots.
+ half oneMinusReflectivity, smoothness;
+ float3 normalWorld;
+ float3 eyeVec;
+ half alpha;
+ float3 posWorld;
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 reflUVW;
+ #endif
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 tangentSpaceNormal;
+ #endif
+ };
+
+ struct Debug
+ {
+ float debug1;
+ float2 debug2;
+ float3 debug3;
+ float4 debug4;
+ };
+
+ static Debug debug;
+ static PoiLighting poiLight;
+ static PoiCamera poiCam;
+ static PoiMesh poiMesh;
+ static UnityGI gi;
+ static FragmentCommonData s;
+ static PoiTangentData poiTData;
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
new file mode 100644
index 00000000..59da0ac5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1371793fb9dc57b4e834e77deadf814d
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
new file mode 100644
index 00000000..baebb8ba
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: dd9d5ab95d80d1f49b89555f39239232
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
new file mode 100644
index 00000000..73b58317
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
@@ -0,0 +1,7648 @@
+Shader "Hidden/.poiyomi/• Poiyomi Toon •/starby1010浣-21162e8a"
+{
+ Properties
+ {
+ [HideInInspector] shader_is_using_thry_editor ("", Float) = 0
+ [HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Toon V7.0.100</color>", Float) = 0
+ [HideInInspector] shader_presets ("poiToonPresets", Float) = 0
+ [HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
+
+ [HideInInspector] footer_youtube ("youtube footer button", Float) = 0
+ [HideInInspector] footer_twitter ("twitter footer button", Float) = 0
+ [HideInInspector] footer_patreon ("patreon footer button", Float) = 0
+ [HideInInspector] footer_discord ("discord footer button", Float) = 0
+ [HideInInspector] footer_github ("github footer button", Float) = 0
+
+ // Keyword to remind users in the VRChat SDK that this material hasn't been locked. Inelegant but it works.
+ [HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Int) = 1
+ [ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Int) = 0
+ [Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Int) = 0
+
+ [ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)]_Mode("Rendering Preset--{on_value_actions:[
+ {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2450}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=1}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2451}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
+ {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:RenderType=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
+ }]}]}", Int) = 0
+ [HideInInspector] m_LockingInfo ("Locking Info--{button_right:{text:Tutorial,action:{type:URL,data:https://youtu.be/asWeDJb5LAo},hover:YouTube},is_hideable:true}", Float) = 0
+ [Helpbox(1)] _HelpBoxLocking ("LOCKING IN THE SHADER WILL DRAMATICALLY INCREASE PERFORMANCE AND DRAMATICALLY LOWER THE FILE SIZE OF AN AVATAR PACKAGE.
+
+ LOCKED IN MATERIALS CANNOT BE ANIMATED WITHOUT SETTING THE SPECIFIC PROPERTY TO DYNAMIC. RIGHT CLICK MATERIAL PROPERTIES YOU WISH TO ANIMATE, A CLOCK ICON WILL APPEAR BESIDE THE PROPERTY SIGNIFYING THAT IT CAN BE ANIMATED.
+
+ FOR MORE INFORMATION ON LOCKING PLEASE WATCH THE LOCKING TUTORIAL IN THE HEADER ABOVE.", Int) = 0
+ [Helpbox(2)] _HelpBoxHideLocking ("TO HIDE THIS CATEGORY SELECT CUSTOM UI AT THE TOP AND UNCHECK THE LOCKING INFO CATEGORY", Float) = 0
+ // Main
+ [HideInInspector] m_mainOptions ("Main", Float) = 0
+ _Color ("Color & Alpha", Color) = (1, 1, 1, 1)
+ _MainTex ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainTextureUV ("UV", Int) = 0
+ _Saturation ("Saturation", Range(-1, 1)) = 0
+ _MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
+ [Normal]_BumpMap ("Normal Map", 2D) = "bump" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _BumpMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_BumpMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ _BumpScale ("Normal Intensity", Range(0, 10)) = 1
+ _AlphaMask ("Alpha Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_AlphaMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AlphaMaskUV ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector] m_start_MainHueShift ("Hue Shift", Float) = 0
+ [HideInInspector][Toggle(COLOR_GRADING_HDR)]_MainHueShiftToggle ("Toggle Hueshift", Float) = 0
+ [ToggleUI]_MainHueShiftReplace ("Replace?", Float) = 1
+ _MainHueShift ("Hue Shift", Range(0, 1)) = 0
+ _MainHueShiftSpeed ("Shift Speed", Float) = 0
+ _MainHueShiftMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainHueShiftMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainHueShiftMaskUV ("UV", Int) = 0
+ [HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
+
+ // RGB Masking
+ [HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
+ [HideInInspector][Toggle(VIGNETTE)]_RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
+ [ToggleUI]_RGBUseVertexColors ("Use Vertex Colors", Float) = 0
+ [ToggleUI]_RGBBlendMultiplicative ("Multiplicative?", Float) = 0
+ _RGBMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBMaskPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBMaskUV ("UV", int) = 0
+ _RedColor ("R Color", Color) = (1, 1, 1, 1)
+ _RedTexure ("R Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBRedPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBRed_UV ("UV", int) = 0
+ _GreenColor ("G Color", Color) = (1, 1, 1, 1)
+ _GreenTexture ("G Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBGreenPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBGreen_UV ("UV", int) = 0
+ _BlueColor ("B Color", Color) = (1, 1, 1, 1)
+ _BlueTexture ("B Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBBluePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBBlue_UV ("UV", int) = 0
+ // RGB MASKED NORMALS
+ [Toggle(GEOM_TYPE_MESH)]_RgbNormalsEnabled ("Enable Normals", Float) = 0
+ [ToggleUI]_RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
+ [Normal]_RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalRPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalRUV ("UV", int) = 0
+ _RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalGPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalGUV ("UV", int) = 0
+ _RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalBPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalBUV ("UV", int) = 0
+ _RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
+
+ // Detail Options
+ [HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(FINALPASS)]_DetailEnabled ("Enable", Float) = 0
+ _DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" { }
+ [HideInInspector][Vector2]_DetailMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailMaskUV ("UV", Int) = 0
+ _DetailTint ("Detail Texture Tint", Color) = (1, 1, 1)
+ _DetailTex ("Detail Texture", 2D) = "gray" { }
+ [HideInInspector][Vector2]_DetailTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailTexUV ("UV", Int) = 0
+ _DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
+ _DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
+ [Normal]_DetailNormalMap ("Detail Normal", 2D) = "bump" { }
+ _DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
+ [HideInInspector][Vector2]_DetailNormalMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailNormalMapUV ("UV", Int) = 0
+ [HideInInspector] m_end_DetailOptions ("Details", Float) = 0
+
+ // Vertex Colors
+ [HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
+ _MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
+ _MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
+
+ //Vertex Manipulations
+ [HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(AUTO_EXPOSURE)]_VertexManipulationsEnabled ("Enabled", Float) = 0
+ [Vector3]_VertexManipulationLocalTranslation ("Local Translation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalRotation ("Local Rotation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalScale ("Local Scale", Vector) = (1, 1, 1, 1)
+ [Vector3]_VertexManipulationWorldTranslation ("World Translation", Vector) = (0, 0, 0, 1)
+ _VertexManipulationHeight ("Vertex Height", Float) = 0
+ _VertexManipulationHeightMask ("Height Map", 2D) = "while" { }
+ [HideInInspector][Vector2]_VertexManipulationHeightPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _VertexManipulationHeightUV ("UV", Int) = 0
+ _VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
+ [ToggleUI]_VertexRoundingEnabled ("Rounding Enabled", Float) = 0
+ _VertexRoundingDivision ("Division Amount", Float) = 500
+ [HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
+
+ // Alpha Options
+ [HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
+ _Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
+ [ToggleUI]_DitheringEnabled ("Enable Dithering", Float) = 0
+ _DitherGradient ("Dither Gradient", Range(0, 1)) = .1
+ [ToggleUI]_ForceOpaque ("Force Opaque", Float) = 0
+ _MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
+ [Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
+ [ToggleUI]_MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
+ _MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
+ [ToggleUI]_AlphaPremultiply ("Alpha Premultiply", Float) = 0
+ _AlphaMod ("Alpha Mod", Range(-1, 1)) = 0.0
+ [HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
+
+ // Decal Texture
+ [HideInInspector] m_start_DecalSection ("Decal", Float) = 0
+ [HideInInspector][Toggle(GEOM_TYPE_BRANCH)]_DecalEnabled ("Enable", Float) = 0
+ _DecalColor ("Color", Color) = (1, 1, 1, 1)
+ _DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _DecalTexture ("Decal", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalTextureUV ("UV", Int) = 0
+ _DecalMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalMaskUV ("UV", Int) = 0
+ [ToggleUI]_DecalTiled ("Tiled?", Float) = 0
+ [Vector2]_DecalScale ("Scale", Vector) = (1, 1, 0, 0)
+ [Vector2]_DecalPosition ("Position", Vector) = (.5, .5, 0, 0)
+ _DecalRotation ("Rotation", Range(0, 360)) = 0
+ _DecalRotationSpeed ("Rotation Speed", Float) = 0
+ _DecalBlendAdd ("Add", Range(0, 1)) = 0
+ _DecalBlendMultiply ("Multiply", Range(0, 1)) = 0
+ _DecalBlendReplace ("Replace", Range(0, 1)) = 0
+ [HideInInspector] m_end_DecalSection ("Decal", Float) = 0
+
+ // Back Face Textures and Emission
+ [HideInInspector] m_start_backFace ("Back Face", Float) = 0
+ [ToggleUI]_BackFaceEnabled ("Enable Back Face Options", Float) = 0
+ _BackFaceColor ("Color", Color) = (1, 1, 1, 1)
+ _BackFaceTexture ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_BackFacePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_BackFaceTextureUV ("UV#", Int) = 0
+ _BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
+ _BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
+ _BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [HideInInspector] m_end_backFace ("Back Face", Float) = 0
+
+ // Lighting
+ [HideInInspector] m_lightingOptions ("Lighting", Float) = 0
+ [HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
+ [Toggle(VIGNETTE_MASKED)]_EnableLighting ("Enable Lighting", Float) = 1
+ [Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Int) = 0
+ _LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
+ [Enum(Ramp Texture, 0, Math Gradient, 1)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Int) = 0
+ [Gradient]_ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" { }
+ _LightingShadowMask ("Ramp Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowMaskUV ("UV", Int) = 0
+ _ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
+ _LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
+ _LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = .5
+ _LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Color) = (1, 1, 1, 1)
+ _ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 1
+ _AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+
+ [HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
+ [Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Int) = 0
+ [ToggleUI]_LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
+ [ToggleUI]_LightingUncapped ("Uncapped Lighting", Float) = 0
+ [ToggleUI]_LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
+ _LightingMonochromatic ("Monochromatic Lighting?", Range(0,1)) = 0
+ _LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
+ _LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
+ [HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
+
+ [HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
+ _LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingDetailShadowsPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingDetailShadowsUV ("UV", Int) = 0
+ _LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
+
+ [HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableAO ("Enable AO", Float) = 0
+ _LightingAOTex ("AO Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingAOTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingAOTexUV ("UV", Int) = 0
+ _AOStrength ("AO Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
+
+ [HideInInspector] m_start_shadowTexture ("Shadow Texture--{reference_property:_UseShadowTexture, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ [HideInInspector][ToggleUI]_UseShadowTexture ("EnableShadowTexture--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ _LightingShadowTexture ("Shadow Texture--{reference_properties:[_LightingShadowTexturePan, _LightingShadowTextureUV], condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_shadowTexture ("Shadow Texture", Float) = 0
+
+ // HSL Lighting
+ [HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
+ _LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
+ _LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
+ _LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
+ _LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
+ [HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
+
+ // point/spot Light Settings
+ [HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
+ [HideInInspector][ToggleUI]_commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
+ [Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Int) = 1
+ _LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
+ _LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = .5
+ _LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = .5
+ _LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
+ [ToggleUI]_LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
+ _LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
+ [Toggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)]_DisableDirectionalInAdd ("No Directional", Float) = 1
+ [HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
+ [HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
+
+ // Subsurface Scattering
+ [HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
+ [Toggle(_TERRAIN_NORMAL_MAP)]_EnableSSS ("Enable Subsurface Scattering", Float) = 0
+ _SSSColor ("Subsurface Color", Color) = (1, 0, 0, 1)
+ _SSSThicknessMap ("Thickness Map", 2D) = "black" { }
+ [HideInInspector][Vector2]_SSSThicknessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SSSThicknessMapUV ("UV", Int) = 0
+ _SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
+ _SSSSCale ("Light Strength", Range(0, 1)) = 0.25
+ _SSSPower ("Light Spread", Range(1, 100)) = 5
+ _SSSDistortion ("Light Distortion", Range(0, 1)) = 1
+ [HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
+
+ // Rim Lighting
+ [HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
+ [Toggle(_GLOSSYREFLECTIONS_OFF)]_EnableRimLighting ("Enable Rim Lighting", Float) = 0
+ [Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Int) = 1
+ [ToggleUI]_RimLightingInvert ("Invert Rim Lighting", Float) = 0
+ _RimLightColor ("Rim Color", Color) = (1, 1, 1, 1)
+ _RimWidth ("Rim Width", Range(0, 1)) = 0.8
+ _RimSharpness ("Rim Sharpness", Range(0, 1)) = .25
+ _RimStrength ("Rim Emission", Range(0, 20)) = 0
+ _RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
+ _RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 0
+ _RimTex ("Rim Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimTexUV ("UV", Int) = 0
+ _RimMask ("Rim Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimMaskUV ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
+ _RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_RimWidthNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimWidthNoiseTextureUV ("UV", Int) = 0
+ _RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
+ [HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
+ _ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
+ _ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = .5
+ _ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = .5
+ [HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
+ [HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
+ [Toggle(_MAPPING_6_FRAMES_LAYOUT)]_EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
+ _RimEnviroMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimEnviroMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimEnviroMaskUV ("UV", Int) = 0
+ _RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
+ _RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
+ _RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
+ _RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
+ _RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
+ [HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
+
+ // Baked Lighting
+ [HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
+ _GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
+ [HideInInspector] DSGI ("DSGI", Float) = 0 //add this property for double sided illumination settings to be shown
+ [HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0 //add this property for lightmap flags settings to be shown
+ [HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
+
+ // Metallics
+ [HideInInspector] m_start_Metallic ("Metallics", Float) = 0
+ [Toggle(_METALLICGLOSSMAP)]_EnableMetallic ("Enable Metallics", Float) = 0
+ _CubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _MetalReflectionTint ("Reflection Tint", Color) = (1, 1, 1)
+ _MetallicTintMap ("Tint Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicTintMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicTintMapUV ("UV", Int) = 0
+ _MetallicMask ("Metallic Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicMaskUV ("UV", Int) = 0
+ _Metallic ("Metallic", Range(0, 1)) = 0
+ _SmoothnessMask ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SmoothnessMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SmoothnessMaskUV ("UV", Int) = 0
+ [ToggleUI]_InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _Smoothness ("Smoothness", Range(0, 1)) = 0
+ [HideInInspector] m_end_Metallic ("Metallics", Float) = 0
+
+ // Clearcoat
+ [HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
+ [Toggle(_COLORCOLOR_ON)]_EnableClearCoat ("Enable Clear Coat", Float) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _ClearCoatNormalToUse ("What Normal?", Int) = 0
+ _ClearCoatCubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_ClearCoatSampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _ClearCoatTint ("Reflection Tint", Color) = (1, 1, 1)
+ _ClearCoatMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatMaskUV ("UV", Int) = 0
+ _ClearCoat ("Clear Coat", Range(0, 1)) = 1
+ _ClearCoatSmoothnessMap ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatSmoothnessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatSmoothnessMapUV ("UV", Int) = 0
+ [ToggleUI]_ClearCoatInvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _ClearCoatSmoothness ("Smoothness", Range(0, 1)) = 0
+ [ToggleUI]_ClearCoatForceLighting ("Force Lighting", Float) = 0
+ [HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
+
+ // First Matcap
+ [HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
+ [Toggle(_COLORADDSUBDIFF_ON)]_MatcapEnable ("Enable Matcap", Float) = 0
+ _MatcapColor ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap ("Matcap", 2D) = "white" { }
+ _MatcapBorder ("Border", Range(0, .5)) = 0.43
+ _MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_MatcapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MatcapMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_MatcapMaskInvert("Invert", Float) = 0
+ _MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _MatcapIntensity ("Intensity", Range(0, 5)) = 1
+ _MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
+ _MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
+ _MatcapAdd ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_matcap ("Matcap", Float) = 0
+
+ // Second Matcap
+ [HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
+ [ToggleUI]_Matcap2Enable ("Enable Matcap 2", Float) = 0
+ _Matcap2Color ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap2 ("Matcap", 2D) = "white" { }
+ _Matcap2Border ("Border", Range(0, .5)) = 0.43
+ _Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_Matcap2MaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _Matcap2MaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_Matcap2MaskInvert("Invert", Float) = 0
+ _Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _Matcap2Intensity ("Intensity", Range(0, 5)) = 1
+ _Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
+ _Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
+ _Matcap2Add ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
+
+ // Specular
+ [HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
+ [Toggle(_SPECGLOSSMAP)]_EnableSpecular ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Int) = 1
+ _SpecularTint ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMapUV ("UV", Int) = 0
+ _SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
+ [Gradient]_SpecularMap ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMapUV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
+ _SpecularMask ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMaskUV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Int) = 1
+ // Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Int) = 0
+ _AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
+ _AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMapUV ("UV", Int) = 0
+ //toon aniso
+ _SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicroUV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacroUV ("UV", Int) = 0
+ // Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
+
+ // Second Specular
+ [HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
+ [ToggleUI]_EnableSpecular1 ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Int) = 1
+ _SpecularTint1 ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMap1UV ("UV", Int) = 0
+ _SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = .75
+ _SpecularMap1 ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMap1UV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
+ _SpecularMask1 ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMask1UV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Int) = 1
+ // Second Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Int) = 0
+ _AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
+ _AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMap1UV ("UV", Int) = 0
+ // Second toon aniso
+ _SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor1 ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicro1UV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacro1UV ("UV", Int) = 0
+ // Second Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
+
+ // First Emission
+ [HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
+ [HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
+ [Toggle(_EMISSION)]_EnableEmission ("Enable Emission", Float) = 0
+ [ToggleUI]_EmissionReplace ("Replace Base Color", Float) = 0
+ [HDR]_EmissionColor ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMapUV ("UV", Int) = 0
+ _EmissionMask ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMaskUV ("UV", Int) = 0
+ _EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
+
+ // Center out emission
+ [HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+
+ // Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor ("VColor as position", float) = 0
+ _EmissiveScroll_Direction ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width ("Width", Float) = 10
+ _EmissiveScroll_Velocity ("Velocity", Float) = 10
+ _EmissiveScroll_Interval ("Interval", Float) = 20
+ _EmissionScrollingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
+
+ // Second Enission
+ [HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
+ [Toggle(EFFECT_HUE_VARIATION)]_EnableEmission1 ("Enable Emission 2", Float) = 0
+ [HDR]_EmissionColor1 ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap1 ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMap1UV ("UV", Int) = 0
+ _EmissionMask1 ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMask1UV ("UV", Int) = 0
+ _EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
+
+ // Second Center Out Enission
+ [HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Second Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve1 ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve1 ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor1 ("VColor as position", float) = 0
+ _EmissiveScroll_Direction1 ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width1 ("Width", Float) = 10
+ _EmissiveScroll_Velocity1 ("Velocity", Float) = 10
+ _EmissiveScroll_Interval1 ("Interval", Float) = 20
+ _EmissionScrollingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
+
+ // Flipbook
+ [HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
+ [Toggle(_SUNDISK_HIGH_QUALITY)]_EnableFlipbook ("Enable Flipbook", Float) = 0
+ [ToggleUI]_FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
+ [TextureArray]_FlipbookTexArray ("Texture Array", 2DArray) = "" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookTexArrayUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookTexArrayPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookMaskUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookColor ("Color & alpha", Color) = (1, 1, 1, 1)
+ _FlipbookTotalFrames ("Total Frames", Int) = 1
+ _FlipbookFPS ("FPS", Float) = 30.0
+ _FlipbookScaleOffset ("Scale | Offset", Vector) = (1, 1, 0, 0)
+ [ToggleUI]_FlipbookTiled ("Tiled?", Float) = 0
+ _FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _FlipbookRotation ("Rotation", Range(0, 360)) = 0
+ _FlipbookRotationSpeed ("Rotation Speed", Float) = 0
+ _FlipbookReplace ("Replace", Range(0, 1)) = 1
+ _FlipbookMultiply ("Multiply", Range(0, 1)) = 0
+ _FlipbookAdd ("Add", Range(0, 1)) = 0
+
+ // Flipbook Manual Control
+ [HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
+ _FlipbookCurrentFrame ("Current Frame", Float) = -1
+ [HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
+ [HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
+
+ // Dissolve
+ [HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
+ [Toggle(DISTORT)]_EnableDissolve ("Enable Dissolve", Float) = 0
+ [Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Int) = 1
+ _DissolveEdgeWidth ("Edge Width", Range(0, .5)) = 0.025
+ _DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
+ _DissolveEdgeColor ("Edge Color", Color) = (1, 1, 1, 1)
+ [Gradient]_DissolveEdgeGradient ("Edge Gradient", 2D) = "white" { }
+ _DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
+ _DissolveTextureColor ("Dissolved Color", Color) = (1, 1, 1, 1)
+ _DissolveToTexture ("Dissolved Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveToTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveToTextureUV ("UV", Int) = 0
+ _DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
+ _DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveNoiseTextureUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertNoise ("Invert?", Float) = 0
+ _DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_DissolveDetailNoisePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveDetailNoiseUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertDetailNoise ("Invert?", Float) = 0
+ _DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
+ _DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
+ _DissolveMask ("Dissolve Mask", 2D) = "white" { }
+ [ToggleUI]_DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
+ [HideInInspector][Vector2]_DissolveMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveMaskInvert ("Invert?", Float) = 0
+ _ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
+ [HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Int) = 2
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Int) = 2
+ [HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
+ [Enum(Local, 0, World, 1)] _DissolveP2PWorldLocal ("World/Local", Int) = 0
+ _DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
+ [Vector3]_DissolveStartPoint ("Start Point", Vector) = (0, -1, 0, 0)
+ [Vector3]_DissolveEndPoint ("End Point", Vector) = (0, 1, 0, 0)
+ [HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
+
+ // Locked in anim sldiers
+ [HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
+ _DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
+ _DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
+ _DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
+ _DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
+ _DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
+ _DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
+ _DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
+ _DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
+ _DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
+ _DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
+ [HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
+ [HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
+
+ // Panosphere
+ [HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+ [Toggle(_DETAIL_MULX2)]_PanoToggle ("Enable Panosphere", Float) = 0
+ [ToggleUI]_PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
+ _PanosphereColor ("Color", Color) = (1, 1, 1, 1)
+ _PanosphereTexture ("Texture", 2D) = "white" { }
+ _PanoMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_PanoMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _PanoMaskUV ("UV", Int) = 0
+ _PanoEmission ("Emission Strength", Range(0, 10)) = 0
+ _PanoBlend ("Alpha", Range(0, 1)) = 0
+ [Vector3]_PanospherePan ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [ToggleUI]_PanoCubeMapToggle ("Use Cubemap", Float) = 0
+ [TextureNoSO]_PanoCubeMap ("CubeMap", Cube) = "" { }
+ [HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+
+ // Glitter
+ [HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
+ [Toggle(_SUNDISK_SIMPLE)]_GlitterEnable ("Enable Glitter?", Float) = 0
+ [Enum(Angle, 0, Linear Emission, 1)]_GlitterMode ("Mode", Int) = 0
+ [Enum(Circle, 0, Square, 1)]_GlitterShape ("Shape", Int) = 0
+ [Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Int) = 0
+ [HDR]_GlitterColor ("Color", Color) = (1, 1, 1)
+ _GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
+ _GlitterColorMap ("Glitter Color Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterColorMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterColorMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_GlitterPan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterMask ("Glitter Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterMaskUV ("UV", Int) = 0
+ _GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterTextureRotation ("Rotation Speed", Float) = 0
+ _GlitterFrequency ("Glitter Density", Float) = 300.0
+ _GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1.0
+ _GlitterSpeed ("Glitter Speed", Float) = 10.0
+ _GlitterSize ("Glitter Size", Range(0, 1)) = .3
+ _GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
+ _GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
+ _GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
+ _GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
+ _GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = .8
+ _GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = .08
+ _glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
+ _GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, .1)) = .0
+
+ // Glitter Random Colors
+ [HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
+ [ToggleUI]_GlitterRandomColors ("Random Colors", Float) = 0
+ [MultiSlider]_GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8, 1, 0, 1)
+ [MultiSlider]_GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8, 1, 0, 1)
+ [ToggleUI]_GlitterRandomSize("Random Size?", Float) = 0
+ [MultiSlider]_GlitterMinMaxSize ("Size Range", Vector) = (0.1, 0.5, 0, 1)
+ [ToggleUI]_GlitterRandomRotation("Random Tex Rotation", Float) = 0
+ [HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
+ [HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
+ _TextGlyphs ("Font Array", 2D) = "black" { }
+ _TextPixelRange ("Pixel Range", Float) = 4.0
+ [Toggle(EFFECT_BUMP)]_TextEnabled ("Text?", Float) = 0
+
+ // FPS
+ [HideInInspector] m_start_TextFPS ("FPS", Float) = 0
+ [ToggleUI]_TextFPSEnabled ("FPS Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Int) = 0
+ _TextFPSColor ("Color", Color) = (1, 1, 1, 1)
+ _TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextFPSOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextFPSRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextFPSScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextFPSPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextFPS ("FPS", Float) = 0
+
+ // POSITION
+ [HideInInspector] m_start_TextPosition ("Position", Float) = 0
+ [ToggleUI]_TextPositionEnabled ("Position Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVertical ("Vertical?", Float) = 0
+ _TextPositionColor ("Color", Color) = (1, 0, 1, 1)
+ _TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextPositionOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextPositionRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextPositionScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextPositionPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextPosition ("Position", Float) = 0
+
+ // INSTANCE TIME
+ [HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
+ [ToggleUI]_TextTimeEnabled ("Time Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Int) = 0
+ _TextTimeColor ("Color", Color) = (1, 0, 1, 1)
+ _TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextTimeOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextTimeRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextTimeScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextTimePadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
+ [HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
+
+ // Mirror Rendering
+ [HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
+ [Toggle(_REQUIRE_UV2)]_EnableMirrorOptions ("Enable Mirror Options", Float) = 0
+ [Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Int) = 0
+ [ToggleUI]_EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
+ _MirrorTexture ("Mirror Tex", 2D) = "white" { }
+ [HideInInspector][Vector2]_MirrorTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MirrorTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
+
+ // Distance Fade
+ [HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
+ _MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
+ _MainFadeTexture ("Fade Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainFadeTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainFadeTextureUV ("UV", Int) = 0
+ [Vector2]_MainDistanceFade ("Distance Fade X to Y", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
+
+ // Angular Fade
+ [HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
+ [Toggle(_SUNDISK_NONE)]_EnableRandom ("Enable Angular Fade", Float) = 0
+ [Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Int) = 0
+ [Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Int) = 0
+ [Vector3]_AngleForwardDirection ("Forward Direction", Vector) = (0, 0, 1, 0)
+ _CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
+ _CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
+ _ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
+ _ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
+ _AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
+
+ // UV Distortion
+ [HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
+ [Toggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
+ _DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_DistortionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _DistortionMaskUV ("UV", Int) = 0
+ _DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" { }
+ _DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" { }
+ _DistortionStrength ("Strength1", Float) = 0.5
+ _DistortionStrength1 ("Strength2", Float) = 0.5
+ [Vector2]_DistortionSpeed ("Speed1", Vector) = (0.5, 0.5, 0, 0)
+ [Vector2]_DistortionSpeed1 ("Speed2", Vector) = (0.5, 0.5, 0, 0)
+ [HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
+
+ // Outline Options
+ [HideInInspector] m_outlineOptions ("Outlines", Float) = 0
+ [ToggleUI]_commentIfZero_EnableOutlinePass ("Enable Outlines", float) = 0
+ [Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)]_OutlineMode ("Mode", Int) = 0
+ _OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
+ _OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
+ _OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1, 0, 0, 0)
+ _OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1, 0, 0, 0)
+ [ToggleUI]_OutlineFixedSize ("Fixed Size?", Float) = 0
+ [Enum(Off, 0, Normals, 1, Mask VC.r, 2)]_OutlineUseVertexColors ("Vertex Color", Float) = 0
+ [ToggleUI]_OutlineLit ("Enable Lighting", Float) = 1
+ _LineWidth ("Width", Float) = 0
+ _LineColor ("Color", Color) = (1, 1, 1, 1)
+ _OutlineEmission ("Outline Emission", Float) = 0
+ _OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineTexturePan ("Outline Texture Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineTextureUV ("UV", Int) = 0
+ _OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineMaskUV ("UV", Int) = 0
+ _OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
+ [HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
+ [Vector2]_OutlineFadeDistance ("Outline distance Fade", Vector) = (0, 0, 0, 0)
+ [Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
+ _OutlineOffsetFactor("Offset Factor", Float) = 0
+ _OutlineOffsetUnits("Offset Units", Float) = 0
+ [HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
+
+ // Parallax Mapping
+ [HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
+ [Toggle(_PARALLAXMAP)]_ParallaxMap ("Enable Parallax FX", Float) = 0
+ [ToggleUI]_ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
+ [ToggleUI]_ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
+ [HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
+ [Vector2]_ParallaxHeightMapPan ("Pan", Vector) = (0, 0, 0, 0)
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Int) = 0
+ _ParallaxHeightMap ("Height Map", 2D) = "black" { }
+ _ParallaxHeightMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxHeightMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxHeightMapMaskUV ("UV", Int) = 0
+ _ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
+ [HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
+ [HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
+ [Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Int) = 0
+ [ToggleUI]_ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
+ _ParallaxInternalMap ("Internal Map", 2D) = "black" { }
+ _ParallaxInternalMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxInternalMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxInternalMapMaskUV ("UV", Int) = 0
+ _ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
+ _ParallaxInternalMinDepth ("Min Depth", Float) = 0
+ _ParallaxInternalMaxDepth ("Max Depth", Float) = 1
+ _ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
+ _ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
+ _ParallaxInternalMinColor ("Min Depth Color", Color) = (1, 1, 1, 1)
+ _ParallaxInternalMaxColor ("Max Depth Color", Color) = (1, 1, 1, 1)
+ [Vector2]_ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [Vector2]_ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
+ [HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
+ _ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
+ [HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
+
+ // Rendering Options
+ [HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
+ [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
+ [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
+ [Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Int) = 1
+ [Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Int) = 15
+ _OffsetFactor ("Offset Factor", Float) = 0.0
+ _OffsetUnits ("Offset Units", Float) = 0.0
+ [ToggleUI]_IgnoreFog ("Ignore Fog", Float) = 0
+ [HideInInspector] Instancing ("Instancing", Float) = 0 //add this property for instancing variants settings to be shown
+
+ // Blending Options
+ [HideInInspector] m_start_blending ("Blending", Float) = 0
+ [Enum(Thry.BlendOp)]_BlendOp ("RGB Blend Op", Int) = 0
+ [Enum(Thry.BlendOp)]_BlendOpAlpha ("Alpha Blend Op", Int) = 0
+ [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Int) = 1
+ [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Int) = 0
+ [HideInInspector] m_end_blending ("Blending", Float) = 0
+
+ // Stencils
+ [HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
+ [IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
+
+ // Outline Stencil
+ [HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
+ [IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
+
+ // Debug Options
+ [HideInInspector] m_start_debugOptions ("Debug", Float) = 0
+ [HideInInspector][Toggle(_COLOROVERLAY_ON)]_DebugEnabled ("Display Debug Info", Float) = 0
+ _VertexUnwrap ("Unwrap", Range(0, 1)) = 0
+ [Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Int) = 0
+ [Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Int) = 0
+ [Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Int) = 0
+ [HideInInspector] m_end_debugOptions ("Debug", Float) = 0
+
+ //[HideInInspector] m_animationToggles ("Animation Support Toggles", Float) = 0
+ //[HelpBox(1)] _AnimationToggleHelp ("You don't need to search through this list. You can enable animation support on any property by right clicking it", Int) = 0
+
+ // Main
+ [HideInInspector]_ColorAnimated ("Color & Alpha", Int) = 0
+ [HideInInspector]_MainTexAnimated ("Texture", Int) = 0
+ [HideInInspector]_MainTex_STAnimated ("Texture Offset/Scale", Int) = 0
+ [HideInInspector]_MainTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_MainVertexColoringAnimated ("Use Vertex Color", Int) = 0
+ [HideInInspector]_MainUseVertexColorAlphaAnimated ("Use Vertex Alpha", Int) = 0
+ [HideInInspector]_MainEmissionStrengthAnimated ("Basic Emission", Int) = 0
+ [HideInInspector]_BumpMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_BumpMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_BumpMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_BumpScaleAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_AlphaMaskAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_AlphaMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AlphaMaskUVAnimated ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector]_MainHueShiftToggleAnimated ("Toggle Hueshift", Int) = 0
+ [HideInInspector]_MainHueShiftReplaceAnimated ("Replace?", Int) = 0
+ [HideInInspector]_MainHueShiftAnimated ("Hue Shift", Int) = 0
+ [HideInInspector]_MainHueShiftSpeedAnimated ("Shift Speed", Int) = 0
+ [HideInInspector]_MainHueShiftMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MainHueShiftMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainHueShiftMaskUVAnimated ("UV", Int) = 0
+
+ // RGB Masking
+ [HideInInspector]_RGBMaskEnabledAnimated ("RGB Mask Enabled", Int) = 0
+ [HideInInspector]_RGBUseVertexColorsAnimated ("Use Vertex Colors", Int) = 0
+ [HideInInspector]_RGBBlendMultiplicativeAnimated ("Multiplicative?", Int) = 0
+ [HideInInspector]_RGBMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RGBMaskPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RedColorAnimated ("R Color", Int) = 0
+ [HideInInspector]_RedTexureAnimated ("R Texture", Int) = 0
+ [HideInInspector]_RGBRedPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBRed_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_GreenColorAnimated ("G Color", Int) = 0
+ [HideInInspector]_GreenTextureAnimated ("G Texture", Int) = 0
+ [HideInInspector]_RGBGreenPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBGreen_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_BlueColorAnimated ("B Color", Int) = 0
+ [HideInInspector]_BlueTextureAnimated ("B Texture", Int) = 0
+ [HideInInspector]_RGBBluePanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBBlue_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_RGBNormalBlendAnimated ("UV", Int) = 0
+
+ // Detail Options
+ [HideInInspector]_DetailMaskAnimated ("Detail Mask (R:Texture, G:Normal)", Int) = 0
+ [HideInInspector]_DetailMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTintAnimated ("Detail Texture Tint", Int) = 0
+ [HideInInspector]_DetailTexAnimated ("Detail Texture", Int) = 0
+ [HideInInspector]_DetailTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTexIntensityAnimated ("Detail Tex Intensity", Int) = 0
+ [HideInInspector]_DetailBrightnessAnimated ("Detail Brightness:", Int) = 0
+ [HideInInspector]_DetailNormalMapAnimated ("Detail Normal", Int) = 0
+ [HideInInspector]_DetailNormalMapScaleAnimated ("Detail Normal Intensity", Int) = 0
+ [HideInInspector]_DetailNormalMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailNormalMapUVAnimated ("UV", Int) = 0
+
+ //Vertex Manipulations
+ [HideInInspector]_VertexManipulationLocalTranslationAnimated ("Local Translation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalRotationAnimated ("Local Rotation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalScaleAnimated ("Local Scale", Int) = 0
+ [HideInInspector]_VertexManipulationWorldTranslationAnimated ("World Translation", Int) = 0
+ [HideInInspector]_VertexManipulationHeightAnimated ("Vertex Height", Int) = 0
+ [HideInInspector]_VertexManipulationHeightMaskAnimated ("Height Map", Int) = 0
+ [HideInInspector]_VertexManipulationHeightPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VertexManipulationHeightUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VertexManipulationHeightBiasAnimated ("Mask Bias", Int) = 0
+ [HideInInspector]_VertexRoundingEnabledAnimated ("Rounding Enabled", Int) = 0
+ [HideInInspector]_VertexRoundingDivisionAnimated ("Division Amount", Int) = 0
+
+ // Alpha Options
+ [HideInInspector]_AlphaModAnimated ("Alpha Mod", Int) = 0
+ [HideInInspector]_CutoffAnimated ("Alpha Cuttoff", Int) = 0
+ [HideInInspector]_DitheringEnabledAnimated ("Enable Dithering", Int) = 0
+ [HideInInspector]_DitherGradientAnimated ("Dither Gradient", Int) = 0
+ [HideInInspector]_ForceOpaqueAnimated ("Force Opaque", Int) = 0
+ [HideInInspector]_MainShadowClipModAnimated ("Shadow Clip Mod", Int) = 0
+ [HideInInspector]_AlphaToMaskAnimated ("Alpha To Coverage", Int) = 0
+ [HideInInspector]_MainAlphaToCoverageAnimated ("Sharpenned A2C", Int) = 0
+ [HideInInspector]_AlphaPremultiplyAnimated ("Alpha Premultiply", Int) = 0
+ [HideInInspector]_MainMipScaleAnimated ("Mip Level Alpha Scale", Int) = 0
+
+ // Decal Texture
+ [HideInInspector]_DecalEnabledAnimated ("Enable", Int) = 0
+ [HideInInspector]_DecalColorAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalEmissionStrengthAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalTextureAnimated ("Decal", Int) = 0
+ [HideInInspector]_DecalTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DecalMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_DecalScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_DecalPositionAnimated ("Position", Int) = 0
+ [HideInInspector]_DecalRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_DecalRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_DecalBlendAddAnimated ("Add", Int) = 0
+ [HideInInspector]_DecalBlendMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_DecalBlendReplaceAnimated ("Replace", Int) = 0
+
+ // Lighting
+ [HideInInspector]_EnableLightingAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LightingModeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingStandardSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_LightingShadingEnabledAnimated ("Enable Shading-",Int) = 0
+ [HideInInspector]_LightingRampTypeAnimated ("Ramp Type", Int) = 0
+ [HideInInspector]_ToonRampAnimated ("Lighting Ramp", Int) = 0
+ [HideInInspector]_LightingShadowMaskAnimated ("Ramp Mask", Int) = 0
+ [HideInInspector]_LightingShadowMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ShadowOffsetAnimated ("Ramp Offset", Int) = 0
+ [HideInInspector]_LightingGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingShadowColorAnimated ("Shadow Tint", Int) = 0
+ [HideInInspector]_ShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_AttenuationMultiplierAnimated ("Unity Shadows", Int) = 0
+ [HideInInspector]_LightingIgnoreAmbientColorAnimated ("Ignore Ambient Color", Int) = 0
+
+ [HideInInspector]_LightingDirectColorModeAnimated ("D Color", Int) = 0
+ [HideInInspector]_LightingIndirectColorModeAnimated ("I Color?", Int) = 0
+ [HideInInspector]_LightingMonochromaticAnimated ("Monochromatic Lighting?", Int) = 0
+ [HideInInspector]_LightingUncappedAnimated ("Uncapped Lighting", Int) = 0
+ [HideInInspector]_LightingOnlyUnityShadowsAnimated ("Only Unity Shadows", Int) = 0
+ [HideInInspector]_LightingMinLightBrightnessAnimated ("Min Brightnes", Int) = 0
+ [HideInInspector]_LightingMinShadowBrightnessRatioAnimated ("Shadow:Light min Ratio", Int) = 0
+
+ [HideInInspector]_LightingDetailShadowsEnabledAnimated ("Enabled Detail Shadows?", Int) = 0
+ [HideInInspector]_LightingDetailShadowsAnimated ("Detail Shadows", Int) = 0
+ [HideInInspector]_LightingDetailShadowsPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingDetailShadowsUVAnimated ("UV", Int) = 0
+ [HideInInspector]_LightingDetailStrengthAnimated ("Detail Strength", Int) = 0
+
+ [HideInInspector]_LightingEnableAOAnimated ("Enable AO", Int) = 0
+ [HideInInspector]_LightingAOTexAnimated ("AO Map", Int) = 0
+ [HideInInspector]_LightingAOTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingAOTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_AOStrengthAnimated ("AO Strength", Range(0, 1)) = 0
+
+ [HideInInspector]_UseShadowTextureAnimated ("EnableShadowTexture", Int) = 0
+ [HideInInspector]_LightingShadowTextureAnimated ("Shadow Texture", Int) = 0
+ [HideInInspector]_LightingShadowTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowTextureUVAnimated ("UV", Int) = 0
+
+ [HideInInspector]_LightingEnableHSLAnimated ("Enabled HSL Lighting", Int) = 0
+ [HideInInspector]_LightingHSLIntensityAnimated ("Shadow HSL Intensity", Int) = 0
+ [HideInInspector]_LightingShadowHueAnimated ("Shadow Hue Change", Int) = 0
+ [HideInInspector]_LightingShadowSaturationAnimated ("Shadow Saturation Change", Int) = 0
+ [HideInInspector]_LightingShadowLightnessAnimated ("Shadow Lightness Change", Int) = 0
+
+ // point/spot Light Settings
+ [HideInInspector]_commentIfZero_LightingAdditiveEnableAnimated ("Enable Additive", Int) = 0
+ [HideInInspector]_LightingAdditiveTypeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingAdditivePassthroughAnimated ("Point Light Passthrough", Int) = 0
+ [HideInInspector]_LightingAdditiveDetailStrengthAnimated ("Detail Shadow Strength", Int) = 0
+ [HideInInspector]_LightingAdditiveLimitIntensityAnimated ("Limit Intensity", Int) = 0
+ [HideInInspector]_LightingAdditiveMaxIntensityAnimated ("Max Intensity", Int) = 0
+
+ // Subsurface Scattering
+ [HideInInspector]_EnableSSSAnimated ("Enable Subsurface Scattering", Int) = 0
+ [HideInInspector]_SSSColorAnimated ("Subsurface Color", Int) = 0
+ [HideInInspector]_SSSThicknessMapAnimated ("Thickness Map", Int) = 0
+ [HideInInspector]_SSSThicknessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SSSThicknessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SSSThicknessModAnimated ("Thickness mod", Int) = 0
+ [HideInInspector]_SSSSCaleAnimated ("Light Strength", Int) = 0
+ [HideInInspector]_SSSPowerAnimated ("Light Spread", Int) = 0
+ [HideInInspector]_SSSDistortionAnimated ("Light Distortion", Int) = 0
+
+ // Rim Lighting
+ [HideInInspector]_EnableRimLightingAnimated ("Enable Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_RimLightingInvertAnimated ("Invert Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightColorAnimated ("Rim Color", Int) = 0
+ [HideInInspector]_RimWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimStrengthAnimated ("Rim Emission", Int) = 0
+ [HideInInspector]_RimBrightenAnimated ("Rim Color Brighten", Int) = 0
+ [HideInInspector]_RimLightColorBiasAnimated ("Rim Color Bias", Int) = 0
+ [HideInInspector]_RimTexAnimated ("Rim Texture", Int) = 0
+ [HideInInspector]_RimTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimMaskAnimated ("Rim Mask", Int) = 0
+ [HideInInspector]_RimMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimMaskUVAnimated ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector]_RimWidthNoiseTextureAnimated ("Rim Width Noise", Int) = 0
+ [HideInInspector]_RimWidthNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimWidthNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimWidthNoiseStrengthAnimated ("Intensity", Int) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector]_ShadowMixAnimated ("Shadow Mix In", Int) = 0
+ [HideInInspector]_ShadowMixThresholdAnimated ("Shadow Mix Threshold", Int) = 0
+ [HideInInspector]_ShadowMixWidthModAnimated ("Shadow Mix Width Mod", Int) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector]_EnableEnvironmentalRimAnimated ("Enable Environmental Rim", Int) = 0
+ [HideInInspector]_RimEnviroMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RimEnviroMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimEnviroMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimEnviroBlurAnimated ("Blur", Int) = 0
+ [HideInInspector]_RimEnviroWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimEnviroSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimEnviroMinBrightnessAnimated ("Min Brightness Threshold", Int) = 0
+ [HideInInspector]_RimEnviroIntensityAnimated ("Intensity", Int) = 0
+
+ // Metallics
+ [HideInInspector]_EnableMetallicAnimated ("Enable Metallics", Int) = 0
+ [HideInInspector]_CubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_SampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_MetalReflectionTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_MetallicTintMapAnimated ("Tint Map", Int) = 0
+ [HideInInspector]_MetallicTintMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicTintMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicMaskAnimated ("Metallic Mask", Int) = 0
+ [HideInInspector]_MetallicMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SmoothnessMaskAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SmoothnessMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_InvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessAnimated ("Smoothness", Int) = 0
+
+ // Clearcoat
+ [HideInInspector]_EnableClearCoatAnimated ("Enable Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatNormalToUseAnimated ("What Normal?", Int) = 0
+ [HideInInspector]_ClearCoatCubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_ClearCoatSampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_ClearCoatTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_ClearCoatMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ClearCoatMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatInvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_ClearCoatForceLightingAnimated ("Force Lighting", Int) = 0
+
+ // First Matcap
+ [HideInInspector]_MatcapEnableAnimated ("Enable Matcap", Int) = 0
+ [HideInInspector]_MatcapColorAnimated ("Color", Int) = 0
+ [HideInInspector]_MatcapAnimated ("Matcap", Int) = 0
+ [HideInInspector]_MatcapBorderAnimated ("Border", Int) = 0
+ [HideInInspector]_MatcapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MatcapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MatcapMaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_MatcapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MatcapEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_MatcapIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_MatcapLightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_MatcapReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_MatcapMultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_MatcapAddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_MatcapNormalAnimated ("Normal to use", Int) = 0
+
+ // Second Matcap
+ [HideInInspector]_Matcap2EnableAnimated ("Enable Matcap 2", Int) = 0
+ [HideInInspector]_Matcap2ColorAnimated ("Color", Int) = 0
+ [HideInInspector]_Matcap2Animated ("Matcap", Int) = 0
+ [HideInInspector]_Matcap2BorderAnimated ("Border", Int) = 0
+ [HideInInspector]_Matcap2MaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_Matcap2MaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_Matcap2MaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_Matcap2MaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_Matcap2EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_Matcap2IntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_Matcap2LightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_Matcap2ReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_Matcap2MultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_Matcap2AddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_Matcap2NormalAnimated ("Normal to use", Int) = 0
+
+ // Specular
+ [HideInInspector]_EnableSpecularAnimated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularTypeAnimated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTintAnimated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMapAnimated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothnessAnimated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMaskAnimated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFromAnimated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangentAnimated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1AlphaAnimated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2AlphaAnimated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1OffsetAnimated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2SmoothnessAnimated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMapAnimated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMapAnimated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStartAnimated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEndAnimated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColorAnimated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirroredAnimated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroAnimated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplierAnimated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroAnimated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplierAnimated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuterAnimated ("Inner/Outer Edge", Int) = 0
+
+ // Second Specular
+ [HideInInspector]_EnableSpecular1Animated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularType1Animated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormal1Animated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTint1Animated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallic1Animated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothness1Animated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMap1Animated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothness1Animated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMask1Animated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFrom1Animated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangent1Animated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1Alpha1Animated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2Alpha1Animated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1Offset1Animated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2Smoothness1Animated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMap1Animated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMap1Animated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStart1Animated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEnd1Animated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColor1Animated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirrored1Animated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1Animated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplier1Animated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1Animated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplier1Animated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuter1Animated ("Inner/Outer Edge", Int) = 0
+
+ // First Emission
+ [HideInInspector]_EnableEmissionAnimated ("Enable Emission", Int) = 0
+ [HideInInspector]_EmissionReplaceAnimated ("Replace Base Color", Int) = 0
+ [HideInInspector]_EmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMapAnimated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMapAnimated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMaskAnimated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabledAnimated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShiftAnimated ("Hue Shift", Int) = 0
+
+ // Center out emission
+ [HideInInspector]_EmissionCenterOutEnabledAnimated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeedAnimated ("Flow Speed", Int) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector]_EnableGITDEmissionAnimated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMeshAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplierAnimated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplierAnimated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLightAnimated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLightAnimated ("Max Lighting", Int) = 0
+
+ // Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_MinAnimated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_MaxAnimated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_VelocityAnimated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffsetAnimated ("Offset", Int) = 0
+
+ // Scrolling Emission
+ [HideInInspector]_ScrollingEmissionAnimated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurveAnimated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurveAnimated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColorAnimated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_DirectionAnimated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_WidthAnimated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_VelocityAnimated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_IntervalAnimated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffsetAnimated ("Offset", Int) = 0
+
+ // Second Enission
+ [HideInInspector]_EnableEmission1Animated ("Enable Emission 2", Int) = 0
+ [HideInInspector]_EmissionColor1Animated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMap1Animated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMap1Animated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMask1Animated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrength1Animated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabled1Animated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShift1Animated ("Hue Shift", Int) = 0
+
+ // Second Center Out Enission
+ [HideInInspector]_EmissionCenterOutEnabled1Animated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeed1Animated ("Flow Speed", Int) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector]_EnableGITDEmission1Animated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMesh1Animated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplier1Animated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplier1Animated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLight1Animated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLight1Animated ("Max Lighting", Int) = 0
+
+ // Second Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_Min1Animated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_Max1Animated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_Velocity1Animated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffset1Animated ("Offset", Int) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector]_ScrollingEmission1Animated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurve1Animated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurve1Animated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColor1Animated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_Direction1Animated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_Width1Animated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_Velocity1Animated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_Interval1Animated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffset1Animated ("Offset", Int) = 0
+
+ // Flipbook
+ [HideInInspector]_EnableFlipbookAnimated ("Enable Flipbook", Int) = 0
+ [HideInInspector]_FlipbookAlphaControlsFinalAlphaAnimated ("Flipbook Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookIntensityControlsAlphaAnimated ("Intensity Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookColorReplacesAnimated ("Color Replaces Flipbook", Int) = 0
+ [HideInInspector]_FlipbookTexArrayAnimated ("Texture Array", Int) = 0
+ [HideInInspector]_FlipbookTexArrayUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookTexArrayPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_FlipbookMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookColorAnimated ("Color & alpha", Int) = 0
+ [HideInInspector]_FlipbookTotalFramesAnimated ("Total Frames", Int) = 0
+ [HideInInspector]_FlipbookFPSAnimated ("FPS", Int) = 0
+ [HideInInspector]_FlipbookScaleOffsetAnimated ("Scale | Offset", Int) = 0
+ [HideInInspector]_FlipbookTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_FlipbookEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_FlipbookRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_FlipbookRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_FlipbookReplaceAnimated ("Replace", Int) = 0
+ [HideInInspector]_FlipbookMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_FlipbookAddAnimated ("Add", Int) = 0
+ [HideInInspector]_FlipbookCurrentFrameAnimated ("Current Frame", Int) = 0
+
+ // Dissolve
+ [HideInInspector]_EnableDissolveAnimated ("Enable Dissolve", Int) = 0
+ [HideInInspector]_DissolveTypeAnimated ("Dissolve Type", Int) = 0
+ [HideInInspector]_DissolveEdgeWidthAnimated ("Edge Width", Int) = 0
+ [HideInInspector]_DissolveEdgeHardnessAnimated ("Edge Hardness", Int) = 0
+ [HideInInspector]_DissolveEdgeColorAnimated ("Edge Color", Int) = 0
+ [HideInInspector]_DissolveEdgeGradientAnimated ("Edge Gradient", Int) = 0
+ [HideInInspector]_DissolveEdgeEmissionAnimated ("Edge Emission", Int) = 0
+ [HideInInspector]_DissolveTextureColorAnimated ("Dissolved Color", Int) = 0
+ [HideInInspector]_DissolveToTextureAnimated ("Dissolved Texture", Int) = 0
+ [HideInInspector]_DissolveToTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveToTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveToEmissionStrengthAnimated ("Dissolved Emission Strength", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureAnimated ("Dissolve Noise", Int) = 0
+ [HideInInspector]_DissolveNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseAnimated ("Dissolve Detail Noise", Int) = 0
+ [HideInInspector]_DissolveDetailNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertDetailNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailStrengthAnimated ("Dissolve Detail Strength", Int) = 0
+ [HideInInspector]_DissolveAlphaAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveUseVertexColorsAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveMaskAnimated ("Dissolve Mask", Int) = 0
+ [HideInInspector]_DissolveMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveMaskInvertAnimated ("Invert?", Int) = 0
+ [HideInInspector]_ContinuousDissolveAnimated ("Continuous Dissolve Speed", Int) = 0
+ [HideInInspector]_DissolveEmissionSideAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_DissolveEmission1SideAnimated ("Emission 2", Int) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector]_DissolveP2PWorldLocalAnimated ("World/Local", Int) = 0
+ [HideInInspector]_DissolveP2PEdgeLengthAnimated ("Edge Length", Int) = 0
+ [HideInInspector]_DissolveStartPointAnimated ("Start Point", Int) = 0
+ [HideInInspector]_DissolveEndPointAnimated ("End Point", Int) = 0
+
+ [HideInInspector]_DissolveAlpha0Animated ("_DissolveAlpha0", Int) = 0
+ [HideInInspector]_DissolveAlpha1Animated ("_DissolveAlpha1", Int) = 0
+ [HideInInspector]_DissolveAlpha2Animated ("_DissolveAlpha2", Int) = 0
+ [HideInInspector]_DissolveAlpha3Animated ("_DissolveAlpha3", Int) = 0
+ [HideInInspector]_DissolveAlpha4Animated ("_DissolveAlpha4", Int) = 0
+ [HideInInspector]_DissolveAlpha5Animated ("_DissolveAlpha5", Int) = 0
+ [HideInInspector]_DissolveAlpha6Animated ("_DissolveAlpha6", Int) = 0
+ [HideInInspector]_DissolveAlpha7Animated ("_DissolveAlpha7", Int) = 0
+ [HideInInspector]_DissolveAlpha8Animated ("_DissolveAlpha8", Int) = 0
+ [HideInInspector]_DissolveAlpha9Animated ("_DissolveAlpha9", Int) = 0
+
+ // Panosphere
+ [HideInInspector]_PanoToggleAnimated ("Enable Panosphere", Int) = 0
+ [HideInInspector]_PanoInfiniteStereoToggleAnimated ("Infinite Stereo", Int) = 0
+ [HideInInspector]_PanosphereColorAnimated ("Color", Int) = 0
+ [HideInInspector]_PanosphereTextureAnimated ("Texture", Int) = 0
+ [HideInInspector]_PanoMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_PanoMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_PanoMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_PanoEmissionAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_PanoBlendAnimated ("Alpha", Int) = 0
+ [HideInInspector]_PanospherePanAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_PanoCubeMapToggleAnimated ("Use Cubemap", Int) = 0
+ [HideInInspector]_PanoCubeMapAnimated ("CubeMap", Int) = 0
+
+ // Glitter
+ [HideInInspector]_GlitterEnableAnimated ("Enable Glitter?", Int) = 0
+ [HideInInspector]_GlitterModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterShapeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterBlendTypeAnimated ("Blend Mode", Int) = 0
+ [HideInInspector]_GlitterColorAnimated ("Color", Int) = 0
+ [HideInInspector]_GlitterUseSurfaceColorAnimated ("Use Surface Color", Int) = 0
+ [HideInInspector]_GlitterColorMapAnimated ("Glitter Color Map", Int) = 0
+ [HideInInspector]_GlitterColorMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterColorMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterTextureAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterRandomRotationAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterFrequencyAnimated ("Glitter Density", Int) = 0
+ [HideInInspector]_GlitterJitterAnimated ("Glitter Jitter", Int) = 0
+ [HideInInspector]_GlitterSpeedAnimated ("Glitter Wobble Speed", Int) = 0
+ [HideInInspector]_GlitterSizeAnimated ("Glitter Size", Int) = 0
+ [HideInInspector]_GlitterContrastAnimated ("Glitter Contrast", Int) = 0
+ [HideInInspector]_GlitterAngleRangeAnimated ("Glitter Angle Range", Int) = 0
+ [HideInInspector]_GlitterMinBrightnessAnimated ("Glitter Min Brightness", Int) = 0
+ [HideInInspector]_GlitterBrightnessAnimated ("Glitter Max Brightness", Int) = 0
+ [HideInInspector]_GlitterBiasAnimated ("Glitter Bias", Int) = 0
+ [HideInInspector]_GlitterCenterSizeAnimated ("center size", Int) = 0
+ [HideInInspector]_GlitterTextureRotationAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_glitterFrequencyLinearEmissiveAnimated ("Frequency", Int) = 0
+ [HideInInspector]_GlitterJaggyFixAnimated ("Jaggy Fix", Int) = 0
+
+ // Glitter Random Colors
+ [HideInInspector]_GlitterRandomColorsAnimated ("Enable", Int) = 0
+ [HideInInspector]_GlitterMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_GlitterMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+ [HideInInspector]_GlitterRandomSizeAnimated ("random Size Toggle", Int) = 0
+ [HideInInspector]_GlitterMinMaxSizeAnimated ("Min Max Random Size", Int) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector]_TextGlyphsAnimated ("Font Array", Int) = 0
+ [HideInInspector]_TextPixelRangeAnimated ("Pixel Range", Int) = 0
+ [HideInInspector]_TextEnabledAnimated ("Text?", Int) = 0
+
+ // FPS
+ [HideInInspector]_TextFPSEnabledAnimated ("FPS Text?", Int) = 0
+ [HideInInspector]_TextFPSUVAnimated ("FPS UV", Int) = 0
+ [HideInInspector]_TextFPSColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextFPSEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextFPSOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextFPSRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextFPSScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextFPSPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // POSITION
+ [HideInInspector]_TextPositionEnabledAnimated ("Position Text?", Int) = 0
+ [HideInInspector]_TextPositionUVAnimated ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVerticalAnimated ("Vertical?", Int) = 0
+ [HideInInspector]_TextPositionColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextPositionEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextPositionOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextPositionRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextPositionScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextPositionPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // INSTANCE TIME
+ [HideInInspector]_TextTimeEnabledAnimated ("Time Text?", Int) = 0
+ [HideInInspector]_TextTimeUVAnimated ("Time UV", Int) = 0
+ [HideInInspector]_TextTimeColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextTimeEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextTimeOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextTimeRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextTimeScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextTimePaddingAnimated ("Padding Reduction", Int) = 0
+
+ // Mirror Rendering
+ [HideInInspector]_EnableMirrorOptionsAnimated ("Enable Mirror Options", Int) = 0
+ [HideInInspector]_MirrorAnimated ("Show in mirror", Int) = 0
+ [HideInInspector]_EnableMirrorTextureAnimated ("Enable Mirror Texture", Int) = 0
+ [HideInInspector]_MirrorTextureAnimated ("Mirror Tex", Int) = 0
+ [HideInInspector]_MirrorTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MirrorTextureUVAnimated ("UV", Int) = 0
+
+ // Distance Fade
+ [HideInInspector]_MainMinAlphaAnimated ("Minimum Alpha", Int) = 0
+ [HideInInspector]_MainFadeTextureAnimated ("Fade Mask", Int) = 0
+ [HideInInspector]_MainFadeTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainFadeTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MainDistanceFadeAnimated ("Distance Fade X to Y", Int) = 0
+
+ // Angular Fade
+ [HideInInspector]_EnableRandomAnimated ("Enable Angular Fade", Int) = 0
+ [HideInInspector]_AngleTypeAnimated ("Angle Type", Int) = 0
+ [HideInInspector]_AngleCompareToAnimated ("Model or Vert Positon", Int) = 0
+ [HideInInspector]_AngleForwardDirectionAnimated ("Forward Direction", Int) = 0
+ [HideInInspector]_CameraAngleMinAnimated ("Camera Angle Min", Int) = 0
+ [HideInInspector]_CameraAngleMaxAnimated ("Camera Angle Max", Int) = 0
+ [HideInInspector]_ModelAngleMinAnimated ("Model Angle Min", Int) = 0
+ [HideInInspector]_ModelAngleMaxAnimated ("Model Angle Max", Int) = 0
+ [HideInInspector]_AngleMinAlphaAnimated ("Min Alpha", Int) = 0
+
+ // UV Distortion
+ [HideInInspector]_EnableDistortionAnimated ("Enabled?", Int) = 0
+ [HideInInspector]_DistortionMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DistortionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DistortionMaskUVAnimated ("Distortion Mask UV", Int) = 0
+ [HideInInspector]_DistortionFlowTextureAnimated ("Distortion Texture 1", Int) = 0
+ [HideInInspector]_DistortionFlowTexture1Animated ("Distortion Texture 2", Int) = 0
+ [HideInInspector]_DistortionStrengthAnimated ("Strength1", Int) = 0
+ [HideInInspector]_DistortionStrength1Animated ("Strength2", Int) = 0
+ [HideInInspector]_DistortionSpeedAnimated ("Speed1", Int) = 0
+ [HideInInspector]_DistortionSpeed1Animated ("Speed2", Int) = 0
+
+ // Video Options
+ [HideInInspector]_EnableVideoAnimated ("Enable Video", Int) = 0
+ [HideInInspector]_VideoUVNumberAnimated ("Screen UV#", Int) = 0
+ [HideInInspector]_VideoTypeAnimated ("Screen Type", Int) = 0
+ [HideInInspector]_VideoBacklightAnimated ("Brightness", Int) = 0
+ [HideInInspector]_VideoPixelTextureAnimated ("Pixel Texture", Int) = 0
+ [HideInInspector]_VideoResolutionAnimated ("Resolution", Int) = 0
+ [HideInInspector]_VideoMaskTextureAnimated ("Mask", Int) = 0
+ [HideInInspector]_VideoMaskPanningAnimated ("Mask Pan Speed", Int) = 0
+ [HideInInspector]_VideoEnableVideoPlayerAnimated ("Enable Video Player", Int) = 0
+ [HideInInspector]_VideoPixelateToResolutionAnimated ("Pixelate To Resolution", Int) = 0
+ [HideInInspector]_VideoRepeatVideoTextureAnimated ("Clamp To UV", Int) = 0
+ [HideInInspector]_VideoPanningAnimated ("Panning Speed", Int) = 0
+ [HideInInspector]_VideoTilingAnimated ("Tiling", Int) = 0
+ [HideInInspector]_VideoOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_VideoSaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_VideoContrastAnimated ("Contrast boost", Int) = 0
+ [HideInInspector]_VideoEnableDebugAnimated ("Enable Debug", Int) = 0
+ [HideInInspector]_VideoDebugTextureAnimated ("Video Debug Tex", Int) = 0
+ [HideInInspector]_VideoCRTRefreshRateAnimated ("Refresh Rate", Int) = 0
+ [HideInInspector]_VideoCRTPixelEnergizedTimeAnimated ("Pixel Fade Time", Int) = 0
+ [HideInInspector]_VideoGameboyRampAnimated ("Color Ramp", Int) = 0
+
+ // TouchFX
+ [HideInInspector]_EnableBulgeAnimated ("Bulge", Int) = 0
+ [HideInInspector]_BulgeMaskAnimated ("Bulge Mask", Int) = 0
+ [HideInInspector]_BuldgeFadeLengthAnimated ("Touch Distance", Int) = 0
+ [HideInInspector]_BuldgeHeightAnimated ("Bulge Height", Int) = 0
+
+ [HideInInspector]_EnableTouchGlowAnimated ("Enable Touch Glow", Int) = 0
+ [HideInInspector]_DepthGradientTextureUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientBlendAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGlowColorAnimated ("Depth Glow Color", Int) = 0
+ [HideInInspector]_DepthGradientAnimated ("Depth Gradient", Int) = 0
+ [HideInInspector]_DepthMaskAnimated ("Depth Mask", Int) = 0
+ [HideInInspector]_DepthGlowEmissionAnimated ("Depth Glow Emission", Int) = 0
+ [HideInInspector]_FadeLengthAnimated ("Fade Length", Int) = 0
+ [HideInInspector]_DepthAlphaMinAnimated ("Alpha Min", Int) = 0
+ [HideInInspector]_DepthAlphaMaxAnimated ("Alpha Max", Int) = 0
+
+ // Hologram
+ [HideInInspector]_EnableHoloAnimated ("Enable Hologram Alpha", Int) = 0
+ [HideInInspector]_HoloAlphaMapAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_HoloCoordinateSpaceAnimated ("Coordinate Space", Int) = 0
+ [HideInInspector]_HoloDirectionAnimated ("Scroll Direction", Int) = 0
+ [HideInInspector]_HoloLineDensityAnimated ("Line Density", Int) = 0
+ [HideInInspector]_HoloScrollSpeedAnimated ("Scroll Speed", Int) = 0
+ [HideInInspector]_HoloFresnelAlphaAnimated ("Intensity", Int) = 0
+ [HideInInspector]_HoloRimSharpnessAnimated ("Sharpness", Int) = 0
+ [HideInInspector]_HoloRimWidthAnimated ("Width", Int) = 0
+
+ // GrabPass
+ [HideInInspector]_GrabPassUseAlphaAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabPassBlendFactorAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabSrcBlendAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabDstBlendAnimated ("Destination Blend", Int) = 0
+ [HideInInspector]_RefractionEnabledAnimated ("Enable Refraction,", Int) = 0
+ [HideInInspector]_RefractionIndexAnimated ("Refraction", Int) = 0
+ [HideInInspector]_RefractionChromaticAberattionAnimated ("Chromatic Aberration", Int) = 0
+ [HideInInspector]_EnableBlurAnimated ("Enable Blur", Int) = 0
+ [HideInInspector]_GrabBlurDistanceAnimated ("Blur Distance", Int) = 0
+ [HideInInspector]_GrabBlurQualityAnimated ("Blur Quality", Int) = 0
+ [HideInInspector]_GrabBlurDirectionsAnimated ("Blur Direction", Int) = 0
+
+ // Iridescence
+ [HideInInspector]_EnableIridescenceAnimated ("Enable Iridescence", Int) = 0
+ [HideInInspector]_IridescenceRampAnimated ("Ramp", Int) = 0
+ [HideInInspector]_IridescenceNormalToggleAnimated ("Custom Normals?", Int) = 0
+ [HideInInspector]_IridescenceNormalMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_IridescenceMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_IridescenceNormalIntensityAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_IridescenceNormalUVAnimated ("Normal UV", Int) = 0
+ [HideInInspector]_IridescenceMaskUVAnimated ("Mask UV", Int) = 0
+ [HideInInspector]_IridescenceNormalSelectionAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_IridescenceIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_IridescenceAddBlendAnimated ("Blend Add", Int) = 0
+ [HideInInspector]_IridescenceReplaceBlendAnimated ("Blend Replace", Int) = 0
+ [HideInInspector]_IridescenceMultiplyBlendAnimated ("Blend Multiply", Int) = 0
+ [HideInInspector]_IridescenceEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_IridescenceTimeAnimated ("When To Run", Int) = 0
+
+ // Vertex Glitching
+ [HideInInspector]_EnableVertexGlitchAnimated ("Enable Vertex Glitching", Int) = 0
+ [HideInInspector]_VertexGlitchFrequencyAnimated ("Glitch Interval", Int) = 0
+ [HideInInspector]_VertexGlitchThresholdAnimated ("Glitch Threshold", Int) = 0
+ [HideInInspector]_VertexGlitchStrengthAnimated ("Glitch Strength", Int) = 0
+
+ // Spawn In Effects
+ [HideInInspector]_EnableScifiSpawnInAnimated ("Enable Sci Fi Spawn", Int) = 0
+ [HideInInspector]_SpawnInNoiseAnimated ("Spawn Noise", Int) = 0
+ [HideInInspector]_SpawnInNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_SpawnInAlphaAnimated ("Spawn Alpha", Int) = 0
+ [HideInInspector]_SpawnInGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_SpawnInGradientFinishAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_SpawnInEmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_SpawnInEmissionOffsetAnimated ("Emission Width", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetAnimated ("Vertex Offset Speed", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetOffsetAnimated ("vert width", Int) = 0
+
+ // Voronoi
+ [HideInInspector]_VoronoiTypeAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiSpaceAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiBlendAnimated ("Blend", Int) = 0
+ [HideInInspector]_EnableVoronoiAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiEffectsMaterialAlphaAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_VoronoiMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseAnimated ("Edge Noise", Int) = 0
+ [HideInInspector]_VoronoiNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_VoronoiColor0Animated ("Color 0", Int) = 0
+ [HideInInspector]_VoronoiEmission0Animated ("Emission 0", Int) = 0
+ [HideInInspector]_VoronoiColor1Animated ("Color 1", Int) = 0
+ [HideInInspector]_VoronoiEmission1Animated ("Emission 1", Int) = 0
+ [HideInInspector]_VoronoiGradientAnimated ("Gradient", Int) = 0
+ [HideInInspector]_VoronoiScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_VoronoiSpeedAnimated ("Speed", Int) = 0
+ [HideInInspector]_VoronoiEnableRandomCellColorAnimated ("Rando Cell Col", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+
+ // Blacklight mask
+ [HideInInspector]_BlackLightMaskEnabledAnimated ("Black Light Mask Enabled", Int) = 0
+ [HideInInspector]_BlackLightMaskKeysAnimated ("Mask Keys", Int) = 0
+ [HideInInspector]_BlackLightMaskStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_BlackLightMaskEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_BlackLightMaskDebugAnimated ("Visualize", Int) = 0
+ [HideInInspector]_BlackLightMaskMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_BlackLightMaskClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcapAnimated ("Matcap 1", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcap2Animated ("Matcap 2", Int) = 0
+ [HideInInspector]_BlackLightMaskEmissionAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_BlackLightMaskEmission2Animated ("Emission 2", Int) = 0
+ [HideInInspector]_BlackLightMaskFlipbookAnimated ("Flipbook", Int) = 0
+ [HideInInspector]_BlackLightMaskDissolveAnimated ("Dissolve", Int) = 0
+ [HideInInspector]_BlackLightMaskPanosphereAnimated ("Panosphere", Int) = 0
+ [HideInInspector]_BlackLightMaskGlitterAnimated ("Glitter", Int) = 0
+ [HideInInspector]_BlackLightMaskIridescenceAnimated ("Iridescence", Int) = 0
+
+ // Outline Options
+ [HideInInspector]_OutlineModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_OutlineFixedSizeAnimated ("Fixed Size?", Int) = 0
+ [HideInInspector]_OutlineUseVertexColorsAnimated ("V Color", Int) = 0
+ [HideInInspector]_OutlineLitAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LineWidthAnimated ("Width", Int) = 0
+ [HideInInspector]_LineColorAnimated ("Color", Int) = 0
+ [HideInInspector]_OutlineTintMixAnimated ("Tint Mix", Int) = 0
+ [HideInInspector]_OutlineEmissionAnimated ("Outline Emission", Int) = 0
+ [HideInInspector]_OutlineTextureAnimated ("Outline Texture", Int) = 0
+ [HideInInspector]_OutlineMaskAnimated ("Outline Mask", Int) = 0
+ [HideInInspector]_OutlineTexturePanAnimated ("Outline Texture Pan", Int) = 0
+ [HideInInspector]_OutlineShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_OutlineRimLightBlendAnimated ("Rim Light Blend", Int) = 0
+ [HideInInspector]_OutlinePersonaDirectionAnimated ("directional Offset XY", Int) = 0
+ [HideInInspector]_OutlineDropShadowOffsetAnimated ("Drop Direction XY", Int) = 0
+ [HideInInspector]_OutlineFadeDistanceAnimated ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetFactor ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetUnits ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineCullAnimated ("Cull", Int) = 0
+
+ // Parallax Mapping
+ [HideInInspector]_ParallaxMapAnimated ("Enable Parallax FX", Int) = 0
+ [HideInInspector]_ParallaxHeightMapEnabledAnimated ("Enable Parallax Height", Int) = 0
+ [HideInInspector]_ParallaxInternalMapEnabledAnimated ("Enable Parallax Internal", Int) = 0
+ [HideInInspector]_ParallaxHeightMapPanAnimated ("Pan", Int) = 0
+ [HideInInspector]_ParallaxUVAnimated ("Parallax UV", Int) = 0
+ [HideInInspector]_ParallaxHeightMapAnimated ("Height Map", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxStrengthAnimated ("Parallax Strength", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightmapModeAnimated ("Parallax Mode", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightFromAlphaAnimated ("HeightFromAlpha", Int) = 0
+ [HideInInspector]_ParallaxInternalMapAnimated ("Internal Map", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxInternalIterationsAnimated ("Parallax Internal Iterations", Int) = 0
+ [HideInInspector]_ParallaxInternalMinDepthAnimated ("Min Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxDepthAnimated ("Max Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMinFadeAnimated ("Min Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxFadeAnimated ("Max Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMinColorAnimated ("Min Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxColorAnimated ("Max Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalPanSpeedAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_ParallaxInternalPanDepthSpeedAnimated ("Per Level Speed Multiplier", Int) = 0
+ [HideInInspector]_ParallaxBiasAnimated ("Parallax Bias (0.42)", Int) = 0
+
+ // Rendering Options
+ [HideInInspector]_CullAnimated ("Cull", Int) = 0
+ [HideInInspector]_ZTestAnimated ("ZTest", Int) = 0
+ [HideInInspector]_ZWriteAnimated ("ZWrite", Int) = 0
+ [HideInInspector]_ColorMaskAnimated ("Color Mask", Int) = 0
+ [HideInInspector]_OffsetFactorAnimated ("Offset Factor", Int) = 0
+ [HideInInspector]_OffsetUnitsAnimated ("Offset Units", Int) = 0
+ [HideInInspector]_IgnoreFogAnimated ("Ignore Fog", Int) = 0
+
+ // Blending Options
+ [HideInInspector]_BlendOpAnimated ("RGB Blend Op", Int) = 0
+ [HideInInspector]_BlendOpAlphaAnimated ("Alpha Blend Op", Int) = 0
+ [HideInInspector]_SrcBlendAnimated ("RGB Source Blend", Int) = 0
+ [HideInInspector]_DstBlendAnimated ("RGB Destination Blend", Int) = 0
+
+ // Stencils
+ [HideInInspector]_StencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_StencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_StencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_StencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_StencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_StencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_StencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Outline Stencil
+ [HideInInspector]_OutlineStencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_OutlineStencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_OutlineStencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_OutlineStencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_OutlineStencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Debug Options
+ [HideInInspector]_VertexUnwrapAnimated ("Unwrap", Range(0, 1)) = 0
+ [HideInInspector]_DebugMeshDataAnimated ("Mesh Data", Int) = 0
+ [HideInInspector]_DebugLightingDataAnimated ("Lighting Data", Int) = 0
+ [HideInInspector]_DebugCameraDataAnimated ("Camera Data", Int) = 0
+ }
+
+
+ //originalEditorCustomEditor "PoiToon"
+ CustomEditor "Thry.ShaderEditor"
+ SubShader
+ {
+ Tags { "RenderType" = "Opaque" "Queue" = "Geometry" }
+
+// //EnableOutlinePass
+// Pass
+// {
+// Name "Outline"
+// Tags { "LightMode" = "ForwardBase" }
+// Stencil
+// {
+// Ref [_OutlineStencilRef]
+// ReadMask [_OutlineStencilReadMask]
+// WriteMask [_OutlineStencilWriteMask]
+// Comp [_OutlineStencilCompareFunction]
+// Pass [_OutlineStencilPassOp]
+// Fail [_OutlineStencilFailOp]
+// ZFail [_OutlineStencilZFailOp]
+// }
+// ZTest [_ZTest]
+// ColorMask [_ColorMask]
+// Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
+// BlendOp [_BlendOp], [_BlendOpAlpha]
+// Blend [_SrcBlend] [_DstBlend]
+// ZWrite [_ZWrite]
+// AlphaToMask [_AlphaToMask]
+// Cull [_OutlineCull]
+// CGPROGRAM
+//
+// #pragma target 5.0
+// #define FORWARD_BASE_PASS
+// #define OUTLINE
+// float _Mode;
+// // patreon Additive
+// // Black Light Mask
+//// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+// // voronoi
+//// #pragma shader_feature CHROMATIC_ABERRATION
+// // UV Distortion
+//// #pragma shader_feature USER_LUT
+// // Vertex Offsets
+//// #pragma shader_feature AUTO_EXPOSURE
+// // Mirror
+//// #pragma shader_feature _REQUIRE_UV2
+// // Random
+//// #pragma shader_feature _SUNDISK_NONE
+// // Dissolve
+//// #pragma shader_feature DISTORT
+// // Lighting
+//// #pragma shader_feature VIGNETTE_MASKED
+// #pragma multi_compile_fwdbase
+// #pragma fragmentoption ARB_precision_hint_fastest
+// #pragma multi_compile_fog
+// #pragma multi_compile_instancing
+// #pragma vertex vert
+// #pragma fragment frag
+// #include "../Includes/CGI_PoiPassOutline.cginc"
+// ENDCG
+//
+// }
+ //EnableOutlinePass
+
+ Pass
+ {
+ Name "MainPass"
+ Tags { "LightMode" = "ForwardBase" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ AlphaToMask [_AlphaToMask]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend [_SrcBlend] [_DstBlend]
+
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_BASE_PASS
+ float _Mode;
+ // Base Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ #pragma multi_compile _ VERTEXLIGHT_ON
+ // patreon Base
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Grab Pass Blur
+// #pragma shader_feature CHROMATIC_ABERRATION_LOW
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Touch Color
+// #pragma shader_feature GRAIN
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdbase
+ #pragma fragmentoption ARB_precision_hint_fastest
+ #pragma multi_compile_fog
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+
+ //LightingAdditiveEnable
+ Pass
+ {
+ Name "ForwardAddPass"
+ Tags { "LightMode" = "ForwardAdd" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ ZWrite Off
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend One One
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_ADD_PASS
+ float _Mode;
+ // Add Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ // patreon Additive
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+// #pragma shader_feature _PARALLAX_MAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Disable Directionals
+// #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdadd_fullshadows
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ //LightingAdditiveEnable
+
+ //LightingCastShadows
+ Pass
+ {
+ Name "ShadowCasterPass"
+ Tags { "LightMode" = "ShadowCaster" }
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ AlphaToMask Off
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_SHADOW
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Dissolve
+// #pragma shader_feature DISTORT
+ #pragma multi_compile_instancing
+ #pragma vertex vertShadowCaster
+ #pragma fragment fragShadowCaster
+ #include "../Includes/CGI_PoiPassShadow.cginc"
+ ENDCG
+
+ }
+ //LightingCastShadows
+
+ Pass
+ {
+ Tags { "LightMode" = "Meta" }
+ Cull Off
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_META_PASS
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
new file mode 100644
index 00000000..7e6082a5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/starby1010浣-21162e8a/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 26d22f0bd35b9744c9d8e0aa2d875ff2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c.meta
new file mode 100644
index 00000000..e3520c38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b5b0e2630122eb444a721c19db78d4e0
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets.meta
new file mode 100644
index 00000000..7211e79f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 6d027c8fc6ca07f419a6e0874dfb0e77
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders.meta
new file mode 100644
index 00000000..3a2e466e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 88486e502a9defe459c0b72d8cea553b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders.meta
new file mode 100644
index 00000000..55f25374
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2dbd38be58512ff4fad0babb6ebae438
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon.meta
new file mode 100644
index 00000000..c6c63461
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7a51335af805916459ff4e8f01aa8bc8
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
new file mode 100644
index 00000000..faf91d85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: a61d4c7a11a58ef4394fb66bf2034edf
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
new file mode 100644
index 00000000..7a3f6a9a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_ALPHA_TO_COVERAGE
+ #define POI_ALPHA_TO_COVERAGE
+
+ half _MainMipScale;
+ float _MainAlphaToCoverage;
+
+ float CalcMipLevel(float2 texture_coord)
+ {
+ float2 dx = ddx(texture_coord);
+ float2 dy = ddy(texture_coord);
+ float delta_max_sqr = max(dot(dx, dx), dot(dy, dy));
+
+ return 0.5 * log2(delta_max_sqr);
+ }
+
+ void ApplyAlphaToCoverage(inout float4 finalColor)
+ {
+ // Force Model Opacity to 1 if desired
+
+ if (float(0) == 1)
+ {
+
+ if(float(0))
+ {
+ // rescale alpha by mip level
+ finalColor.a *= 1 + max(0, CalcMipLevel(poiMesh.uv[0] * float4(0.001953125,0.001953125,512,512).zw)) * float(0.25);
+ // rescale alpha by partial derivative
+ finalColor.a = (finalColor.a - float(0.5)) / max(fwidth(finalColor.a), 0.0001) + float(0.5);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
new file mode 100644
index 00000000..b81cc668
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiAlphaToCoverage.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0d551a53b0a0edf44abe26b62f2d6fe2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
new file mode 100644
index 00000000..e529136f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc
@@ -0,0 +1,32 @@
+#ifndef POI_BACKFACE
+ #define POI_BACKFACE
+
+ float _BackFaceEnabled;
+ float _BackFaceTextureUV;
+ float _BackFaceDetailIntensity;
+ float _BackFaceEmissionStrength;
+ float2 _BackFacePanning;
+ float _BackFaceHueShift;
+ float4 _BackFaceColor;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
+
+ float3 BackFaceColor;
+ void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
+ {
+ backFaceEmission = 0;
+ BackFaceColor = 0;
+
+ if (float(0))
+ {
+ if(!poiMesh.isFrontFace)
+ {
+ albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ backFaceDetailIntensity = float(1);
+ BackFaceColor = albedo.rgb;
+ mixedHueShift = float(0);
+ backFaceEmission = BackFaceColor * float(0);
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
new file mode 100644
index 00000000..a2f494ff
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBackFace.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 410cc61125b280a438654a7b18c0404b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
new file mode 100644
index 00000000..750364ae
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc
@@ -0,0 +1,54 @@
+#ifndef POI_BLACKLIGHT
+ #define POI_BLACKLIGHT
+
+ float4 _BlackLightMaskStart;
+ float4 _BlackLightMaskEnd;
+ float4 _BlackLightMaskKeys;
+ float _BlackLightMaskDebug;
+ float _BlackLightMaskDissolve;
+ float _BlackLightMaskMetallic;
+ float _BlackLightMaskClearCoat;
+ float _BlackLightMaskMatcap;
+ float _BlackLightMaskMatcap2;
+ float _BlackLightMaskEmission;
+ float _BlackLightMaskEmission2;
+ float _BlackLightMaskFlipbook;
+ float _BlackLightMaskPanosphere;
+ float _BlackLightMaskIridescence;
+
+ half _BlackLightMaskGlitter;
+
+ half4 blackLightMask;
+
+ void createBlackLightMask()
+ {
+ blackLightMask = 0;
+ #ifdef VERTEXLIGHT_ON
+
+ for (int lightIndex = 0; lightIndex < 4; lightIndex ++)
+ {
+ float3 lightPos = float3(unity_4LightPosX0[lightIndex], unity_4LightPosY0[lightIndex], unity_4LightPosZ0[lightIndex]);
+ if (!distance(unity_LightColor[lightIndex].rgb, float3(0, 0, 0)))
+ {
+ for (int maskIndex = 0; maskIndex < 4; maskIndex ++)
+ {
+ float4 comparison = _BlackLightMaskKeys;
+ if(unity_LightColor[lightIndex].a == comparison[maskIndex])
+ {
+ blackLightMask[maskIndex] = max(blackLightMask[maskIndex], smoothstep(_BlackLightMaskEnd[maskIndex], _BlackLightMaskStart[maskIndex], distance(poiMesh.worldPos, lightPos)));
+ }
+ }
+ }
+ }
+ #endif
+ }
+#endif
+
+/*
+#ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskDissolve != 4)
+ {
+ blackLightMask[mask];
+ }
+#endif
+*/
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
new file mode 100644
index 00000000..f181533a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlackLight.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ad86ada7883c6ab499b7c8782108fdc5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
new file mode 100644
index 00000000..f87ae6dc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc
@@ -0,0 +1,39 @@
+#ifndef POI_BLENDING
+ #define POI_BLENDING
+
+ /*
+ 0: Zero float4(0.0, 0.0, 0.0, 0.0),
+ 1: One float4(1.0, 1.0, 1.0, 1.0),
+ 2: DstColor destinationColor,
+ 3: SrcColor sourceColor,
+ 4: OneMinusDstColor float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ 5: SrcAlpha sourceColor.aaaa,
+ 6: OneMinusSrcColor float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ 7: DstAlpha destinationColor.aaaa,
+ 8: OneMinusDstAlpha float4(1.0, 1.0, 1.0, 1.0) - destinationColor.,
+ 9: SrcAlphaSaturate saturate(sourceColor.aaaa),
+ 10: OneMinusSrcAlpha float4(1.0, 1.0, 1.0, 1.0) - sourceColor.aaaa,
+ */
+
+ float4 poiBlend(const float sourceFactor, const float4 sourceColor, const float destinationFactor, const float4 destinationColor, const float4 blendFactor)
+ {
+ float4 sA = 1-blendFactor;
+ const float4 blendData[11] = {
+ float4(0.0, 0.0, 0.0, 0.0),
+ float4(1.0, 1.0, 1.0, 1.0),
+ destinationColor,
+ sourceColor,
+ float4(1.0, 1.0, 1.0, 1.0) - destinationColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sourceColor,
+ sA,
+ float4(1.0, 1.0, 1.0, 1.0) - sA,
+ saturate(sourceColor.aaaa),
+ 1 - sA,
+ };
+
+ return lerp(blendData[sourceFactor] * sourceColor + blendData[destinationFactor] * destinationColor,sourceColor, sA);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
new file mode 100644
index 00000000..ad513db2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBlending.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1e3b3b16e691b4a4eb988c9fe632f6c7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
new file mode 100644
index 00000000..6e4db3fc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_BULGE
+ #define POI_BULGE
+
+
+ sampler2D _BulgeMask;
+ float _BuldgeFadeLength;
+ float _BuldgeHeight;
+
+ void bulgyWolgy(inout v2f o)
+ {
+ float depth = DecodeFloatRG(tex2Dlod(_CameraDepthTexture, float4(o.grabPos.xy / o.grabPos.w, 0, 0)));
+ float bulgeMask = tex2Dlod(_BulgeMask, float4(o.uv0.xy, 0, 0));
+ depth = Linear01Depth(depth);
+
+ float intersect = 0;
+ if (depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(o.pos.z / o.pos.w));
+ if(diff > 0)
+ {
+ intersect = 1 - smoothstep(0, _ProjectionParams.w * _BuldgeFadeLength, diff);
+ }
+ }
+ float4 offset = intersect * _BuldgeHeight * float4(o.normal, 0);
+
+ offset = IsInMirror() ? 0: offset;
+ offset *= bulgeMask;
+
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos) + offset;
+ o.localPos = mul(unity_WorldToObject, o.worldPos);
+ o.pos = UnityObjectToClipPos(o.localPos);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
new file mode 100644
index 00000000..5988dcc5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiBulge.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c9cdcadef2c6ace4682202f4c5d273bb
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
new file mode 100644
index 00000000..5adf7340
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc
@@ -0,0 +1,108 @@
+#ifndef POI_CLEARCOAT
+ #define POI_CLEARCOAT
+
+ samplerCUBE _ClearCoatCubeMap;
+ float _ClearCoatSampleWorld;
+ POI_TEXTURE_NOSAMPLER(_ClearCoatMask);
+ POI_TEXTURE_NOSAMPLER(_ClearCoatSmoothnessMap);
+ float _ClearCoatInvertSmoothness;
+ float _ClearCoat;
+ float _ClearCoatSmoothness;
+ float3 _ClearCoatTint;
+ float _ClearCoatNormalToUse;
+ float _ClearCoatForceLighting;
+ float lighty_clear_boy_uwu_var;
+
+
+ float3 CalculateClearCoatEnvironmentalReflections()
+ {
+ float3 reflectionColor;
+
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_ClearCoatSmoothnessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+ if (float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ float roughness = 1 - smoothnessMap;
+
+ lighty_clear_boy_uwu_var = 0;
+
+ float3 reflectedDir = float(0) == 0 ? poiCam.vertexReflectionDir: poiCam.reflectionDir;
+
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool no_probe = unity_SpecCube0_HDR.a == 0 && envSample.a == 0;
+
+
+ if(float(0) == 0 && no_probe == 0)
+ {
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectedDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflectionColor = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflectionColor = probe0;
+ }
+ }
+ else
+ {
+ lighty_clear_boy_uwu_var = 1;
+ reflectionColor = texCUBElod(_ClearCoatCubeMap, float4(reflectedDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+ }
+
+ if(float(0))
+ {
+ lighty_clear_boy_uwu_var = 1;
+ }
+
+ return reflectionColor * float4(1,1,1,1);
+ }
+
+ void calculateAndApplyClearCoat(inout float4 finalColor)
+ {
+ half clearCoatMap = POI2D_SAMPLER_PAN(_ClearCoatMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskClearCoat != 4)
+ {
+ clearCoatMap *= blackLightMask[_BlackLightMaskClearCoat];
+ }
+ #endif
+
+ half3 reflectionColor = CalculateClearCoatEnvironmentalReflections();
+
+ float NormalDotView = abs(dot(float(1), float(0) == 0 ? poiLight.N0DotV: poiLight.nDotV).r);
+ #ifdef POI_LIGHTING
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var), clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ //finalColor.rgb += reflectionColor;
+ //finalColor.rgb = finalColor.rgb * (1- (reflectionColor.r + reflectionColor.g + reflectionColor.b)/3) + reflectionColor * clearCoatMap * lerp(1, poiLight.finalLighting, lighty_clear_boy_uwu_var);
+ #else
+ finalColor.rgb = lerp(finalColor.rgb, reflectionColor, clearCoatMap * float(1) * clamp(FresnelTerm(float(1), NormalDotView), 0, 1));
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
new file mode 100644
index 00000000..45466a3b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiClearCoat.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2d4e70ede569bec4691e9bd1dcfd3e0a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
new file mode 100644
index 00000000..687dc443
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc
@@ -0,0 +1,262 @@
+#ifndef POI_COLOR
+ #define POI_COLOR
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ static const float Epsilon = 1e-10;
+ // The weights of RGB contributions to luminance.
+ // Should sum to unity.
+ static const float3 HCYwts = float3(0.299, 0.587, 0.114);
+ static const float HCLgamma = 3;
+ static const float HCLy0 = 100;
+ static const float HCLmaxL = 0.530454533953517; // == exp(HCLgamma / HCLy0) - 0.5
+ static const float3 wref = float3(1.0, 1.0, 1.0);
+ #define TAU 6.28318531
+
+ float3 HUEtoRGB(in float H)
+ {
+ float R = abs(H * 6 - 3) - 1;
+ float G = 2 - abs(H * 6 - 2);
+ float B = 2 - abs(H * 6 - 4);
+ return saturate(float3(R, G, B));
+ }
+
+ float3 RGBtoHCV(in float3 RGB)
+ {
+ // Based on work by Sam Hocevar and Emil Persson
+ float4 P = (RGB.g < RGB.b) ? float4(RGB.bg, -1.0, 2.0 / 3.0): float4(RGB.gb, 0.0, -1.0 / 3.0);
+ float4 Q = (RGB.r < P.x) ? float4(P.xyw, RGB.r): float4(RGB.r, P.yzx);
+ float C = Q.x - min(Q.w, Q.y);
+ float H = abs((Q.w - Q.y) / (6 * C + Epsilon) + Q.z);
+ return float3(H, C, Q.x);
+ }
+
+ float3 HSVtoRGB(in float3 HSV)
+ {
+ float3 RGB = HUEtoRGB(HSV.x);
+ return((RGB - 1) * HSV.y + 1) * HSV.z;
+ }
+
+ float3 RGBtoHSV(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float S = HCV.y / (HCV.z + Epsilon);
+ return float3(HCV.x, S, HCV.z);
+ }
+
+ float3 HSLtoRGB(in float3 HSL)
+ {
+ float3 RGB = HUEtoRGB(HSL.x);
+ float C = (1 - abs(2 * HSL.z - 1)) * HSL.y;
+ return(RGB - 0.5) * C + HSL.z;
+ }
+
+ float3 RGBtoHSL(in float3 RGB)
+ {
+ float3 HCV = RGBtoHCV(RGB);
+ float L = HCV.z - HCV.y * 0.5;
+ float S = HCV.y / (1 - abs(L * 2 - 1) + Epsilon);
+ return float3(HCV.x, S, L);
+ }
+
+ float3 HCYtoRGB(in float3 HCY)
+ {
+
+
+ float3 RGB = HUEtoRGB(HCY.x);
+ float Z = dot(RGB, HCYwts);
+ if (HCY.z < Z)
+ {
+ HCY.y *= HCY.z / Z;
+ }
+ else if(Z < 1)
+ {
+ HCY.y *= (1 - HCY.z) / (1 - Z);
+ }
+ return(RGB - Z) * HCY.y + HCY.z;
+ }
+
+ float3 RGBtoHCY(in float3 RGB)
+ {
+ // Corrected by David Schaeffer
+ float3 HCV = RGBtoHCV(RGB);
+ float Y = dot(RGB, HCYwts);
+ float Z = dot(HUEtoRGB(HCV.x), HCYwts);
+ if (Y < Z)
+ {
+ HCV.y *= Z / (Epsilon + Y);
+ }
+ else
+ {
+ HCV.y *= (1 - Z) / (Epsilon + 1 - Y);
+ }
+ return float3(HCV.x, HCV.y, Y);
+ }
+
+ float3 HCLtoRGB(in float3 HCL)
+ {
+ float3 RGB = 0;
+ if(HCL.z != 0)
+ {
+ float H = HCL.x;
+ float C = HCL.y;
+ float L = HCL.z * HCLmaxL;
+ float Q = exp((1 - C / (2 * L)) * (HCLgamma / HCLy0));
+ float U = (2 * L - C) / (2 * Q - 1);
+ float V = C / Q;
+ float A = (H + min(frac(2 * H) / 4, frac(-2 * H) / 8)) * pi * 2;
+ float T;
+ H *= 6;
+ if(H <= 0.999)
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.g = T / (1 + T);
+ }
+ else if(H <= 1.001)
+ {
+ RGB.r = 1;
+ RGB.g = 1;
+ }
+ else if(H <= 2)
+ {
+ T = tan(A);
+ RGB.r = (1 + T) / T;
+ RGB.g = 1;
+ }
+ else if(H <= 3)
+ {
+ T = tan(A);
+ RGB.g = 1;
+ RGB.b = 1 + T;
+ }
+ else if(H <= 3.999)
+ {
+ T = tan(A);
+ RGB.g = 1 / (1 + T);
+ RGB.b = 1;
+ }
+ else if(H <= 4.001)
+ {
+ RGB.g = 0;
+ RGB.b = 1;
+ }
+ else if(H <= 5)
+ {
+ T = tan(A);
+ RGB.r = -1 / T;
+ RGB.b = 1;
+ }
+ else
+ {
+ T = tan(A);
+ RGB.r = 1;
+ RGB.b = -T;
+ }
+ RGB = RGB * V + U;
+ }
+ return RGB;
+ }
+
+ float3 RGBtoHCL(in float3 RGB)
+ {
+ float3 HCL;
+ float H = 0;
+ float U = min(RGB.r, min(RGB.g, RGB.b));
+ float V = max(RGB.r, max(RGB.g, RGB.b));
+ float Q = HCLgamma / HCLy0;
+ HCL.y = V - U;
+ if(HCL.y != 0)
+ {
+ H = atan2(RGB.g - RGB.b, RGB.r - RGB.g) / pi;
+ Q *= U / V;
+ }
+ Q = exp(Q);
+ HCL.x = frac(H / 2 - min(frac(H), frac(-H)) / 6);
+ HCL.y *= Q;
+ HCL.z = lerp(-U, V, Q) / (HCLmaxL * 2);
+ return HCL;
+ }
+
+ //HSL MODIFT
+ float3 ModifyViaHSL(float3 color, float3 HSLMod)
+ {
+ float3 colorHSL = RGBtoHSL(color);
+ colorHSL.r = frac(colorHSL.r + HSLMod.r);
+ colorHSL.g = saturate(colorHSL.g + HSLMod.g);
+ colorHSL.b = saturate(colorHSL.b + HSLMod.b);
+ return HSLtoRGB(colorHSL);
+ }
+
+ float3 hueShift(float3 col, float hueAdjust)
+ {
+ hueAdjust *= 2 * pi;
+ const float3 k = float3(0.57735, 0.57735, 0.57735);
+ half cosAngle = cos(hueAdjust);
+ return col * cosAngle + cross(k, col) * sin(hueAdjust) + k * dot(k, col) * (1.0 - cosAngle);
+ }
+
+ float3 poiSaturation(float3 In, float Saturation)
+ {
+ float luma = dot(In, float3(0.2126729, 0.7151522, 0.0721750));
+ return luma.xxx + Saturation.xxx * (In - luma.xxx);
+ }
+ // LCH
+ float xyzF(float t)
+ {
+ return lerp(pow(t, 1. / 3.), 7.787037 * t + 0.139731, step(t, 0.00885645));
+ }
+ float xyzR(float t)
+ {
+ return lerp(t * t * t, 0.1284185 * (t - 0.139731), step(t, 0.20689655));
+ }
+ float3 rgb2lch(in float3 c)
+ {
+ c = mul(float3x3(0.4124, 0.3576, 0.1805,
+ 0.2126, 0.7152, 0.0722,
+ 0.0193, 0.1192, 0.9505), c);
+ c.x = xyzF(c.x / wref.x);
+ c.y = xyzF(c.y / wref.y);
+ c.z = xyzF(c.z / wref.z);
+ float3 lab = float3(max(0., 116.0 * c.y - 16.0), 500.0 * (c.x - c.y), 200.0 * (c.y - c.z));
+ return float3(lab.x, length(float2(lab.y, lab.z)), atan2(lab.z, lab.y));
+ }
+
+ float3 lch2rgb(in float3 c)
+ {
+ c = float3(c.x, cos(c.z) * c.y, sin(c.z) * c.y);
+
+ float lg = 1. / 116. * (c.x + 16.);
+ float3 xyz = float3(wref.x * xyzR(lg + 0.002 * c.y),
+ wref.y * xyzR(lg),
+ wref.z * xyzR(lg - 0.005 * c.z));
+
+ float3 rgb = mul(float3x3(3.2406, -1.5372, -0.4986,
+ - 0.9689, 1.8758, 0.0415,
+ 0.0557, -0.2040, 1.0570), xyz);
+
+ return rgb;
+ }
+
+ //cheaply lerp around a circle
+ float lerpAng(in float a, in float b, in float x)
+ {
+ float ang = fmod(fmod((a - b), TAU) + pi * 3., TAU) - pi;
+ return ang * x + b;
+ }
+
+ //Linear interpolation between two colors in Lch space
+ float3 lerpLch(in float3 a, in float3 b, in float x)
+ {
+ float hue = lerpAng(a.z, b.z, x);
+ return float3(lerp(b.xy, a.xy, x), hue);
+ }
+
+ float3 poiExpensiveColorBlend(float3 col1, float3 col2, float alpha)
+ {
+ return lch2rgb(lerpLch(rgb2lch(col1), rgb2lch(col2), alpha));
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
new file mode 100644
index 00000000..a190d802
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiColors.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 1099ee19191c50b4bbb89a5de6e5a4c5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
new file mode 100644
index 00000000..cd354f85
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc
@@ -0,0 +1,249 @@
+#ifndef POI_DATA
+ #define POI_DATA
+
+ float _ParallaxBias;
+ float _LightingAdditiveLimitIntensity;
+ float _LightingAdditiveMaxIntensity;
+ POI_TEXTURE_NOSAMPLER(_BumpMap);
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailMask);
+ POI_TEXTURE_NOSAMPLER(_DetailNormalMap);
+ float _DetailNormalMapScale;
+ #endif
+ float _BumpScale;
+
+ void calculateAttenuation(v2f i)
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if defined(POINT) || defined(SPOT)
+ POI_LIGHT_ATTENUATION(attenuation, shadow, i, i.worldPos.xyz)
+ poiLight.additiveShadow = shadow;
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ poiLight.additiveShadow == 0;
+ #endif
+ #else
+ UNITY_LIGHT_ATTENUATION(attenuation, i, i.worldPos.xyz)
+ // fix for rare bug where light atten is 0 when there is no directional light in the scene
+ #ifdef FORWARD_BASE_PASS
+ if (all(_LightColor0.rgb == 0.0))
+ {
+ attenuation = 1.0;
+ }
+ #endif
+ #endif
+ poiLight.attenuation = attenuation;
+ }
+
+ void calculateVertexLightingData(in v2f i)
+ {
+ #ifdef VERTEXLIGHT_ON
+ float4 toLightX = unity_4LightPosX0 - i.worldPos.x;
+ float4 toLightY = unity_4LightPosY0 - i.worldPos.y;
+ float4 toLightZ = unity_4LightPosZ0 - i.worldPos.z;
+ float4 lengthSq = 0;
+ lengthSq += toLightX * toLightX;
+ lengthSq += toLightY * toLightY;
+ lengthSq += toLightZ * toLightZ;
+
+ float4 lightAttenSq = unity_4LightAtten0;
+ float4 atten = 1.0 / (1.0 + lengthSq * lightAttenSq);
+ float4 vLightWeight = saturate(1 - (lengthSq * lightAttenSq / 25));
+ poiLight.vAttenuation = min(atten, vLightWeight * vLightWeight);
+
+ poiLight.vDotNL = 0;
+ poiLight.vDotNL += toLightX * poiMesh.normals[1].x;
+ poiLight.vDotNL += toLightY * poiMesh.normals[1].y;
+ poiLight.vDotNL += toLightZ * poiMesh.normals[1].z;
+
+ float4 corr = rsqrt(lengthSq);
+ poiLight.vDotNL = max(0, poiLight.vDotNL * corr);
+ poiLight.vAttenuationDotNL = poiLight.vAttenuation * poiLight.vDotNL;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vPosition[index] = float3(unity_4LightPosX0[index], unity_4LightPosY0[index], unity_4LightPosZ0[index]);
+
+ float3 vertexToLightSource = poiLight.vPosition[index] - poiMesh.worldPos;
+ poiLight.vDirection[index] = normalize(vertexToLightSource);
+ //poiLight.vAttenuationDotNL[index] = 1.0 / (1.0 + unity_4LightAtten0[index] * poiLight.vDotNL[index]);
+ poiLight.vColor[index] = unity_LightColor[index].rgb;
+
+ if (float(0) == 1)
+ {
+ float intensity = max(0.001, (0.299 * poiLight.vColor[index].r + 0.587 * poiLight.vColor[index].g + 0.114 * poiLight.vColor[index].b));
+ poiLight.vColor[index] = min(poiLight.vColor[index], poiLight.vColor[index] / (intensity / float(1)));
+ }
+ poiLight.vHalfDir[index] = Unity_SafeNormalize(poiLight.vDirection[index] + poiCam.viewDir);
+ poiLight.vDotNL[index] = dot(poiMesh.normals[1], -poiLight.vDirection[index]);
+ poiLight.vCorrectedDotNL[index] = .5 * (poiLight.vDotNL[index] + 1);
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.vDotLH[index] = saturate(dot(poiLight.vDirection[index], poiLight.vHalfDir[index]));
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.vDotNH[index] = saturate(dot(poiMesh.normals[1], poiLight.vHalfDir[index]));
+ #endif
+ }
+ #endif
+ }
+
+ void calculateLightingData(in v2f i)
+ {
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ float3 magic = max(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb;
+ poiLight.color = magic + normalLight;
+ #else
+ #ifdef FORWARD_ADD_PASS
+ poiLight.color = _LightColor0.rgb;
+
+
+ if (float(0) == 1)
+ {
+ float additiveLightIntensity = max(0.001, (0.299 * poiLight.color.r + 0.587 * poiLight.color.g + 0.114 * poiLight.color.b));
+ poiLight.color = min(poiLight.color, poiLight.color / (additiveLightIntensity / float(1)));
+ }
+ #endif
+ #endif
+
+ #ifdef FORWARD_BASE_PASS
+ poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ #else
+ #if defined(POINT) || defined(SPOT)
+ poiLight.direction = normalize(_WorldSpaceLightPos0.xyz - i.worldPos);
+ #else
+ poiLight.direction = _WorldSpaceLightPos0;
+ #endif
+ #endif
+
+ poiLight.halfDir = normalize(poiLight.direction + poiCam.viewDir);
+
+ #ifdef POI_VAR_DOTNH
+ poiLight.dotNH = saturate(dot(poiMesh.normals[1], poiLight.halfDir));
+ #endif
+
+ #ifdef POI_VAR_DOTLH
+ poiLight.dotLH = saturate(dot(poiLight.direction, poiLight.halfDir));
+ #endif
+
+ poiLight.nDotV = dot(poiMesh.normals[1], poiCam.viewDir);
+ poiLight.N0DotV = dot(poiMesh.normals[0], poiCam.viewDir);
+ poiLight.nDotL = dot(poiMesh.normals[1], poiLight.direction);
+ poiLight.nDotH = dot(poiMesh.normals[1], poiLight.halfDir);
+ poiLight.lDotv = dot(poiLight.direction, poiCam.viewDir);
+ poiLight.lDotH = dot(poiLight.direction, poiLight.halfDir);
+ }
+
+ float3 CreateBinormal(float3 normal, float3 tangent, float binormalSign)
+ {
+ return cross(normal, tangent.xyz) * (binormalSign * unity_WorldTransformParams.w);
+ }
+
+ void InitializeMeshData(inout v2f i, uint facing)
+ {
+ poiMesh.isFrontFace = facing;
+ poiMesh.normals[0] = normalize(i.normal);
+ poiMesh.binormal = CreateBinormal(i.normal, i.tangent.xyz, i.tangent.w);
+ poiMesh.tangent = i.tangent.xyz;
+
+ #ifndef OUTLINE
+ if(!poiMesh.isFrontFace)
+ {
+ poiMesh.normals[0] *= -1;
+ poiMesh.tangent *= -1;
+ poiMesh.binormal *= -1;
+ }
+ #endif
+
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+ poiMesh.barycentricCoordinates = i.barycentricCoordinates;
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ #ifdef POI_UV_DISTORTION
+ poiMesh.uv[4] = calculateDistortionUV(i.uv0.xy);
+ #else
+ poiMesh.uv[4] = poiMesh.uv[0];
+ #endif
+
+ poiMesh.vertexColor = i.vertexColor;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ poiMesh.lightmapUV = i.lightmapUV;
+ #endif
+ poiMesh.modelPos = i.modelPos;
+
+ #ifdef FUR
+ poiMesh.furAlpha = i.furAlpha;
+ #endif
+ }
+
+ void initializeCamera(v2f i)
+ {
+ poiCam.viewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
+ poiCam.forwardDir = getCameraForward();
+ poiCam.worldPos = _WorldSpaceCameraPos;
+ poiCam.distanceToModel = distance(poiMesh.modelPos, poiCam.worldPos);
+ poiCam.distanceToVert = distance(poiMesh.worldPos, poiCam.worldPos);
+ poiCam.grabPos = i.grabPos;
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ poiCam.clipPos = i.pos;
+ #if defined(GRAIN)
+ poiCam.worldDirection = i.worldDirection;
+ #endif
+
+ poiCam.tangentViewDir = normalize(i.tangentViewDir);
+ poiCam.tangentViewDir.xy /= (poiCam.tangentViewDir.z + float(0.42));
+ }
+
+ void calculateTangentData()
+ {
+ poiTData.tangentTransform = float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]);
+ poiTData.tangentToWorld = transpose(float3x3(poiMesh.tangent, poiMesh.binormal, poiMesh.normals[0]));
+ }
+
+ void CalculateReflectionData()
+ {
+ #if defined(_METALLICGLOSSMAP) || defined(_COLORCOLOR_ON)
+ poiCam.reflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[1]);
+ poiCam.vertexReflectionDir = reflect(-poiCam.viewDir, poiMesh.normals[0]);
+ #endif
+ }
+
+ void calculateNormals(inout half3 detailMask)
+ {
+ half3 mainNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_BumpMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ #ifdef FINALPASS
+ detailMask = POI2D_SAMPLER_PAN(_DetailMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(1) > 0)
+ {
+ half3 detailNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_DetailNormalMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1) * detailMask.g);
+ poiMesh.tangentSpaceNormal = BlendNormals(mainNormal, detailNormal);
+ }
+ else
+ {
+ poiMesh.tangentSpaceNormal = mainNormal;
+ }
+ #else
+ poiMesh.tangentSpaceNormal = mainNormal;
+ #endif
+
+ #ifdef POI_RGBMASK
+ calculateRGBNormals(poiMesh.tangentSpaceNormal);
+ #endif
+
+ poiMesh.normals[1] = normalize(
+ poiMesh.tangentSpaceNormal.x * poiMesh.tangent +
+ poiMesh.tangentSpaceNormal.y * poiMesh.binormal +
+ poiMesh.tangentSpaceNormal.z * poiMesh.normals[0]
+ );
+
+ poiCam.viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[1]));
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
new file mode 100644
index 00000000..a56bd266
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiData.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f8e054aea7bddec499de8679a6616028
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
new file mode 100644
index 00000000..125d2cd9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc
@@ -0,0 +1,107 @@
+#ifndef POI_DEBUG
+ #define POI_DEBUG
+
+ float _DebugEnabled;
+ float _DebugMeshData;
+ float _DebugLightingData;
+ float _DebugCameraData;
+
+ void displayDebugInfo(inout float4 finalColor)
+ {
+
+ if (float(0) != 0)
+ {
+ //Mesh Data
+ if (float(0) == 1)
+ {
+ finalColor.rgb = poiMesh.normals[0];
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiMesh.normals[1];
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiMesh.tangent;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiMesh.binormal;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiMesh.localPos;
+ return;
+ }
+
+ #ifdef POI_LIGHTING
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiLight.attenuation;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiLight.directLighting;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiLight.indirectLighting;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiLight.lightMap;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiLight.rampedLightMap;
+ return;
+ }
+ else if(float(0) == 6)
+ {
+ finalColor.rgb = poiLight.finalLighting;
+ return;
+ }
+ else if(float(0) == 7)
+ {
+ finalColor.rgb = poiLight.nDotL;
+ return;
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ finalColor.rgb = poiCam.viewDir;
+ return;
+ }
+ else if(float(0) == 2)
+ {
+ finalColor.rgb = poiCam.tangentViewDir;
+ return;
+ }
+ else if(float(0) == 3)
+ {
+ finalColor.rgb = poiCam.forwardDir;
+ return;
+ }
+ else if(float(0) == 4)
+ {
+ finalColor.rgb = poiCam.worldPos;
+ return;
+ }
+ else if(float(0) == 5)
+ {
+ finalColor.rgb = poiCam.viewDotNormal;
+ return;
+ }
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
new file mode 100644
index 00000000..f2007dd1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDebug.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 73ce2a59992b0a244880582a381465a1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
new file mode 100644
index 00000000..280fcbc1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_DECAL
+ #define POI_DECAL
+
+ POI_TEXTURE_NOSAMPLER(_DecalTexture);
+ POI_TEXTURE_NOSAMPLER(_DecalMask);
+ float4 _DecalColor;
+ fixed _DecalTiled;
+ fixed _DecalBlendAdd;
+ fixed _DecalBlendMultiply;
+ fixed _DecalBlendReplace;
+ half _DecalRotation;
+ half2 _DecalScale;
+ half2 _DecalPosition;
+ half _DecalRotationSpeed;
+ float _DecalEmissionStrength;
+
+ void applyDecal(inout float4 albedo, inout float3 decalEmission)
+ {
+ float2 uv = poiMesh.uv[float(0)];
+ float2 decalCenter = float4(0.5,0.5,0,0);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - decalCenter.x) * cs - (uv.y - decalCenter.y) * sn + decalCenter.x, (uv.x - decalCenter.x) * sn + (uv.y - decalCenter.y) * cs + decalCenter.y);
+ uv = remap(uv, float2(0, 0) - float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float4(1,1,0,0) / 2 + float4(0.5,0.5,0,0), float2(0, 0), float2(1, 1));
+
+ half decalAlpha = 1;
+ //float2 uv = TRANSFORM_TEX(poiMesh.uv[float(0)], _DecalTexture) + _Time.x * float4(0,0,0,0);
+ float4 decalColor = POI2D_SAMPLER_PAN(_DecalTexture, _MainTex, uv, float4(0,0,0,0)) * float4(1,1,1,1);
+ decalAlpha *= POI2D_SAMPLER_PAN(_DecalMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if (!float(0))
+ {
+ if(uv.x > 1 || uv.y > 1 || uv.x < 0 || uv.y < 0)
+ {
+ decalAlpha = 0;
+ }
+ }
+
+ if(float(0))
+ {
+ albedo.rgb = lerp(albedo.rgb, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb *= lerp(1, decalColor.rgb, decalColor.a * decalAlpha * float(0));
+ }
+
+ if(float(0))
+ {
+ albedo.rgb += decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+ albedo = saturate(albedo);
+ decalEmission = decalColor.rgb * decalColor.a * decalAlpha * float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
new file mode 100644
index 00000000..1d9933e2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDecal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ddacffa2383d63d4ca228464be45649f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
new file mode 100644
index 00000000..9b70067a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc
@@ -0,0 +1,21 @@
+#ifndef POI_DEFINES
+ #define POI_DEFINES
+
+ #define DielectricSpec float4(0.04, 0.04, 0.04, 1.0 - 0.04)
+
+ #ifdef _SPECGLOSSMAP // Specular
+ #ifndef POI_VAR_DOTNH
+ #define POI_VAR_DOTNH
+ #endif
+ #ifndef POI_VAR_DOTLH
+ #define POI_VAR_DOTLH
+ #endif
+ #endif
+
+ #ifdef VIGNETTE_MASKED // Lighting
+ #ifndef POI_VAR_DOTNL
+ #define POI_VAR_DOTNL
+ #endif
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
new file mode 100644
index 00000000..779e87ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDefines.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9cc5fec496cd9a04498c5aa47e550a9b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
new file mode 100644
index 00000000..828460bc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc
@@ -0,0 +1,112 @@
+#ifndef POI_DEPTH_COLOR
+ #define POI_DEPTH_COLOR
+
+ float4 _DepthGlowColor;
+ float _DepthGlowEmission;
+ float _FadeLength;
+ float _DepthAlphaMin;
+ float _DepthAlphaMax;
+ POI_TEXTURE_NOSAMPLER(_DepthGradient);
+ POI_TEXTURE_NOSAMPLER(_DepthMask);
+ float _DepthGradientTextureUV;
+ float _DepthGradientBlend;
+
+ /*
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, float4 worldDirection, float4 clipPos)
+ {
+ float3 touchEmission = 0;
+ if (!IsInMirror())
+ {
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+ float depth = DecodeFloatRG(tex2Dproj(_CameraDepthTexture, worldDirection));
+ depth = Linear01Depth(depth);
+ if(depth != 1)
+ {
+ float diff = distance(depth, Linear01Depth(clipPos.z));
+ float intersect = 0;
+ if(diff > 0)
+ {
+ intersect = clamp(1 - smoothstep(0, _ProjectionParams.w * fadeLength, diff), 0, 1);
+ }
+ half4 depthGradient = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthGradient, _MainTex, intersect);
+ half3 depthMask = UNITY_SAMPLE_TEX2D_SAMPLER(_DepthMask, _MainTex, poiMesh.uv[0]);
+ half3 depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+ }
+ }
+ depthTouchEmission = touchEmission;
+ }
+ */
+
+ inline float CorrectedLinearEyeDepth(float z, float B)
+ {
+ return 1.0 / (z / PM._34 + B);
+ }
+
+ void applyDepthColor(inout float4 finalColor, inout float3 depthTouchEmission, inout float3 finalEmission, in float4 worldDirection)
+ {
+ float3 touchEmission = 0;
+ float fadeLength = _FadeLength;
+ fadeLength *= 0.01;
+
+ float perspectiveDivide = 1.0f / poiCam.clipPos.w;
+ float4 direction = worldDirection * perspectiveDivide;
+ float2 screenPos = poiCam.grabPos.xy * perspectiveDivide;
+ float z = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, screenPos);
+
+ #if UNITY_REVERSED_Z
+ if (z == 0)
+ #else
+ if(z == 1)
+ #endif
+ return;
+
+ float depth = CorrectedLinearEyeDepth(z, direction.w);
+ float3 worldpos = direction * depth + _WorldSpaceCameraPos.xyz;
+ /*
+ finalColor.rgb = frac(worldpos);
+ return;
+ */
+
+ float diff = distance(worldpos, poiMesh.worldPos);
+ float intersect = 0;
+ intersect = clamp(1 - smoothstep(0, fadeLength, diff), 0, 1);
+ half3 depthMask = POI2D_SAMPLER_PAN(_DepthMask, _MainTex, poiMesh.uv[_DepthMaskUV], _DepthMaskPan);
+
+ half4 depthGradient = 0;
+ half3 depthColor = 0;
+
+
+ if (_DepthGradientTextureUV == 0)
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, float2(intersect, intersect), _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb;
+ }
+ else
+ {
+ depthGradient = POI2D_SAMPLER_PAN(_DepthGradient, _MainTex, poiMesh.uv[_DepthGradientUV], _DepthGradientPan);
+ depthColor = depthGradient.rgb * _DepthGlowColor.rgb * intersect;
+ }
+
+
+ if(_DepthGradientBlend == 0) // rpelace
+ {
+ finalColor.rgb = lerp(finalColor.rgb, depthColor, intersect * depthMask);
+ }
+ else if(_DepthGradientBlend == 1) // add
+ {
+ finalColor.rgb += depthColor * intersect * depthMask;
+ }
+ else if(_DepthGradientBlend == 2) // multiply
+ {
+ finalColor.rgb *= lerp(1, depthColor, intersect * depthMask);
+ }
+ finalColor.a *= lerp(_DepthAlphaMax, _DepthAlphaMin, intersect * depthMask);
+ touchEmission = depthColor * _DepthGlowEmission * intersect * depthMask;
+
+ depthTouchEmission = touchEmission;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
new file mode 100644
index 00000000..2141ec46
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDepthColor.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3a1979d2f722573468ee7d4e8a4a2c16
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
new file mode 100644
index 00000000..13175f00
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc
@@ -0,0 +1,171 @@
+#ifndef POI_DISSOLVE
+ #define POI_DISSOLVE
+
+ float _DissolveType;
+ float _DissolveEdgeWidth;
+ float4 _DissolveEdgeColor;
+ sampler2D _DissolveEdgeGradient; float4 _DissolveEdgeGradient_ST;
+ float _DissolveEdgeEmission;
+ float4 _DissolveTextureColor;
+
+ POI_TEXTURE_NOSAMPLER(_DissolveToTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveNoiseTexture);
+ POI_TEXTURE_NOSAMPLER(_DissolveDetailNoise);
+ POI_TEXTURE_NOSAMPLER(_DissolveMask);
+
+ float _DissolveMaskInvert;
+ float _DissolveAlpha;
+ float _ContinuousDissolve;
+ float _DissolveDetailStrength;
+ float _DissolveEdgeHardness;
+ float _DissolveInvertNoise;
+ float _DissolveInvertDetailNoise;
+ float _DissolveToEmissionStrength;
+
+ // Point to Point
+ float _DissolveP2PWorldLocal;
+ float _DissolveP2PEdgeLength;
+ float4 _DissolveStartPoint;
+ float4 _DissolveEndPoint;
+
+ // World Dissolve
+ float _DissolveWorldShape;
+ float4 _DissolveShapePosition;
+ float4 _DissolveShapeRotation;
+ float _DissolveShapeScale;
+ float _DissolveInvertShape;
+ float _DissolveShapeEdgeLength;
+
+ float _DissolveAlpha0;
+ float _DissolveAlpha1;
+ float _DissolveAlpha2;
+ float _DissolveAlpha3;
+ float _DissolveAlpha4;
+ float _DissolveAlpha5;
+ float _DissolveAlpha6;
+ float _DissolveAlpha7;
+ float _DissolveAlpha8;
+ float _DissolveAlpha9;
+
+ // Masking
+ float _DissolveEmissionSide;
+ float _DissolveEmission1Side;
+ float _DissolveUseVertexColors;
+
+ float4 edgeColor;
+ float edgeAlpha;
+ float dissolveAlpha;
+ float4 dissolveToTexture;
+ //Globals
+
+
+ void calculateDissolve(inout float4 albedo, inout float3 dissolveEmission)
+ {
+
+ float dissolveMask = POI2D_SAMPLER_PAN(_DissolveMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+
+ if (float(0))
+ {
+ // Vertex Color Imprecision hype
+ dissolveMask = ceil(poiMesh.vertexColor.g * 100000) / 100000;
+ }
+
+ dissolveToTexture = POI2D_SAMPLER_PAN(_DissolveToTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ float dissolveNoiseTexture = POI2D_SAMPLER_PAN(_DissolveNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ float da = float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0)
+ + float(0);
+ da = saturate(da);
+
+ float dds = float(0.1);
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskDissolve != 4)
+ {
+ dissolveMask *= blackLightMask[_BlackLightMaskDissolve];
+ }
+ #endif
+
+ if(float(0))
+ {
+ dissolveMask = 1 - dissolveMask;
+ }
+
+ float dissolveDetailNoise = POI2D_SAMPLER_PAN(_DissolveDetailNoise, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if(float(0))
+ {
+ dissolveNoiseTexture = 1 - dissolveNoiseTexture;
+ }
+ if(float(0))
+ {
+ dissolveDetailNoise = 1 - dissolveDetailNoise;
+ }
+ if(float(0) != 0)
+ {
+ da = sin(_Time.y * float(0)) * .5 + .5;
+ }
+ da *= dissolveMask;
+ dissolveAlpha = da;
+ edgeAlpha = 0;
+
+
+ if(float(1) == 1) // Basic
+ {
+ da = remap(da, 0, 1, -float(0.025), 1);
+ dissolveAlpha = da;
+ //Adjust detail strength to avoid artifacts
+ dds *= smoothstep(1, .99, da);
+ float noise = saturate(dissolveNoiseTexture - dissolveDetailNoise * dds);
+
+ noise = saturate(noise + 0.001);
+ //noise = remap(noise, 0, 1, float(0.025), 1 - float(0.025));
+ dissolveAlpha = dissolveAlpha >= noise;
+ edgeAlpha = remapClamped(noise, da + float(0.025), da, 0, 1) * (1 - dissolveAlpha);
+ }
+ else if (float(1) == 2) // Point to Point
+ {
+ float3 direction;
+ float3 currentPos;
+ float distanceTo = 0;
+ direction = normalize(float4(0,1,0,0) - float4(0,-1,0,0));
+ currentPos = lerp(float4(0,-1,0,0), float4(0,1,0,0), dissolveAlpha);
+ if (float(0) == 0)
+ {
+ distanceTo = dot(poiMesh.localPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ else
+ {
+ distanceTo = dot(poiMesh.worldPos - currentPos, direction) - dissolveDetailNoise * dds;
+ edgeAlpha = smoothstep(float(0.1), 0, distanceTo);
+ dissolveAlpha = step(distanceTo, 0);
+ edgeAlpha *= 1 - dissolveAlpha;
+ }
+ }
+
+ albedo = lerp(albedo, dissolveToTexture, dissolveAlpha);
+
+
+ if(float(0.025))
+ {
+ edgeColor = tex2D(_DissolveEdgeGradient, TRANSFORM_TEX(float2(edgeAlpha, edgeAlpha), _DissolveEdgeGradient)) * float4(1,1,1,1);
+ albedo.rgb = lerp(albedo.rgb, edgeColor.rgb, smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+ dissolveEmission = lerp(0, dissolveToTexture * float(0), dissolveAlpha) + lerp(0, edgeColor.rgb * float(0), smoothstep(0, 1 - float(0.5) * .99999999999, edgeAlpha));
+ }
+
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
new file mode 100644
index 00000000..1db9b23d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDissolve.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fa116f284e6ca65489bc0b92ba0b5558
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
new file mode 100644
index 00000000..91efad39
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_DITHERING
+ #define POI_DITHERING
+ fixed _DitheringEnabled;
+ fixed _DitherGradient;
+
+ half calcDither(half2 grabPos)
+ {
+ half dither = Dither8x8Bayer(fmod(grabPos.x, 8), fmod(grabPos.y, 8));
+ return dither;
+ }
+
+ #ifndef POI_SHADOW
+ void applyDithering(inout float4 finalColor)
+ {
+
+ if (float(0))
+ {
+ half dither = calcDither(poiCam.screenUV.xy);
+ finalColor.a = finalColor.a - (dither * (1 - finalColor.a) * float(0.1));
+ }
+ }
+ #else
+ void applyShadowDithering(inout float alpha, float2 screenUV)
+ {
+
+ if(float(0))
+ {
+ half dither = calcDither(screenUV);
+ alpha = alpha - (dither * (1 - alpha) * float(0.1));
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
new file mode 100644
index 00000000..406e4ade
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiDithering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cf3eb1c3554e9734d8e690b5701f64e0
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
new file mode 100644
index 00000000..4888c2ca
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc
@@ -0,0 +1,240 @@
+#ifndef POI_EMISSION
+ #define POI_EMISSION
+
+ float4 _EmissionColor;
+ POI_TEXTURE_NOSAMPLER(_EmissionMap);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve); float4 _EmissionScrollingCurve_ST;
+ float _EmissionBaseColorAsMap;
+ float _EmissionStrength;
+ float _EnableEmission;
+ float _EmissionHueShift;
+ float4 _EmissiveScroll_Direction;
+ float _EmissiveScroll_Width;
+ float _EmissiveScroll_Velocity;
+ float _EmissiveScroll_Interval;
+ float _EmissionBlinkingEnabled;
+ float _EmissiveBlink_Min;
+ float _EmissiveBlink_Max;
+ float _EmissiveBlink_Velocity;
+ float _ScrollingEmission;
+ float _EnableGITDEmission;
+ float _GITDEMinEmissionMultiplier;
+ float _GITDEMaxEmissionMultiplier;
+ float _GITDEMinLight;
+ float _GITDEMaxLight;
+ float _GITDEWorldOrMesh;
+ float _EmissionCenterOutEnabled;
+ float _EmissionCenterOutSpeed;
+ float _EmissionHueShiftEnabled;
+ float _EmissionBlinkingOffset;
+ float _EmissionScrollingOffset;
+
+ float4 _EmissionColor1;
+ #ifdef EFFECT_HUE_VARIATION
+ POI_TEXTURE_NOSAMPLER(_EmissionMap1);
+ POI_TEXTURE_NOSAMPLER(_EmissionMask1);
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_EmissionScrollingCurve1); float4 _EmissionScrollingCurve1_ST;
+ #endif
+ float _EmissionBaseColorAsMap1;
+ float _EmissionStrength1;
+ float _EnableEmission1;
+ float _EmissionHueShift1;
+ float4 _EmissiveScroll_Direction1;
+ float _EmissiveScroll_Width1;
+ float _EmissiveScroll_Velocity1;
+ float _EmissiveScroll_Interval1;
+ float _EmissionBlinkingEnabled1;
+ float _EmissiveBlink_Min1;
+ float _EmissiveBlink_Max1;
+ float _EmissiveBlink_Velocity1;
+ float _ScrollingEmission1;
+ float _EnableGITDEmission1;
+ float _GITDEMinEmissionMultiplier1;
+ float _GITDEMaxEmissionMultiplier1;
+ float _GITDEMinLight1;
+ float _GITDEMaxLight1;
+ float _GITDEWorldOrMesh1;
+ float _EmissionCenterOutEnabled1;
+ float _EmissionCenterOutSpeed1;
+ float _EmissionHueShiftEnabled1;
+ float _EmissionBlinkingOffset1;
+ float _EmissionScrollingOffset1;
+
+ float _EmissionReplace;
+
+ float _EmissionScrollingVertexColor;
+ float _EmissionScrollingVertexColor1;
+
+ float _EmissionScrollingUseCurve;
+ float _EmissionScrollingUseCurve1;
+
+ float calculateGlowInTheDark(in float minLight, in float maxLight, in float minEmissionMultiplier, in float maxEmissionMultiplier, in float enabled)
+ {
+ float glowInTheDarkMultiplier = 1;
+
+ if (enabled)
+ {
+ #ifdef POI_LIGHTING
+ float3 lightValue = float(0) ? poiLight.finalLighting.rgb: poiLight.directLighting.rgb;
+ float gitdeAlpha = (clamp(poiMax(lightValue), minLight, maxLight) - minLight) / (maxLight - minLight);
+ glowInTheDarkMultiplier = lerp(minEmissionMultiplier, maxEmissionMultiplier, gitdeAlpha);
+ #endif
+ }
+ return glowInTheDarkMultiplier;
+ }
+
+ float calculateScrollingEmission(in float3 direction, in float velocity, in float interval, in float scrollWidth, float offset, float3 position)
+ {
+ float phase = 0;
+ phase = dot(position, direction);
+ phase -= (_Time.y + offset) * velocity;
+ phase /= interval;
+ phase -= floor(phase);
+ phase = saturate(phase);
+ return(pow(phase, scrollWidth) + pow(1 - phase, scrollWidth * 4)) * 0.5;
+ }
+
+ float calculateBlinkingEmission(in float blinkMin, in float blinkMax, in float blinkVelocity, float offset)
+ {
+ float amplitude = (blinkMax - blinkMin) * 0.5f;
+ float base = blinkMin + amplitude;
+ return sin((_Time.y + offset) * blinkVelocity) * amplitude + base;
+ }
+
+ float3 calculateEmissionNew(in float4 baseColor, inout float4 finalColor)
+ {
+ // First Emission
+ float3 emission0 = 0;
+ float emissionStrength0 = float(0);
+ float3 emissionColor0 = 0;
+
+ float glowInTheDarkMultiplier0 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor0 = POI2D_SAMPLER_PAN(_EmissionMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+ else
+ {
+ emissionColor0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)) * lerp(1, baseColor, float(0)).rgb * float4(0,0,0,0).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve) + (dot(pos, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength0 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos);
+ }
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength0 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor0 = hueShift(emissionColor0, float(0) * float(0));
+ float emissionMask0 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask) + _Time.x * float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission != 4)
+ {
+ emissionMask0 *= blackLightMask[_BlackLightMaskEmission];
+ }
+ #endif
+
+ emissionStrength0 *= glowInTheDarkMultiplier0 * emissionMask0;
+ emission0 = emissionStrength0 * emissionColor0;
+
+ #ifdef POI_DISSOLVE
+
+ if(float(2) != 2)
+ {
+ emission0 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+
+ // Second Emission
+ float3 emission1 = 0;
+ float emissionStrength1 = 0;
+ float3 emissionColor1 = 0;
+
+ #ifdef EFFECT_HUE_VARIATION
+ emissionStrength1 = float(0);
+ float glowInTheDarkMultiplier1 = calculateGlowInTheDark(float(0), float(1), float(1), float(0), float(0));
+
+
+ if (!float(0))
+ {
+ emissionColor1 = POI2D_SAMPLER_PAN(_EmissionMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ emissionColor1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMap1, _MainTex, ((.5 + poiLight.nDotV * .5) * float4(1,1,0,0).xy) + _Time.x * float(5)).rgb * lerp(1, baseColor, float(0)).rgb * float4(1,1,1,1).rgb;
+ }
+
+
+ if(float(0))
+ {
+ float3 pos1 = poiMesh.localPos;
+
+ if(float(0))
+ {
+ pos1 = poiMesh.vertexColor.rgb;
+ }
+
+
+ if(float(0))
+ {
+ emissionStrength1 *= UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionScrollingCurve1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionScrollingCurve1) + (dot(pos1, float4(0,-10,0,0)) * float(20)) + _Time.x * float(10));
+ }
+ else
+ {
+ emissionStrength1 *= calculateScrollingEmission(float4(0,-10,0,0), float(10), float(20), float(10), float(0), pos1);
+ }
+ }
+
+ if(float(0))
+ {
+ emissionStrength1 *= calculateBlinkingEmission(float(0), float(1), float(4), float(0));
+ }
+
+ emissionColor1 = hueShift(emissionColor1, float(0) * float(0));
+ float emissionMask1 = UNITY_SAMPLE_TEX2D_SAMPLER(_EmissionMask1, _MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _EmissionMask1) + _Time.x * float4(0,0,0,0));
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskEmission2 != 4)
+ {
+ emissionMask1 *= blackLightMask[_BlackLightMaskEmission2];
+ }
+ #endif
+ emissionStrength1 *= glowInTheDarkMultiplier1 * emissionMask1;
+ emission1 = emissionStrength1 * emissionColor1;
+
+ #ifdef POI_DISSOLVE
+ if(float(2) != 2)
+ {
+ emission1 *= lerp(1 - dissolveAlpha, dissolveAlpha, float(2));
+ }
+ #endif
+ #endif
+ finalColor.rgb = lerp(finalColor.rgb, saturate(emissionColor0 + emissionColor1), saturate(emissionStrength0 + emissionStrength1) * float(0) * poiMax(emission0 + emission1));
+
+ return emission0 + emission1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
new file mode 100644
index 00000000..7730f467
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEmission.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0c8a07af5dc426f4681c0a73db25ac67
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
new file mode 100644
index 00000000..1e9188ec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc
@@ -0,0 +1,43 @@
+#ifndef POI_ENVIRONMENTAL_RIM
+ #define POI_ENVIRONMENTAL_RIM
+
+ //enviro rim
+ float _EnableEnvironmentalRim;
+ POI_TEXTURE_NOSAMPLER(_RimEnviroMask);
+ float _RimEnviroBlur;
+ float _RimEnviroMinBrightness;
+ float _RimEnviroWidth;
+ float _RimEnviroSharpness;
+ float _RimEnviroIntensity;
+
+ float3 calculateEnvironmentalRimLighting(in float4 albedo)
+ {
+ float enviroRimAlpha = saturate(1 - smoothstep(min(float(0), float(0.45)), float(0.45), poiCam.viewDotNormal));
+ float(0.7) *= 1.7 - 0.7 * float(0.7);
+
+ float3 enviroRimColor = 0;
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if (interpolator < 0.99999)
+ {
+ //Probe 1
+ float4 reflectionData0 = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor0 = DecodeHDR(reflectionData0, unity_SpecCube0_HDR);
+
+ //Probe 2
+ float4 reflectionData1 = UNITY_SAMPLE_TEXCUBE_SAMPLER_LOD(unity_SpecCube1, unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ float3 reflectionColor1 = DecodeHDR(reflectionData1, unity_SpecCube1_HDR);
+
+ enviroRimColor = lerp(reflectionColor1, reflectionColor0, interpolator);
+ }
+ else
+ {
+ float4 reflectionData = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiMesh.normals[1], float(0.7) * UNITY_SPECCUBE_LOD_STEPS);
+ enviroRimColor = DecodeHDR(reflectionData, unity_SpecCube0_HDR);
+ }
+
+ half enviroMask = poiMax(POI2D_SAMPLER_PAN(_RimEnviroMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb);
+ return lerp(0, max(0, (enviroRimColor - float(0)) * albedo.rgb), enviroRimAlpha).rgb * enviroMask * float(1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
new file mode 100644
index 00000000..f227bc09
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiEnvironmentalRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 3de6044eac1a89d42930724ad7c53302
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
new file mode 100644
index 00000000..0ed89b59
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc
@@ -0,0 +1,153 @@
+#ifndef POI_FLIPBOOK
+ #define POI_FLIPBOOK
+
+ UNITY_DECLARE_TEX2DARRAY(_FlipbookTexArray); float4 _FlipbookTexArray_ST;
+ float4 _FlipbookColor;
+ float _FlipbookFPS;
+ float _FlipbookTotalFrames;
+ float4 _FlipbookScaleOffset;
+ float _FlipbookTiled;
+ float _FlipbookCurrentFrame;
+ float _FlipbookEmissionStrength;
+ float _FlipbookRotation;
+ float _EnableFlipbook;
+ float _FlipbookTexArrayUV;
+ float _FlipbookAlphaControlsFinalAlpha;
+ float _FlipbookRotationSpeed;
+ float _FlipbookIntensityControlsAlpha;
+ float _FlipbookColorReplaces;
+ float2 _FlipbookTexArrayPan;
+
+ // blending
+ float _FlipbookReplace;
+ float _FlipbookMultiply;
+ float _FlipbookAdd;
+ POI_TEXTURE_NOSAMPLER(_FlipbookMask);
+
+ // anim
+ float _FlipbookMovementType;
+ float4 _FlipbookStartEndOffset;
+ float _FlipbookMovementSpeed;
+
+ // Global
+ float4 flipBookPixel;
+ float4 flipBookPixelMultiply;
+ float flipBookMask;
+
+ #ifndef POI_SHADOW
+
+ void applyFlipbook(inout float4 finalColor, inout float3 flipbookEmission)
+ {
+ flipBookMask = POI2D_SAMPLER_PAN(_FlipbookMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float2 uv = frac(poiMesh.uv[float(0)]);
+ float theta = radians(float(0) + _Time.z * float(0));
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ // 2d rotation
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ if (float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipBookPixel = 0;
+ return;
+ }
+ }
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ flipBookPixel = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipBookPixel.a = poiMax(flipBookPixel.rgb);
+ }
+
+ if(float(0))
+ {
+ flipBookPixel.rgb = float4(1,1,1,1).rgb;
+ }
+ else
+ {
+ flipBookPixel.rgb *= float4(1,1,1,1).rgb;
+ }
+
+ #ifdef POI_BLACKLIGHT
+
+ if(_BlackLightMaskFlipbook != 4)
+ {
+ flipBookMask *= blackLightMask[_BlackLightMaskFlipbook];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * float(1) * flipBookMask);
+ finalColor.rgb = finalColor + flipBookPixel.rgb * float(0) * flipBookMask;
+ finalColor.rgb = finalColor * lerp(1, flipBookPixel.rgb, flipBookPixel.a * float4(1,1,1,1).a * flipBookMask * float(0));
+
+
+ if(float(0))
+ {
+ finalColor.a = lerp(finalColor.a, flipBookPixel.a * float4(1,1,1,1).a, flipBookMask);
+ }
+ flipbookEmission = lerp(0, flipBookPixel.rgb * float(0), flipBookPixel.a * float4(1,1,1,1).a * flipBookMask);
+ }
+
+ #else
+
+ float applyFlipbookAlphaToShadow(float2 uv)
+ {
+
+ if(float(0))
+ {
+ float flipbookShadowAlpha = 0;
+
+ float4 flipbookScaleOffset = float4(1,1,0,0);
+ flipbookScaleOffset.xy = 1 - flipbookScaleOffset.xy;
+ float theta = radians(float(0));
+
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 spriteCenter = flipbookScaleOffset.zw + .5;
+ uv = float2((uv.x - spriteCenter.x) * cs - (uv.y - spriteCenter.y) * sn + spriteCenter.x, (uv.x - spriteCenter.x) * sn + (uv.y - spriteCenter.y) * cs + spriteCenter.y);
+
+ float2 newUV = remap(uv, float2(0, 0) + flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(1, 1) - flipbookScaleOffset.xy / 2 + flipbookScaleOffset.zw, float2(0, 0), float2(1, 1));
+
+
+ uint currentFrame = floor(float(-1)) % float(1);
+ if(float(-1) < 0)
+ {
+ currentFrame = (_Time.y / (1 / float(30))) % float(1);
+ }
+ half4 flipbookColor = UNITY_SAMPLE_TEX2DARRAY(_FlipbookTexArray, float3(TRANSFORM_TEX(newUV, _FlipbookTexArray) + _Time.x * float4(0,0,0,0), currentFrame));
+
+ if(float(0))
+ {
+ flipbookColor.a = poiMax(flipbookColor.rgb);
+ }
+
+
+ if(float(0) == 0)
+ {
+ if(max(newUV.x, newUV.y) > 1 || min(newUV.x, newUV.y) < 0)
+ {
+ flipbookColor.a = 0;
+ }
+ }
+ return flipbookColor.a * float4(1,1,1,1).a;
+ }
+ return 1;
+ }
+
+ #endif
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
new file mode 100644
index 00000000..3d821f9a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFlipbook.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a7fdb4c03df3e7142807e4094fd65139
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
new file mode 100644
index 00000000..aa950e7d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc
@@ -0,0 +1,376 @@
+#ifndef POIFRAG
+ #define POIFRAG
+
+ float _MainEmissionStrength;
+ float _IgnoreFog;
+ half _GIEmissionMultiplier;
+ float _IridescenceTime;
+ float _AlphaToMask;
+ float _ForceOpaque;
+ float _commentIfZero_EnableGrabpass;
+ float _AlphaPremultiply;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+ float _commentIfZero_LightingAdditiveEnable;
+
+ float4 frag(v2f i, uint facing: SV_IsFrontFace): SV_Target
+ {
+ #ifdef FORWARD_ADD_PASS
+ #if !defined(POI_LIGHTING)
+ return 0;
+ #endif
+ #if defined(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A) && defined(DIRECTIONAL)
+ return 0;
+ #endif
+ #endif
+ #ifdef FORWARD_ADD_PASS
+
+ if (float(1) == 0)
+ {
+ return 0;
+ }
+ #endif
+ UNITY_SETUP_INSTANCE_ID(i);
+ // Color
+ float4 albedo = 1;
+ float4 finalColor = 1;
+
+ // Lighting
+ float bakedCubemap = 0; // Whether or not metallic should run before or after lighting multiplication
+ float3 finalSpecular0 = 0;
+ float3 finalSpecular1 = 0;
+ float3 finalSSS = 0;
+ fixed lightingAlpha = 1;
+ float3 finalEnvironmentalRim = 0;
+
+ // Emissions
+ float3 finalEmission = 0;
+ float3 finalLighting = 1;
+ float3 IridescenceEmission = 0;
+ float3 spawnInEmission = 0;
+ float3 voronoiEmission = 0;
+ float3 matcapEmission = 0;
+ float3 depthTouchEmission = 0;
+ float3 decalEmission = 0;
+ float3 glitterEmission = 0;
+ float3 panosphereEmission = 0;
+ float3 backFaceEmission = 0;
+ float3 dissolveEmission = 0;
+ float3 rimLightEmission = 0;
+ float3 flipbookEmission = 0;
+ float3 textOverlayEmission = 0;
+ float3 videoEmission = 0;
+ /**********************************************************************
+ Initialize the base data that's needed everywhere else in the shader
+ **********************************************************************/
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+
+ #ifdef POI_BLACKLIGHT
+ createBlackLightMask();
+
+ if (_BlackLightMaskDebug)
+ {
+ return float4(blackLightMask.rgb, 1);
+ }
+ #endif
+
+ // This has to happen in the initializbecause it alters UV data globally
+ #ifdef POI_PARALLAX
+ calculateandApplyParallax();
+ #endif
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+ calculateVertexLightingData(i);
+ /**********************************************************************
+ Calculate Light Maps
+ **********************************************************************/
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ /**********************************************************************
+ Calculate Color Data
+ **********************************************************************/
+
+ initTextureData(albedo, mainTexture, backFaceEmission, dissolveEmission, detailMask);
+
+ #ifdef POI_DECAL
+ applyDecal(albedo, decalEmission);
+ #endif
+
+
+ #ifdef POI_IRIDESCENCE
+
+ if (_IridescenceTime == 0)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VORONOI
+ applyVoronoi(albedo, voronoiEmission);
+ #endif
+
+ #ifdef POI_MSDF
+ ApplyTextOverlayColor(albedo, textOverlayEmission);
+ #endif
+
+ #ifdef POI_ENVIRONMENTAL_RIM
+ finalEnvironmentalRim = calculateEnvironmentalRimLighting(albedo);
+ #endif
+
+ #if defined(POI_METAL) || defined(POI_CLEARCOAT)
+ CalculateReflectionData();
+ #endif
+
+ #ifdef POI_DATA
+ distanceFade(albedo);
+ #endif
+
+ #ifdef POI_RANDOM
+ albedo.a *= i.angleAlpha;
+ #endif
+
+ #ifdef MATCAP
+ applyMatcap(albedo, matcapEmission);
+ #endif
+
+ #ifdef PANOSPHERE
+ applyPanosphereColor(albedo, panosphereEmission);
+ #endif
+
+ #ifdef POI_FLIPBOOK
+ applyFlipbook(albedo, flipbookEmission);
+ #endif
+
+ #ifdef POI_GLITTER
+ applyGlitter(albedo, glitterEmission);
+ #endif
+
+ #ifdef POI_RIM
+ applyRimLighting(albedo, rimLightEmission);
+ #endif
+
+ #ifdef POI_DEPTH_COLOR
+ applyDepthColor(albedo, depthTouchEmission, finalEmission, i.worldDirection);
+ #endif
+
+ #ifdef POI_IRIDESCENCE
+
+ if(_IridescenceTime == 1)
+ {
+ applyIridescence(albedo, IridescenceEmission);
+ }
+ #endif
+
+ #ifdef POI_VIDEO
+ applyScreenEffect(albedo, videoEmission);
+ #endif
+
+ applySpawnIn(albedo, spawnInEmission, poiMesh.uv[0], poiMesh.localPos);
+
+ /**********************************************************************
+ Handle a few alpha options
+ **********************************************************************/
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 0)
+ {
+ applyDithering(albedo);
+ }
+ }
+
+ albedo.a = max(float(0), albedo.a);
+
+
+ if(float(0) >= 1)
+ {
+ clip(albedo.a - float(0.5));
+ }
+
+
+ if(float(0))
+ {
+ albedo.rgb *= saturate(albedo.a + 0.0000000001);
+ }
+
+ /**********************************************************************
+ Lighting Time :)
+ **********************************************************************/
+
+ #ifdef POI_LIGHTING
+ finalLighting = calculateFinalLighting(albedo.rgb, finalColor);
+
+ #ifdef SUBSURFACE
+ finalSSS = calculateSubsurfaceScattering();
+ #endif
+ #endif
+
+ float4 finalColorBeforeLighting = albedo;
+ finalColor = finalColorBeforeLighting;
+
+ #ifdef POI_SPECULAR
+ finalSpecular0 = calculateSpecular(finalColorBeforeLighting);
+ #endif
+ #ifdef POI_PARALLAX
+ calculateAndApplyInternalParallax(finalColor);
+ #endif
+
+ #ifdef POI_ALPHA_TO_COVERAGE
+ ApplyAlphaToCoverage(finalColor);
+ #endif
+
+
+ if (float(0) == 1)
+ {
+
+ if(float(0) == 1)
+ {
+ applyDithering(finalColor);
+ }
+ }
+
+ #ifdef POI_METAL
+ calculateMetallicness();
+ bool probeExists = shouldMetalHappenBeforeLighting();
+
+ if(!probeExists)
+ {
+ ApplyMetallicsFake(finalColor, albedo);
+ }
+ #endif
+
+ #ifdef POI_LIGHTING
+ #if defined(FORWARD_ADD_PASS) && defined(POI_METAL)
+ finalLighting *= 1 - metalicMap;
+ #endif
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ finalColor.rgb *= finalLighting + poiLight.vFinalLighting;
+ #else
+ finalColor.rgb *= finalLighting;
+ #endif
+
+ #ifdef POI_METAL
+
+ if(probeExists)
+ {
+ ApplyMetallics(finalColor, albedo);
+ }
+ #endif
+
+ finalColor.rgb += finalSpecular0 + finalEnvironmentalRim + finalSSS;
+
+ #ifdef FORWARD_BASE_PASS
+ #ifdef POI_CLEARCOAT
+ calculateAndApplyClearCoat(finalColor);
+ #endif
+ #endif
+
+ finalColor.a = saturate(finalColor.a);
+
+ /**********************************************************************
+ Add Up all the emission values :D
+ **********************************************************************/
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ finalEmission += finalColorBeforeLighting.rgb * float(0) * albedo.a;
+ finalEmission += wireframeEmission;
+ finalEmission += IridescenceEmission;
+ finalEmission += spawnInEmission;
+ finalEmission += voronoiEmission;
+ finalEmission += matcapEmission;
+ finalEmission += depthTouchEmission;
+ finalEmission += decalEmission;
+ finalEmission += glitterEmission;
+ finalEmission += panosphereEmission;
+ finalEmission += backFaceEmission;
+ finalEmission += rimLightEmission;
+ finalEmission += flipbookEmission;
+ finalEmission += videoEmission;
+ finalEmission += textOverlayEmission;
+ finalEmission += dissolveEmission;
+ #ifdef POI_EMISSION
+ finalEmission += calculateEmissionNew(finalColorBeforeLighting, finalColor);
+ #endif
+ #endif
+
+ /**********************************************************************
+ Meta Pass Hype :D
+ **********************************************************************/
+ #ifdef POI_META_PASS
+ UnityMetaInput meta;
+ UNITY_INITIALIZE_OUTPUT(UnityMetaInput, meta);
+ meta.Emission = finalEmission * float(1);
+ meta.Albedo = saturate(finalColor.rgb);
+ #ifdef POI_SPECULAR
+ meta.SpecularColor = poiLight.color.rgb * float4(1,1,1,1).rgb * lerp(1, albedo.rgb, float(0)) * float4(1,1,1,1).a;
+ #else
+ meta.SpecularColor = poiLight.color.rgb * albedo.rgb;
+ #endif
+ return UnityMetaFragment(meta);
+ #endif
+
+ /**********************************************************************
+ Apply Emission to finalColor
+ **********************************************************************/
+ finalColor.rgb += finalEmission;
+
+ /**********************************************************************
+ Grabpass features
+ **********************************************************************/
+
+
+ if (_commentIfZero_EnableGrabpass)
+ {
+ applyGrabEffects(finalColor);
+ }
+
+ /**********************************************************************
+ Unity Fog
+ **********************************************************************/
+ #ifdef FORWARD_BASE_PASS
+
+ if (float(0) == 0)
+ {
+ UNITY_APPLY_FOG(i.fogCoord, finalColor);
+ }
+ #endif
+
+ #ifdef FORWARD_ADD_PASS
+ if(float(0) > 0)
+ {
+ finalColor.rgb *= finalColor.a;
+ }
+ #endif
+
+
+ if(float(0) == 0)
+ {
+ finalColor.a = 1;
+ }
+
+ #ifdef FORWARD_ADD_PASS
+ //finalColor.rgb = smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5));
+ #endif
+
+ #ifdef POI_DEBUG
+ displayDebugInfo(finalColor);
+ #endif
+
+ //finalColor.rgb = frac(finalColor.rgb);
+ return finalColor;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
new file mode 100644
index 00000000..808dd8e2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f2f3391ea4df48a4eb70104214f22014
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
new file mode 100644
index 00000000..8d260cdf
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_FUR
+ #define POI_FUR
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurTexture); float4 _FurTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurHeightMap); float4 _FurHeightMap_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_FurMask); float4 _FurMask_ST;
+ float _FurAO;
+ float4 _FurColor;
+ float _FurLayers;
+ float _FurMinDistance;
+ float _FurMaxDistance;
+ float _FurHeightMapMin;
+ float _FurHeightMapMax;
+ float _FurDebug;
+ float _AoRampMin;
+ float _AoRampMax;
+ float _FurTipAlpha;
+ float _FurFadeStart;
+
+ //globals
+ half furHeightMap;
+ half furMask;
+
+ void calculateFur()
+ {
+
+ furHeightMap = UNITY_SAMPLE_TEX2D_SAMPLER(_FurHeightMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurHeightMap)).x;
+ furHeightMap = remap(furHeightMap, 0, _FurHeightMapMax, _FurHeightMapMin, 1);
+ furMask = poiMax(UNITY_SAMPLE_TEX2D_SAMPLER(_FurMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurMask)).xyz);
+ half3 furTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_FurTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _FurTexture));
+ clip(furHeightMap - poiMesh.furAlpha);
+ clip(furMask - poiMesh.furAlpha);
+
+ albedo.rgb = lerp(mainTexture.rgb, furTexture.rgb * _FurColor.rgb, ceil(poiMesh.furAlpha));
+ float aoRampMax = _AoRampMax - (1 - furMask);
+ albedo.rgb *= lerp(1, smoothstep(_AoRampMin, aoRampMax, furHeightMap), _FurAO);
+
+ albedo.a *= smoothstep(1.01, _FurTipAlpha, remapClamped(poiMesh.furAlpha, _FurFadeStart, 1, 0, 1)) + float(0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
new file mode 100644
index 00000000..a4fe68ed
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c5449866da555674e837217c3db6efab
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
new file mode 100644
index 00000000..032f3b08
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc
@@ -0,0 +1,37 @@
+float _FurLength;
+float _FurGravityStrength;
+
+[instance(4)]
+[maxvertexcount(20)]
+void geomFur(triangle v2f IN[3], inout TriangleStream < v2f > tristream, uint InstanceID : SV_GSInstanceID)
+{
+ float4 fur_worldPos[3];
+ v2f o_fur[3];
+ float3 offset = (float3(0, -1, 0) * (_FurLength*.9) *_FurGravityStrength);
+
+ for (int i = 0; i < 3; i++)
+ {
+ if (InstanceID == 0) {
+ IN[i].furAlpha = 0;
+ tristream.Append(IN[i]);
+ }
+ o_fur[i] = IN[i];
+ fur_worldPos[i] = float4(IN[i].worldPos + IN[i].normal * _FurLength, 1);
+ }
+ if (InstanceID == 0) {
+ tristream.RestartStrip();
+ }
+ int Total_FurLayers = clamp(floor(_FurLayers * (1 - smoothstep(_FurMinDistance, _FurMaxDistance, distance(IN[0].worldPos, getCameraPosition())))), min(1, _FurLayers), _FurLayers);
+
+ int startLayer = max(int(InstanceID) * 6 - 1, 0);
+ for (int layer = startLayer; layer < Total_FurLayers; layer++) {
+ for (int i = 0; i < 3; i++) {
+ o_fur[i].furAlpha = float(layer) / Total_FurLayers;
+ o_fur[i].worldPos = float4(lerp(IN[i].worldPos, fur_worldPos[i] + offset * o_fur[i].furAlpha, o_fur[i].furAlpha),1);
+ o_fur[i].pos = UnityWorldToClipPos(o_fur[i].worldPos);
+ o_fur[i].furAlpha += .01;
+ tristream.Append(o_fur[i]);
+ }
+ tristream.RestartStrip();
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
new file mode 100644
index 00000000..b50d20f2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGeomFur.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 79db670f0b2b0da4a846d5b65e36e400
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
new file mode 100644
index 00000000..e31b6498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc
@@ -0,0 +1,232 @@
+#ifndef POI_GLITTER
+ #define POI_GLITTER
+
+ half3 _GlitterColor;
+ POI_TEXTURE_NOSAMPLER(_GlitterMask);
+ float2 _GlitterPan;
+ POI_TEXTURE_NOSAMPLER(_GlitterColorMap);
+ POI_TEXTURE_NOSAMPLER(_GlitterTexture);
+ half _GlitterSpeed;
+ half _GlitterBrightness;
+ float _GlitterFrequency;
+ float _GlitterJitter;
+ half _GlitterSize;
+ half _GlitterContrast;
+ half _GlitterAngleRange;
+ half _GlitterMinBrightness;
+ half _GlitterBias;
+ float _GlitterRandomColors;
+ float2 _GlitterMinMaxSaturation;
+ float2 _GlitterMinMaxBrightness;
+ fixed _GlitterUseSurfaceColor;
+ float _GlitterBlendType;
+ float _GlitterMode;
+ float _GlitterShape;
+ float _GlitterCenterSize;
+ float _glitterFrequencyLinearEmissive;
+ float _GlitterJaggyFix;
+ float _GlitterRandomRotation;
+ float _GlitterTextureRotation;
+ float4 _GlitterMinMaxSize;
+ float _GlitterRandomSize;
+
+
+ float3 randomFloat3(float2 Seed, float maximum)
+ {
+ return(.5 + float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed), float2(12.9898, 78.233))) * 43758.5453)
+ ) * .5) * (maximum);
+ }
+
+ float3 randomFloat3Range(float2 Seed, float Range)
+ {
+ return(float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1) * Range;
+ }
+
+ float3 randomFloat3WiggleRange(float2 Seed, float Range)
+ {
+ float3 rando = (float3(
+ frac(sin(dot(Seed.xy, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(Seed.yx, float2(12.9898, 78.233))) * 43758.5453),
+ frac(sin(dot(float2(Seed.x * Seed.y, Seed.y + Seed.x), float2(12.9898, 78.233))) * 43758.5453)
+ ) * 2 - 1);
+ float speed = 1 + float(10);
+ return float3(sin((_Time.x + rando.x * pi) * speed), sin((_Time.x + rando.y * pi) * speed), sin((_Time.x + rando.z * pi) * speed)) * Range;
+ }
+
+ void Unity_RandomRange_float(float2 Seed, float Min, float Max, out float Out)
+ {
+ float randomno = frac(sin(dot(Seed, float2(12.9898, 78.233))) * 43758.5453);
+ Out = lerp(Min, Max, randomno);
+ }
+
+ float3 RandomColorFromPoint(float2 rando)
+ {
+ fixed hue = random2(rando.x + rando.y).x;
+ fixed saturation = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.x);
+ fixed value = lerp(float4(0.8,1,0,1).x, float4(0.8,1,0,1).y, rando.y);
+ float3 hsv = float3(hue, saturation, value);
+ return HSVtoRGB(hsv);
+ }
+
+ void applyGlitter(inout float4 albedo, inout float3 glitterEmission)
+ {
+
+
+ // Scale
+ float2 st = poiMesh.uv[0] * float(300);
+
+ // Tile the space
+ float2 i_st = floor(st);
+ float2 f_st = frac(st);
+
+ float m_dist = 10.; // minimun distance
+ float2 m_point = 0; // minimum point
+ float2 randoPoint = 0;
+ float2 dank;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 neighbor = float2(i, j);
+ float2 pos = random2(i_st + neighbor);
+ float2 rando = pos;
+ pos = 0.5 + 0.5 * sin(float(1) * 6.2831 * pos);
+ float2 diff = neighbor + pos - f_st;
+ float dist = length(diff);
+
+ if (dist < m_dist)
+ {
+ dank = diff;
+ m_dist = dist;
+ m_point = pos;
+ randoPoint = rando;
+ }
+ }
+ }
+
+ float randomFromPoint = random(randoPoint);
+
+ float size = float(0.3);
+
+ if(float(0))
+ {
+ size = remapClamped(randomFromPoint, 0, 1, float4(0.1,0.5,0,1).x, float4(0.1,0.5,0,1).y);
+ }
+
+
+ // Assign a color using the closest point position
+ //color += dot(m_point, float2(.3, .6));
+
+ // Add distance field to closest point center
+ // color.g = m_dist;
+
+ // Show isolines
+ //color -= abs(sin(40.0 * m_dist)) * 0.07;
+
+ // Draw cell center
+ half glitterAlpha = 1;
+ switch(float(0))
+ {
+ case 0: //circle
+ glitterAlpha = (1. - step(size, m_dist));
+ break;
+ case 1: //sqaure
+ float jaggyFix = pow(poiCam.distanceToVert, 2) * float(0);
+
+
+ if (float(0))
+ {
+ float2 center = float2(0, 0);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ dank = float2((dank.x - center.x) * cs - (dank.y - center.y) * sn + center.x, (dank.x - center.x) * sn + (dank.y - center.y) * cs + center.y);
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ else
+ {
+ glitterAlpha = (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.x))) * (1. - smoothstep(size - .1 * jaggyFix, size, abs(dank.y)));
+ }
+ break;
+ }
+
+ float3 finalGlitter = 0;
+
+ switch(float(0))
+ {
+ case 0:
+ float3 randomRotation = 0;
+
+ if(float(10) > 0)
+ {
+ randomRotation = randomFloat3WiggleRange(randoPoint, float(90));
+ }
+ else
+ {
+ randomRotation = randomFloat3Range(randoPoint, float(90));
+ }
+ float3 norm = poiMesh.normals[0];
+
+ float3 glitterReflectionDirection = normalize(mul(poiRotationMatrixFromAngles(randomRotation), norm));
+ finalGlitter = lerp(0, float(0) * glitterAlpha, glitterAlpha) + max(pow(saturate(dot(lerp(glitterReflectionDirection, poiCam.viewDir, float(0.8)), poiCam.viewDir)), float(300)), 0);
+ finalGlitter *= glitterAlpha;
+ break;
+ case 1:
+ float offset = random(randoPoint);
+ float brightness = sin((_Time.x + offset) * float(10)) * float(20) - (float(20) - 1);
+ finalGlitter = max(float(0) * glitterAlpha, brightness * glitterAlpha * smoothstep(0, 1, 1 - m_dist * float(0.08) * 10));
+ break;
+ }
+
+
+ half3 glitterColor = float4(1,1,1,1);
+ glitterColor *= lerp(1, albedo, float(0));
+ glitterColor *= POI2D_SAMPLER_PAN(_GlitterColorMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+
+ float2 uv = remapClamped(dank, -size, size, 0, 1);
+
+ if(float(0) && !float(0))
+ {
+ float2 fakeUVCenter = float2(.5, .5);
+ float theta = radians((random(randoPoint) + _Time.x * float(0)) * 360);
+ float cs = cos(theta);
+ float sn = sin(theta);
+ uv = float2((uv.x - fakeUVCenter.x) * cs - (uv.y - fakeUVCenter.y) * sn + fakeUVCenter.x, (uv.x - fakeUVCenter.x) * sn + (uv.y - fakeUVCenter.y) * cs + fakeUVCenter.y);
+ }
+ float4 glitterTexture = POI2D_SAMPLER_PAN(_GlitterTexture, _MainTex, uv, float4(0,0,0,0));
+ //float4 glitterTexture = _GlitterTexture.SampleGrad(sampler_MainTex, frac(uv), ddx(uv), ddy(uv));
+ glitterColor *= glitterTexture.rgb;
+ float glitterMask = POI2D_SAMPLER_PAN(_GlitterMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskGlitter != 4)
+ {
+ glitterMask *= blackLightMask[_BlackLightMaskGlitter];
+ }
+ #endif
+
+ if(float(0))
+ {
+ glitterColor *= RandomColorFromPoint(random2(randoPoint.x + randoPoint.y));
+ }
+
+
+ if(float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, finalGlitter * glitterColor * float(3), finalGlitter * glitterTexture.a * glitterMask);
+ glitterEmission = finalGlitter * glitterColor * max(0, (float(3) - 1) * glitterTexture.a) * glitterMask;
+ }
+ else
+ {
+ glitterEmission = finalGlitter * glitterColor * float(3) * glitterTexture.a * glitterMask;
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
new file mode 100644
index 00000000..67126f3d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGlitter.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: bc76df9b9114b69439810e04bd9142bd
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
new file mode 100644
index 00000000..060cb720
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc
@@ -0,0 +1,127 @@
+#ifndef POI_GRAB
+ #define POI_GRAB
+
+ float _RefractionIndex;
+ float _RefractionOpacity;
+ float _RefractionChromaticAberattion;
+ float _RefractionEnabled;
+ float _GrabSrcBlend;
+ float _GrabDstBlend;
+ float _GrabPassUseAlpha;
+ float _GrabPassBlendFactor;
+ float _GrabBlurDistance;
+ float _GrabBlurQuality;
+ float _GrabBlurDirections;
+ POI_TEXTURE_NOSAMPLER(_GrabPassBlendMap);
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RefractionOpacityMask); float4 _RefractionOpacityMask_ST;
+
+ float4 blur(float2 uv)
+ {
+ float two_pi = 6.28318530718;
+
+ float2 radius = _GrabBlurDistance / _ScreenParams.xy * 100; // Arbitrary constant to match old blur
+ float quality = floor(_GrabBlurQuality);
+ float directions = floor(_GrabBlurDirections);
+
+ // Pixel colour
+ float4 color = tex2D(_PoiGrab, uv);
+
+ float deltaAngle = two_pi / directions;
+ float deltaQuality = 1.0 / quality;
+ for (int i = 0; i < directions; i ++)
+ {
+ for (int j = 0; j < quality; j ++)
+ {
+ float angle = deltaAngle * i + j;
+ float offset = deltaQuality * (j + 1);
+ color += tex2D(_PoiGrab, uv + float2(cos(angle), sin(angle)) * radius * offset);
+ }
+ }
+
+ // Output to screen
+ color /= quality * directions + 1;
+ return color;
+ }
+
+ inline float4 Refraction(float indexOfRefraction, float chromaticAberration, float2 projectedGrabPos)
+ {
+ float4 refractionColor;
+ float3 worldViewDir = normalize(UnityWorldSpaceViewDir(poiMesh.worldPos));
+ float3 refractionOffset = ((((indexOfRefraction - 1.0) * mul(UNITY_MATRIX_V, float4(poiMesh.normals[1], 0.0))) * (1.0 / (poiCam.grabPos.z + 1.0))) * (1.0 - dot(poiMesh.normals[1], worldViewDir)));
+ float2 cameraRefraction = float2(refractionOffset.x, - (refractionOffset.y * _ProjectionParams.x));
+
+
+ if (_RefractionChromaticAberattion > 0)
+ {
+ float4 redAlpha = tex2D(_PoiGrab, (projectedGrabPos + cameraRefraction));
+ float green = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 - chromaticAberration)))).g;
+ float blue = tex2D(_PoiGrab, (projectedGrabPos + (cameraRefraction * (1.0 + chromaticAberration)))).b;
+ refractionColor = float4(redAlpha.r, green, blue, redAlpha.a);
+ }
+ else
+ {
+ float2 refractedGrab = projectedGrabPos + cameraRefraction;
+
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refractionColor = blur(refractedGrab);
+ #else
+ refractionColor = tex2D(_PoiGrab, (refractedGrab));
+ #endif
+ }
+ return refractionColor;
+ }
+
+ void calculateRefraction(float2 projectedGrabPos, inout float4 finalColor)
+ {
+ float3 refraction = 1;
+
+ if(_RefractionEnabled == 1)
+ {
+ refraction = Refraction(_RefractionIndex, _RefractionChromaticAberattion, projectedGrabPos).rgb;
+ }
+ else
+ {
+ #ifdef CHROMATIC_ABERRATION_LOW
+ refraction = blur(projectedGrabPos);
+ #else
+ refraction = tex2Dproj(_PoiGrab, poiCam.grabPos);
+ #endif
+ }
+
+ float blendFactor = _GrabPassBlendFactor * POI2D_SAMPLER_PAN(_GrabPassBlendMap, _MainTex, poiMesh.uv[_GrabPassBlendMapUV], _GrabPassBlendMapPan).r;
+
+ if(_GrabPassUseAlpha)
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor * (1 - finalColor.a));
+ finalColor.a = 1;
+ }
+ else
+ {
+ finalColor = poiBlend(_GrabSrcBlend, finalColor, _GrabDstBlend, float4(refraction, 1), blendFactor);
+ }
+ }
+
+ float2 calculateGrabPosition()
+ {
+ float4 grabPos = poiCam.grabPos;
+ #if UNITY_UV_STARTS_AT_TOP
+ float scale = -1.0;
+ #else
+ float scale = 1.0;
+ #endif
+ float halfPosW = grabPos.w * 0.5;
+ grabPos.y = (grabPos.y - halfPosW) * _ProjectionParams.x * scale + halfPosW;
+ #if SHADER_API_D3D9 || SHADER_API_D3D11
+ grabPos.w += 0.00000000001;
+ #endif
+ return(grabPos / grabPos.w).xy;
+ }
+
+ void applyGrabEffects(inout float4 finalColor)
+ {
+ float2 projectedGrabPos = calculateGrabPosition();
+ calculateRefraction(projectedGrabPos, finalColor);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
new file mode 100644
index 00000000..a57397b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiGrab.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 587ab55adef3531488227fa018adf5da
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
new file mode 100644
index 00000000..9ae9e754
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc
@@ -0,0 +1,338 @@
+#ifndef POI_HELPER
+ #define POI_HELPER
+
+ #include "CGI_PoiColors.cginc"
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float linearSin(float x)
+ {
+ return pow(min(cos(pi * x / 2.0), 1.0 - abs(x)), 1.0);
+ }
+
+ float random(float2 p)
+ {
+ return frac(sin(dot(p, float2(12.9898, 78.2383))) * 43758.5453123);
+ }
+
+ float2 random2(float2 p)
+ {
+ return frac(sin(float2(dot(p, float2(127.1, 311.7)), dot(p, float2(269.5, 183.3)))) * 43758.5453);
+ }
+
+ float3 random3(float3 p)
+ {
+ return frac(sin(float3(dot(p, float3(127.1, 311.7, 248.6)), dot(p, float3(269.5, 183.3, 423.3)), dot(p, float3(248.3, 315.9, 184.2)))) * 43758.5453);
+ }
+
+ float3 mod(float3 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+ float2 mod(float2 x, float y)
+ {
+ return x - y * floor(x / y);
+ }
+
+ //1/7
+ #define K 0.142857142857
+ //3/7
+ #define Ko 0.428571428571
+
+ // Permutation polynomial: (34x^2 + x) mod 289
+ float3 Permutation(float3 x)
+ {
+ return mod((34.0 * x + 1.0) * x, 289.0);
+ }
+
+ bool IsInMirror()
+ {
+ return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f;
+ }
+
+ float3 BoxProjection(float3 direction, float3 position, float4 cubemapPosition, float3 boxMin, float3 boxMax)
+ {
+ #if UNITY_SPECCUBE_BOX_PROJECTION
+
+ if (cubemapPosition.w > 0)
+ {
+ float3 factors = ((direction > 0 ? boxMax: boxMin) - position) / direction;
+ float scalar = min(min(factors.x, factors.y), factors.z);
+ direction = direction * scalar + (position - cubemapPosition);
+ }
+ #endif
+ return direction;
+ }
+
+ // Camera
+ float3 getCameraPosition()
+ {
+ #ifdef USING_STEREO_MATRICES
+ return lerp(unity_StereoWorldSpaceCameraPos[0], unity_StereoWorldSpaceCameraPos[1], 0.5);
+ #endif
+ return _WorldSpaceCameraPos;
+ }
+
+ float3 getCameraForward()
+ {
+ #if UNITY_SINGLE_PASS_STEREO
+ float3 p1 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_StereoCameraToWorld[0], float4(0, 0, 0, 1));
+ #else
+ float3 p1 = mul(unity_CameraToWorld, float4(0, 0, 1, 1));
+ float3 p2 = mul(unity_CameraToWorld, float4(0, 0, 0, 1));
+ #endif
+ return normalize(p2 - p1);
+ }
+
+ float3 grayscale_vector_node()
+ {
+ return float3(0, 0.3823529, 0.01845836);
+ }
+
+ float3 grayscale_for_light()
+ {
+ return float3(0.298912, 0.586611, 0.114478);
+ }
+
+ //Math Operators
+
+ float remap(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float2 remap(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float3 remap(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float4 remap(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld);
+ }
+
+ float remapClamped(float x, float minOld, float maxOld, float minNew, float maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float2 remapClamped(float2 x, float2 minOld, float2 maxOld, float2 minNew, float2 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float3 remapClamped(float3 x, float3 minOld, float3 maxOld, float3 minNew, float3 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float4 remapClamped(float4 x, float4 minOld, float4 maxOld, float4 minNew, float4 maxNew)
+ {
+ return clamp(minNew + (x - minOld) * (maxNew - minNew) / (maxOld - minOld), minNew, maxNew);
+ }
+
+ float poiMax(float2 i)
+ {
+ return max(i.x, i.y);
+ }
+
+ float poiMax(float3 i)
+ {
+ return max(max(i.x, i.y), i.z);
+ }
+
+ float poiMax(float4 i)
+ {
+ return max(max(max(i.x, i.y), i.z), i.w);
+ }
+
+ float4x4 poiAngleAxisRotationMatrix(float angle, float3 axis)
+ {
+ axis = normalize(axis);
+ float s = sin(angle);
+ float c = cos(angle);
+ float oc = 1.0 - c;
+
+ return float4x4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
+ oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
+ oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
+ 0.0, 0.0, 0.0, 1.0);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float x, float y, float z)
+ {
+ float angleX = radians(x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+ float4x4 poiRotationMatrixFromAngles(float3 angles)
+ {
+ float angleX = radians(angles.x);
+ float c = cos(angleX);
+ float s = sin(angleX);
+ float4x4 rotateXMatrix = float4x4(1, 0, 0, 0,
+ 0, c, -s, 0,
+ 0, s, c, 0,
+ 0, 0, 0, 1);
+
+ float angleY = radians(angles.y);
+ c = cos(angleY);
+ s = sin(angleY);
+ float4x4 rotateYMatrix = float4x4(c, 0, s, 0,
+ 0, 1, 0, 0,
+ - s, 0, c, 0,
+ 0, 0, 0, 1);
+
+ float angleZ = radians(angles.z);
+ c = cos(angleZ);
+ s = sin(angleZ);
+ float4x4 rotateZMatrix = float4x4(c, -s, 0, 0,
+ s, c, 0, 0,
+ 0, 0, 1, 0,
+ 0, 0, 0, 1);
+
+ return mul(mul(rotateXMatrix, rotateYMatrix), rotateZMatrix);
+ }
+
+#endif
+
+half2 calcScreenUVs(half4 grabPos)
+{
+ half2 uv = grabPos / (grabPos.w + 0.0000000001);
+ #if UNITY_SINGLE_PASS_STEREO
+ uv.xy *= half2(_ScreenParams.x * 2, _ScreenParams.y);
+ #else
+ uv.xy *= _ScreenParams.xy;
+ #endif
+
+ return uv;
+}
+
+float inverseLerp(float A, float B, float T)
+{
+ return(T - A) / (B - A);
+}
+
+float inverseLerp2(float2 a, float2 b, float2 value)
+{
+ float2 AB = b - a;
+ float2 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp3(float3 a, float3 b, float3 value)
+{
+ float3 AB = b - a;
+ float3 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+float inverseLerp4(float4 a, float4 b, float4 value)
+{
+ float4 AB = b - a;
+ float4 AV = value - a;
+ return dot(AV, AB) / dot(AB, AB);
+}
+
+// Dithering
+inline half Dither8x8Bayer(int x, int y)
+{
+ const half dither[ 64 ] = {
+ 1, 49, 13, 61, 4, 52, 16, 64,
+ 33, 17, 45, 29, 36, 20, 48, 32,
+ 9, 57, 5, 53, 12, 60, 8, 56,
+ 41, 25, 37, 21, 44, 28, 40, 24,
+ 3, 51, 15, 63, 2, 50, 14, 62,
+ 35, 19, 47, 31, 34, 18, 46, 30,
+ 11, 59, 7, 55, 10, 58, 6, 54,
+ 43, 27, 39, 23, 42, 26, 38, 22
+ };
+ int r = y * 8 + x;
+ return dither[r] / 64;
+}
+
+// UV Manipulation
+float2 TransformUV(half2 offset, half rotation, half2 scale, float2 uv)
+{
+ float theta = radians(rotation);
+ scale = 1 - scale;
+ float cs = cos(theta);
+ float sn = sin(theta);
+ float2 centerPoint = offset + .5;
+ uv = float2((uv.x - centerPoint.x) * cs - (uv.y - centerPoint.y) * sn + centerPoint.x, (uv.x - centerPoint.x) * sn + (uv.y - centerPoint.y) * cs + centerPoint.y);
+
+ return remap(uv, float2(0, 0) + offset + (scale * .5), float2(1, 1) + offset - (scale * .5), float2(0, 0), float2(1, 1));
+}
+
+bool isVR()
+{
+ // USING_STEREO_MATRICES
+ #if UNITY_SINGLE_PASS_STEREO
+ return true;
+ #else
+ return false;
+ #endif
+}
+
+bool isVRHandCamera()
+{
+ return !isVR() && abs(UNITY_MATRIX_V[0].y) > 0.0000005;
+}
+
+bool isDesktop()
+{
+ return !isVRHandCamera();
+}
+
+bool isVRHandCameraPreview()
+{
+ return isVRHandCamera() && _ScreenParams.y == 720;
+}
+
+bool isVRHandCameraPicture()
+{
+ return isVRHandCamera() && _ScreenParams.y == 1080;
+}
+
+bool isPanorama()
+{
+ // Crude method
+ // FOV=90=camproj=[1][1]
+ return unity_CameraProjection[1][1] == 1 && _ScreenParams.x == 1075 && _ScreenParams.y == 1025;
+}
+
+float3 calculateluminance(float3 color)
+{
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
new file mode 100644
index 00000000..98e9a6db
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHelpers.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8c79e0248b2caca4d8dd7a0aa42611f7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
new file mode 100644
index 00000000..6ee66d3a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc
@@ -0,0 +1,36 @@
+#ifndef POI_HOLOGRAM
+ #define POI_HOLOGRAM
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_HoloAlphaMap); float4 _HoloAlphaMap_ST;
+ float _HoloCoordinateSpace; // 0 World, 1 Local, 2 UV
+ float3 _HoloDirection;
+ float _HoloScrollSpeed;
+ float _HoloLineDensity;
+
+ fixed _HoloFresnelAlpha;
+ fixed _HoloRimSharpness;
+ fixed _HoloRimWidth;
+ void ApplyHoloAlpha(inout float4 color)
+ {
+ float uv = 0;
+
+ if (_HoloCoordinateSpace == 0)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.worldPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 1)
+ {
+ uv = dot(normalize(_HoloDirection), poiMesh.localPos * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+
+ if(_HoloCoordinateSpace == 2)
+ {
+ uv = dot(_HoloDirection, poiMesh.uv[0] * _HoloLineDensity) + _Time.x * _HoloScrollSpeed;
+ }
+ float holoRim = saturate(1 - smoothstep(min(_HoloRimSharpness, _HoloRimWidth), _HoloRimWidth, poiCam.viewDotNormal));
+ holoRim = abs(lerp(1, holoRim, _HoloFresnelAlpha));
+ color.a *= UNITY_SAMPLE_TEX2D_SAMPLER(_HoloAlphaMap, _MainTex, uv).r * holoRim;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
new file mode 100644
index 00000000..6eeda17f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiHologram.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 98216bb0e1ea62b4b9f022ef177138f8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
new file mode 100644
index 00000000..bcea8ccc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc
@@ -0,0 +1,61 @@
+#ifndef POI_IRIDESCENCE
+ #define POI_IRIDESCENCE
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceRamp); float4 _IridescenceRamp_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceMask); float4 _IridescenceMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_IridescenceNormalMap); float4 _IridescenceNormalMap_ST;
+ float _IridescenceNormalUV;
+ float _IridescenceMaskUV;
+ float _IridescenceNormalSelection;
+ float _IridescenceNormalIntensity;
+ float _IridescenceNormalToggle;
+ float _IridescenceIntensity;
+ fixed _IridescenceAddBlend;
+ fixed _IridescenceReplaceBlend;
+ fixed _IridescenceMultiplyBlend;
+ float _IridescenceEmissionStrength;
+
+ //global
+
+ float3 calculateNormal(float3 baseNormal)
+ {
+ float3 normal = UnpackScaleNormal(UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceNormalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceNormalUV], _IridescenceNormalMap)), _IridescenceNormalIntensity);
+ return normalize(
+ normal.x * poiMesh.tangent +
+ normal.y * poiMesh.binormal +
+ normal.z * baseNormal
+ );
+ }
+
+ void applyIridescence(inout float4 albedo, inout float3 IridescenceEmission)
+ {
+ float3 normal = poiMesh.normals[_IridescenceNormalSelection];
+
+ // Use custom normal map
+
+ if (_IridescenceNormalToggle)
+ {
+ normal = calculateNormal(normal);
+ }
+
+ float ndotv = dot(normal, poiCam.viewDir);
+
+ float4 iridescenceColor = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceRamp, _MainTex, 1 - abs(ndotv));
+ float4 iridescenceMask = UNITY_SAMPLE_TEX2D_SAMPLER(_IridescenceMask, _MainTex, TRANSFORM_TEX(poiMesh.uv[_IridescenceMaskUV], _IridescenceMask));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskIridescence != 4)
+ {
+ iridescenceMask *= blackLightMask[_BlackLightMaskIridescence];
+ }
+ #endif
+
+
+ albedo.rgb = lerp(albedo.rgb, saturate(iridescenceColor.rgb * _IridescenceIntensity), iridescenceColor.a * _IridescenceReplaceBlend * iridescenceMask);
+ albedo.rgb += saturate(iridescenceColor.rgb * _IridescenceIntensity * iridescenceColor.a * _IridescenceAddBlend * iridescenceMask);
+ albedo.rgb *= saturate(lerp(1, iridescenceColor.rgb * _IridescenceIntensity, iridescenceColor.a * _IridescenceMultiplyBlend * iridescenceMask));
+
+ IridescenceEmission = saturate(iridescenceColor.rgb * _IridescenceIntensity) * iridescenceColor.a * iridescenceMask * _IridescenceEmissionStrength;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
new file mode 100644
index 00000000..085ca23a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiIridescence.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 86f9af1f37187904f9274a124edc4bab
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
new file mode 100644
index 00000000..8f35cb62
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc
@@ -0,0 +1,668 @@
+
+#ifndef POI_LIGHTING
+ #define POI_LIGHTING
+
+ float _LightingShadingEnabled;
+ float _LightingRampType;
+ float _LightingIgnoreAmbientColor;
+ float _UseShadowTexture;
+ float _LightingEnableAO;
+ float _LightingDetailShadowsEnabled;
+
+ float _LightingOnlyUnityShadows;
+ float _LightingMode;
+ float _ForceLightDirection;
+ float _ShadowStrength;
+ float _OutlineShadowStrength;
+ float _ShadowOffset;
+ float3 _LightDirection;
+ float _ForceShadowStrength;
+ float _CastedShadowSmoothing;
+ float _AttenuationMultiplier;
+ float _EnableLighting;
+ float _LightingControlledUseLightColor;
+ fixed _LightingStandardSmoothness;
+ fixed _LightingStandardControlsToon;
+ fixed _LightingMinLightBrightness;
+ float _LightingUseShadowRamp;
+ float _LightingMinShadowBrightnessRatio;
+ UNITY_DECLARE_TEX2D(_ToonRamp);
+ fixed _LightingMonochromatic;
+
+ fixed _LightingGradientStart;
+ fixed _LightingGradientEnd;
+ float3 _LightingShadowColor;
+ POI_TEXTURE_NOSAMPLER(_LightingShadowTexture);
+ float _AOStrength;
+ fixed _LightingDetailStrength;
+ fixed _LightingAdditiveDetailStrength;
+ fixed _LightingNoIndirectMultiplier;
+ fixed _LightingNoIndirectThreshold;
+ float _LightingUncapped;
+
+ float _LightingDirectColorMode;
+ float _LightingIndirectColorMode;
+ float _LightingAdditiveType;
+ fixed _LightingAdditiveGradientStart;
+ fixed _LightingAdditiveGradientEnd;
+ fixed _LightingAdditivePassthrough;
+ float _LightingDirectAdjustment;
+ float _LightingIndirect;
+ // HSL JUNK
+ float _LightingEnableHSL;
+ float _LightingShadowHue;
+ float _LightingShadowSaturation;
+ float _LightingShadowLightness;
+ float _LightingHSLIntensity;
+ /*
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ToonRamp3);
+ half _LightingShadowStrength3;
+ half _ShadowOffset3;
+ */
+
+ half4 shadowStrength;
+
+ POI_TEXTURE_NOSAMPLER(_LightingDetailShadows);
+ POI_TEXTURE_NOSAMPLER(_LightingAOTex);
+ POI_TEXTURE_NOSAMPLER(_LightingShadowMask);
+
+ /*
+ * MIT License
+ *
+ * Copyright (c) 2018 s-ilent
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+ /*
+ * Silent's code starts here
+ */
+
+ float shEvaluateDiffuseL1Geomerics_local(float L0, float3 L1, float3 n)
+ {
+ // average energy
+ float R0 = max(0, L0);
+
+ // avg direction of incoming light
+ float3 R1 = 0.5f * L1;
+
+ // directional brightness
+ float lenR1 = length(R1);
+
+ // linear angle between normal and direction 0-1
+ //float q = 0.5f * (1.0f + dot(R1 / lenR1, n));
+ //float q = dot(R1 / lenR1, n) * 0.5 + 0.5;
+ float q = dot(normalize(R1), n) * 0.5 + 0.5;
+ q = saturate(q); // Thanks to ScruffyRuffles for the bug identity.
+
+ // power for q
+ // lerps from 1 (linear) to 3 (cubic) based on directionality
+ float p = 1.0f + 2.0f * lenR1 / R0;
+
+ // dynamic range constant
+ // should vary between 4 (highly directional) and 0 (ambient)
+ float a = (1.0f - lenR1 / R0) / (1.0f + lenR1 / R0);
+
+ return R0 * (a + (1.0f - a) * (p + 1.0f) * pow(q, p));
+ }
+
+ half3 BetterSH9(half4 normal)
+ {
+ float3 indirect;
+ float3 L0 = float3(unity_SHAr.w, unity_SHAg.w, unity_SHAb.w) + float3(unity_SHBr.z, unity_SHBg.z, unity_SHBb.z) / 3.0;
+ indirect.r = shEvaluateDiffuseL1Geomerics_local(L0.r, unity_SHAr.xyz, normal);
+ indirect.g = shEvaluateDiffuseL1Geomerics_local(L0.g, unity_SHAg.xyz, normal);
+ indirect.b = shEvaluateDiffuseL1Geomerics_local(L0.b, unity_SHAb.xyz, normal);
+ indirect = max(0, indirect);
+ indirect += SHEvalLinearL2(normal);
+ return indirect;
+ }
+
+ float3 BetterSH9(float3 normal)
+ {
+ return BetterSH9(float4(normal, 1));
+ }
+
+ /*
+ * Standard stuff starts here
+ */
+ UnityLight CreateLight(float3 normal, fixed detailShadowMap)
+ {
+ UnityLight light;
+ light.dir = poiLight.direction;
+ light.color = saturate(_LightColor0.rgb * lerp(1, poiLight.attenuation, float(0)) * detailShadowMap);
+ light.ndotl = DotClamped(normal, poiLight.direction);
+ return light;
+ }
+
+ float FadeShadows(float attenuation)
+ {
+ #if HANDLE_SHADOWS_BLENDING_IN_GI || ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ // UNITY_LIGHT_ATTENUATION doesn't fade shadows for us.
+
+ #if ADDITIONAL_MASKED_DIRECTIONAL_SHADOWS
+ attenuation = lerp(1, poiLight.attenuation, float(0));
+ #endif
+
+ float viewZ = dot(_WorldSpaceCameraPos - poiMesh.worldPos, UNITY_MATRIX_V[2].xyz);
+ float shadowFadeDistance = UnityComputeShadowFadeDistance(poiMesh.worldPos, viewZ);
+ float shadowFade = UnityComputeShadowFade(shadowFadeDistance);
+ float bakedAttenuation = UnitySampleBakedOcclusion(poiMesh.lightmapUV.xy, poiMesh.worldPos);
+ attenuation = UnityMixRealtimeAndBakedShadows(
+ attenuation, bakedAttenuation, shadowFade
+ );
+ #endif
+
+ return attenuation;
+ }
+
+ void ApplySubtractiveLighting(inout UnityIndirect indirectLight)
+ {
+ #if SUBTRACTIVE_LIGHTING
+ poiLight.attenuation = FadeShadows(lerp(1, poiLight.attenuation, float(0)));
+
+ float ndotl = saturate(dot(i.normal, _WorldSpaceLightPos0.xyz));
+ float3 shadowedLightEstimate = ndotl * (1 - poiLight.attenuation) * _LightColor0.rgb;
+ float3 subtractedLight = indirectLight.diffuse - shadowedLightEstimate;
+ subtractedLight = max(subtractedLight, unity_ShadowColor.rgb);
+ subtractedLight = lerp(subtractedLight, indirectLight.diffuse, _LightShadowData.x);
+ indirectLight.diffuse = min(subtractedLight, indirectLight.diffuse);
+ #endif
+ }
+
+ float3 weightedBlend(float3 layer1, float3 layer2, float2 weights)
+ {
+ return(weights.x * layer1 + weights.y * layer2) / (weights.x + weights.y);
+ }
+
+ UnityIndirect CreateIndirectLight(float3 normal)
+ {
+ UnityIndirect indirectLight;
+ indirectLight.diffuse = 0;
+ indirectLight.specular = 0;
+
+ #if defined(FORWARD_BASE_PASS)
+ #if defined(LIGHTMAP_ON)
+ indirectLight.diffuse = DecodeLightmap(UNITY_SAMPLE_TEX2D(unity_Lightmap, poiMesh.lightmapUV.xy));
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 lightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_LightmapInd, unity_Lightmap, poiMesh.lightmapUV.xy
+ );
+ indirectLight.diffuse = DecodeDirectionalLightmap(
+ indirectLight.diffuse, lightmapDirection, normal
+ );
+ #endif
+ ApplySubtractiveLighting(indirectLight);
+ #endif
+
+ #if defined(DYNAMICLIGHTMAP_ON)
+ float3 dynamicLightDiffuse = DecodeRealtimeLightmap(
+ UNITY_SAMPLE_TEX2D(unity_DynamicLightmap, poiMesh.lightmapUV.zw)
+ );
+
+ #if defined(DIRLIGHTMAP_COMBINED)
+ float4 dynamicLightmapDirection = UNITY_SAMPLE_TEX2D_SAMPLER(
+ unity_DynamicDirectionality, unity_DynamicLightmap,
+ poiMesh.lightmapUV.zw
+ );
+ indirectLight.diffuse += DecodeDirectionalLightmap(
+ dynamicLightDiffuse, dynamicLightmapDirection, normal
+ );
+ #else
+ indirectLight.diffuse += dynamicLightDiffuse;
+ #endif
+ #endif
+
+ #if !defined(LIGHTMAP_ON) && !defined(DYNAMICLIGHTMAP_ON)
+ #if UNITY_LIGHT_PROBE_PROXY_VOLUME
+ if (unity_ProbeVolumeParams.x == 1)
+ {
+ indirectLight.diffuse = SHEvalLinearL0L1_SampleProbeVolume(
+ float4(normal, 1), poiMesh.worldPos
+ );
+ indirectLight.diffuse = max(0, indirectLight.diffuse);
+ #if defined(UNITY_COLORSPACE_GAMMA)
+ indirectLight.diffuse = LinearToGammaSpace(indirectLight.diffuse);
+ #endif
+ }
+ else
+ {
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ }
+ #else
+ indirectLight.diffuse += max(0, ShadeSH9(float4(normal, 1)));
+ #endif
+ #endif
+
+ float3 reflectionDir = reflect(-poiCam.viewDir, normal);
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = 1 - float(0);
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+ #if UNITY_SPECCUBE_BLENDING
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ indirectLight.specular = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ indirectLight.specular = probe0;
+ }
+ #else
+ indirectLight.specular = probe0;
+ #endif
+ float occlusion = 1;
+
+ if(float(0))
+ {
+ occlusion = lerp(1, POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1));
+ }
+
+ indirectLight.diffuse *= occlusion;
+ indirectLight.diffuse = max(indirectLight.diffuse, float(0));
+ indirectLight.specular *= occlusion;
+ #endif
+
+ return indirectLight;
+ }
+
+ /*
+ * Poiyomi's cool as heck code starts here :smug:
+ */
+
+ half PoiDiffuse(half NdotV, half NdotL, half LdotH)
+ {
+ half fd90 = 0.5 + 2 * LdotH * LdotH * SmoothnessToPerceptualRoughness(.5);
+ // Two schlick fresnel term
+ half lightScatter = (1 + (fd90 - 1) * Pow5(1 - NdotL));
+ half viewScatter = (1 + (fd90 - 1) * Pow5(1 - NdotV));
+
+ return lightScatter * viewScatter;
+ }
+
+ float3 ShadeSH9Indirect()
+ {
+ return ShadeSH9(half4(0.0, -1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Direct()
+ {
+ return ShadeSH9(half4(0.0, 1.0, 0.0, 1.0));
+ }
+
+ float3 ShadeSH9Normal(float3 normalDirection)
+ {
+ return ShadeSH9(half4(normalDirection, 1.0));
+ }
+
+ half3 GetSHLength()
+ {
+ half3 x, x1;
+ x.r = length(unity_SHAr);
+ x.g = length(unity_SHAg);
+ x.b = length(unity_SHAb);
+ x1.r = length(unity_SHBr);
+ x1.g = length(unity_SHBg);
+ x1.b = length(unity_SHBb);
+ return x + x1;
+ }
+
+ float3 calculateRealisticLighting(float4 colorToLight, fixed detailShadowMap)
+ {
+ return UNITY_BRDF_PBS(1, 0, 0, float(0), poiMesh.normals[1], poiCam.viewDir, CreateLight(poiMesh.normals[1], detailShadowMap), CreateIndirectLight(poiMesh.normals[1]));
+ }
+
+ void calculateBasePassLightMaps()
+ {
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ float AOMap = 1;
+ float AOStrength = 1;
+ float3 lightColor = poiLight.color;
+ /*
+ * Generate Basic Light Maps
+ */
+
+ bool lightExists = false;
+ if (all(_LightColor0.rgb >= 0.002))
+ {
+ lightExists = true;
+ }
+ #ifndef OUTLINE
+
+ if(float(0))
+ {
+ AOMap = POI2D_SAMPLER_PAN(_LightingAOTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ AOStrength = float(1);
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ //poiLight.color = saturate(_LightColor0.rgb) + saturate(ShadeSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)));
+ if (lightExists)
+ {
+ lightColor = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+ }
+ else
+ {
+ lightColor = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ }
+
+ //lightColor = magic * magiratio + normalLight * normaRatio;
+ //lightColor = magic + normalLight;
+ #endif
+ #endif
+
+ float3 grayscale_vector = float3(.33333, .33333, .33333);
+ float3 ShadeSH9Plus = GetSHLength();
+ float3 ShadeSH9Minus = BetterSH9(float4(0, 0, 0, 1));
+
+ shadowStrength = 1;
+ #ifndef OUTLINE
+ shadowStrength = POI2D_SAMPLER_PAN(_LightingShadowMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(1);
+ #else
+ shadowStrength = float(1);
+ #endif
+
+ float bw_lightColor = dot(lightColor, grayscale_vector);
+ float bw_directLighting = (((poiLight.nDotL * 0.5 + 0.5) * bw_lightColor * lerp(1, poiLight.attenuation, float(0))) + dot(ShadeSH9Normal(poiMesh.normals[1]), grayscale_vector));
+ float bw_bottomIndirectLighting = dot(ShadeSH9Minus, grayscale_vector);
+ float bw_topIndirectLighting = dot(ShadeSH9Plus, grayscale_vector);
+ float lightDifference = ((bw_topIndirectLighting + bw_lightColor) - bw_bottomIndirectLighting);
+
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(0))
+ {
+ poiLight.lightMap = poiLight.attenuation;
+ }
+ else
+ {
+ poiLight.lightMap = smoothstep(0, lightDifference, bw_directLighting - bw_bottomIndirectLighting);
+ }
+ poiLight.lightMap *= detailShadow;
+
+ /*
+ * Decide on light colors
+ */
+
+ float3 indirectLighting = 0;
+ float3 directLighting = 0;
+
+
+
+
+ if (float(0) == 1)
+ {
+ indirectLighting = BetterSH9(float4(poiMesh.normals[0], 1));
+ }
+ else
+ {
+ indirectLighting = ShadeSH9Minus;
+ }
+
+ poiLight.directLighting = lightColor;
+ poiLight.indirectLighting = indirectLighting;
+
+
+ if(float(0) == 0)
+ {
+ float3 magic = max(BetterSH9(normalize(unity_SHAr + unity_SHAg + unity_SHAb)), 0);
+ float3 normalLight = _LightColor0.rgb + BetterSH9(float4(0, 0, 0, 1));
+
+ float magiLumi = calculateluminance(magic);
+ float normaLumi = calculateluminance(normalLight);
+ float maginormalumi = magiLumi + normaLumi;
+
+ float magiratio = magiLumi / maginormalumi;
+ float normaRatio = normaLumi / maginormalumi;
+
+ float target = calculateluminance(magic * magiratio + normalLight * normaRatio);
+ float3 properLightColor = magic + normalLight;
+ float properLuminance = calculateluminance(magic + normalLight);
+ directLighting = properLightColor * max(0.0001, (target / properLuminance));
+ }
+ else
+ {
+ directLighting = lightColor;
+ }
+
+
+ if(!float(0))
+ {
+ float directluminance = calculateluminance(directLighting);
+ float indirectluminance = calculateluminance(indirectLighting);
+ directLighting = min(directLighting, directLighting / max(0.0001, (directluminance / 1)));
+ indirectLighting = min(indirectLighting, indirectLighting / max(0.0001, (indirectluminance / 1)));
+ }
+
+ directLighting = lerp(directLighting, dot(directLighting, float3(0.299, 0.587, 0.114)), float(0));
+ indirectLighting = lerp(indirectLighting, dot(indirectLighting, float3(0.299, 0.587, 0.114)), float(0));
+
+ if(max(max(indirectLighting.x, indirectLighting.y), indirectLighting.z) <= _LightingNoIndirectThreshold && max(max(directLighting.x, directLighting.y), directLighting.z) >= 0)
+ {
+ indirectLighting = directLighting * _LightingNoIndirectMultiplier;
+ }
+
+
+ if(float(0))
+ {
+ float directluminance = clamp(directLighting.r * 0.299 + directLighting.g * 0.587 + directLighting.b * 0.114, 0, 1);
+ if(directluminance > 0)
+ {
+ indirectLighting = max(0.001, indirectLighting);
+ }
+ float indirectluminance = clamp(indirectLighting.r * 0.299 + indirectLighting.g * 0.587 + indirectLighting.b * 0.114, 0, 1);
+ float targetluminance = directluminance * float(0);
+ if(indirectluminance < targetluminance)
+ {
+ indirectLighting = indirectLighting / max(0.0001, indirectluminance / targetluminance);
+ }
+ }
+
+ /*
+ * Create Shade Maps
+ */
+
+ if (float(0))
+ {
+ switch(float(0))
+ {
+ case 0: // Ramp Texture
+ {
+ poiLight.rampedLightMap = lerp(1, UNITY_SAMPLE_TEX2D(_ToonRamp, poiLight.lightMap + float(0)), shadowStrength.r);
+
+ if (float(0))
+ {
+ poiLight.finalLighting = lerp(poiLight.rampedLightMap * directLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ else
+ {
+ poiLight.finalLighting = lerp(indirectLighting * lerp(1, AOMap, AOStrength), directLighting, poiLight.rampedLightMap);
+ }
+ }
+ break;
+ case 1: // Math Gradient
+ {
+ poiLight.rampedLightMap = saturate(1 - smoothstep(float(0) - .000001, float(0.5), 1 - poiLight.lightMap));
+ float3 shadowColor = float4(1,1,1,1);
+
+ if (float(0))
+ {
+ shadowColor = 1;
+ }
+
+ if(float(0))
+ {
+ poiLight.finalLighting = lerp((directLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ else
+ {
+ poiLight.finalLighting = lerp((indirectLighting * shadowColor * lerp(1, AOMap, AOStrength)), (directLighting), saturate(poiLight.rampedLightMap + 1 - float(1)));
+ }
+ }
+ break;
+ }
+ }
+ else
+ {
+ poiLight.rampedLightMap = 1 - smoothstep(0, .5, 1 - poiLight.lightMap);
+ poiLight.finalLighting = directLighting;
+ }
+
+ if(!float(0))
+ {
+ poiLight.finalLighting = saturate(poiLight.finalLighting);
+ }
+ //poiLight.finalLighting *= .8;
+ #endif
+ }
+
+ void applyShadowTexture(inout float4 albedo)
+ {
+
+ if (float(0) && float(0) == 1)
+ {
+ albedo.rgb = lerp(albedo.rgb, POI2D_SAMPLER_PAN(_LightingShadowTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1), (1 - poiLight.rampedLightMap) * shadowStrength);
+ }
+ }
+
+ float3 calculateNonImportantLighting(float attenuation, float attenuationDotNL, float3 albedo, float3 lightColor, half dotNL)
+ {
+ fixed detailShadow = 1;
+
+ if(float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ return lightColor * attenuationDotNL * detailShadow;
+ }
+ else
+ {
+ return lerp(lightColor * attenuation, lightColor * float(0.5) * attenuation, smoothstep(float(0), float(0.5), dotNL)) * detailShadow;
+ }
+ }
+
+
+ float3 calculateFinalLighting(inout float3 albedo, float4 finalColor)
+ {
+ float3 finalLighting = 1;
+ // Additive Lighting
+ #ifdef FORWARD_ADD_PASS
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ if(float(1) == 0)
+ {
+ finalLighting = poiLight.color * poiLight.attenuation * max(0, poiLight.nDotL) * detailShadow;
+ }
+ else
+ {
+ #if defined(POINT) || defined(SPOT)
+ finalLighting = lerp(poiLight.color * max(poiLight.additiveShadow, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * poiLight.attenuation * detailShadow;
+ #else
+ finalLighting = lerp(poiLight.color * max(poiLight.attenuation, float(0.5)), poiLight.color * float(0.5), smoothstep(float(0), float(0.5), 1 - (.5 * poiLight.nDotL + .5))) * detailShadow;
+ #endif
+ }
+ #endif
+
+ // Base and Meta Lighting
+ #if defined(FORWARD_BASE_PASS) || defined(POI_META_PASS)
+ #ifdef VERTEXLIGHT_ON
+ poiLight.vFinalLighting = 0;
+
+ for (int index = 0; index < 4; index ++)
+ {
+ poiLight.vFinalLighting += calculateNonImportantLighting(poiLight.vAttenuation[index], poiLight.vAttenuationDotNL[index], albedo, poiLight.vColor[index], poiLight.vCorrectedDotNL[index]);
+ }
+ #endif
+
+ switch(float(0))
+ {
+ case 0: // Toon Lighting
+ {
+ // HSL Shading
+
+ if (float(0))
+ {
+ float3 HSLMod = float3(float(0.5) * 2 - 1, float(0.5) * 2 - 1, float(0.5) * 2 - 1) * (1 - poiLight.rampedLightMap);
+ albedo = lerp(albedo.rgb, ModifyViaHSL(albedo.rgb, HSLMod), float(1));
+ }
+
+ // Normal Shading
+
+ if (float(0) > 0)
+ {
+ poiLight.finalLighting = max(0.001, poiLight.finalLighting);
+ float finalluminance = calculateluminance(poiLight.finalLighting);
+ finalLighting = max(poiLight.finalLighting, poiLight.finalLighting / max(0.0001, (finalluminance / float(0))));
+ }
+ else
+ {
+ finalLighting = poiLight.finalLighting;
+ }
+ }
+ break;
+ case 1: // realistic
+ {
+ fixed detailShadow = 1;
+
+ if (float(0))
+ {
+ detailShadow = lerp(1, POI2D_SAMPLER_PAN(_LightingDetailShadows, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(1)).r;
+ }
+
+ float3 realisticLighting = calculateRealisticLighting(finalColor, detailShadow).rgb;
+ finalLighting = lerp(realisticLighting, dot(realisticLighting, float3(0.299, 0.587, 0.114)), float(0));
+ }
+ break;
+ }
+ #endif
+ return finalLighting;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
new file mode 100644
index 00000000..ef7c83ce
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8795055f710015640a99ad72e742615b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
new file mode 100644
index 00000000..c23736df
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc
@@ -0,0 +1,243 @@
+#ifndef POI_MSDF
+ #define POI_MSDF
+
+ sampler2D _TextGlyphs;
+ float4 _TextGlyphs_ST;
+ float4 _TextGlyphs_TexelSize;
+ float _TextFPSUV;
+ float _TextTimeUV;
+ float _TextPositionUV;
+ float _TextPixelRange;
+
+ float _TextFPSEnabled;
+ float _TextPositionEnabled;
+ float _TextTimeEnabled;
+
+
+ float4 _TextFPSColor;
+ half _TextFPSEmissionStrength;
+ fixed4 _TextFPSPadding;
+ half2 _TextFPSOffset;
+ half2 _TextFPSScale;
+ half _TextFPSRotation;
+
+ fixed _TextPositionVertical;
+ float4 _TextPositionColor;
+ half _TextPositionEmissionStrength;
+ fixed4 _TextPositionPadding;
+ half2 _TextPositionOffset;
+ half2 _TextPositionScale;
+ half _TextPositionRotation;
+
+ float4 _TextTimeColor;
+ half _TextTimeEmissionStrength;
+ fixed4 _TextTimePadding;
+ half2 _TextTimeOffset;
+ half2 _TextTimeScale;
+ half _TextTimeRotation;
+
+ #define glyphWidth 0.0625
+
+ #define ASCII_LEFT_PARENTHESIS 40
+ #define ASCII_RIGHT_PARENTHESIS 41
+ #define ASCII_POSITIVE 43
+ #define ASCII_PERIOD 46
+ #define ASCII_NEGATIVE 45
+ #define ASCII_COMMA 44
+ #define ASCII_E 69
+ #define ASCII_F 70
+ #define ASCII_I 73
+ #define ASCII_M 77
+ #define ASCII_O 79
+ #define ASCII_P 80
+ #define ASCII_S 83
+ #define ASCII_T 54
+ #define ASCII_SEMICOLON 58
+
+ float3 globalTextEmission;
+
+ half2 getAsciiCoordinate(float index)
+ {
+ return half2((index - 1) / 16, 1 - ((floor(index / 16 - glyphWidth)) / 16));
+ }
+
+ float median(float r, float g, float b)
+ {
+ return max(min(r, g), min(max(r, g), b));
+ }
+
+ void ApplyPositionText(inout float4 albedo, float2 uv)
+ {
+ float3 cameraPos = clamp(getCameraPosition(), -999, 999);
+ float3 absCameraPos = abs(cameraPos);
+ float totalCharacters = 20;
+ float positionArray[20];
+ positionArray[0] = cameraPos.x >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[1] = floor((absCameraPos.x * .01) % 10) + 48;
+ positionArray[2] = floor((absCameraPos.x * .1) % 10) + 48;
+ positionArray[3] = floor(absCameraPos.x % 10) + 48;
+ positionArray[4] = ASCII_PERIOD;
+ positionArray[5] = floor((absCameraPos.x * 10) % 10) + 48;
+ positionArray[6] = ASCII_COMMA;
+ positionArray[7] = cameraPos.y >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[8] = floor((absCameraPos.y * .01) % 10) + 48;
+ positionArray[9] = floor((absCameraPos.y * .1) % 10) + 48;
+ positionArray[10] = floor(absCameraPos.y % 10) + 48;
+ positionArray[11] = ASCII_PERIOD;
+ positionArray[12] = floor((absCameraPos.y * 10) % 10) + 48;
+ positionArray[13] = ASCII_COMMA;
+ positionArray[14] = cameraPos.z >= 0 ? ASCII_NEGATIVE: ASCII_POSITIVE;
+ positionArray[15] = floor((absCameraPos.z * .01) % 10) + 48;
+ positionArray[16] = floor((absCameraPos.z * .1) % 10) + 48;
+ positionArray[17] = floor(absCameraPos.z % 10) + 48;
+ positionArray[18] = ASCII_PERIOD;
+ positionArray[19] = floor((absCameraPos.z * 10) % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if (uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(positionArray[currentCharacter]);
+
+ float2 startUV = float2(1 / totalCharacters * currentCharacter, 0);
+ float2 endUV = float2(1 / totalCharacters * (currentCharacter + 1), 1);
+
+ fixed4 textPositionPadding = float4(0,0,0,0);
+ textPositionPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, startUV, endUV, float2(glyphPos.x + textPositionPadding.x, glyphPos.y - glyphWidth + textPositionPadding.y), float2(glyphPos.x + glyphWidth - textPositionPadding.z, glyphPos.y - textPositionPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textPositionPadding.z - .001 || uv.x < glyphPos.x + textPositionPadding.x + .001 || uv.y > glyphPos.y - textPositionPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textPositionPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTimeText(inout float4 albedo, float2 uv)
+ {
+ float instanceTime = _Time.y;
+ float hours = instanceTime / 3600;
+ float minutes = (instanceTime / 60) % 60;
+ float seconds = instanceTime % 60;
+ float totalCharacters = 8;
+ float timeArray[8];
+ timeArray[0] = floor((hours * .1) % 10) + 48;
+ timeArray[1] = floor(hours % 10) + 48;
+ timeArray[2] = ASCII_SEMICOLON;
+ timeArray[3] = floor((minutes * .1) % 10) + 48;
+ timeArray[4] = floor(minutes % 10) + 48;
+ timeArray[5] = ASCII_SEMICOLON;
+ timeArray[6] = floor((seconds * .1) % 10) + 48;
+ timeArray[7] = floor(seconds % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(timeArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+ fixed4 textTimePadding = float4(0,0,0,0);
+ textTimePadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textTimePadding.x, glyphPos.y - glyphWidth + textTimePadding.y), float2(glyphPos.x + glyphWidth - textTimePadding.z, glyphPos.y - textTimePadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textTimePadding.z - .001 || uv.x < glyphPos.x + textTimePadding.x + .001 || uv.y > glyphPos.y - textTimePadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textTimePadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,0,1,1).rgb, opacity * float4(1,0,1,1).a);
+ globalTextEmission += float4(1,0,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyFPSText(inout float4 albedo, float2 uv)
+ {
+ float smoothDeltaTime = clamp(unity_DeltaTime.w, 0, 999);
+ float totalCharacters = 7;
+ float fpsArray[7];
+ fpsArray[0] = ASCII_F;
+ fpsArray[1] = ASCII_P;
+ fpsArray[2] = ASCII_S;
+ fpsArray[3] = ASCII_SEMICOLON;
+ fpsArray[4] = floor((smoothDeltaTime * .01) % 10) + 48;
+ fpsArray[5] = floor((smoothDeltaTime * .1) % 10) + 48;
+ fpsArray[6] = floor(smoothDeltaTime % 10) + 48;
+
+ uv = TransformUV(float4(0,0,0,0), float(0), float4(1,1,1,1), uv);
+
+ if(uv.x > 1 || uv.x < 0 || uv.y > 1 || uv.y < 0)
+ {
+ return;
+ }
+
+ float currentCharacter = floor(uv.x * totalCharacters);
+ half2 glyphPos = getAsciiCoordinate(fpsArray[currentCharacter]);
+ // 0.1428571 = 1/7 = 1 / totalCharacters
+ float startUV = 1 / totalCharacters * currentCharacter;
+ float endUV = 1 / totalCharacters * (currentCharacter + 1);
+
+ fixed4 textFPSPadding = float4(0,0,0,0);
+ textFPSPadding *= 1 / totalCharacters;
+ uv = remapClamped(uv, float2(startUV, 0), float2(endUV, 1), float2(glyphPos.x + textFPSPadding.x, glyphPos.y - glyphWidth + textFPSPadding.y), float2(glyphPos.x + glyphWidth - textFPSPadding.z, glyphPos.y - textFPSPadding.w));
+
+ if (uv.x > glyphPos.x + glyphWidth - textFPSPadding.z - .001 || uv.x < glyphPos.x + textFPSPadding.x + .001 || uv.y > glyphPos.y - textFPSPadding.w - .001 || uv.y < glyphPos.y - glyphWidth + textFPSPadding.y + .001)
+ {
+ return;
+ }
+
+ float3 samp = tex2D(_TextGlyphs, TRANSFORM_TEX(uv, _TextGlyphs)).rgb;
+ float2 msdfUnit = float(4) / float4(1,1,1,1).zw;
+ float sigDist = median(samp.r, samp.g, samp.b) - 0.5;
+ sigDist *= max(dot(msdfUnit, 0.5 / fwidth(uv)), 1);
+ float opacity = clamp(sigDist + 0.5, 0, 1);
+ albedo.rgb = lerp(albedo.rgb, float4(1,1,1,1).rgb, opacity * float4(1,1,1,1).a);
+ globalTextEmission += float4(1,1,1,1).rgb * opacity * float(0);
+ }
+
+ void ApplyTextOverlayColor(inout float4 albedo, inout float3 textOverlayEmission)
+ {
+ globalTextEmission = 0;
+ half positionalOpacity = 0;
+ #ifdef EFFECT_BUMP
+
+ if(float(0))
+ {
+ ApplyFPSText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyPositionText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ if(float(0))
+ {
+ ApplyTimeText(albedo, poiMesh.uv[float(0)]);
+ }
+
+ textOverlayEmission = globalTextEmission;
+ #endif
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
new file mode 100644
index 00000000..fad48dac
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMSDF.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a6e3e49c7b905d34e9bbf43b0a2e7986
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
new file mode 100644
index 00000000..ecac0805
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc
@@ -0,0 +1,33 @@
+#ifndef POI_MACROS
+ #define POI_MACROS
+
+ #define POI_TEXTURE_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_TEXTURE(tex) UNITY_DECLARE_TEX2D(tex##); float4 tex##_ST; float2 tex##Pan; uint tex##UV
+ #define POI_NORMAL_NOSAMPLER(tex) Texture2D tex; float4 tex##_ST; float2 tex##Pan; uint tex##UV; float tex##Scale
+
+ #define POI2D_SAMPLER_PAN(tex, texSampler, uv, pan) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D_SAMPLER(tex, texSampler, uv) (UNITY_SAMPLE_TEX2D_SAMPLER(tex, texSampler, TRANSFORM_TEX(uv, tex)))
+ #define POI2D_PAN(tex, uv, pan) (tex2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+ #define POI2D(tex, uv) (tex2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D(tex, uv) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex)))
+ #define POI_SAMPLE_TEX2D_PAN(tex, uv, pan) (UNITY_SAMPLE_TEX2D(tex, TRANSFORM_TEX(uv, tex) + _Time.x * pan))
+
+ #ifdef POINT
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ unityShadowCoord3 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1)).xyz; \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = tex2D(_LightTexture0, dot(lightCoord, lightCoord).rr).r;
+ #endif
+
+ #ifdef SPOT
+ #if !defined(UNITY_HALF_PRECISION_FRAGMENT_SHADER_REGISTERS)
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = mul(unity_WorldToLight, unityShadowCoord4(worldPos, 1))
+ #else
+ #define DECLARE_LIGHT_COORD(input, worldPos) unityShadowCoord4 lightCoord = input._LightCoord
+ #endif
+ # define POI_LIGHT_ATTENUATION(destName, shadow, input, worldPos) \
+ DECLARE_LIGHT_COORD(input, worldPos); \
+ fixed shadow = UNITY_SHADOW_ATTENUATION(input, worldPos); \
+ fixed destName = (lightCoord.z > 0) * UnitySpotCookie(lightCoord) * UnitySpotAttenuate(lightCoord.xyz);
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
new file mode 100644
index 00000000..e4289c57
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMacros.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 319da7d250e28ad42aa04a6c51b9368a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
new file mode 100644
index 00000000..270384af
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc
@@ -0,0 +1,147 @@
+#ifndef POI_MAINTEXTURE
+ #define POI_MAINTEXTURE
+
+
+
+ POI_TEXTURE_NOSAMPLER(_AlphaMask);
+ POI_TEXTURE_NOSAMPLER(_MainFadeTexture);
+ float4 _Color;
+ float _MainVertexColoring;
+ float _MainUseVertexColorAlpha;
+ float _Saturation;
+ float2 _MainDistanceFade;
+ half _MainMinAlpha;
+ float _MainHueShift;
+ #ifdef COLOR_GRADING_HDR
+ POI_TEXTURE_NOSAMPLER(_MainHueShiftMask);
+ float _MainHueShiftToggle;
+ float _MainHueShiftSpeed;
+ float _MainHueShiftReplace;
+ #endif
+
+ #ifdef FINALPASS
+ POI_TEXTURE_NOSAMPLER(_DetailTex);
+ half _DetailTexIntensity;
+ half3 _DetailTint;
+ float _DetailBrightness;
+ #endif
+ //globals
+ float alphaMask;
+ half3 diffColor;
+
+ #include "CGI_PoiBackFace.cginc"
+
+ float3 wireframeEmission;
+
+ inline FragmentCommonData SpecularSetup(float4 i_tex, inout float4 albedo)
+ {
+ half4 specGloss = 0;
+ half3 specColor = specGloss.rgb;
+ half smoothness = specGloss.a;
+
+ half oneMinusReflectivity;
+ diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specColor, /*out*/ oneMinusReflectivity);
+
+ FragmentCommonData o = (FragmentCommonData)0;
+ o.diffColor = diffColor;
+ o.specColor = specColor;
+ o.oneMinusReflectivity = oneMinusReflectivity;
+ o.smoothness = smoothness;
+ return o;
+ }
+
+ inline FragmentCommonData FragmentSetup(float4 i_tex, half3 i_viewDirForParallax, float3 i_posWorld, inout float4 albedo)
+ {
+ i_tex = i_tex;
+
+ FragmentCommonData o = SpecularSetup(i_tex, albedo);
+ o.normalWorld = float4(0, 0, 0, 1);
+ o.eyeVec = poiCam.viewDir;
+ o.posWorld = i_posWorld;
+
+ // NOTE: shader relies on pre-multiply alpha-blend (float(1) = One, float(0) = OneMinusSrcAlpha)
+ o.diffColor = PreMultiplyAlpha(o.diffColor, 1, o.oneMinusReflectivity, /*out*/ o.alpha);
+ return o;
+ }
+
+ void initTextureData(inout float4 albedo, inout float4 mainTexture, inout float3 backFaceEmission, inout float3 dissolveEmission, in half3 detailMask)
+ {
+ dissolveEmission = 0;
+
+ #if (defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ #endif
+
+ alphaMask = POI2D_SAMPLER_PAN(_AlphaMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ mainTexture.a *= alphaMask;
+
+ #ifndef POI_SHADOW
+ albedo = float4(lerp(mainTexture.rgb, dot(mainTexture.rgb, float3(0.3, 0.59, 0.11)), -float(0)) * max(float4(1,1,1,1).rgb, float3(0.000000001, 0.000000001, 0.000000001)) * lerp(1, GammaToLinearSpace(poiMesh.vertexColor.rgb), float(0)), mainTexture.a * max(float4(1,1,1,1).a, 0.0000001));
+
+ #ifdef POI_LIGHTING
+ applyShadowTexture(albedo);
+ #endif
+
+ albedo *= lerp(1, poiMesh.vertexColor.a, float(0));
+ #ifdef POI_RGBMASK
+ albedo.rgb = calculateRGBMask(albedo.rgb);
+ #endif
+
+ albedo.a = saturate(float(0) + albedo.a);
+
+ wireframeEmission = 0;
+ #ifdef POI_WIREFRAME
+ applyWireframe(wireframeEmission, albedo);
+ #endif
+ float backFaceDetailIntensity = 1;
+
+ float mixedHueShift = float(0);
+ applyBackFaceTexture(backFaceDetailIntensity, mixedHueShift, albedo, backFaceEmission);
+
+ #ifdef POI_FUR
+ calculateFur();
+ #endif
+
+ #ifdef COLOR_GRADING_HDR
+ float hueShiftAlpha = POI2D_SAMPLER_PAN(_MainHueShiftMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+
+ if(float(1))
+ {
+ albedo.rgb = lerp(albedo.rgb, hueShift(albedo.rgb, mixedHueShift + float(0) * _Time.x), hueShiftAlpha);
+ }
+ else
+ {
+ albedo.rgb = hueShift(albedo.rgb, frac((mixedHueShift - (1 - hueShiftAlpha) + float(0) * _Time.x)));
+ }
+ #endif
+ #ifdef FINALPASS
+ half3 detailTexture = POI2D_SAMPLER_PAN(_DetailTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb * float4(1,1,1,1).rgb;
+ albedo.rgb *= LerpWhiteTo(detailTexture * float(1) * unity_ColorSpaceDouble.rgb, detailMask.r * float(1) * backFaceDetailIntensity);
+ #endif
+ albedo.rgb = saturate(albedo.rgb);
+
+ #ifdef POI_HOLOGRAM
+ ApplyHoloAlpha(albedo);
+ #endif
+
+ s = FragmentSetup(float4(poiMesh.uv[0], 1, 1), poiCam.viewDir, poiMesh.worldPos, albedo);
+ #endif
+
+ #ifdef DISTORT
+ calculateDissolve(albedo, dissolveEmission);
+ #endif
+ }
+
+ void distanceFade(inout float4 albedo)
+ {
+ half fadeMap = POI2D_SAMPLER_PAN(_MainFadeTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(fadeMap)
+ {
+ half fadeValue = max(smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, poiCam.distanceToVert), float(0));
+ albedo.a *= fadeValue;
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
new file mode 100644
index 00000000..a7fb829c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMainTex.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: cf7551b93141620488b6fd21a1b56850
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
new file mode 100644
index 00000000..3aa6d6b0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc
@@ -0,0 +1,115 @@
+#ifndef MATCAP
+ #define MATCAP
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap); float4 _Matcap_ST;
+ POI_TEXTURE_NOSAMPLER(_MatcapMask);
+ float _MatcapMaskInvert;
+ float _MatcapBorder;
+ float4 _MatcapColor;
+ float _MatcapIntensity;
+ float _MatcapReplace;
+ float _MatcapMultiply;
+ float _MatcapAdd;
+ float _MatcapEnable;
+ float _MatcapLightMask;
+ float _MatcapEmissionStrength;
+ float _MatcapNormal;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_Matcap2);float4 _Matcap2_ST;
+ POI_TEXTURE_NOSAMPLER(_Matcap2Mask);
+ float _Matcap2MaskInvert;
+ float _Matcap2Border;
+ float4 _Matcap2Color;
+ float _Matcap2Intensity;
+ float _Matcap2Replace;
+ float _Matcap2Multiply;
+ float _Matcap2Add;
+ float _Matcap2Enable;
+ float _Matcap2LightMask;
+ float _Matcap2EmissionStrength;
+ float _Matcap2Normal;
+
+ void blendMatcap(inout float4 finalColor, float add, float multiply, float replace, float4 matcapColor, float matcapMask, inout float3 matcapEmission, float emissionStrength
+ #ifdef POI_LIGHTING
+ , float matcapLightMask
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , uint blackLightMaskIndex
+ #endif
+ )
+ {
+ #ifdef POI_LIGHTING
+ if (matcapLightMask)
+ {
+ matcapMask *= lerp(1, poiLight.rampedLightMap, matcapLightMask);
+ }
+ #endif
+ #ifdef POI_BLACKLIGHT
+ if(blackLightMaskIndex != 4)
+ {
+ matcapMask *= blackLightMask[blackLightMaskIndex];
+ }
+ #endif
+
+ finalColor.rgb = lerp(finalColor.rgb, matcapColor.rgb, replace * matcapMask * matcapColor.a);
+ finalColor.rgb *= lerp(1, matcapColor.rgb, multiply * matcapMask * matcapColor.a);
+ finalColor.rgb += matcapColor.rgb * add * matcapMask * matcapColor.a;
+ matcapEmission += matcapColor.rgb * emissionStrength * matcapMask * matcapColor.a;
+ }
+
+ void applyMatcap(inout float4 finalColor, inout float3 matcapEmission)
+ {
+ float4 matcap = 0;
+ float matcapMask = 0;
+ float4 matcap2 = 0;
+ float matcap2Mask = 0;
+
+ // Both matcaps use the same coordinates
+ half3 worldViewUp = normalize(half3(0, 1, 0) - poiCam.viewDir * dot(poiCam.viewDir, half3(0, 1, 0)));
+ half3 worldViewRight = normalize(cross(poiCam.viewDir, worldViewUp));
+
+ // Matcap 1
+ half2 matcapUV = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+
+ matcap = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap, _MainTex, TRANSFORM_TEX(matcapUV, _Matcap)) * float4(1,1,1,1);
+ matcap.rgb *= float(1);
+ matcapMask = POI2D_SAMPLER_PAN(_MatcapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ if (float(0))
+ {
+ matcapMask = 1 - matcapMask;
+ }
+
+ blendMatcap(finalColor, float(0), float(0), float(1), matcap, matcapMask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap
+ #endif
+ );
+
+ // Matcap 2
+
+ if (float(0))
+ {
+ half2 matcapUV2 = half2(dot(worldViewRight, poiMesh.normals[float(1)]), dot(worldViewUp, poiMesh.normals[float(1)])) * float(0.43) + 0.5;
+ matcap2 = UNITY_SAMPLE_TEX2D_SAMPLER(_Matcap2, _MainTex, TRANSFORM_TEX(matcapUV2, _Matcap2)) * float4(1,1,1,1);
+ matcap2.rgb *= float(1);
+ matcap2Mask = POI2D_SAMPLER_PAN(_Matcap2Mask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ if(float(0))
+ {
+ matcap2Mask = 1 - matcap2Mask;
+ }
+ blendMatcap(finalColor, float(0), float(0), float(0), matcap2, matcap2Mask, matcapEmission, float(0)
+ #ifdef POI_LIGHTING
+ , float(0)
+ #endif
+ #ifdef POI_BLACKLIGHT
+ , _BlackLightMaskMatcap2
+ #endif
+ );
+ }
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
new file mode 100644
index 00000000..7b34e7bd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMatcap.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 851d415691962284fbff0c97efea4b82
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
new file mode 100644
index 00000000..b2d07a38
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc
@@ -0,0 +1,104 @@
+/*
+MIT License
+
+Copyright (c) 2019 wraikny
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+VertexTransformShader is dependent on:
+*/
+
+#ifndef POI_MATH
+ #define POI_MATH
+
+ #ifndef pi
+ #define pi float(3.14159265359)
+ #endif
+
+ float4 quaternion_conjugate(float4 v)
+ {
+ return float4(
+ v.x, -v.yzw
+ );
+ }
+
+ float4 quaternion_mul(float4 v1, float4 v2)
+ {
+ float4 result1 = (v1.x * v2 + v1 * v2.x);
+
+ float4 result2 = float4(
+ - dot(v1.yzw, v2.yzw),
+ cross(v1.yzw, v2.yzw)
+ );
+
+ return float4(result1 + result2);
+ }
+
+ // angle : radians
+ float4 get_quaternion_from_angle(float3 axis, float angle)
+ {
+ return float4(
+ cos(angle / 2.0),
+ normalize(axis) * sin(angle / 2.0)
+ );
+ }
+
+ float4 quaternion_from_vector(float3 inVec)
+ {
+ return float4(0.0, inVec);
+ }
+
+ float degree_to_radius(float degree)
+ {
+ return(
+ degree / 180.0 * pi
+ );
+ }
+
+ float3 rotate_with_quaternion(float3 inVec, float3 rotation)
+ {
+ float4 qx = get_quaternion_from_angle(float3(1, 0, 0), degree_to_radius(rotation.x));
+ float4 qy = get_quaternion_from_angle(float3(0, 1, 0), degree_to_radius(rotation.y));
+ float4 qz = get_quaternion_from_angle(float3(0, 0, 1), degree_to_radius(rotation.z));
+
+ #define MUL3(A, B, C) quaternion_mul(quaternion_mul((A), (B)), (C))
+ float4 quaternion = normalize(MUL3(qx, qy, qz));
+ float4 conjugate = quaternion_conjugate(quaternion);
+
+ float4 inVecQ = quaternion_from_vector(inVec);
+
+ float3 rotated = (
+ MUL3(quaternion, inVecQ, conjugate)
+ ).yzw;
+
+ return rotated;
+ }
+
+ float4 transform(float4 input, float4 pos, float4 rotation, float4 scale)
+ {
+ input.rgb *= (scale.xyz * scale.w);
+ input = float4(
+ rotate_with_quaternion(input.xyz, rotation.xyz * rotation.w)
+ + (pos.xyz * pos.w),
+ input.w
+ );
+ return input;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
new file mode 100644
index 00000000..024b1583
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMath.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a401ce618587e7843bd86838d1fb295f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
new file mode 100644
index 00000000..916f65eb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc
@@ -0,0 +1,130 @@
+#ifndef POI_METAL
+ #define POI_METAL
+
+ samplerCUBE _CubeMap;
+ float _SampleWorld;
+ POI_TEXTURE_NOSAMPLER(_MetallicMask);
+ POI_TEXTURE_NOSAMPLER(_SmoothnessMask);
+ float _Metallic;
+ float _InvertSmoothness;
+ float _Smoothness;
+ float _EnableMetallic;
+ float3 _MetalReflectionTint;
+ POI_TEXTURE_NOSAMPLER(_MetallicTintMap);
+
+ float3 finalreflections;
+ float metalicMap;
+ float3 reflection;
+ float roughness;
+ float lighty_boy_uwu_var;
+
+ bool shouldMetalHappenBeforeLighting()
+ {
+ float4 envSample = UNITY_SAMPLE_TEXCUBE_LOD(unity_SpecCube0, poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS);
+ bool probeExists = !(unity_SpecCube0_HDR.a == 0 && envSample.a == 0);
+ return probeExists && !float(0);
+ }
+
+ float3 fresnelRelflection(in float4 albedo)
+ {
+ half3 dotNV = 1 - abs(poiLight.nDotV);
+ half f = dotNV * dotNV * dotNV * dotNV;
+ //f *= i_sold.fresnel;
+ return lerp(lerp(DielectricSpec.rgb, albedo.rgb, metalicMap), saturate(1 - roughness + metalicMap), f);
+ }
+
+ void calculateMetallicness()
+ {
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ }
+
+ void ApplyMetallics(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+
+ Unity_GlossyEnvironmentData envData;
+ envData.roughness = roughness;
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube0_ProbePosition,
+ unity_SpecCube0_BoxMin, unity_SpecCube0_BoxMax
+ );
+ float3 probe0 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE(unity_SpecCube0), unity_SpecCube0_HDR, envData
+ );
+ envData.reflUVW = BoxProjection(
+ poiCam.reflectionDir, poiMesh.worldPos.xyz,
+ unity_SpecCube1_ProbePosition,
+ unity_SpecCube1_BoxMin, unity_SpecCube1_BoxMax
+ );
+
+ float interpolator = unity_SpecCube0_BoxMin.w;
+
+ if(interpolator < 0.99999)
+ {
+ float3 probe1 = Unity_GlossyEnvironment(
+ UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0),
+ unity_SpecCube0_HDR, envData
+ );
+ reflection = lerp(probe1, probe0, interpolator);
+ }
+ else
+ {
+ reflection = probe0;
+ }
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+
+ void ApplyMetallicsFake(inout float4 finalColor, in float4 albedo)
+ {
+ #ifdef FORWARD_BASE_PASS
+ metalicMap = POI2D_SAMPLER_PAN(_MetallicMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float(0);
+ float smoothnessMap = (POI2D_SAMPLER_PAN(_SmoothnessMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)));
+
+ #ifdef POI_BLACKLIGHT
+ if(_BlackLightMaskMetallic != 4)
+ {
+ metalicMap *= blackLightMask[_BlackLightMaskMetallic];
+ smoothnessMap *= blackLightMask[_BlackLightMaskMetallic];
+ }
+ #endif
+
+ if(float(0) == 1)
+ {
+ smoothnessMap = 1 - smoothnessMap;
+ }
+ smoothnessMap *= float(0);
+ roughness = 1 - smoothnessMap;
+
+ reflection = texCUBElod(_CubeMap, float4(poiCam.reflectionDir, roughness * UNITY_SPECCUBE_LOD_STEPS));
+
+ float reflecty_lighty_boy_uwu_var_2 = 1.0 / (roughness * roughness + 1.0);
+ half4 tintMap = POI2D_SAMPLER_PAN(_MetallicTintMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ finalColor.rgb *= (1 - metalicMap * tintMap.a);
+ finalColor.rgb += reflecty_lighty_boy_uwu_var_2 * reflection.rgb * fresnelRelflection(albedo) * float4(1,1,1,1) * tintMap.rgb * tintMap.a;
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
new file mode 100644
index 00000000..7a4a75f0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMetal.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: dd4df87c8ce7fb145854983376761071
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
new file mode 100644
index 00000000..8bb16398
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc
@@ -0,0 +1,77 @@
+#ifndef POI_MIRROR
+ #define POI_MIRROR
+
+ float _Mirror;
+ float _EnableMirrorTexture;
+ POI_TEXTURE_NOSAMPLER(_MirrorTexture);
+
+
+ void applyMirrorRenderVert(inout float4 vertex)
+ {
+
+ if (float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ vertex = -1;
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ void applyMirrorRenderFrag()
+ {
+
+ if(float(0) != 0)
+ {
+ bool inMirror = IsInMirror();
+ if(float(0) == 1 && inMirror)
+ {
+ return;
+ }
+ if(float(0) == 1 && !inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && inMirror)
+ {
+ clip(-1);
+ return;
+ }
+ if(float(0) == 2 && !inMirror)
+ {
+ return;
+ }
+ }
+ }
+
+ #if(defined(FORWARD_BASE_PASS) || defined(FORWARD_ADD_PASS))
+ void applyMirrorTexture(inout float4 mainTexture)
+ {
+
+ if(float(0))
+ {
+ if(IsInMirror())
+ {
+ mainTexture = POI2D_SAMPLER_PAN(_MirrorTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ }
+ }
+ }
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
new file mode 100644
index 00000000..4d318739
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiMirror.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e59554e8553b7ef4eae8b00a0fe515e9
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
new file mode 100644
index 00000000..62e63c91
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc
@@ -0,0 +1,107 @@
+float _OutlineRimLightBlend;
+float _OutlineLit;
+float _OutlineTintMix;
+float2 _MainTexPan;
+float _MainTextureUV;
+
+float4 frag(v2f i, uint facing: SV_IsFrontFace): COLOR
+{
+ float4 finalColor = 1;
+
+ if (float(0))
+ {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ float3 finalEmission = 0;
+ float4 albedo = 1;
+
+ poiMesh.uv[0] = i.uv0.xy;
+ poiMesh.uv[1] = i.uv0.zw;
+ poiMesh.uv[2] = i.uv1.xy;
+ poiMesh.uv[3] = i.uv1.zw;
+
+ calculateAttenuation(i);
+ InitializeMeshData(i, facing);
+ initializeCamera(i);
+ calculateTangentData();
+
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+ half3 detailMask = 1;
+ calculateNormals(detailMask);
+
+ #ifdef POI_DATA
+ calculateLightingData(i);
+ #endif
+ #ifdef POI_LIGHTING
+ calculateBasePassLightMaps();
+ #endif
+
+ float3 uselessData0;
+ float3 uselessData1;
+ initTextureData(albedo, mainTexture, uselessData0, uselessData1, detailMask);
+
+
+ fixed4 col = mainTexture;
+ float alphaMultiplier = smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(getCameraPosition(), i.worldPos));
+ float OutlineMask = tex2D(_OutlineMask, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0)).r;
+ clip(OutlineMask * float(0) - 0.001);
+
+ col = col * 0.00000000001 + tex2D(_OutlineTexture, TRANSFORM_TEX(poiMesh.uv[float(0)], _OutlineTexture) + _Time.x * float4(0,0,0,0) );
+ col.a *= albedo.a;
+ col.a *= alphaMultiplier;
+
+ #ifdef POI_RANDOM
+ col.a *= i.angleAlpha;
+ #endif
+
+ poiCam.screenUV = calcScreenUVs(i.grabPos);
+ col.a *= float4(1,1,1,1).a;
+
+
+ if(float(0) == 1)
+ {
+ applyDithering(col);
+ }
+
+ clip(col.a - float(0.5));
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+
+ if(float(0) == 1)
+ {
+ #ifdef POI_MIRROR
+ applyMirrorTexture(mainTexture);
+ #endif
+ col.rgb = mainTexture.rgb;
+ }
+ else if(float(0) == 2)
+ {
+ col.rgb = lerp(col.rgb, poiLight.color, float(0));
+ }
+ col.rgb *= float4(1,1,1,1).rgb;
+
+ if(float(0) == 1)
+ {
+ col.rgb = lerp(col.rgb, mainTexture.rgb, float(0));
+ }
+
+ finalColor = col;
+
+ #ifdef POI_LIGHTING
+
+ if(float(1))
+ {
+ finalColor.rgb *= calculateFinalLighting(finalColor.rgb, finalColor);
+ }
+ #endif
+ finalColor.rgb += (col.rgb * float(0));
+ }
+ else
+ {
+ clip(-1);
+ }
+ return finalColor;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
new file mode 100644
index 00000000..da3a4ec7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9c90edf246d46254bb23e11b7c1c8b3b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
new file mode 100644
index 00000000..900e9e43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc
@@ -0,0 +1,105 @@
+#ifndef OutlineVert
+ #define OutlineVert
+
+ #include "CGI_PoiV2F.cginc"
+
+ float _OutlineMode;
+ float4 _OutlinePersonaDirection;
+ float4 _OutlineDropShadowOffset;
+ float _OutlineUseVertexColors;
+ float _OutlineFixedSize;
+ float _commentIfZero_EnableOutlinePass;
+
+ sampler2D _OutlineMask; float4 _OutlineMask_ST; float2 _OutlineMaskPan; float _OutlineMaskUV;
+ v2f vert(appdata v)
+ {
+
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+
+ float2 uvArray[4];
+ uvArray[0] = o.uv0.xy;
+ uvArray[1] = o.uv0.zw;
+ uvArray[2] = o.uv1.xy;
+ uvArray[3] = o.uv1.zw;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ o.uv0.xy = v.uv0 + _OutlineGlobalPan.xy * _Time.y;
+ float outlineMask = 1;
+
+ outlineMask = poiMax(tex2Dlod(_OutlineMask, float4(TRANSFORM_TEX(uvArray[float(0)], _OutlineMask) + _Time.x * float4(0,0,0,0), 0, 0)).rgb);
+
+ if (float(0) == 2)
+ {
+ outlineMask *= v.color.r;
+ }
+
+
+ if(float(0) != 1)
+ {
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ }
+ else
+ {
+ o.normal = UnityObjectToWorldNormal(v.color);
+ }
+
+
+ half offsetMultiplier = 1;
+ half distanceOffset = 1;
+
+ if(float(0))
+ {
+ distanceOffset *= distance(_WorldSpaceCameraPos, mul(unity_ObjectToWorld, v.vertex).xyz);
+ }
+
+ float3 offset = o.normal * (float(0) * float(0) / 100) * outlineMask * distanceOffset;
+
+
+ if(float(0) == 2)
+ {
+ float3 lightDirection = poiLight.direction = normalize(_WorldSpaceLightPos0 + unity_SHAr.xyz + unity_SHAg.xyz + unity_SHAb.xyz);
+ offsetMultiplier = saturate(dot(lightDirection, o.normal));
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 3)
+ {
+ half3 viewNormal = mul((float3x3)UNITY_MATRIX_V, o.normal);
+ offsetMultiplier = saturate(dot(viewNormal.xy, normalize(float4(1,0,0,0).xy)));
+
+ offset *= offsetMultiplier;
+ offset *= distanceOffset;
+ }
+ else if(float(0) == 4)
+ {
+ offset = mul((float3x3)transpose(UNITY_MATRIX_V), float4(1,0,0,0));
+ offset *= distanceOffset;
+ }
+
+ o.worldPos = mul(unity_ObjectToWorld, v.vertex) + float4(offset, 0);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.pos = UnityWorldToClipPos(o.worldPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0);
+ UNITY_TRANSFER_FOG(o, o.pos);
+ return o;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
new file mode 100644
index 00000000..fbb65281
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiOutlineVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: b21d197b6ae07a64bab93b08289bf02a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
new file mode 100644
index 00000000..da64a89d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc
@@ -0,0 +1,63 @@
+#ifndef PANOSPHERE
+ #define PANOSPHERE
+
+ sampler2D _PanosphereTexture; float4 _PanosphereTexture_ST;
+ POI_TEXTURE_NOSAMPLER(_PanoMask);
+ float _PanoEmission;
+ float _PanoBlend;
+ float4 _PanosphereColor;
+ float3 _PanospherePan;
+ float _PanoToggle;
+ float _PanoCubeMapToggle;
+ float _PanoInfiniteStereoToggle;
+ samplerCUBE _PanoCubeMap; half4 _PanoCubeMap_HDR;
+
+ float3 panoColor;
+ float panoMask;
+
+ float2 projectIt(float3 coords)
+ {
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude + _Time.y * float4(0,0,0,0).x, latitude + _Time.y * float4(0,0,0,0).y) * float2(1.0 / UNITY_PI, 1.0 / UNITY_PI);
+ sphereCoords = float2(1.0, 1.0) - sphereCoords;
+ return(sphereCoords + float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).xy) * float4(0, 1 - unity_StereoEyeIndex, 1, 1.0).zw;
+ }
+
+ void applyPanosphereColor(inout float4 albedo, inout float3 panosphereEmission)
+ {
+ panoMask = POI2D_SAMPLER_PAN(_PanoMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ #ifdef POI_BLACKLIGHT
+ if (_BlackLightMaskPanosphere != 4)
+ {
+ panoMask *= blackLightMask[_BlackLightMaskPanosphere];
+ }
+ #endif
+
+
+ if(float(0))
+ {
+ float3 cubeUV = mul(poiRotationMatrixFromAngles(float4(0,0,0,0).xyz * _Time.y), float4(-poiCam.viewDir, 1));
+ half4 cubemap = texCUBE(_PanoCubeMap, cubeUV);
+ panoColor = DecodeHDR(cubemap, _PanoCubeMap_HDR);
+ }
+ else
+ {
+ float2 uv = projectIt(normalize(lerp(getCameraPosition().xyz, poiCam.worldPos.xyz, float(0)) - poiMesh.worldPos.xyz) * - 1);
+
+ float2 ddxuv = ddx(uv);
+ float2 ddyuv = ddy(uv);
+ if(any(fwidth(uv) > .5))
+ {
+ ddxuv = ddyuv = 0.001;
+ }
+ panoColor = tex2D(_PanosphereTexture, TRANSFORM_TEX(uv, _PanosphereTexture), ddxuv, ddyuv).rgb * float4(1,1,1,1).rgb;
+ }
+ panosphereEmission = panoColor * float(0) * panoMask * float(0);
+ albedo.rgb = lerp(albedo.rgb, panoColor, float(0) * panoMask);
+ }
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
new file mode 100644
index 00000000..b88d5ad8
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPanosphere.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 070a5cc55245b8046a38346fe34773b2
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
new file mode 100644
index 00000000..6cd94900
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc
@@ -0,0 +1,143 @@
+#ifndef POI_PARALLAX
+ #define POI_PARALLAX
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxHeightMap); float4 _ParallaxHeightMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxHeightMapMask);
+ float2 _ParallaxHeightMapPan;
+ float _ParallaxStrength;
+ float _ParallaxHeightMapEnabled;
+ float _ParallaxUV;
+
+ //Internal
+ float _ParallaxInternalMapEnabled;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_ParallaxInternalMap); float4 _ParallaxInternalMap_ST;
+ POI_TEXTURE_NOSAMPLER(_ParallaxInternalMapMask);
+ float _ParallaxInternalIterations;
+ float _ParallaxInternalMinDepth;
+ float _ParallaxInternalMaxDepth;
+ float _ParallaxInternalMinFade;
+ float _ParallaxInternalMaxFade;
+ float4 _ParallaxInternalMinColor;
+ float4 _ParallaxInternalMaxColor;
+ float4 _ParallaxInternalPanSpeed;
+ float4 _ParallaxInternalPanDepthSpeed;
+ float _ParallaxInternalHeightmapMode;
+ float _ParallaxInternalHeightFromAlpha;
+
+ float GetParallaxHeight(float2 uv)
+ {
+ return clamp(UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxHeightMap, _MainTex, TRANSFORM_TEX(uv, _ParallaxHeightMap) + _Time.x * float4(0,0,0,0)).g, 0, .99999);
+ }
+ /*
+ float2 ParallaxOffset(float2 viewDir)
+ {
+ float height = GetParallaxHeight();
+ height -= 0.5;
+ height *= float(0);
+ return viewDir * height;
+ }
+ */
+ float2 ParallaxRaymarching(float2 viewDir)
+ {
+ float2 uvOffset = 0;
+ float stepSize = 0.1;
+ float2 uvDelta = viewDir * (stepSize * float(0));
+
+ float stepHeight = 1;
+ float surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)]);
+
+
+ float2 prevUVOffset = uvOffset;
+ float prevStepHeight = stepHeight;
+ float prevSurfaceHeight = surfaceHeight;
+
+ for (int i = 1; i < 10 && stepHeight > surfaceHeight; i ++)
+ {
+ prevUVOffset = uvOffset;
+ prevStepHeight = stepHeight;
+ prevSurfaceHeight = surfaceHeight;
+
+ uvOffset -= uvDelta;
+ stepHeight -= stepSize;
+ surfaceHeight = GetParallaxHeight(poiMesh.uv[float(0)] + uvOffset);
+ }
+
+ float prevDifference = prevStepHeight - prevSurfaceHeight;
+ float difference = surfaceHeight - stepHeight;
+ float t = prevDifference / (prevDifference + difference);
+ uvOffset = prevUVOffset -uvDelta * t;
+
+ return uvOffset *= POI2D_SAMPLER_PAN(_ParallaxHeightMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+
+ void calculateandApplyParallax()
+ {
+
+ if (float(0))
+ {
+ float2 parallaxOffset = ParallaxRaymarching(poiCam.tangentViewDir.xy);
+
+ if(float(0) == 0)
+ {
+ poiMesh.uv[0] += parallaxOffset;
+ }
+
+ if(float(0) == 1)
+ {
+ poiMesh.uv[1] += parallaxOffset;
+ }
+
+ if(float(0) == 2)
+ {
+ poiMesh.uv[2] += parallaxOffset;
+ }
+
+ if(float(0) == 3)
+ {
+ poiMesh.uv[3] += parallaxOffset;
+ }
+ }
+ }
+
+ void calculateAndApplyInternalParallax(inout float4 finalColor)
+ {
+ #if defined(_PARALLAXMAP)
+
+ if(float(0))
+ {
+ float3 parallax = 0;
+
+ for (int j = float(1); j > 0; j --)
+ {
+ float ratio = (float)j / float(1);
+ float2 parallaxOffset = _Time.y * (float4(0,0,0,0) + (1 - ratio) * float4(0,0,0,0));
+ float fade = lerp(float(0), float(1), ratio);
+ float4 parallaxColor = UNITY_SAMPLE_TEX2D_SAMPLER(_ParallaxInternalMap, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _ParallaxInternalMap) + lerp(float(0), float(1), ratio) * - poiCam.tangentViewDir.xy + parallaxOffset);
+ float3 parallaxTint = lerp(float4(1,1,1,1), float4(1,1,1,1), ratio);
+ float parallaxHeight;
+ if(float(0))
+ {
+ parallaxTint *= parallaxColor.rgb;
+ parallaxHeight = parallaxColor.a;
+ }
+ else
+ {
+ parallaxHeight = parallaxColor.r;
+ }
+ //float parallaxColor *= lerp(float4(1,1,1,1), float4(1,1,1,1), 1 - ratio);
+
+ if (float(0) == 1)
+ {
+ parallax = lerp(parallax, parallaxTint * fade, parallaxHeight >= 1 - ratio);
+ }
+ else
+ {
+ parallax += parallaxTint * parallaxHeight * fade;
+ }
+ }
+ //parallax /= float(1);
+ finalColor.rgb += parallax * POI2D_SAMPLER_PAN(_ParallaxInternalMapMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ }
+ #endif
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
new file mode 100644
index 00000000..c362c610
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiParallax.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d4eaac7971ca12c4486e651e4295ef02
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
new file mode 100644
index 00000000..81230e8d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc
@@ -0,0 +1,233 @@
+/*
+USED---------------------------------------------
+"_PARALLAXMAP",
+"_REQUIRE_UV2",
+"_SUNDISK_NONE",
+"_DETAIL_MULX2",
+"_GLOSSYREFLECTIONS_OFF",
+"_METALLICGLOSSMAP",
+"_COLORADDSUBDIFF_ON",
+"_SPECGLOSSMAP",
+"_TERRAIN_NORMAL_MAP",
+"_SUNDISK_SIMPLE",
+"_EMISSION",
+"_COLORCOLOR_ON",
+"_COLOROVERLAY_ON",
+"_ALPHAMODULATE_ON",
+"_SUNDISK_HIGH_QUALITY",
+"_MAPPING_6_FRAMES_LAYOUT",
+"_NORMALMAP"
+"EFFECT_BUMP",
+"BLOOM",
+"BLOOM_LOW",
+"GRAIN",
+"DEPTH_OF_FIELD",
+"USER_LUT",
+"CHROMATIC_ABERRATION_LOW",
+"BLOOM_LENS_DIRT",
+"_FADING_ON",
+"CHROMATIC_ABERRATION",
+"DISTORT",
+"GEOM_TYPE_BRANCH",
+"_SPECULARHIGHLIGHTS_OFF",
+"_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A",
+"EFFECT_HUE_VARIATION",
+"GEOM_TYPE_LEAF",
+"GEOM_TYPE_MESH",
+"FINALPASS",
+"AUTO_EXPOSURE"
+"VIGNETTE",
+"VIGNETTE_MASKED",
+"COLOR_GRADING_HDR",
+
+UNUSED-------------------------------------------
+"_ALPHABLEND_ON",
+"_ALPHAPREMULTIPLY_ON",
+"_ALPHATEST_ON",
+"GEOM_TYPE_BRANCH_DETAIL",
+"GEOM_TYPE_FROND",
+"PIXELSNAP_ON",
+"SOFTPARTICLES_ON",
+"DITHERING",
+"TONEMAPPING_NEUTRAL",
+"TONEMAPPING_FILMIC",
+"TONEMAPPING_ACES",
+"TONEMAPPING_CUSTOM",
+"DEPTH_OF_FIELD_COC_VIEW",
+"COLOR_GRADING",
+"COLOR_GRADING_LOG_VIEW",
+"VIGNETTE_CLASSIC",
+"COLOR_GRADING_HDR_3D",
+
+DO NOT USE -----------------------------------------
+"BILLBOARD_FACE_CAMERA_POS",
+*/
+
+
+#ifndef POI_PASS
+ #define POI_PASS
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #ifdef POI_META_PASS
+ #include "UnityMetaPass.cginc"
+ #endif
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+
+ #include "CGI_PoiSpawnInVert.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+
+ #ifdef BLOOM_LOW
+ #include "CGI_PoiBulge.cginc"
+ #endif
+
+ #include "CGI_PoiVert.cginc"
+
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+
+ #include "CGI_PoiDithering.cginc"
+
+ #ifdef _PARALLAXMAP
+ #include "CGI_PoiParallax.cginc"
+ #endif
+
+ #ifdef USER_LUT
+ #include "CGI_PoiUVDistortion.cginc"
+ #endif
+
+ #ifdef VIGNETTE
+ #include "CGI_PoiRGBMask.cginc"
+ #endif
+
+ #include "CGI_PoiData.cginc"
+
+ #ifdef _SPECULARHIGHLIGHTS_OFF
+ #include "CGI_PoiBlackLight.cginc"
+ #endif
+
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+
+ #ifdef DEPTH_OF_FIELD
+ #include "CGI_PoiHologram.cginc"
+ #endif
+
+ #ifdef BLOOM_LENS_DIRT
+ #include "CGI_PoiIridescence.cginc"
+ #endif
+
+
+ #ifdef FUR
+ #include "CGI_PoiFur.cginc"
+ #include "CGI_PoiGeomFur.cginc"
+ #endif
+
+ #ifdef VIGNETTE_MASKED
+ #include "CGI_PoiLighting.cginc"
+ #endif
+
+ #include "CGI_PoiMainTex.cginc"
+
+ #ifdef GEOM_TYPE_BRANCH
+ #include "CGI_PoiDecal.cginc"
+ #endif
+
+ #ifdef CHROMATIC_ABERRATION
+ #include "CGI_PoiVoronoi.cginc"
+ #endif
+
+ #ifdef _DETAIL_MULX2
+ #include "CGI_PoiPanosphere.cginc"
+ #endif
+
+ #ifdef EFFECT_BUMP
+ #include "CGI_PoiMSDF.cginc"
+ #endif
+
+ #ifdef GRAIN
+ #include "CGI_PoiDepthColor.cginc"
+ #endif
+
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _GLOSSYREFLECTIONS_OFF
+ #include "CGI_PoiRimLighting.cginc"
+ #endif
+
+ #ifdef _MAPPING_6_FRAMES_LAYOUT
+ #include "CGI_PoiEnvironmentalRimLighting.cginc"
+ #endif
+
+ #ifdef _METALLICGLOSSMAP
+ #include "CGI_PoiMetal.cginc"
+ #endif
+
+ #ifdef _COLORADDSUBDIFF_ON
+ #include "CGI_PoiMatcap.cginc"
+ #endif
+
+ #ifdef _SPECGLOSSMAP
+ #include "CGI_PoiSpecular.cginc"
+ #endif
+
+ #ifdef BLOOM
+ #include "CGI_PoiVideo.cginc"
+ #endif
+
+ #ifdef _TERRAIN_NORMAL_MAP
+ #include "CGI_PoiSubsurfaceScattering.cginc"
+ #endif
+
+ #include "CGI_PoiBlending.cginc"
+ #include "CGI_PoiGrab.cginc"
+
+ #ifdef _SUNDISK_SIMPLE
+ #include "CGI_PoiGlitter.cginc"
+ #endif
+
+ #ifdef _EMISSION
+ #include "CGI_PoiEmission.cginc"
+ #endif
+
+ #ifdef _COLORCOLOR_ON
+ #include "CGI_PoiClearCoat.cginc"
+ #endif
+
+ #include "CGI_PoiAlphaToCoverage.cginc"
+
+ #ifdef _COLOROVERLAY_ON
+ #include "CGI_PoiDebug.cginc"
+ #endif
+ #include "CGI_PoiFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
new file mode 100644
index 00000000..aa75343f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPass.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 029d3eb88dbb1ca478c839b9f14e0d0b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
new file mode 100644
index 00000000..5e365972
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc
@@ -0,0 +1,26 @@
+#ifndef POI_PASS_OUTLINE
+ #define POI_PASS_OUTLINE
+
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiOutlineVert.cginc"
+ #ifdef TESSELATION
+ #include "CGI_PoiTessellation.cginc"
+ #endif
+ #ifdef _REQUIRE_UV2
+ #include "CGI_PoiMirror.cginc"
+ #endif
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiLighting.cginc"
+ #include "CGI_PoiMainTex.cginc"
+ #include "CGI_PoiData.cginc"
+ #include "CGI_PoiDithering.cginc"
+ #include "CGI_PoiOutlineFrag.cginc"
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
new file mode 100644
index 00000000..9d2ec4e7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassOutline.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d3f4bcb1eb7daf74292897e57a62c752
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
new file mode 100644
index 00000000..d21a5d4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc
@@ -0,0 +1,44 @@
+#ifndef POI_PASS_SHADOW
+ #define POI_PASS_SHADOW
+
+ #pragma multi_compile_shadowcaster
+ #include "UnityCG.cginc"
+ #include "UnityShaderVariables.cginc"
+ #include "UnityCG.cginc"
+ #include "Lighting.cginc"
+ #include "UnityPBSLighting.cginc"
+ #include "AutoLight.cginc"
+
+ #include "CGI_PoiMacros.cginc"
+ #include "CGI_PoiDefines.cginc"
+
+ #include "CGI_Poicludes.cginc"
+ #include "CGI_PoiShadowIncludes.cginc"
+ #include "CGI_PoiHelpers.cginc"
+ #include "CGI_PoiMirror.cginc"
+ #include "CGI_PoiSpawnInFrag.cginc"
+
+ #include "CGI_PoiV2F.cginc"
+ #include "CGI_PoiData.cginc"
+
+ #ifdef WIREFRAME
+ #include "CGI_PoiWireframe.cginc"
+ #endif
+
+ #ifdef _SUNDISK_HIGH_QUALITY
+ #include "CGI_PoiFlipbook.cginc"
+ #endif
+
+ #ifdef _SUNDISK_NONE
+ #include "CGI_PoiRandom.cginc"
+ #endif
+ #include "CGI_PoiDithering.cginc"
+ #ifdef DISTORT
+ #include "CGI_PoiDissolve.cginc"
+ #endif
+ #include "CGI_PoiVertexManipulations.cginc"
+ #include "CGI_PoiSpawnInVert.cginc"
+ #include "CGI_PoiShadowVert.cginc"
+ #include "CGI_PoiShadowFrag.cginc"
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
new file mode 100644
index 00000000..7034bf43
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiPassShadow.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9f99471f6a823864698a511d922f9240
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
new file mode 100644
index 00000000..d4cd1697
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc
@@ -0,0 +1,131 @@
+#ifndef POI_RGBMASK
+ #define POI_RGBMASK
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RGBMask); float4 _RGBMask_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_RedTexure); float4 _RedTexure_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_GreenTexture); float4 _GreenTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_BlueTexture); float4 _BlueTexture_ST;
+
+ #ifdef GEOM_TYPE_MESH
+ POI_NORMAL_NOSAMPLER(_RgbNormalR);
+ POI_NORMAL_NOSAMPLER(_RgbNormalG);
+ POI_NORMAL_NOSAMPLER(_RgbNormalB);
+ float _RgbNormalsEnabled;
+ #endif
+
+ float4 _RedColor;
+ float4 _GreenColor;
+ float4 _BlueColor;
+
+ float4 _RGBMaskPanning;
+ float4 _RGBRedPanning;
+ float4 _RGBGreenPanning;
+ float4 _RGBBluePanning;
+
+ float _RGBBlendMultiplicative;
+
+ float _RGBMaskUV;
+ float _RGBRed_UV;
+ float _RGBGreen_UV;
+ float _RGBBlue_UV;
+ float _RGBUseVertexColors;
+ float _RGBNormalBlend;
+
+ static float3 rgbMask;
+
+ void calculateRGBNormals(inout half3 mainTangentSpaceNormal)
+ {
+ #ifdef GEOM_TYPE_MESH
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+
+ if(float(0))
+ {
+
+ if(float(0) == 0)
+ {
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.r);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.g);
+ }
+
+ if(float(0) > 0)
+ {
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ mainTangentSpaceNormal = lerp(mainTangentSpaceNormal, normalToBlendWith, rgbMask.b);
+ }
+ return;
+ }
+ else
+ {
+ half3 newNormal = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalR, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0) * rgbMask.r);
+ half3 normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalG, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.g);
+ normalToBlendWith = UnpackScaleNormal(POI2D_SAMPLER_PAN(_RgbNormalB, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)), float(0));
+ newNormal = lerp(newNormal, normalToBlendWith, rgbMask.b);
+ mainTangentSpaceNormal = BlendNormals(newNormal, mainTangentSpaceNormal);
+ return;
+ }
+ }
+ #endif
+ }
+
+ float3 calculateRGBMask(float3 baseColor)
+ {
+ //If RGB normals are in use this data will already exist
+ #ifndef RGB_MASK_TEXTURE
+ #define RGB_MASK_TEXTURE
+
+ if (float(0))
+ {
+ rgbMask = poiMesh.vertexColor.rgb;
+ }
+ else
+ {
+ rgbMask = POI2D_SAMPLER_PAN(_RGBMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).rgb;
+ }
+ #endif
+
+ float4 red = POI2D_SAMPLER_PAN(_RedTexure, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 green = POI2D_SAMPLER_PAN(_GreenTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ float4 blue = POI2D_SAMPLER_PAN(_BlueTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+
+ if(float(0))
+ {
+ float3 RGBColor = 1;
+ RGBColor = lerp(RGBColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ RGBColor = lerp(RGBColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ baseColor *= RGBColor;
+ }
+ else
+ {
+ baseColor = lerp(baseColor, red.rgb * float4(1,1,1,1).rgb, rgbMask.r * red.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, green.rgb * float4(1,1,1,1).rgb, rgbMask.g * green.a * float4(1,1,1,1).a);
+ baseColor = lerp(baseColor, blue.rgb * float4(1,1,1,1).rgb, rgbMask.b * blue.a * float4(1,1,1,1).a);
+ }
+
+ return baseColor;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
new file mode 100644
index 00000000..5a8b9dbc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRGBMask.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 26a25ca9e98de94439e1c98de7fa8a7a
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
new file mode 100644
index 00000000..137ef6de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc
@@ -0,0 +1,4 @@
+#ifndef POI_RNG
+ #define POI_RNG
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
new file mode 100644
index 00000000..c16c6125
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRNG.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 857fc65f4cc022d4d8aecb1637cb6b6e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
new file mode 100644
index 00000000..11f3eea2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc
@@ -0,0 +1,41 @@
+#ifndef POI_RANDOM
+ #define POI_RANDOM
+
+ float _EnableRandom;
+ float m_start_Angle;
+ float _AngleType;
+ float3 _AngleForwardDirection;
+ float _CameraAngleMin;
+ float _CameraAngleMax;
+ float _ModelAngleMin;
+ float _ModelAngleMax;
+ float _AngleMinAlpha;
+ float _AngleCompareTo;
+
+ float ApplyAngleBasedRendering(float3 modelPos, float3 worldPos)
+ {
+ half cameraAngleMin = float(45) / 180;
+ half cameraAngleMax = float(90) / 180;
+ half modelAngleMin = float(45) / 180;
+ half modelAngleMax = float(90) / 180;
+ float3 pos = float(0) == 0 ? modelPos : worldPos;
+ half3 cameraToModelDirection = normalize(pos - getCameraPosition());
+ half3 modelForwardDirection = normalize(mul(unity_ObjectToWorld, normalize(float4(0,0,1,0))));
+ half cameraLookAtModel = remapClamped(.5 * dot(cameraToModelDirection, getCameraForward()) + .5, cameraAngleMax, cameraAngleMin, 0, 1);
+ half modelLookAtCamera = remapClamped(.5 * dot(-cameraToModelDirection, modelForwardDirection) + .5, modelAngleMax, modelAngleMin, 0, 1);
+ if (float(0) == 0)
+ {
+ return max(cameraLookAtModel, float(0));
+ }
+ else if(float(0) == 1)
+ {
+ return max(modelLookAtCamera, float(0));
+ }
+ else if(float(0) == 2)
+ {
+ return max(cameraLookAtModel * modelLookAtCamera, float(0));
+ }
+ return 1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
new file mode 100644
index 00000000..f2a78057
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRandom.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: f6055cc6bfe2c8f4d89cf1e904be2500
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
new file mode 100644
index 00000000..d4571c0c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc
@@ -0,0 +1,47 @@
+#ifndef POI_RIM
+ #define POI_RIM
+
+ float4 _RimLightColor;
+ float _RimLightingInvert;
+ float _RimWidth;
+ float _RimStrength;
+ float _RimSharpness;
+ float _RimLightColorBias;
+ float _ShadowMix;
+ float _ShadowMixThreshold;
+ float _ShadowMixWidthMod;
+ float _EnableRimLighting;
+ float _RimBrighten;
+ float _RimLightNormal;
+
+ POI_TEXTURE_NOSAMPLER(_RimTex);
+ POI_TEXTURE_NOSAMPLER(_RimMask);
+ POI_TEXTURE_NOSAMPLER(_RimWidthNoiseTexture);
+
+ float _RimWidthNoiseStrength;
+
+ float4 rimColor = float4(0, 0, 0, 0);
+ float rim = 0;
+
+ void applyRimLighting(inout float4 albedo, inout float3 rimLightEmission)
+ {
+ float rimNoise = POI2D_SAMPLER_PAN(_RimWidthNoiseTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimNoise = (rimNoise - .5) * float(0.1);
+
+ float viewDotNormal = abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+
+ if (float(0))
+ {
+ viewDotNormal = 1 - abs(dot(poiCam.viewDir, poiMesh.normals[float(1)]));
+ }
+ float rimWidth = float(0.8);
+ rimWidth -= rimNoise;
+ float rimMask = POI2D_SAMPLER_PAN(_RimMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ rimColor = POI2D_SAMPLER_PAN(_RimTex, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
+ rimWidth = max(lerp(rimWidth, rimWidth * lerp(0, 1, poiLight.lightMap - float(0.5)) * float(0.5), float(0)),0);
+ rim = 1 - smoothstep(min(float(0.25), rimWidth), rimWidth, viewDotNormal);
+ rim *= float4(1,1,1,1).a * rimColor.a * rimMask;
+ rimLightEmission = rim * lerp(albedo, rimColor, float(0)) * float(0);
+ albedo.rgb = lerp(albedo.rgb, lerp(albedo.rgb, rimColor, float(0)) + lerp(albedo.rgb, rimColor, float(0)) * float(0), rim);
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
new file mode 100644
index 00000000..0fbe5bcd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiRimLighting.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 7238f6bada432f144ae7ab1d7e71dbde
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
new file mode 100644
index 00000000..16701f61
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc
@@ -0,0 +1,116 @@
+#ifndef SHADOW_FRAG
+ #define SHADOW_FRAG
+
+ float2 _MainDistanceFade;
+ float _ForceOpaque;
+ float _MainShadowClipMod;
+ float2 _AlphaMaskPan;
+ float _AlphaMaskUV;
+ sampler3D _DitherMaskLOD;
+ float2 _MainTexPan;
+ float _MainTextureUV;
+
+ half4 fragShadowCaster(
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ V2FShadow i, uint facing: SV_IsFrontFace
+ #endif
+ ): SV_Target
+ {
+ poiMesh.uv[0] = i.uv;
+ poiMesh.uv[1] = i.uv1;
+ poiMesh.uv[2] = i.uv2;
+ poiMesh.uv[3] = i.uv3;
+
+ // Basically every texture relies on the maintex sampler to function and that's why this is here.
+ float4 mainTexture = UNITY_SAMPLE_TEX2D(_MainTex, TRANSFORM_TEX(poiMesh.uv[float(0)], _MainTex) + _Time.x * float4(0,0,0,0));
+
+
+ //Possible Bug with clip
+ float clipValue = clamp(float(0.5) + float(0), - .001, 1.001);
+
+ poiMesh.vertexColor = saturate(i.vertexColor);
+ poiMesh.worldPos = i.worldPos;
+ poiMesh.localPos = i.localPos;
+
+ #ifdef POI_MIRROR
+ applyMirrorRenderFrag();
+ #endif
+
+ #if defined(UNITY_STANDARD_USE_SHADOW_UVS)
+
+ half4 alpha = mainTexture;
+
+
+ if (float(0))
+ {
+ if(IsInMirror())
+ {
+ alpha.a = UNITY_SAMPLE_TEX2D_SAMPLER(_MirrorTexture, _MainTex, TRANSFORM_TEX(i.uv, _MirrorTexture)).a;
+ }
+ }
+
+
+ alpha.a *= smoothstep(float4(0,0,0,0).x, float4(0,0,0,0).y, distance(i.modelPos, _WorldSpaceCameraPos));
+ half alphaMask = POI2D_PAN(_AlphaMask, poiMesh.uv[float(0)], float4(0,0,0,0));
+ alpha.a *= alphaMask;
+ alpha.a *= float4(1,1,1,1).a + .0001;
+ alpha.a += float(0);
+ alpha.a = saturate(alpha.a);
+
+
+ if(float(0) == 0)
+ {
+ alpha.a = 1;
+ }
+
+
+ if(float(0) == 1)
+ {
+ applyShadowDithering(alpha.a, calcScreenUVs(i.grabPos).xy);
+ }
+
+ #ifdef POI_DISSOLVE
+ float3 fakeEmission = 1;
+ calculateDissolve(alpha, fakeEmission);
+ #endif
+
+ if(float(0) == 1)
+ {
+ clip(alpha.a - 0.001);
+ }
+
+ /*
+ return poiMesh.vertexColor.g;
+
+ #ifdef POI_RANDOM
+ alpha.a *= i.angleAlpha;
+ #endif
+
+
+ if(float(0) >= 1)
+ {
+ applySpawnInShadow(uv[0], i.localPos);
+
+ #if defined(POI_FLIPBOOK)
+ alpha.a *= applyFlipbookAlphaToShadow(uv[float(0)]);
+ #endif
+ }
+ */
+
+ if (float(0) == 1)
+ {
+ clip(alpha.a - clipValue);
+ }
+
+
+ if(float(0) > 1)
+ {
+ float dither = tex3D(_DitherMaskLOD, float3(i.pos.xy * .25, alpha.a * 0.9375)).a;
+ clip(dither - 0.01);
+ }
+
+ #endif
+ SHADOW_CASTER_FRAGMENT(i)
+ }
+
+ #endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
new file mode 100644
index 00000000..0f70c83d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 0ead80f9dfe101a449fe7ab83ae1169f
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
new file mode 100644
index 00000000..fd8f19a1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc
@@ -0,0 +1,41 @@
+#ifndef SHADOW_INCLUDES
+ #define SHADOW_INCLUDES
+
+ #define UNITY_STANDARD_USE_SHADOW_UVS 1
+
+ float4 _Color;
+ sampler2D _AlphaMask; float4 _AlphaMask_ST;
+
+ struct VertexInputShadow
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #if !defined(V2F_SHADOW_CASTER_NOPOS_IS_EMPTY) || defined(UNITY_STANDARD_USE_SHADOW_UVS)
+ struct V2FShadow
+ {
+ V2F_SHADOW_CASTER_NOPOS
+ float4 pos: SV_POSITION;
+ float2 uv: TEXCOORD1;
+ float2 uv1: TEXCOORD2;
+ float2 uv2: TEXCOORD3;
+ float2 uv3: TEXCOORD4;
+ float3 modelPos: TEXCOORD5;
+ float4 worldPos: TEXCOORD6;
+ float4 localPos: TEXCOORD7;
+ float3 angleAlpha: TEXCOORD8;
+ float4 grabPos: TEXCOORD9;
+ fixed3 barycentricCoordinates: TEXCOORD10;
+ float4 vertexColor: TEXCOORD11;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+ #endif
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
new file mode 100644
index 00000000..1ccea162
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowIncludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 8ad3c2a2fb0bfcd4592b3280ba673329
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
new file mode 100644
index 00000000..f0b7184a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc
@@ -0,0 +1,80 @@
+float _EnableTouchGlow;
+float _EnableBulge;
+float _VertexManipulationHeightUV;
+
+V2FShadow vertShadowCaster(VertexInputShadow v)
+{
+ V2FShadow o;
+ UNITY_SETUP_INSTANCE_ID(v);
+
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(V2FShadow, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.uv = v.uv0;
+ o.uv1 = v.uv1;
+ o.uv2 = v.uv2;
+ o.uv3 = v.uv3;
+
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, v.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.vertexColor = v.color;
+
+
+ if(_EnableTouchGlow || _EnableBulge)
+ {
+ o.pos = UnityObjectToClipPos(float3(0, 0, -5));
+ o.localPos.xyz = float3(0, 0, -5);
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ }
+
+ o.angleAlpha = 1;
+ #ifdef POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+
+ o.pos = UnityClipSpaceShadowCasterPos(o.localPos, v.normal);
+ o.pos = UnityApplyLinearShadowBias(o.pos);
+
+ return o;
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
new file mode 100644
index 00000000..1418c4c6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiShadowVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 71bc503a64dd6a543a46e8870f3ea93e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
new file mode 100644
index 00000000..0c18d1ad
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc
@@ -0,0 +1,58 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+ #endif
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_SpawnInNoise); float4 _SpawnInNoise_ST;
+
+ float calculateGradientValueFrag(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnIn(inout float4 finalColor, inout float3 spawnInEmission, float2 uv, float3 localPos)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ spawnInEmission = saturate(inverseGradient + _SpawnInAlpha + _SpawnInEmissionOffset +noise - 1) * _SpawnInEmissionColor;
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+
+ void applySpawnInShadow(float2 uv, float3 localPos)
+ {
+
+ if(_EnableScifiSpawnIn)
+ {
+ float noise = UNITY_SAMPLE_TEX2D_SAMPLER(_SpawnInNoise, _MainTex, TRANSFORM_TEX(uv, _SpawnInNoise)).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ float gradient = calculateGradientValueFrag(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float alpha = gradient - _SpawnInAlpha - noise + length(_SpawnInVertOffset);
+
+ if(float(0) >= 1)
+ {
+ clip(ceil(alpha) - 0.001);
+ }
+ }
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
new file mode 100644
index 00000000..eb90dde3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInFrag.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: a6f79d723cadb6745861e43dc3586709
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
new file mode 100644
index 00000000..fdcc457f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc
@@ -0,0 +1,40 @@
+#ifndef POI_SPAWN_IN_FRAG
+ #define POI_SPAWN_FRAG
+
+ #ifndef SPAWN_IN_VARIABLES
+ #define SPAWN_IN_VARIABLES
+
+ float3 _SpawnInGradientStart;
+ float3 _SpawnInGradientFinish;
+ fixed _SpawnInAlpha;
+ fixed _SpawnInNoiseIntensity;
+ float3 _SpawnInEmissionColor;
+ float _SpawnInEmissionOffset;
+ float _SpawnInVertOffset;
+ float _SpawnInVertOffsetOffset;
+ float _EnableScifiSpawnIn;
+
+ #endif
+ //sampler2D _SpawnInNoiseVert; float4 _SpawnInNoiseVert_ST;
+
+ float calculateGradientValueVert(float3 start, float3 finish, float3 localPos)
+ {
+ return inverseLerp3(start, finish, localPos);
+ }
+
+ void applySpawnInVert(inout float4 worldPos, inout float4 localPos, float2 uv)
+ {
+
+ if (_EnableScifiSpawnIn)
+ {
+ float noise = 0;
+ float gradient = calculateGradientValueVert(_SpawnInGradientStart, _SpawnInGradientFinish, localPos);
+ float inverseGradient = 1 - gradient;
+ float alpha = gradient - _SpawnInAlpha - noise;
+ worldPos.xyz += saturate(inverseGradient + _SpawnInAlpha + _SpawnInVertOffsetOffset -1) * float3(0, _SpawnInVertOffset, 0);
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+ //float noise = tex2Dlod(_SpawnInNoise, float4(TRANSFORM_TEX(uv, _SpawnInNoise))).r * _SpawnInAlpha * _SpawnInNoiseIntensity;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
new file mode 100644
index 00000000..4e1b3a22
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpawnInVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d8cb284b3054929469f8eb3a0e80758e
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
new file mode 100644
index 00000000..f5287465
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc
@@ -0,0 +1,488 @@
+#ifndef POI_SPECULAR
+ #define POI_SPECULAR
+ float _SpecWhatTangent;
+ float _SpecularType;
+ float _SmoothnessFrom;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap);
+ fixed _CenterOutSpecColor;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro);
+ float _SpecularAnisoJitterMirrored;
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoFakeUV);
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask);
+ float _SpecularAnisoJitterMicroMultiplier;
+ float _SpecularAnisoJitterMacroMultiplier;
+ float4 _SpecularTint;
+ float _SpecularSmoothness;
+ float _Spec1Offset;
+ float _Spec1JitterStrength;
+ float _Spec2Smoothness;
+ float _Spec2Offset;
+ float _Spec2JitterStrength;
+ float _AnisoUseTangentMap;
+ float _AnisoSpec1Alpha;
+ float _AnisoSpec2Alpha;
+ float _SpecularInvertSmoothness;
+ half _SpecularMetallic;
+ float _SpecularNormal;
+ float _SpecularNormal1;
+ // Toon
+ fixed _SpecularToonStart;
+ fixed _SpecularToonEnd;
+ half4 _SpecularToonInnerOuter;
+
+ float _EnableSpecular1;
+ float _SpecWhatTangent1;
+ float _SpecularType1;
+ float _SmoothnessFrom1;
+ POI_TEXTURE_NOSAMPLER(_SpecularMetallicMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMicro1);
+ POI_TEXTURE_NOSAMPLER(_SpecularAnisoJitterMacro1);
+ float _SpecularAnisoJitterMirrored1;
+ POI_TEXTURE_NOSAMPLER(_AnisoTangentMap1);
+ POI_TEXTURE_NOSAMPLER(_SpecularMask1);
+ float _SpecularAnisoJitterMicroMultiplier1;
+ float _SpecularAnisoJitterMacroMultiplier1;
+ float4 _SpecularTint1;
+ float _SpecularSmoothness1;
+ float _Spec1Offset1;
+ float _Spec1JitterStrength1;
+ float _Spec2Smoothness1;
+ float _Spec2Offset1;
+ float _Spec2JitterStrength1;
+ float _AnisoUseTangentMap1;
+ float _AnisoSpec1Alpha1;
+ float _AnisoSpec2Alpha1;
+ float _SpecularInvertSmoothness1;
+ half _SpecularMetallic1;
+ // Toon
+ half4 _SpecularToonInnerOuter1;
+ fixed _SpecularToonStart1;
+ fixed _SpecularToonEnd1;
+
+ UnityIndirect ZeroIndirect()
+ {
+ UnityIndirect ind;
+ ind.diffuse = 0;
+ ind.specular = 0;
+ return ind;
+ }
+
+ // From unity just putting it here in case I want to mod it
+ half4 poiRealisticSpecular(half3 diffColor, half3 specColor, half oneMinusReflectivity, half smoothness,
+ float3 normal, float3 halfDir,
+ UnityLight light, UnityIndirect gi)
+ {
+ float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
+ #define UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV 0
+
+ #if UNITY_HANDLE_CORRECTLY_NEGATIVE_NDOTV
+ half shiftAmount = dot(normal, poiCam.viewDir);
+ normal = shiftAmount < 0.0f ? normal + poiCam.viewDir * (-shiftAmount + 1e-5f): normal;
+ float nv = saturate(dot(normal, poiCam.viewDir));
+ #else
+ half nv = abs(dot(normal, poiCam.viewDir));
+ #endif
+
+ float nl = saturate(dot(normal, light.dir));
+ float nh = saturate(dot(normal, halfDir));
+
+ half lv = saturate(dot(light.dir, poiCam.viewDir));
+ half lh = saturate(dot(light.dir, halfDir));
+
+ half diffuseTerm = DisneyDiffuse(nv, nl, lh, perceptualRoughness) * nl;
+
+ float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
+
+ roughness = max(roughness, 0.002);
+ float V = SmithJointGGXVisibilityTerm(nl, nv, roughness);
+ float D = GGXTerm(nh, roughness);
+
+ float specularTerm = V * D * UNITY_PI;
+
+ #ifdef UNITY_COLORSPACE_GAMMA
+ specularTerm = sqrt(max(1e-4h, specularTerm));
+ #endif
+
+ specularTerm = max(0, specularTerm * nl);
+ #if defined(_POI_SPECULARHIGHLIGHTS_OFF)
+ specularTerm = 0.0;
+ #endif
+
+ half surfaceReduction;
+ #ifdef UNITY_COLORSPACE_GAMMA
+ surfaceReduction = 1.0 - 0.28 * roughness * perceptualRoughness;
+ #else
+ surfaceReduction = 1.0 / (roughness * roughness + 1.0);
+ #endif
+
+ specularTerm *= any(specColor) ? 1.0: 0.0;
+
+ half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
+ half3 color = diffColor * (gi.diffuse + light.color * diffuseTerm)
+ + specularTerm * light.color * FresnelTerm(specColor, lh)
+ + surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, nv);
+
+ return half4(color, 1);
+ }
+
+ half3 calculateRealisticSpecular(float4 albedo, float2 uv, float4 specularTint, float specularSmoothness, float invertSmoothness, float mixAlbedoWithTint, float4 specularMap, float3 specularLight, float3 normal, float attenuation, float3 lightDirection, float nDotL, float3 halfDir)
+ {
+ half oneMinusReflectivity;
+ half3 finalSpecular;
+ UnityLight unityLight;
+ unityLight.color = specularLight;
+ unityLight.dir = lightDirection;
+ unityLight.ndotl = nDotL;
+
+
+ if (float(1) == 0)
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularMap.rgb * specularTint.rgb, /*out*/ oneMinusReflectivity);
+ finalSpecular = poiRealisticSpecular(diffColor, specularMap.rgb, oneMinusReflectivity, specularMap.a * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ else
+ {
+ half3 diffColor = EnergyConservationBetweenDiffuseAndSpecular(albedo, specularTint.rgb, /*out*/ oneMinusReflectivity);
+ float smoothness = max(max(specularMap.r, specularMap.g), specularMap.b);
+ finalSpecular = poiRealisticSpecular(diffColor, 1, oneMinusReflectivity, smoothness * specularSmoothness * lerp(1, -1, invertSmoothness), normal, halfDir, unityLight, ZeroIndirect());
+ }
+ finalSpecular *= lerp(1, albedo.rgb, mixAlbedoWithTint);
+ return finalSpecular;
+ }
+
+ half3 calculateToonSpecular(float4 albedo, float2 uv, float2 specularToonInnerOuter, float specularMixAlbedoIntoTint, float smoothnessFrom, float4 specularMap, float3 specularLight, float3 normal, float3 halfDir, float attenuation)
+ {
+ half3 finalSpecular = smoothstep(1 - specularToonInnerOuter.y, 1 - specularToonInnerOuter.x, dot(halfDir, normal)) * specularLight;
+
+ if (smoothnessFrom == 0)
+ {
+ finalSpecular.rgb *= specularMap.rgb * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ finalSpecular *= specularMap.a;
+ }
+ else
+ {
+ finalSpecular *= specularMap.r * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+ return finalSpecular;
+ }
+
+ float3 strandSpecular(float TdotL, float TdotV, float specPower, float nDotL)
+ {
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+ float Specular = saturate(nDotL) * pow(saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV), specPower);
+ half normalization = sqrt((specPower + 1) * ((specPower) + 1)) / (8 * pi);
+ Specular *= normalization;
+ return Specular;
+ }
+
+ half3 AnisotropicSpecular(
+ float specWhatTangent, float anisoUseTangentMap, float specularSmoothness, float spec2Smoothness,
+ float anisoSpec1Alpha, float anisoSpec2Alpha, float4 specularTint, float specularMixAlbedoIntoTint, float4 specularMap, float3 specularLight, float3 lightDirection, float3 halfDir, float nDotL, float jitter, float4 packedTangentMap, in float4 albedo)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ tangentDirectionMap += float(0) +jitter;
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+ half specPower = RoughnessToSpecPower(1.0 - specularSmoothness * specularMap.a);
+ half spec2Power = RoughnessToSpecPower(1.0 - spec2Smoothness * specularMap.a);
+ half Specular = 0;
+
+ float3 spec = strandSpecular(TdotL, TdotV, specPower, nDotL) * anisoSpec1Alpha;
+ float3 spec2 = strandSpecular(TdotL, TdotV, spec2Power, nDotL) * anisoSpec2Alpha;
+
+ return max(spec, spec2) * specularMap.rgb * specularTint.a * specularLight * lerp(1, albedo.rgb, specularMixAlbedoIntoTint);
+ }
+
+ inline float3 toonAnisoSpecular(float specWhatTangent, float anisoUseTangentMap, float3 lightDirection, float halfDir, float4 specularMap, float nDotL, fixed gradientStart, fixed gradientEnd, float4 specColor, float4 finalColor, fixed metallic, float jitter, float mirrored, float4 packedTangentMap)
+ {
+ float3 tangentOrBinormal = specWhatTangent ? poiMesh.tangent: poiMesh.binormal;
+
+ float3 normalLocalAniso = lerp(float3(0, 0, 1), UnpackNormal(packedTangentMap), anisoUseTangentMap);
+ normalLocalAniso = BlendNormals(normalLocalAniso, poiMesh.tangentSpaceNormal);
+ //float3 normalDirection = normalize(mul(poiMesh.normals[float(1)], poiTData.tangentTransform));
+ float3 normalDirectionAniso = Unity_SafeNormalize(mul(normalLocalAniso, poiTData.tangentTransform));
+ float3 tangentDirection = mul(poiTData.tangentTransform, tangentOrBinormal).xyz;
+ float3 viewReflectDirectionAniso = reflect(-poiCam.viewDir, normalDirectionAniso); // possible bad negation
+ float3 tangentDirectionMap = mul(poiTData.tangentToWorld, float3(normalLocalAniso.rg, 0.0)).xyz;
+ tangentDirectionMap = normalize(lerp(tangentOrBinormal, tangentDirectionMap, anisoUseTangentMap));
+
+ if (!mirrored)
+ {
+ tangentDirectionMap += jitter;
+ }
+
+ float TdotL = dot(lightDirection, tangentDirectionMap);
+ float TdotV = dot(poiCam.viewDir, tangentDirectionMap);
+ float TdotH = dot(halfDir, tangentDirectionMap);
+
+ float specular = saturate(sqrt(1.0 - (TdotL * TdotL)) * sqrt(1.0 - (TdotV * TdotV)) - TdotL * TdotV);
+
+ fixed smoothAlpha = specular;
+ if(mirrored)
+ {
+ smoothAlpha = max(specular - jitter, 0);
+ }
+
+ specular = smoothstep(gradientStart, gradientEnd, smoothAlpha);
+
+ /*
+
+ if(_CenterOutSpecColor)
+ {
+ specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, clamp(float2(specular, specular), 0.01, .99), float4(0,0,0,0));
+ }
+ */
+
+ #ifdef FORWARD_ADD_PASS
+ nDotL *= poiLight.attenuation * poiLight.additiveShadow;
+ #endif
+
+ return saturate(nDotL) * specular * poiLight.color * specColor * specularMap.rgb * lerp(1, finalColor, metallic) * specularMap.a;
+ }
+
+ inline float SpecularHQ(half roughness, half dotNH, half dotLH)
+ {
+ roughness = saturate(roughness);
+ roughness = max((roughness * roughness), 0.002);
+ half roughnessX2 = roughness * roughness;
+
+ half denom = dotNH * dotNH * (roughnessX2 - 1.0) + 1.0f;
+ half D = roughnessX2 / (3.14159 * denom * denom);
+
+ half k = roughness / 2.0f;
+ half k2 = k * k;
+ half invK2 = 1.0f - k2;
+
+ half vis = rcp(dotLH * dotLH * invK2 + k2);
+
+ float specTerm = vis * D;
+
+ return specTerm;
+ }
+
+ float3 calculateNewSpecular(in float3 specularMap, uint colorFrom, in float4 albedo, in float3 specularTint, in float specularMetallic, in float specularSmoothness, in half dotNH, in half dotLH, in float3 lightColor, in float attenuation)
+ {
+ float3 specColor = specularTint;
+ float metallic = specularMetallic;
+ float roughness = 1 - specularSmoothness;
+ float perceptualRoughness = roughness;
+ //float reflectInverse = DielectricSpec.a - metallic * DielectricSpec.a;
+ //float reflectivity = 1.0h - reflectInverse;
+ float3 specMapColor = lerp(specularMap, 1, colorFrom);
+ float3 specularColor = lerp(DielectricSpec.rgb * specMapColor, lerp(specularMap, albedo.rgb, colorFrom), metallic);
+ //albedo.rgb *= reflectInverse;
+ return clamp(specularColor * lightColor * attenuation * specularTint * SpecularHQ(perceptualRoughness, dotNH, dotLH), 0, lightColor * specularTint);
+ }
+
+ float3 calculateSpecular(in float4 albedo)
+ {
+ half3 finalSpecular = 0;
+ half3 finalSpecular1 = 0;
+ float4 realisticAlbedo = albedo;
+ float4 realisticAlbedo1 = albedo;
+ float4 specularMap = POI2D_SAMPLER_PAN(_SpecularMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half metallic = POI2D_SAMPLER_PAN(_SpecularMetallicMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ half specularMask = POI2D_SAMPLER_PAN(_SpecularMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float attenuation = saturate(poiLight.nDotL);
+ #ifdef POI_LIGHTING
+
+ if (float(0) && float(0) == 0 && float(0) == 1)
+ {
+ attenuation = poiLight.rampedLightMap;
+ }
+ #endif
+
+
+ if(float(1) == 1) // Realistic
+ {
+ if (float(1) == 1)
+ {
+ specularMap.a = specularMap.r;
+ specularMap.rgb = 1;
+ }
+
+ if(float(0))
+ {
+ specularMap.a = 1 - specularMap.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, attenuation);
+ #else
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic, jitter, float(0), packedTangentMap);
+ finalSpecular *= attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular += calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic, float(1), specularMap, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular += AnisotropicSpecular(float(0), float(0), float(1), float(0), float(1), float(1), float4(1,1,1,1), metallic, specularMap, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular *= float4(1,1,1,1);
+ finalSpecular *= attenuation;
+ }
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular += calculateNewSpecular(specularMap.rgb, float(1), realisticAlbedo, float4(1,1,1,1), metallic, float(1) * specularMap.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+
+ finalSpecular *= float4(1,1,1,1).a;
+ finalSpecular = finalSpecular.rgb;
+ finalSpecular *= specularMask;
+
+
+ if (float(0))
+ {
+ float4 specularMap1 = POI2D_SAMPLER_PAN(_SpecularMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+ half specularMask1 = POI2D_SAMPLER_PAN(_SpecularMask1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ half metallic1 = POI2D_SAMPLER_PAN(_SpecularMetallicMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r * float(0);
+ float attenuation = poiLight.attenuation;
+
+ if(float(1) == 1) // Realistic
+ {
+
+ if (float(1) == 1)
+ {
+ specularMap1.a = specularMap1.r;
+ specularMap1.rgb = 1;
+ }
+ else
+ {
+ realisticAlbedo1.rgb = specularMap1.rgb;
+ }
+
+
+ if(float(0))
+ {
+ specularMap1.a = 1 - specularMap1.a;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, saturate(poiLight.nDotL));
+ #else
+ finalSpecular1 = calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.dotNH, poiLight.dotLH, poiLight.color, poiLight.attenuation);
+ #endif
+ }
+
+
+ if(float(1) == 4)
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 += toonAnisoSpecular(float(0), float(0), poiLight.direction, poiLight.halfDir, specularMap1, poiLight.nDotL, float(0.95), float(1), float4(1,1,1,1), albedo, metallic1, jitter, float(0), packedTangentMap);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+
+ if(float(1) == 2) // Toon
+ {
+ finalSpecular1 = calculateToonSpecular(albedo, poiMesh.uv[0], float4(0.25,0.3,0,1), metallic1, float(1), specularMap1, poiLight.color, poiMesh.normals[float(1)], poiLight.halfDir, poiLight.attenuation);
+ finalSpecular1 *= float4(1,1,1,1);
+ }
+
+ if (float(1) == 3) // anisotropic
+ {
+ float jitter = 0;
+ float microJitter = POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r;
+ fixed jitterOffset = (1 - float(0)) * .5;
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMicro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += (POI2D_SAMPLER_PAN(_SpecularAnisoJitterMacro1, _MainTex, float2(poiMesh.uv[float(0)]), float4(0,0,0,0)).r - jitterOffset) * float(0);
+ jitter += float(0);
+
+ float4 packedTangentMap = POI2D_SAMPLER_PAN(_AnisoTangentMap1, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ finalSpecular1 = AnisotropicSpecular(float(0), float(0), float(0.75), float(0), float(1), float(1), float4(1,1,1,1), metallic1, specularMap1, poiLight.color, poiLight.direction, poiLight.halfDir, poiLight.nDotL, jitter, packedTangentMap, albedo);
+ finalSpecular1 *= float4(1,1,1,1);
+ finalSpecular1 *= poiLight.attenuation;
+ }
+
+ #ifdef FORWARD_BASE_PASS
+ // Non Important Lights
+ #ifdef VERTEXLIGHT_ON
+ for (int index = 0; index < 4; index ++)
+ {
+ attenuation = poiLight.vAttenuationDotNL[index];
+
+ if (float(1) == 1) // Realistic
+ {
+ finalSpecular1 += calculateNewSpecular(specularMap1.rgb, float(1), realisticAlbedo1, float4(1,1,1,1), metallic1, float(0.75) * specularMap1.a, poiLight.vDotNH[index], poiLight.vDotLH[index], poiLight.vColor[index], poiLight.vAttenuationDotNL[index]);
+ }
+ }
+ #endif
+ #endif
+
+ finalSpecular1 *= float4(1,1,1,1).a;
+ finalSpecular1 = finalSpecular1.rgb;
+ finalSpecular1 *= specularMask1;
+ }
+ return finalSpecular + finalSpecular1;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
new file mode 100644
index 00000000..cf83933c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSpecular.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c55d20b40eb123545b9937069e9a0413
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
new file mode 100644
index 00000000..b7c21c01
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc
@@ -0,0 +1,28 @@
+#ifndef SUBSURFACE
+ #define SUBSURFACE
+
+ float _SSSThicknessMod;
+ float _SSSSCale;
+ float _SSSPower;
+ float _SSSDistortion;
+ float4 _SSSColor;
+ float _EnableSSS;
+
+ POI_TEXTURE_NOSAMPLER(_SSSThicknessMap);
+
+ float3 calculateSubsurfaceScattering()
+ {
+ float SSS = 1 - POI2D_SAMPLER_PAN(_SSSThicknessMap, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0));
+
+ half3 vLTLight = poiLight.direction + poiMesh.normals[0] * float(1);
+ half flTDot = pow(saturate(dot(poiCam.viewDir, -vLTLight)), float(5)) * float(0.25);
+ #ifdef FORWARD_BASE_PASS
+ half3 fLT = (flTDot) * saturate(SSS + - 1 * float(0));
+ #else
+ half3 fLT = poiLight.attenuation * (flTDot) * saturate(SSS + - 1 * float(0));
+ #endif
+
+ return fLT * poiLight.color * float4(1,0,0,1);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
new file mode 100644
index 00000000..7cd63e4d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiSubsurfaceScattering.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 813bc0a3f42e5764db27ef54f359b1ce
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
new file mode 100644
index 00000000..4912473d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc
@@ -0,0 +1,117 @@
+#ifndef POI_TESSELLATION
+ #define POI_TESSELLATION
+
+ float _TessellationPhongStrength;
+ float _TessellationEdgeLength;
+ float _TessellationExtrusionAmount;
+ float _TessellationUniform;
+
+ struct TessellationControlPoint
+ {
+ float4 vertex: INTERNALTESSPOS;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ };
+
+ struct TessellationFactors
+ {
+ float edge[3]: SV_TessFactor;
+ float inside: SV_InsideTessFactor;
+ };
+
+ TessellationControlPoint poiTessellationVert(appdata v)
+ {
+ TessellationControlPoint p;
+ p.vertex = v.vertex;
+ p.normal = v.normal;
+ p.tangent = v.tangent;
+ p.color = v.color;
+ p.uv0 = v.uv0;
+ p.uv1 = v.uv1;
+ p.uv2 = v.uv2;
+ p.uv3 = v.uv3;
+ return p;
+ }
+
+ float TessellationEdgeFactor(float3 p0, float3 p1)
+ {
+ #ifndef _FADING_ON
+ float edgeLength = distance(p0, p1);
+
+ float3 edgeCenter = (p0 + p1) * 0.5;
+ float viewDistance = distance(edgeCenter, _WorldSpaceCameraPos);
+
+ return edgeLength * _ScreenParams.y /
+ (_TessellationEdgeLength * viewDistance);
+ #else
+ return _TessellationUniform;
+ #endif
+ }
+
+ TessellationFactors poiPatchConst(
+ InputPatch < TessellationControlPoint, 3 > patch
+ )
+ {
+
+ TessellationFactors f;
+ float3 p0 = mul(unity_ObjectToWorld, patch[0].vertex).xyz;
+ float3 p1 = mul(unity_ObjectToWorld, patch[1].vertex).xyz;
+ float3 p2 = mul(unity_ObjectToWorld, patch[2].vertex).xyz;
+ f.edge[0] = TessellationEdgeFactor(p1, p2);
+ f.edge[1] = TessellationEdgeFactor(p2, p0);
+ f.edge[2] = TessellationEdgeFactor(p0, p1);
+ f.inside = (TessellationEdgeFactor(p1, p2) +
+ TessellationEdgeFactor(p2, p0) +
+ TessellationEdgeFactor(p0, p1)) * (1 / 3.0);
+ return f;
+ }
+
+ [UNITY_domain("tri")]
+ [UNITY_outputcontrolpoints(3)]
+ [UNITY_outputtopology("triangle_cw")]
+ [UNITY_partitioning("fractional_odd")]
+ [UNITY_patchconstantfunc("poiPatchConst")]
+ TessellationControlPoint poiHull(
+ InputPatch < TessellationControlPoint, 3 > patch,
+ uint id: SV_OutputControlPointID
+ )
+ {
+ return patch[id];
+ }
+
+ [UNITY_domain("tri")]
+ v2f poiDomain(
+ TessellationFactors factors,
+ OutputPatch < TessellationControlPoint, 3 > patch,
+ float3 barycentricCoordinates: SV_DomainLocation
+ )
+ {
+ appdata data;
+
+ #define MY_DOMAIN_PROGRAM_INTERPOLATE(fieldName) data.fieldName = patch[0].fieldName * barycentricCoordinates.x + patch[1].fieldName * barycentricCoordinates.y + patch[2].fieldName * barycentricCoordinates.z;
+
+ MY_DOMAIN_PROGRAM_INTERPOLATE(vertex)
+ float3 pp[3];
+ for (int i = 0; i < 3; ++ i)
+ {
+ pp[i] = data.vertex.xyz - patch[i].normal * (dot(data.vertex.xyz, patch[i].normal) - dot(patch[i].vertex.xyz, patch[i].normal));
+ }
+ data.vertex.xyz = _TessellationPhongStrength * (pp[0] * barycentricCoordinates.x + pp[1] * barycentricCoordinates.y + pp[2] * barycentricCoordinates.z) + (1.0f - _TessellationPhongStrength) * data.vertex.xyz;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(normal)
+ data.vertex.xyz += data.normal.xyz * _TessellationExtrusionAmount;
+ MY_DOMAIN_PROGRAM_INTERPOLATE(tangent)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(color)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv0)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv1)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv2)
+ MY_DOMAIN_PROGRAM_INTERPOLATE(uv3)
+
+ return vert(data);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
new file mode 100644
index 00000000..4e3fc227
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiTessellation.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 452d9ef987a5c4746b37bbfdacb89807
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
new file mode 100644
index 00000000..38d5fd75
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_UV_DISTORTION
+ #define POI_UV_DISTORTION
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture); float4 _DistortionFlowTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_DistortionFlowTexture1); float4 _DistortionFlowTexture1_ST;
+ POI_TEXTURE_NOSAMPLER(_DistortionMask);
+
+ float _DistortionStrength;
+ float _DistortionStrength1;
+ float2 _DistortionSpeed;
+ float2 _DistortionSpeed1;
+
+ float2 getTorusUv(float2 uv)
+ {
+ // translated to hlsl from https://www.shadertoy.com/view/Md3Bz7
+ // http://web.cs.ucdavis.edu/~amenta/s12/findnorm.pdf
+ float phi = 6.28318530718f * uv.x;
+ float theta = 6.28318530718f * uv.y;
+ float3 c = cos(float3(phi, phi + 1.57079632679f, theta));
+ float2 result = float2(c.x * c.z, -c.y * c.z);
+ return result * 0.5 + 0.5;
+ }
+
+ float2 calculateDistortionUV(float2 uv)
+ {
+ half distortionMask = POI2D_SAMPLER_PAN(_DistortionMask, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)).r;
+ float4 flowVector = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ float4 flowVector1 = UNITY_SAMPLE_TEX2D_SAMPLER(_DistortionFlowTexture1, _MainTex, TRANSFORM_TEX(poiMesh.uv[0], _DistortionFlowTexture1) + _Time.x * float4(0.5,0.5,0,0)) * 2 - 1;
+ flowVector *= float(0.5);
+ flowVector1 *= float(0.5);
+ return uv + ((flowVector.xy + flowVector1.xy) / 2) * distortionMask;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
new file mode 100644
index 00000000..9f912e20
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiUVDistortion.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 2a4b2526c06020d4a8bc36ca30ad64d1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
new file mode 100644
index 00000000..0e29a179
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc
@@ -0,0 +1,34 @@
+#ifndef POI_V2F
+ #define POI_V2F
+
+ struct v2f
+ {
+ float4 pos: SV_POSITION;
+ float4 uv0: TEXCOORD0;
+ float4 uv1: TEXCOORD1;
+ float3 normal: TEXCOORD2;
+ float3 tangentViewDir: TEXCOORD3;
+ float4 tangent: TEXCOORD4;
+ float4 worldPos: TEXCOORD5;
+ float4 localPos: TEXCOORD6;
+ float4 grabPos: TEXCOORD7;
+ float3 barycentricCoordinates: TEXCOORD8;
+ #if defined(GRAIN)
+ float4 worldDirection: TEXCOORD9;
+ #endif
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV: TEXCOORD10;
+ #endif
+ float3 modelPos: TEXCOORD11;
+ float angleAlpha: TEXCOORD12;
+ float4 vertexColor: TEXCOORD14;
+ #ifdef FUR
+ float furAlpha: TEXCOORD15;
+ #endif
+ UNITY_SHADOW_COORDS(16)
+ UNITY_FOG_COORDS(17)
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ UNITY_VERTEX_OUTPUT_STEREO
+ };
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
new file mode 100644
index 00000000..e933a021
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiV2F.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ee08c0a0cbf96384e8387fca82f995c1
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
new file mode 100644
index 00000000..1558e937
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc
@@ -0,0 +1,126 @@
+#ifndef POI_VERT
+ #define POI_VERT
+
+ float _VertexManipulationHeightUV;
+ float _VertexUnwrap;
+
+ #define PM UNITY_MATRIX_P
+
+ inline float4 CalculateFrustumCorrection()
+ {
+ float x1 = -PM._31 / (PM._11 * PM._34);
+ float x2 = -PM._32 / (PM._22 * PM._34);
+ return float4(x1, x2, 0, PM._33 / PM._34 + x1 * PM._13 + x2 * PM._23);
+ }
+
+ v2f vert(appdata v)
+ {
+ UNITY_SETUP_INSTANCE_ID(v);
+ v2f o;
+ #ifdef _COLOROVERLAY_ON
+ v.vertex.xyz = lerp(v.vertex.xyz, float3(v.uv0.x - .5, v.uv0.y - .5, 0), float(0));
+ #endif
+ #ifdef AUTO_EXPOSURE
+ applyLocalVertexTransformation(v.normal, v.tangent, v.vertex);
+ #endif
+
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_TRANSFER_INSTANCE_ID(v, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+
+ #ifdef _REQUIRE_UV2 //POI_MIRROR
+ applyMirrorRenderVert(v.vertex);
+ #endif
+
+ TANGENT_SPACE_ROTATION;
+ o.localPos = v.vertex;
+ o.worldPos = mul(unity_ObjectToWorld, o.localPos);
+ o.normal = UnityObjectToWorldNormal(v.normal);
+ //o.localPos.x *= -1;
+ //o.localPos.xz += sin(o.localPos.y * 100 + _Time.y * 5) * .0025;
+
+ float2 uvToUse = 0;
+
+ if (float(0) == 0)
+ {
+ uvToUse = v.uv0.xy;
+ }
+
+ if(float(0) == 1)
+ {
+ uvToUse = v.uv1.xy;
+ }
+
+ if(float(0) == 2)
+ {
+ uvToUse = v.uv2.xy;
+ }
+
+ if(float(0) == 3)
+ {
+ uvToUse = v.uv3.xy;
+ }
+ #ifdef AUTO_EXPOSURE
+ applyWorldVertexTransformation(o.worldPos, o.localPos, o.normal, uvToUse);
+ #endif
+ applyVertexGlitching(o.worldPos, o.localPos);
+ applySpawnInVert(o.worldPos, o.localPos, v.uv0.xy);
+ #ifdef AUTO_EXPOSURE
+ applyVertexRounding(o.worldPos, o.localPos);
+ #endif
+ o.pos = UnityObjectToClipPos(o.localPos);
+ o.grabPos = ComputeGrabScreenPos(o.pos);
+ o.uv0.xy = v.uv0.xy;
+ o.uv0.zw = v.uv1.xy;
+ o.uv1.xy = v.uv2.xy;
+ o.uv1.zw = v.uv3.xy;
+ o.vertexColor = v.color;
+ o.modelPos = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
+ o.tangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
+
+ #ifdef POI_BULGE
+ bulgyWolgy(o);
+ #endif
+
+
+ o.angleAlpha = 1;
+ #ifdef _SUNDISK_NONE //POI_RANDOM
+ o.angleAlpha = ApplyAngleBasedRendering(o.modelPos, o.worldPos);
+ #endif
+
+ #if defined(LIGHTMAP_ON)
+ o.lightmapUV.xy = v.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw;
+ #endif
+ #ifdef DYNAMICLIGHTMAP_ON
+ o.lightmapUV.zw = v.uv2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
+ #endif
+
+ UNITY_TRANSFER_SHADOW(o, o.uv0.xy);
+ UNITY_TRANSFER_FOG(o, o.pos);
+
+ #if defined(_PARALLAXMAP) // POI_PARALLAX
+ v.tangent.xyz = normalize(v.tangent.xyz);
+ v.normal = normalize(v.normal);
+ float3x3 objectToTangent = float3x3(
+ v.tangent.xyz,
+ cross(v.normal, v.tangent.xyz) * v.tangent.w,
+ v.normal
+ );
+ o.tangentViewDir = mul(objectToTangent, ObjSpaceViewDir(v.vertex));
+ #endif
+
+ #ifdef POI_META_PASS
+ o.pos = UnityMetaVertexPosition(v.vertex, v.uv1.xy, v.uv2.xy, unity_LightmapST, unity_DynamicLightmapST);
+ #endif
+
+ #if defined(GRAIN)
+ float4 worldDirection;
+
+ worldDirection.xyz = o.worldPos.xyz - _WorldSpaceCameraPos;
+ worldDirection.w = dot(o.pos, CalculateFrustumCorrection());
+ o.worldDirection = worldDirection;
+ #endif
+
+ return o;
+ }
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
new file mode 100644
index 00000000..3b953149
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVert.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 9eecfa95ba134f348b3f35bd2f174225
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
new file mode 100644
index 00000000..94c16148
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc
@@ -0,0 +1,93 @@
+#ifndef POI_VERTEX_MANIPULATION
+ #define POI_VERTEX_MANIPULATION
+
+ #include "CGI_PoiMath.cginc"
+
+ float4 _VertexManipulationLocalTranslation;
+ float4 _VertexManipulationLocalRotation;
+ float4 _VertexManipulationLocalScale;
+ float4 _VertexManipulationWorldTranslation;
+
+ float _VertexManipulationHeight;
+ float _VertexManipulationHeightBias;
+ sampler2D _VertexManipulationHeightMask; float4 _VertexManipulationHeightMask_ST;
+ float2 _VertexManipulationHeightPan;
+
+
+ //Vertex Glitching
+ float _EnableVertexGlitch;
+ sampler2D _VertexGlitchMap; float4 _VertexGlitchMap_ST;
+ float _VertexGlitchThreshold;
+ float _VertexGlitchFrequency;
+ float _VertexGlitchStrength;
+ // Rounding
+ float _VertexRoundingDivision;
+ float _VertexRoundingEnabled;
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 tangent, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ tangent.xyz = rotate_with_quaternion(tangent.xyz, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyLocalVertexTransformation(inout float3 normal, inout float4 vertex)
+ {
+ normal = rotate_with_quaternion(normal, float4(0,0,0,1));
+ vertex = transform(vertex, float4(0,0,0,1), float4(0,0,0,1), float4(1,1,1,1));
+
+ //vertex = float4(vertex.x + sin(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), vertex.y, vertex.z + cos(_Time.y*1.5 + vertex.y * 50) * .75 * smoothstep( .3, -1, vertex.y), 1);
+ }
+
+ void applyWorldVertexTransformation(inout float4 worldPos, inout float4 localPos, inout float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyWorldVertexTransformationShadow(inout float4 worldPos, inout float4 localPos, float3 worldNormal, float2 uv)
+ {
+ float3 heightOffset = (tex2Dlod(_VertexManipulationHeightMask, float4(TRANSFORM_TEX(uv, _VertexManipulationHeightMask) + float4(0,0,0,0) * _Time.x, 0, 0)).r - float(0)) * float(0) * worldNormal;
+ worldPos.rgb += float4(0,0,0,1).xyz * float4(0,0,0,1).w + heightOffset;
+ localPos.xyz = mul(unity_WorldToObject, worldPos);
+ }
+
+ void applyVertexRounding(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if (float(0))
+ {
+ worldPos.xyz = (ceil(worldPos * float(500)) / float(500)) - 1 / float(500) * .5;
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+ void applyVertexGlitching(inout float4 worldPos, inout float4 localPos)
+ {
+
+ if(_EnableVertexGlitch)
+ {
+ float3 forward = getCameraPosition() - mul(unity_ObjectToWorld, float4(0, 0, 0, 1)).xyz;
+ forward.y = 0;
+ forward = normalize(forward);
+ float3 glitchDirection = normalize(cross(float3(0, 1, 0), forward));
+ float glitchAmount = frac(sin(dot(_Time.xy + worldPos.y, float2(12.9898, 78.233))) * 43758.5453123) * 2 - 1;
+ /*
+ float uvl = worldPos.y * _VertexGlitchDensity + _Time.x * _VertexGlitchMapPanSpeed;
+ float uvr = worldPos.y * _VertexGlitchDensity - _Time.x * _VertexGlitchMapPanSpeed;
+ float glitchAmountLeft = tex2Dlod(_VertexGlitchMap, float4(uvl, uvl, 0, 0)).r;
+ float glitchAmountRight = -tex2Dlod(_VertexGlitchMap, float4(uvr, uvr, 0, 0)).r;
+ float glitchAmount = glitchAmountLeft + glitchAmountRight;
+ */
+ float time = _Time.y * _VertexGlitchFrequency;
+ float randomGlitch = (sin(time) + sin(2.2 * time + 5.52) + sin(2.9 * time + 0.93) + sin(4.6 * time + 8.94)) / 4;
+ worldPos.xyz += glitchAmount * glitchDirection * (_VertexGlitchStrength * .01) * step(_VertexGlitchThreshold, randomGlitch);
+ localPos = mul(unity_WorldToObject, worldPos);
+ }
+ }
+
+#endif
+//
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
new file mode 100644
index 00000000..de2f0a72
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVertexManipulations.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: ddd17e13cf1d2c0458d4700b379dad96
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
new file mode 100644
index 00000000..ec2d37e4
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc
@@ -0,0 +1,266 @@
+#ifndef POI_VIDEO
+ #define POI_VIDEO
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoPixelTexture); float4 _VideoPixelTexture_ST;
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoMaskTexture); float4 _VideoMaskTexture_ST;
+
+ float _VideoUVNumber;
+ float _VideoType;
+ float3 pixels;
+ float2 _VideoResolution;
+ sampler2D _VideoGameboyRamp;
+ half _VideoBacklight;
+ half _VideoCRTRefreshRate;
+ half _VideoCRTPixelEnergizedTime;
+ half _VideoEnableVideoPlayer;
+ half _VideoRepeatVideoTexture;
+ half _VideoPixelateToResolution;
+ float2 _VideoMaskPanning;
+ // Video Settings
+ half _VideoSaturation;
+ half _VideoContrast;
+ float2 _VideoTiling;
+ float2 _VideoOffset;
+ float2 _VideoPanning;
+ //Debug
+ half _VideoEnableDebug;
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_VideoDebugTexture); float4 _VideoDebugTexture_ST;
+
+
+ sampler2D _VRChat_VideoPlayer;
+ float4 _VRChat_VideoPlayer_TexelSize;
+
+ float4 globalVideoPlayerColor;
+ float3 globalColorToDisplayOnScreen;
+ float globalVideoOn;
+
+ float3 applyBacklight(float3 albedo, half backlightStrength)
+ {
+ return max(backlightStrength, albedo.rgb);
+ }
+
+ float3 applyViewAngleTN(float3 albedo)
+ {
+ float3 reflectionVector = normalize(reflect(poiCam.viewDir.rgb, poiMesh.normals[1].rgb));
+ float upwardShift = dot(reflectionVector, poiMesh.binormal);
+ upwardShift = pow(upwardShift, 1);
+ float sideShift = dot(reflectionVector, poiMesh.tangent);
+ sideShift *= pow(sideShift, 3);
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = LinearToGammaSpace(albedo);
+ #endif
+ albedo = saturate(lerp(half3(0.5, 0.5, 0.5), albedo, upwardShift + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ albedo = GammaToLinearSpace(albedo);
+ #endif
+ albedo = (lerp(albedo, albedo.gbr, sideShift));
+ return albedo;
+ }
+
+ float calculateCRTPixelBrightness()
+ {
+ float totalPixels = _VideoResolution.x * _VideoResolution.y;
+ float2 uvPixel = float2((floor((1 - poiMesh.uv[_VideoUVNumber].y) * _VideoResolution.y)) / _VideoResolution.y, (floor(poiMesh.uv[_VideoUVNumber].x * _VideoResolution.x)) / _VideoResolution.x);
+ float currentPixelNumber = _VideoResolution.x * (_VideoResolution.y * uvPixel.x) + _VideoResolution.y * uvPixel.y;
+ float currentPixelAlpha = currentPixelNumber / totalPixels;
+ half electronBeamAlpha = frac(_Time.y * _VideoCRTRefreshRate);
+ float electronBeamPixelNumber = totalPixels * electronBeamAlpha;
+
+ float DistanceInPixelsFromCurrentElectronBeamPixel = 0;
+ if (electronBeamPixelNumber >= currentPixelNumber)
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber - currentPixelNumber;
+ }
+ else
+ {
+ DistanceInPixelsFromCurrentElectronBeamPixel = electronBeamPixelNumber + (totalPixels - currentPixelNumber);
+ }
+ float CRTFrameTime = 1 / _VideoCRTRefreshRate;
+ float timeSincecurrentPixelWasHitByElectronBeam = (DistanceInPixelsFromCurrentElectronBeamPixel / totalPixels);
+
+ return saturate(_VideoCRTPixelEnergizedTime - timeSincecurrentPixelWasHitByElectronBeam);
+ }
+
+ void applyContrastSettings(inout float3 pixel)
+ {
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = LinearToGammaSpace(pixel);
+ #endif
+ pixel = saturate(lerp(half3(0.5, 0.5, 0.5), pixel, _VideoContrast + 1));
+ #if !UNITY_COLORSPACE_GAMMA
+ pixel = GammaToLinearSpace(pixel);
+ #endif
+ }
+
+ void applySaturationSettings(inout float3 pixel)
+ {
+ pixel = lerp(pixel.rgb, dot(pixel.rgb, float3(0.3, 0.59, 0.11)), -_VideoSaturation);
+ }
+
+ void applyVideoSettings(inout float3 pixel)
+ {
+ applySaturationSettings(pixel);
+ applyContrastSettings(pixel);
+ }
+
+ void calculateLCD(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateTN(inout float4 albedo)
+ {
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ globalColorToDisplayOnScreen = applyBacklight(globalColorToDisplayOnScreen, _VideoBacklight * .01);
+ globalColorToDisplayOnScreen = applyViewAngleTN(globalColorToDisplayOnScreen);
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateCRT(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ float brightness = calculateCRTPixelBrightness();
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * brightness * _VideoBacklight;
+ }
+ void calculateOLED(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ albedo.rgb = globalColorToDisplayOnScreen * pixels * _VideoBacklight;
+ }
+ void calculateGameboy(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+ half brightness = saturate((globalColorToDisplayOnScreen.r + globalColorToDisplayOnScreen.g + globalColorToDisplayOnScreen.b) * .3333333);
+ albedo.rgb = tex2D(_VideoGameboyRamp, brightness);
+ }
+ void calculateProjector(inout float4 albedo)
+ {
+
+ if(_VideoEnableVideoPlayer == 0)
+ {
+ globalColorToDisplayOnScreen = albedo;
+ }
+ applyVideoSettings(globalColorToDisplayOnScreen);
+
+ float3 projectorColor = albedo * globalColorToDisplayOnScreen * _VideoBacklight;
+ albedo.r = clamp(projectorColor.r, albedo.r, 1000);
+ albedo.g = clamp(projectorColor.g, albedo.g, 1000);
+ albedo.b = clamp(projectorColor.b, albedo.b, 1000);
+ }
+
+ void applyScreenEffect(inout float4 albedo, inout float3 videoEmission)
+ {
+ float4 albedoBeforeScreen = albedo;
+
+ pixels = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoPixelTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoPixelTexture) * _VideoResolution);
+ globalVideoOn = 0;
+
+ if(_VideoEnableVideoPlayer == 1)
+ {
+ float4 videoTexture = 0;
+
+ if(_VideoPixelateToResolution)
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, round(TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoResolution + .5) / _VideoResolution);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, round(poiMesh.uv[_VideoUVNumber] * _VideoResolution + .5) / _VideoResolution);
+ }
+ }
+ else
+ {
+
+ if(_VideoEnableDebug)
+ {
+ videoTexture = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoDebugTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoDebugTexture) * _VideoTiling + _VideoOffset);
+ }
+ else
+ {
+ videoTexture = tex2D(_VRChat_VideoPlayer, ((poiMesh.uv[_VideoUVNumber] + _Time.x * _VideoPanning) * _VideoTiling) + _VideoOffset);
+ }
+ }
+ if(videoTexture.a == 1)
+ {
+ globalColorToDisplayOnScreen = videoTexture.rgb;
+ globalVideoOn = 1;
+ }
+ }
+
+
+ if(_VideoRepeatVideoTexture == 1)
+ {
+ if(poiMesh.uv[_VideoUVNumber].x > 1 || poiMesh.uv[_VideoUVNumber].x < 0 || poiMesh.uv[_VideoUVNumber].y > 1 || poiMesh.uv[_VideoUVNumber].y < 0)
+ {
+ return;
+ }
+ }
+
+ switch(_VideoType)
+ {
+ case 0: // LCD
+ {
+ calculateLCD(albedo);
+ break;
+ }
+ case 1: // TN
+ {
+ calculateTN(albedo);
+ break;
+ }
+ case 2: // CRT
+ {
+ calculateCRT(albedo);
+ break;
+ }
+ case 3: // OLED
+ {
+ calculateOLED(albedo);
+ break;
+ }
+ case 4: // Gameboy
+ {
+ calculateGameboy(albedo);
+ break;
+ }
+ case 5: // Projector
+ {
+ calculateProjector(albedo);
+ break;
+ }
+ }
+
+ float screenMask = UNITY_SAMPLE_TEX2D_SAMPLER(_VideoMaskTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_VideoUVNumber], _VideoMaskTexture) + _Time.x * _VideoMaskPanning);
+ albedo = lerp(albedoBeforeScreen, albedo, screenMask);
+ videoEmission = max(albedo.rgb * screenMask - 1, 0);
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
new file mode 100644
index 00000000..ec044eed
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVideo.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 4b767f498a8d4bb4cb5a1d5d6a36aab7
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
new file mode 100644
index 00000000..db3d3130
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc
@@ -0,0 +1,304 @@
+#ifndef POI_VORONOI
+ #define POI_VORONOI
+
+ #include "CGI_PoiRNG.cginc"
+
+ float _VoronoiSpace;
+ float _VoronoiBlend;
+ float _VoronoiType;
+ float4 _VoronoiColor0;
+ float _VoronoiEmission0;
+ float4 _VoronoiColor1;
+ float _VoronoiEmission1;
+ float2 _VoronoiGradient;
+ float _VoronoiScale;
+ float3 _VoronoiSpeed;
+ float _VoronoiEnableRandomCellColor;
+ float2 _VoronoiRandomMinMaxSaturation;
+ float2 _VoronoiRandomMinMaxBrightness;
+ float3 randomPoint;
+ float _VoronoiEffectsMaterialAlpha;
+
+ POI_TEXTURE_NOSAMPLER(_VoronoiMask);
+ POI_TEXTURE_NOSAMPLER(_VoronoiNoise);
+ float _VoronoiNoiseIntensity;
+
+ float2 inoise(float3 P, float jitter)
+ {
+ float3 Pi = mod(floor(P), 289.0);
+ float3 Pf = frac(P);
+ float3 oi = float3(-1.0, 0.0, 1.0);
+ float3 of = float3(-0.5, 0.5, 1.5);
+ float3 px = Permutation(Pi.x + oi);
+ float3 py = Permutation(Pi.y + oi);
+
+ float3 p, ox, oy, oz, dx, dy, dz;
+ float2 F = 1e6;
+
+ for (int i = 0; i < 3; i ++)
+ {
+ for (int j = 0; j < 3; j ++)
+ {
+ p = Permutation(px[i] + py[j] + Pi.z + oi); // pij1, pij2, pij3
+
+ ox = frac(p * K) - Ko;
+ oy = mod(floor(p * K), 7.0) * K - Ko;
+
+ p = Permutation(p);
+
+ oz = frac(p * K) - Ko;
+
+ dx = Pf.x - of[i] + jitter * ox;
+ dy = Pf.y - of[j] + jitter * oy;
+ dz = Pf.z - of + jitter * oz;
+
+ float3 d = dx * dx + dy * dy + dz * dz; // dij1, dij2 and dij3, squared
+
+ //Find lowest and second lowest distances
+ for (int n = 0; n < 3; n ++)
+ {
+ if (d[n] < F[0])
+ {
+ F[1] = F[0];
+ F[0] = d[n];
+ randomPoint = p;
+ }
+ else if(d[n] < F[1])
+ {
+ F[1] = d[n];
+ }
+ }
+ }
+ }
+
+ return F;
+ }
+
+ float voronoi2D(in float2 x, float scale, float2 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float2 n = floor(x);
+ float2 f = frac(x);
+
+ // first pass: regular voronoi
+ float2 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ float2 g = float2(float(i), float(j));
+ float2 o = random2(n + g);
+ float2 currentPoint = o;
+
+ float2 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint.xy = currentPoint;
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ float2 g = mg + float2(float(q), float(r));
+ float2 o = random2(n + g);
+
+ float2 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ return md;
+ }
+
+ float voronoi3D(in float3 x, float scale, float3 speed)
+ {
+ x *= scale;
+ x += speed * _Time.x;
+ float3 n = floor(x);
+ float3 f = frac(x);
+
+ // first pass: regular voronoi
+ float3 mg, mr;
+ float md = 8.0;
+ for (int j = -1; j <= 1; j ++)
+ {
+ for (int i = -1; i <= 1; i ++)
+ {
+ for (int h = -1; h <= 1; h ++)
+ {
+ float3 g = float3(float(h), float(i), float(j));
+ float3 o = random3(n + g);
+ float3 currentPoint = o;
+
+ float3 r = g + o - f;
+ float d = dot(r, r);
+
+ if (d < md)
+ {
+ md = d;
+ mr = r;
+ mg = g;
+ randomPoint = currentPoint;
+ }
+ }
+ }
+ }
+
+ // second pass: distance to borders
+ md = 8.0;
+ for (int r = -2; r <= 2; r ++)
+ {
+ for (int q = -2; q <= 2; q ++)
+ {
+ for (int p = -2; p <= 2; p ++)
+ {
+ float3 g = mg + float3(float(p), float(q), float(r));
+ float3 o = random3(n + g);
+
+ float3 r = g + o - f;
+
+ if (dot(mr - r, mr - r) > 0.00001)
+ {
+ md = min(md, dot(0.5 * (mr + r), normalize(r - mr)));
+ }
+ }
+ }
+ }
+ return md;
+ }
+
+
+
+ // fracal sum, range -1.0 - 1.0
+ float VoronoiNoise_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ float VoronoiNoiseDiff_Octaves(float3 p, float scale, float3 speed, int octaveNumber, float octaveScale, float octaveAttenuation, float jitter, float time)
+ {
+ float freq = scale;
+ float weight = 1.0f;
+ float sum = 0;
+ for (int i = 0; i < octaveNumber; i ++)
+ {
+ float2 F = inoise(p * freq + time * speed, jitter) * weight;
+
+ sum += sqrt(F[1]) - sqrt(F[0]);
+
+ freq *= octaveScale;
+ weight *= 1.0f - octaveAttenuation;
+ }
+ return sum;
+ }
+
+ void applyVoronoi(inout float4 finalColor, inout float3 VoronoiEmission)
+ {
+ float voronoiOctaveNumber = 1;
+ float voronoiOctaveScale = 1;
+ float voronoiOctaveAttenuation = 1;
+ randomPoint = 0;
+ float4 voronoiColor1 = _VoronoiColor1;
+
+ float voronoi = 0;
+
+ float3 position = 0;
+
+
+ if (_VoronoiSpace == 0)
+ {
+ position = poiMesh.localPos;
+ }
+
+ if(_VoronoiSpace == 1)
+ {
+ position = poiMesh.worldPos;
+ }
+
+ if(_VoronoiSpace == 2)
+ {
+ position = float3(poiMesh.uv[0].x, poiMesh.uv[0].y, 0);
+ }
+
+ float mask = POI2D_SAMPLER_PAN(_VoronoiMask, _MainTex, poiMesh.uv[_VoronoiMaskUV], _VoronoiMaskPan).r;
+ float edgeNoise = POI2D_SAMPLER_PAN(_VoronoiNoise, _MainTex, poiMesh.uv[_VoronoiNoiseUV], _VoronoiNoisePan).r * _VoronoiNoiseIntensity;
+
+
+ if(_VoronoiType == 0) // Basic
+ {
+ voronoi = voronoi2D(position.xy, _VoronoiScale, _VoronoiSpeed);
+ }
+
+ if (_VoronoiType == 1) // Diff
+ {
+ voronoi = VoronoiNoiseDiff_Octaves(position, _VoronoiScale, _VoronoiSpeed, voronoiOctaveNumber, voronoiOctaveScale, voronoiOctaveAttenuation, 1, _Time.x);
+ }
+
+ if (_VoronoiType == 2) // Fixed Border
+ {
+ voronoi = voronoi3D(position, _VoronoiScale, _VoronoiSpeed);
+ // isolines
+ //color = c.x * (0.5 + 0.5 * sin(64.0 * c.x)) * 1.0;
+ }
+
+ if (_VoronoiEnableRandomCellColor == 1)
+ {
+ float3 rando = random3(randomPoint);
+ fixed hue = rando.x;
+ fixed saturation = lerp(_VoronoiRandomMinMaxSaturation.x, _VoronoiRandomMinMaxSaturation.y, rando.y);
+ fixed value = lerp(_VoronoiRandomMinMaxBrightness.x, _VoronoiRandomMinMaxBrightness.y, rando.z);
+ float3 hsv = float3(hue, saturation, value);
+
+ voronoiColor1.rgb = HSVtoRGB(hsv);
+ }
+
+ float2 voronoiGradient = _VoronoiGradient;
+ voronoiGradient.xy += edgeNoise;
+ float ramp = smoothstep(voronoiGradient.x, voronoiGradient.y, voronoi);
+
+
+ if(_VoronoiBlend == 0)
+ {
+ float4 voronoiColor = lerp(_VoronoiColor0, voronoiColor1, ramp);
+
+ if(_VoronoiEffectsMaterialAlpha)
+ {
+ finalColor.rgba = lerp(finalColor, voronoiColor, mask);
+ }
+ else
+ {
+ finalColor.rgb = lerp(finalColor.rgb, voronoiColor.rgb, mask * voronoiColor.a);
+ }
+ }
+ float4 voronoiEmissionColor = lerp(_VoronoiColor0 * _VoronoiEmission0, voronoiColor1 * _VoronoiEmission1, ramp);
+ VoronoiEmission = voronoiEmissionColor.rgb * mask * voronoiEmissionColor.a;
+ }
+
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
new file mode 100644
index 00000000..0bc530f5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiVoronoi.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 49d98d9a545c9e2459fd0dbc16843378
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
new file mode 100644
index 00000000..49c602c0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc
@@ -0,0 +1,111 @@
+#ifndef POI_WIREFRAME
+ #define POI_WIREFRAME
+
+ UNITY_DECLARE_TEX2D_NOSAMPLER(_WireframeTexture); float4 _WireframeTexture_ST;
+ float2 _WireframeTexturePan;
+ float _WireframeSmoothing;
+ float _WireframeThickness;
+ float4 _WireframeColor;
+ float _WireframeAlpha;
+ float _WireframeEnable;
+ float _WireframeWaveEnabled;
+ float _WireframeWaveDensity;
+ float _WireframeWaveSpeed;
+ float _WireframeEdgeOpacity;
+ float _WireframeFaceOpacity;
+ half _WireframeEmissionAlpha;
+ float _WireframeEmissionStrength;
+ float _WireframeQuad;
+ float _WireframeUV;
+
+ #ifndef POI_SHADOW
+ void applyWireframe(inout float3 wireframeEmission, inout float4 albedo)
+ {
+
+ if (_WireframeEnable)
+ {
+ float4 colorMap = UNITY_SAMPLE_TEX2D_SAMPLER(_WireframeTexture, _MainTex, TRANSFORM_TEX(poiMesh.uv[_WireframeUV], _WireframeTexture) + _Time.x * _WireframeTexturePan);
+ float size = _WireframeThickness;
+ half3 width = abs(ddx(poiMesh.barycentricCoordinates)) + abs(ddy(poiMesh.barycentricCoordinates));
+ half3 eF = smoothstep(0, width * size, poiMesh.barycentricCoordinates);
+ half minBary = size > 0 ? min(min(eF.x, eF.y), eF.z): 1;
+
+ float4 wireframeColor = _WireframeColor * colorMap;
+
+ albedo.a *= lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ albedo.rgb = lerp(lerp(albedo.rgb, wireframeColor.rgb, wireframeColor.a), albedo.rgb, minBary);
+ wireframeEmission = wireframeColor.rgb * _WireframeEmissionStrength * (1 - minBary) * _WireframeColor.a;
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle v2f IN[3], inout TriangleStream < v2f > tristream)
+ {
+
+ if(_WireframeQuad)
+ {
+ float e1 = length(IN[0].localPos - IN[1].localPos);
+ float e2 = length(IN[1].localPos - IN[2].localPos);
+ float e3 = length(IN[2].localPos - IN[0].localPos);
+
+ float3 quad = 0;
+ if(e1 > e2 && e1 > e3)
+ quad.y = 1.;
+ else if(e2 > e3 && e2 > e1)
+ quad.x = 1;
+ else
+ quad.z = 1;
+
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0) + quad;
+ IN[1].barycentricCoordinates = fixed3(0, 0, 1) + quad;
+ IN[2].barycentricCoordinates = fixed3(0, 1, 0) + quad;
+ }
+ else
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ }
+
+
+
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #else
+
+ float applyShadowWireframe(float2 uv, float3 barycentricCoordinates, float3 normal, float3 worldPos)
+ {
+
+ if(_WireframeEnable)
+ {
+ float wireframeFadeAlpha = _WireframeAlpha;
+ float3 finalWireframeColor = 0;
+
+ float3 barys;
+ barys.xy = barycentricCoordinates;
+ barys.z = 1 - barys.x - barys.y;
+ float3 deltas = fwidth(barys);
+ float3 smoothing = deltas * _WireframeSmoothing;
+ float wireframeThickness = _WireframeThickness;
+ float3 thickness = deltas * wireframeThickness;
+ barys = smoothstep(thickness, thickness + smoothing, barys);
+ float minBary = min(barys.x, min(barys.y, barys.z));
+
+ return lerp(_WireframeEdgeOpacity, _WireframeFaceOpacity, minBary);
+ }
+ }
+
+ [maxvertexcount(3)]
+ void wireframeGeom(triangle V2FShadow IN[3], inout TriangleStream < V2FShadow > tristream)
+ {
+ IN[0].barycentricCoordinates = fixed3(1, 0, 0);
+ IN[1].barycentricCoordinates = fixed3(0, 1, 0);
+ IN[2].barycentricCoordinates = fixed3(0, 0, 1);
+ tristream.Append(IN[0]);
+ tristream.Append(IN[1]);
+ tristream.Append(IN[2]);
+ }
+ #endif
+#endif
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
new file mode 100644
index 00000000..753f1a20
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_PoiWireframe.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: dfd85e3df4735664db6d111e707c0bd5
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
new file mode 100644
index 00000000..319de57c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc
@@ -0,0 +1,171 @@
+#ifndef POICLUDES
+ #define POICLUDES
+
+ UNITY_DECLARE_TEX2D(_MainTex); float4 _MainTex_ST; float4 _MainTex_TexelSize;
+ sampler2D _PoiGrab;
+ sampler2D _CameraDepthTexture;
+ float _Cutoff;
+ float _AlphaMod;
+
+ //Structs
+ struct appdata
+ {
+ float4 vertex: POSITION;
+ float3 normal: NORMAL;
+ float4 tangent: TANGENT;
+ float4 color: COLOR;
+ float2 uv0: TEXCOORD0;
+ float2 uv1: TEXCOORD1;
+ float2 uv2: TEXCOORD2;
+ float2 uv3: TEXCOORD3;
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+ };
+
+ #ifdef OUTLINE
+ float _LineWidth;
+ float _OutlineEmission;
+ float4 _LineColor;
+ sampler2D _OutlineTexture; float4 _OutlineTexture_ST; float2 _OutlineTexturePan; float _OutlineTextureUV;
+ float4 _OutlineFadeDistance;
+ float4 _OutlineGlobalPan;
+ #endif
+
+ struct PoiLighting
+ {
+ half3 direction;
+ half3 color;
+ fixed attenuation;
+ #ifdef FORWARD_ADD_PASS
+ fixed additiveShadow;
+ #endif
+ half3 directLighting;
+ half3 indirectLighting;
+ half lightMap;
+ half3 rampedLightMap;
+ half3 finalLighting;
+ half3 halfDir;
+ half nDotL;
+ half nDotH;
+ half lDotv;
+ half lDotH;
+ half nDotV;
+ half N0DotV;
+ half diffuseTerm;
+
+ // World normal dot half direction
+ #ifdef POI_VAR_DOTNH
+ half dotNH;
+ #endif
+
+ // Light direction dot half direction
+ #ifdef POI_VAR_DOTLH
+ half dotLH;
+ #endif
+
+ #ifdef VERTEXLIGHT_ON
+ // Non Important Lights
+ float4 vDotNL;
+ float3 vColor[4];
+ float4 vCorrectedDotNL;
+ float4 vAttenuation;
+ float4 vAttenuationDotNL;
+ float3 vPosition[4];
+ float3 vDirection[4];
+ float3 vFinalLighting;
+ float3 vHalfDir[4];
+
+ #ifdef POI_VAR_DOTLH
+ half4 vDotLH;
+ #endif
+
+ #ifdef POI_VAR_DOTNH
+ half4 vDotNH;
+ #endif
+
+ #endif
+ };
+
+ struct PoiCamera
+ {
+ half3 viewDir;
+ half3 tangentViewDir;
+ half3 forwardDir;
+ half3 worldPos;
+ float viewDotNormal;
+ float distanceToModel;
+ float distanceToVert;
+ float3 reflectionDir;
+ float3 vertexReflectionDir;
+ float2 screenUV;
+ float4 clipPos;
+ #if defined(GRAIN)
+ float4 worldDirection;
+ #endif
+ float4 grabPos;
+ };
+
+ struct PoiMesh
+ {
+ float3 normals[2];
+ float3 tangent;
+ float3 binormal;
+ float3 localPos;
+ float3 worldPos;
+ float3 modelPos;
+ float3 tangentSpaceNormal;
+ float2 uv[5];
+ float4 vertexColor;
+ fixed3 barycentricCoordinates;
+ #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)
+ float4 lightmapUV;
+ #endif
+ float isFrontFace;
+ #ifdef FUR
+ float furAlpha;
+ #endif
+ };
+
+ struct PoiTangentData
+ {
+ float3x3 tangentTransform;
+ float3x3 tangentToWorld;
+ };
+
+ struct FragmentCommonData
+ {
+ half3 diffColor, specColor;
+ // Note: smoothness & oneMinusReflectivity for optimization purposes, mostly for DX9 SM2.0 level.
+ // Most of the math is being done on these (1-x) values, and that saves a few precious ALU slots.
+ half oneMinusReflectivity, smoothness;
+ float3 normalWorld;
+ float3 eyeVec;
+ half alpha;
+ float3 posWorld;
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 reflUVW;
+ #endif
+
+ #if UNITY_STANDARD_SIMPLE
+ half3 tangentSpaceNormal;
+ #endif
+ };
+
+ struct Debug
+ {
+ float debug1;
+ float2 debug2;
+ float3 debug3;
+ float4 debug4;
+ };
+
+ static Debug debug;
+ static PoiLighting poiLight;
+ static PoiCamera poiCam;
+ static PoiMesh poiMesh;
+ static UnityGI gi;
+ static FragmentCommonData s;
+ static PoiTangentData poiTData;
+
+#endif
+
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
new file mode 100644
index 00000000..587a989c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Includes/CGI_Poicludes.cginc.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: eef05d1511abda8459c712be46920f49
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
new file mode 100644
index 00000000..97642b6a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 37796bac8d80ad348a9ee2ec9aa2eca9
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
new file mode 100644
index 00000000..2cb2f335
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader
@@ -0,0 +1,7648 @@
+Shader "Hidden/.poiyomi/• Poiyomi Toon •/yan-b188a58c"
+{
+ Properties
+ {
+ [HideInInspector] shader_is_using_thry_editor ("", Float) = 0
+ [HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Toon V7.0.100</color>", Float) = 0
+ [HideInInspector] shader_presets ("poiToonPresets", Float) = 0
+ [HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
+
+ [HideInInspector] footer_youtube ("youtube footer button", Float) = 0
+ [HideInInspector] footer_twitter ("twitter footer button", Float) = 0
+ [HideInInspector] footer_patreon ("patreon footer button", Float) = 0
+ [HideInInspector] footer_discord ("discord footer button", Float) = 0
+ [HideInInspector] footer_github ("github footer button", Float) = 0
+
+ // Keyword to remind users in the VRChat SDK that this material hasn't been locked. Inelegant but it works.
+ [HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Int) = 1
+ [ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Int) = 0
+ [Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Int) = 0
+
+ [ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)]_Mode("Rendering Preset--{on_value_actions:[
+ {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2450}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=1}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2451}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
+ {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:RenderType=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
+ {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3000}, {type:SET_PROPERTY,data:render_type=Transparent}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0}, {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3}, {type:SET_PROPERTY,data:_AlphaToMask=0}, {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4}, {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
+ }]}]}", Int) = 0
+ [HideInInspector] m_LockingInfo ("Locking Info--{button_right:{text:Tutorial,action:{type:URL,data:https://youtu.be/asWeDJb5LAo},hover:YouTube},is_hideable:true}", Float) = 0
+ [Helpbox(1)] _HelpBoxLocking ("LOCKING IN THE SHADER WILL DRAMATICALLY INCREASE PERFORMANCE AND DRAMATICALLY LOWER THE FILE SIZE OF AN AVATAR PACKAGE.
+
+ LOCKED IN MATERIALS CANNOT BE ANIMATED WITHOUT SETTING THE SPECIFIC PROPERTY TO DYNAMIC. RIGHT CLICK MATERIAL PROPERTIES YOU WISH TO ANIMATE, A CLOCK ICON WILL APPEAR BESIDE THE PROPERTY SIGNIFYING THAT IT CAN BE ANIMATED.
+
+ FOR MORE INFORMATION ON LOCKING PLEASE WATCH THE LOCKING TUTORIAL IN THE HEADER ABOVE.", Int) = 0
+ [Helpbox(2)] _HelpBoxHideLocking ("TO HIDE THIS CATEGORY SELECT CUSTOM UI AT THE TOP AND UNCHECK THE LOCKING INFO CATEGORY", Float) = 0
+ // Main
+ [HideInInspector] m_mainOptions ("Main", Float) = 0
+ _Color ("Color & Alpha", Color) = (1, 1, 1, 1)
+ _MainTex ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainTextureUV ("UV", Int) = 0
+ _Saturation ("Saturation", Range(-1, 1)) = 0
+ _MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
+ [Normal]_BumpMap ("Normal Map", 2D) = "bump" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _BumpMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_BumpMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ _BumpScale ("Normal Intensity", Range(0, 10)) = 1
+ _AlphaMask ("Alpha Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_AlphaMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AlphaMaskUV ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector] m_start_MainHueShift ("Hue Shift", Float) = 0
+ [HideInInspector][Toggle(COLOR_GRADING_HDR)]_MainHueShiftToggle ("Toggle Hueshift", Float) = 0
+ [ToggleUI]_MainHueShiftReplace ("Replace?", Float) = 1
+ _MainHueShift ("Hue Shift", Range(0, 1)) = 0
+ _MainHueShiftSpeed ("Shift Speed", Float) = 0
+ _MainHueShiftMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainHueShiftMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainHueShiftMaskUV ("UV", Int) = 0
+ [HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
+
+ // RGB Masking
+ [HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
+ [HideInInspector][Toggle(VIGNETTE)]_RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
+ [ToggleUI]_RGBUseVertexColors ("Use Vertex Colors", Float) = 0
+ [ToggleUI]_RGBBlendMultiplicative ("Multiplicative?", Float) = 0
+ _RGBMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBMaskPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBMaskUV ("UV", int) = 0
+ _RedColor ("R Color", Color) = (1, 1, 1, 1)
+ _RedTexure ("R Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBRedPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBRed_UV ("UV", int) = 0
+ _GreenColor ("G Color", Color) = (1, 1, 1, 1)
+ _GreenTexture ("G Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBGreenPanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBGreen_UV ("UV", int) = 0
+ _BlueColor ("B Color", Color) = (1, 1, 1, 1)
+ _BlueTexture ("B Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RGBBluePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RGBBlue_UV ("UV", int) = 0
+ // RGB MASKED NORMALS
+ [Toggle(GEOM_TYPE_MESH)]_RgbNormalsEnabled ("Enable Normals", Float) = 0
+ [ToggleUI]_RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
+ [Normal]_RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalRPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalRUV ("UV", int) = 0
+ _RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalGPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalGUV ("UV", int) = 0
+ _RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [Normal]_RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" { }
+ [HideInInspector]_RgbNormalBPan ("Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_RgbNormalBUV ("UV", int) = 0
+ _RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0,10)) = 0
+ [HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
+
+ // Detail Options
+ [HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(FINALPASS)]_DetailEnabled ("Enable", Float) = 0
+ _DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" { }
+ [HideInInspector][Vector2]_DetailMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailMaskUV ("UV", Int) = 0
+ _DetailTint ("Detail Texture Tint", Color) = (1, 1, 1)
+ _DetailTex ("Detail Texture", 2D) = "gray" { }
+ [HideInInspector][Vector2]_DetailTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailTexUV ("UV", Int) = 0
+ _DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
+ _DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
+ [Normal]_DetailNormalMap ("Detail Normal", 2D) = "bump" { }
+ _DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
+ [HideInInspector][Vector2]_DetailNormalMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DetailNormalMapUV ("UV", Int) = 0
+ [HideInInspector] m_end_DetailOptions ("Details", Float) = 0
+
+ // Vertex Colors
+ [HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
+ _MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
+ _MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
+
+ //Vertex Manipulations
+ [HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
+ [HideInInspector][Toggle(AUTO_EXPOSURE)]_VertexManipulationsEnabled ("Enabled", Float) = 0
+ [Vector3]_VertexManipulationLocalTranslation ("Local Translation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalRotation ("Local Rotation", Vector) = (0, 0, 0, 1)
+ [Vector3]_VertexManipulationLocalScale ("Local Scale", Vector) = (1, 1, 1, 1)
+ [Vector3]_VertexManipulationWorldTranslation ("World Translation", Vector) = (0, 0, 0, 1)
+ _VertexManipulationHeight ("Vertex Height", Float) = 0
+ _VertexManipulationHeightMask ("Height Map", 2D) = "while" { }
+ [HideInInspector][Vector2]_VertexManipulationHeightPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _VertexManipulationHeightUV ("UV", Int) = 0
+ _VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
+ [ToggleUI]_VertexRoundingEnabled ("Rounding Enabled", Float) = 0
+ _VertexRoundingDivision ("Division Amount", Float) = 500
+ [HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
+
+ // Alpha Options
+ [HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
+ _Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
+ [ToggleUI]_DitheringEnabled ("Enable Dithering", Float) = 0
+ _DitherGradient ("Dither Gradient", Range(0, 1)) = .1
+ [ToggleUI]_ForceOpaque ("Force Opaque", Float) = 0
+ _MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
+ [Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
+ [ToggleUI]_MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
+ _MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
+ [ToggleUI]_AlphaPremultiply ("Alpha Premultiply", Float) = 0
+ _AlphaMod ("Alpha Mod", Range(-1, 1)) = 0.0
+ [HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
+
+ // Decal Texture
+ [HideInInspector] m_start_DecalSection ("Decal", Float) = 0
+ [HideInInspector][Toggle(GEOM_TYPE_BRANCH)]_DecalEnabled ("Enable", Float) = 0
+ _DecalColor ("Color", Color) = (1, 1, 1, 1)
+ _DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _DecalTexture ("Decal", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalTextureUV ("UV", Int) = 0
+ _DecalMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_DecalMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DecalMaskUV ("UV", Int) = 0
+ [ToggleUI]_DecalTiled ("Tiled?", Float) = 0
+ [Vector2]_DecalScale ("Scale", Vector) = (1, 1, 0, 0)
+ [Vector2]_DecalPosition ("Position", Vector) = (.5, .5, 0, 0)
+ _DecalRotation ("Rotation", Range(0, 360)) = 0
+ _DecalRotationSpeed ("Rotation Speed", Float) = 0
+ _DecalBlendAdd ("Add", Range(0, 1)) = 0
+ _DecalBlendMultiply ("Multiply", Range(0, 1)) = 0
+ _DecalBlendReplace ("Replace", Range(0, 1)) = 0
+ [HideInInspector] m_end_DecalSection ("Decal", Float) = 0
+
+ // Back Face Textures and Emission
+ [HideInInspector] m_start_backFace ("Back Face", Float) = 0
+ [ToggleUI]_BackFaceEnabled ("Enable Back Face Options", Float) = 0
+ _BackFaceColor ("Color", Color) = (1, 1, 1, 1)
+ _BackFaceTexture ("Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_BackFacePanning ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)]_BackFaceTextureUV ("UV#", Int) = 0
+ _BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
+ _BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
+ _BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [HideInInspector] m_end_backFace ("Back Face", Float) = 0
+
+ // Lighting
+ [HideInInspector] m_lightingOptions ("Lighting", Float) = 0
+ [HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
+ [Toggle(VIGNETTE_MASKED)]_EnableLighting ("Enable Lighting", Float) = 1
+ [Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Int) = 0
+ _LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
+ [Enum(Ramp Texture, 0, Math Gradient, 1)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Int) = 0
+ [Gradient]_ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" { }
+ _LightingShadowMask ("Ramp Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowMaskUV ("UV", Int) = 0
+ _ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
+ _LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
+ _LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = .5
+ _LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Color) = (1, 1, 1, 1)
+ _ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 1
+ _AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
+ [ToggleUI]_LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+
+ [HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
+ [Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Int) = 0
+ [ToggleUI]_LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
+ [ToggleUI]_LightingUncapped ("Uncapped Lighting", Float) = 0
+ [ToggleUI]_LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
+ _LightingMonochromatic ("Monochromatic Lighting?", Range(0,1)) = 0
+ _LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
+ _LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
+ [HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
+
+ [HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
+ _LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingDetailShadowsPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingDetailShadowsUV ("UV", Int) = 0
+ _LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
+
+ [HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableAO ("Enable AO", Float) = 0
+ _LightingAOTex ("AO Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingAOTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingAOTexUV ("UV", Int) = 0
+ _AOStrength ("AO Strength", Range(0, 1)) = 1
+ [HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
+
+ [HideInInspector] m_start_shadowTexture ("Shadow Texture--{reference_property:_UseShadowTexture, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ [HideInInspector][ToggleUI]_UseShadowTexture ("EnableShadowTexture--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Float) = 0
+ _LightingShadowTexture ("Shadow Texture--{reference_properties:[_LightingShadowTexturePan, _LightingShadowTextureUV], condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", 2D) = "white" { }
+ [HideInInspector][Vector2]_LightingShadowTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _LightingShadowTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_shadowTexture ("Shadow Texture", Float) = 0
+
+ // HSL Lighting
+ [HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
+ [HideInInspector][ToggleUI]_LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
+ _LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
+ _LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
+ _LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
+ _LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
+ [HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
+
+ // point/spot Light Settings
+ [HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
+ [HideInInspector][ToggleUI]_commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
+ [Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Int) = 1
+ _LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
+ _LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = .5
+ _LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = .5
+ _LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
+ [ToggleUI]_LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
+ _LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
+ [Toggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)]_DisableDirectionalInAdd ("No Directional", Float) = 1
+ [HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
+ [HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
+
+ // Subsurface Scattering
+ [HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
+ [Toggle(_TERRAIN_NORMAL_MAP)]_EnableSSS ("Enable Subsurface Scattering", Float) = 0
+ _SSSColor ("Subsurface Color", Color) = (1, 0, 0, 1)
+ _SSSThicknessMap ("Thickness Map", 2D) = "black" { }
+ [HideInInspector][Vector2]_SSSThicknessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SSSThicknessMapUV ("UV", Int) = 0
+ _SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
+ _SSSSCale ("Light Strength", Range(0, 1)) = 0.25
+ _SSSPower ("Light Spread", Range(1, 100)) = 5
+ _SSSDistortion ("Light Distortion", Range(0, 1)) = 1
+ [HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
+
+ // Rim Lighting
+ [HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
+ [Toggle(_GLOSSYREFLECTIONS_OFF)]_EnableRimLighting ("Enable Rim Lighting", Float) = 0
+ [Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Int) = 1
+ [ToggleUI]_RimLightingInvert ("Invert Rim Lighting", Float) = 0
+ _RimLightColor ("Rim Color", Color) = (1, 1, 1, 1)
+ _RimWidth ("Rim Width", Range(0, 1)) = 0.8
+ _RimSharpness ("Rim Sharpness", Range(0, 1)) = .25
+ _RimStrength ("Rim Emission", Range(0, 20)) = 0
+ _RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
+ _RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 0
+ _RimTex ("Rim Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimTexPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimTexUV ("UV", Int) = 0
+ _RimMask ("Rim Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimMaskUV ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
+ _RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_RimWidthNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimWidthNoiseTextureUV ("UV", Int) = 0
+ _RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
+ [HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
+ _ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
+ _ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = .5
+ _ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = .5
+ [HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
+ [HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
+ [Toggle(_MAPPING_6_FRAMES_LAYOUT)]_EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
+ _RimEnviroMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_RimEnviroMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _RimEnviroMaskUV ("UV", Int) = 0
+ _RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
+ _RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
+ _RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
+ _RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
+ _RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
+ [HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
+
+ // Baked Lighting
+ [HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
+ _GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
+ [HideInInspector] DSGI ("DSGI", Float) = 0 //add this property for double sided illumination settings to be shown
+ [HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0 //add this property for lightmap flags settings to be shown
+ [HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
+
+ // Metallics
+ [HideInInspector] m_start_Metallic ("Metallics", Float) = 0
+ [Toggle(_METALLICGLOSSMAP)]_EnableMetallic ("Enable Metallics", Float) = 0
+ _CubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _MetalReflectionTint ("Reflection Tint", Color) = (1, 1, 1)
+ _MetallicTintMap ("Tint Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicTintMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicTintMapUV ("UV", Int) = 0
+ _MetallicMask ("Metallic Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MetallicMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MetallicMaskUV ("UV", Int) = 0
+ _Metallic ("Metallic", Range(0, 1)) = 0
+ _SmoothnessMask ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SmoothnessMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SmoothnessMaskUV ("UV", Int) = 0
+ [ToggleUI]_InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _Smoothness ("Smoothness", Range(0, 1)) = 0
+ [HideInInspector] m_end_Metallic ("Metallics", Float) = 0
+
+ // Clearcoat
+ [HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
+ [Toggle(_COLORCOLOR_ON)]_EnableClearCoat ("Enable Clear Coat", Float) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _ClearCoatNormalToUse ("What Normal?", Int) = 0
+ _ClearCoatCubeMap ("Baked CubeMap", Cube) = "" { }
+ [ToggleUI]_ClearCoatSampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
+ _ClearCoatTint ("Reflection Tint", Color) = (1, 1, 1)
+ _ClearCoatMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatMaskUV ("UV", Int) = 0
+ _ClearCoat ("Clear Coat", Range(0, 1)) = 1
+ _ClearCoatSmoothnessMap ("Smoothness Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_ClearCoatSmoothnessMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ClearCoatSmoothnessMapUV ("UV", Int) = 0
+ [ToggleUI]_ClearCoatInvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
+ _ClearCoatSmoothness ("Smoothness", Range(0, 1)) = 0
+ [ToggleUI]_ClearCoatForceLighting ("Force Lighting", Float) = 0
+ [HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
+
+ // First Matcap
+ [HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
+ [Toggle(_COLORADDSUBDIFF_ON)]_MatcapEnable ("Enable Matcap", Float) = 0
+ _MatcapColor ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap ("Matcap", 2D) = "white" { }
+ _MatcapBorder ("Border", Range(0, .5)) = 0.43
+ _MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_MatcapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MatcapMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_MatcapMaskInvert("Invert", Float) = 0
+ _MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _MatcapIntensity ("Intensity", Range(0, 5)) = 1
+ _MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
+ _MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
+ _MatcapAdd ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_matcap ("Matcap", Float) = 0
+
+ // Second Matcap
+ [HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
+ [ToggleUI]_Matcap2Enable ("Enable Matcap 2", Float) = 0
+ _Matcap2Color ("Color", Color) = (1, 1, 1, 1)
+ [TextureNoSO]_Matcap2 ("Matcap", 2D) = "white" { }
+ _Matcap2Border ("Border", Range(0, .5)) = 0.43
+ _Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_Matcap2MaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _Matcap2MaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_Matcap2MaskInvert("Invert", Float) = 0
+ _Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _Matcap2Intensity ("Intensity", Range(0, 5)) = 1
+ _Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
+ _Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
+ _Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
+ _Matcap2Add ("Add Matcap", Range(0, 1)) = 0
+ [Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Int) = 1
+ [HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
+
+ // Specular
+ [HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
+ [Toggle(_SPECGLOSSMAP)]_EnableSpecular ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Int) = 1
+ _SpecularTint ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMapUV ("UV", Int) = 0
+ _SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
+ [Gradient]_SpecularMap ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMapUV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
+ _SpecularMask ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMaskUV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Int) = 1
+ // Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Int) = 0
+ _AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
+ _Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
+ _AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMapUV ("UV", Int) = 0
+ //toon aniso
+ _SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicroUV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacroPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacroUV ("UV", Int) = 0
+ // Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
+
+ // Second Specular
+ [HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
+ [ToggleUI]_EnableSpecular1 ("Enable Specular", Float) = 0
+ [Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Int) = 1
+ [Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Int) = 1
+ _SpecularTint1 ("Specular Tint", Color) = (1, 1, 1, 1)
+ _SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
+ [Gradient]_SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMetallicMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMetallicMap1UV ("UV", Int) = 0
+ _SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = .75
+ _SpecularMap1 ("Specular Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMap1UV ("UV", Int) = 0
+ [ToggleUI]_SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
+ _SpecularMask1 ("Specular Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_SpecularMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularMask1UV ("UV", Int) = 0
+ [Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Int) = 1
+ // Second Anisotropic Specular
+ [Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Int) = 0
+ _AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
+ _Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
+ _Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
+ [ToggleUI]_AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
+ _AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" { }
+ [HideInInspector][Vector2]_AnisoTangentMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _AnisoTangentMap1UV ("UV", Int) = 0
+ // Second toon aniso
+ _SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = .95
+ _SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
+ //[ToggleUI]_CenterOutSpecColor1 ("Center Out SpecMap--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [ToggleUI]_SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
+ [Curve]_SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMicro1UV ("UV", Int) = 0
+ [Curve]_SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" { }
+ _SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
+ [HideInInspector][Vector2]_SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _SpecularAnisoJitterMacro1UV ("UV", Int) = 0
+ // Second Toon Specular
+ [MultiSlider]_SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25, 0.3, 0, 1)
+ [HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
+
+ // First Emission
+ [HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
+ [HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
+ [Toggle(_EMISSION)]_EnableEmission ("Enable Emission", Float) = 0
+ [ToggleUI]_EmissionReplace ("Replace Base Color", Float) = 0
+ [HDR]_EmissionColor ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMapUV ("UV", Int) = 0
+ _EmissionMask ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMaskUV ("UV", Int) = 0
+ _EmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
+
+ // Center out emission
+ [HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
+
+ // Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor ("VColor as position", float) = 0
+ _EmissiveScroll_Direction ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width ("Width", Float) = 10
+ _EmissiveScroll_Velocity ("Velocity", Float) = 10
+ _EmissiveScroll_Interval ("Interval", Float) = 20
+ _EmissionScrollingOffset ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
+
+ // Second Enission
+ [HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
+ [Toggle(EFFECT_HUE_VARIATION)]_EnableEmission1 ("Enable Emission 2", Float) = 0
+ [HDR]_EmissionColor1 ("Emission Color", Color) = (1, 1, 1, 1)
+ [Gradient]_EmissionMap1 ("Emission Map", 2D) = "white" { }
+ [ToggleUI]_EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
+ [HideInInspector][Vector2]_EmissionMap1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMap1UV ("UV", Int) = 0
+ _EmissionMask1 ("Emission Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_EmissionMask1Pan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _EmissionMask1UV ("UV", Int) = 0
+ _EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
+ [ToggleUI]_EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
+ _EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
+
+ // Second Center Out Enission
+ [HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
+ _EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
+ [HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+ [HideInInspector][ToggleUI]_EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
+ [Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Int) = 0
+ _GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
+ _GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
+ _GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
+ _GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
+ [HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
+
+ // Second Blinking Emission
+ [HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+ [HideInInspector][ToggleUI]_EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
+ _EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
+ _EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
+ _EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
+ _EmissionBlinkingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
+ [HideInInspector][ToggleUI] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
+ [ToggleUI]_EmissionScrollingUseCurve1 ("Use Curve", float) = 0
+ [Curve]_EmissionScrollingCurve1 ("Curve", 2D) = "white" { }
+ [ToggleUI]_EmissionScrollingVertexColor1 ("VColor as position", float) = 0
+ _EmissiveScroll_Direction1 ("Direction", Vector) = (0, -10, 0, 0)
+ _EmissiveScroll_Width1 ("Width", Float) = 10
+ _EmissiveScroll_Velocity1 ("Velocity", Float) = 10
+ _EmissiveScroll_Interval1 ("Interval", Float) = 20
+ _EmissionScrollingOffset1 ("Offset", Float) = 0
+ [HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
+ [HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
+
+ // Flipbook
+ [HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
+ [Toggle(_SUNDISK_HIGH_QUALITY)]_EnableFlipbook ("Enable Flipbook", Float) = 0
+ [ToggleUI]_FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
+ [ToggleUI]_FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
+ [TextureArray]_FlipbookTexArray ("Texture Array", 2DArray) = "" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookTexArrayUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookTexArrayPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _FlipbookMaskUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_FlipbookMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ _FlipbookColor ("Color & alpha", Color) = (1, 1, 1, 1)
+ _FlipbookTotalFrames ("Total Frames", Int) = 1
+ _FlipbookFPS ("FPS", Float) = 30.0
+ _FlipbookScaleOffset ("Scale | Offset", Vector) = (1, 1, 0, 0)
+ [ToggleUI]_FlipbookTiled ("Tiled?", Float) = 0
+ _FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ _FlipbookRotation ("Rotation", Range(0, 360)) = 0
+ _FlipbookRotationSpeed ("Rotation Speed", Float) = 0
+ _FlipbookReplace ("Replace", Range(0, 1)) = 1
+ _FlipbookMultiply ("Multiply", Range(0, 1)) = 0
+ _FlipbookAdd ("Add", Range(0, 1)) = 0
+
+ // Flipbook Manual Control
+ [HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
+ _FlipbookCurrentFrame ("Current Frame", Float) = -1
+ [HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
+ [HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
+
+ // Dissolve
+ [HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
+ [Toggle(DISTORT)]_EnableDissolve ("Enable Dissolve", Float) = 0
+ [Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Int) = 1
+ _DissolveEdgeWidth ("Edge Width", Range(0, .5)) = 0.025
+ _DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
+ _DissolveEdgeColor ("Edge Color", Color) = (1, 1, 1, 1)
+ [Gradient]_DissolveEdgeGradient ("Edge Gradient", 2D) = "white" { }
+ _DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
+ _DissolveTextureColor ("Dissolved Color", Color) = (1, 1, 1, 1)
+ _DissolveToTexture ("Dissolved Texture", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveToTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveToTextureUV ("UV", Int) = 0
+ _DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
+ _DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" { }
+ [HideInInspector][Vector2]_DissolveNoiseTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveNoiseTextureUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertNoise ("Invert?", Float) = 0
+ _DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" { }
+ [HideInInspector][Vector2]_DissolveDetailNoisePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveDetailNoiseUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveInvertDetailNoise ("Invert?", Float) = 0
+ _DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
+ _DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
+ _DissolveMask ("Dissolve Mask", 2D) = "white" { }
+ [ToggleUI]_DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
+ [HideInInspector][Vector2]_DissolveMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _DissolveMaskUV ("UV", Int) = 0
+ [HideInInspector][ToggleUI]_DissolveMaskInvert ("Invert?", Float) = 0
+ _ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
+ [HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Int) = 2
+ [Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Int) = 2
+ [HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
+ [Enum(Local, 0, World, 1)] _DissolveP2PWorldLocal ("World/Local", Int) = 0
+ _DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
+ [Vector3]_DissolveStartPoint ("Start Point", Vector) = (0, -1, 0, 0)
+ [Vector3]_DissolveEndPoint ("End Point", Vector) = (0, 1, 0, 0)
+ [HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
+
+ // Locked in anim sldiers
+ [HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
+ _DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
+ _DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
+ _DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
+ _DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
+ _DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
+ _DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
+ _DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
+ _DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
+ _DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
+ _DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
+ [HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
+ [HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
+
+ // Panosphere
+ [HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+ [Toggle(_DETAIL_MULX2)]_PanoToggle ("Enable Panosphere", Float) = 0
+ [ToggleUI]_PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
+ _PanosphereColor ("Color", Color) = (1, 1, 1, 1)
+ _PanosphereTexture ("Texture", 2D) = "white" { }
+ _PanoMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_PanoMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _PanoMaskUV ("UV", Int) = 0
+ _PanoEmission ("Emission Strength", Range(0, 10)) = 0
+ _PanoBlend ("Alpha", Range(0, 1)) = 0
+ [Vector3]_PanospherePan ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [ToggleUI]_PanoCubeMapToggle ("Use Cubemap", Float) = 0
+ [TextureNoSO]_PanoCubeMap ("CubeMap", Cube) = "" { }
+ [HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
+
+ // Glitter
+ [HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
+ [Toggle(_SUNDISK_SIMPLE)]_GlitterEnable ("Enable Glitter?", Float) = 0
+ [Enum(Angle, 0, Linear Emission, 1)]_GlitterMode ("Mode", Int) = 0
+ [Enum(Circle, 0, Square, 1)]_GlitterShape ("Shape", Int) = 0
+ [Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Int) = 0
+ [HDR]_GlitterColor ("Color", Color) = (1, 1, 1)
+ _GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
+ _GlitterColorMap ("Glitter Color Map", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterColorMapPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterColorMapUV ("UV", Int) = 0
+ [HideInInspector][Vector2]_GlitterPan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterMask ("Glitter Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _GlitterMaskUV ("UV", Int) = 0
+ _GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_GlitterTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ _GlitterTextureRotation ("Rotation Speed", Float) = 0
+ _GlitterFrequency ("Glitter Density", Float) = 300.0
+ _GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1.0
+ _GlitterSpeed ("Glitter Speed", Float) = 10.0
+ _GlitterSize ("Glitter Size", Range(0, 1)) = .3
+ _GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
+ _GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
+ _GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
+ _GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
+ _GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = .8
+ _GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = .08
+ _glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
+ _GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, .1)) = .0
+
+ // Glitter Random Colors
+ [HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
+ [ToggleUI]_GlitterRandomColors ("Random Colors", Float) = 0
+ [MultiSlider]_GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8, 1, 0, 1)
+ [MultiSlider]_GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8, 1, 0, 1)
+ [ToggleUI]_GlitterRandomSize("Random Size?", Float) = 0
+ [MultiSlider]_GlitterMinMaxSize ("Size Range", Vector) = (0.1, 0.5, 0, 1)
+ [ToggleUI]_GlitterRandomRotation("Random Tex Rotation", Float) = 0
+ [HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
+ [HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
+ _TextGlyphs ("Font Array", 2D) = "black" { }
+ _TextPixelRange ("Pixel Range", Float) = 4.0
+ [Toggle(EFFECT_BUMP)]_TextEnabled ("Text?", Float) = 0
+
+ // FPS
+ [HideInInspector] m_start_TextFPS ("FPS", Float) = 0
+ [ToggleUI]_TextFPSEnabled ("FPS Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Int) = 0
+ _TextFPSColor ("Color", Color) = (1, 1, 1, 1)
+ _TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextFPSOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextFPSRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextFPSScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextFPSPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextFPS ("FPS", Float) = 0
+
+ // POSITION
+ [HideInInspector] m_start_TextPosition ("Position", Float) = 0
+ [ToggleUI]_TextPositionEnabled ("Position Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVertical ("Vertical?", Float) = 0
+ _TextPositionColor ("Color", Color) = (1, 0, 1, 1)
+ _TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextPositionOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextPositionRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextPositionScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextPositionPadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextPosition ("Position", Float) = 0
+
+ // INSTANCE TIME
+ [HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
+ [ToggleUI]_TextTimeEnabled ("Time Text?", Float) = 0
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Int) = 0
+ _TextTimeColor ("Color", Color) = (1, 0, 1, 1)
+ _TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
+ [Vector2]_TextTimeOffset ("Offset", Vector) = (0, 0, 0, 0)
+ _TextTimeRotation ("Rotation", Range(0, 360)) = 0
+ [Vector2]_TextTimeScale ("Scale", Vector) = (1, 1, 1, 1)
+ _TextTimePadding ("Padding Reduction", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
+ [HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
+
+ // Mirror Rendering
+ [HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
+ [Toggle(_REQUIRE_UV2)]_EnableMirrorOptions ("Enable Mirror Options", Float) = 0
+ [Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Int) = 0
+ [ToggleUI]_EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
+ _MirrorTexture ("Mirror Tex", 2D) = "white" { }
+ [HideInInspector][Vector2]_MirrorTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MirrorTextureUV ("UV", Int) = 0
+ [HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
+
+ // Distance Fade
+ [HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
+ _MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
+ _MainFadeTexture ("Fade Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_MainFadeTexturePan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _MainFadeTextureUV ("UV", Int) = 0
+ [Vector2]_MainDistanceFade ("Distance Fade X to Y", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
+
+ // Angular Fade
+ [HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
+ [Toggle(_SUNDISK_NONE)]_EnableRandom ("Enable Angular Fade", Float) = 0
+ [Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Int) = 0
+ [Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Int) = 0
+ [Vector3]_AngleForwardDirection ("Forward Direction", Vector) = (0, 0, 1, 0)
+ _CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
+ _CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
+ _ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
+ _ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
+ _AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
+ [HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
+
+ // UV Distortion
+ [HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
+ [Toggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
+ _DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_DistortionMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _DistortionMaskUV ("UV", Int) = 0
+ _DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" { }
+ _DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" { }
+ _DistortionStrength ("Strength1", Float) = 0.5
+ _DistortionStrength1 ("Strength2", Float) = 0.5
+ [Vector2]_DistortionSpeed ("Speed1", Vector) = (0.5, 0.5, 0, 0)
+ [Vector2]_DistortionSpeed1 ("Speed2", Vector) = (0.5, 0.5, 0, 0)
+ [HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
+
+ // Outline Options
+ [HideInInspector] m_outlineOptions ("Outlines", Float) = 0
+ [ToggleUI]_commentIfZero_EnableOutlinePass ("Enable Outlines", float) = 0
+ [Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)]_OutlineMode ("Mode", Int) = 0
+ _OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
+ _OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
+ _OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1, 0, 0, 0)
+ _OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1, 0, 0, 0)
+ [ToggleUI]_OutlineFixedSize ("Fixed Size?", Float) = 0
+ [Enum(Off, 0, Normals, 1, Mask VC.r, 2)]_OutlineUseVertexColors ("Vertex Color", Float) = 0
+ [ToggleUI]_OutlineLit ("Enable Lighting", Float) = 1
+ _LineWidth ("Width", Float) = 0
+ _LineColor ("Color", Color) = (1, 1, 1, 1)
+ _OutlineEmission ("Outline Emission", Float) = 0
+ _OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineTexturePan ("Outline Texture Pan", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineTextureUV ("UV", Int) = 0
+ _OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" { }
+ [HideInInspector][Vector2]_OutlineMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _OutlineMaskUV ("UV", Int) = 0
+ _OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
+ [HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
+ [Vector2]_OutlineFadeDistance ("Outline distance Fade", Vector) = (0, 0, 0, 0)
+ [Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
+ _OutlineOffsetFactor("Offset Factor", Float) = 0
+ _OutlineOffsetUnits("Offset Units", Float) = 0
+ [HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
+
+ // Parallax Mapping
+ [HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
+ [Toggle(_PARALLAXMAP)]_ParallaxMap ("Enable Parallax FX", Float) = 0
+ [ToggleUI]_ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
+ [ToggleUI]_ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
+ [HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
+ [Vector2]_ParallaxHeightMapPan ("Pan", Vector) = (0, 0, 0, 0)
+ [Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Int) = 0
+ _ParallaxHeightMap ("Height Map", 2D) = "black" { }
+ _ParallaxHeightMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxHeightMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxHeightMapMaskUV ("UV", Int) = 0
+ _ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
+ [HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
+ [HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
+ [Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Int) = 0
+ [ToggleUI]_ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
+ _ParallaxInternalMap ("Internal Map", 2D) = "black" { }
+ _ParallaxInternalMapMask ("Mask", 2D) = "white" { }
+ [HideInInspector][Vector2]_ParallaxInternalMapMaskPan ("Panning", Vector) = (0, 0, 0, 0)
+ [HideInInspector][Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _ParallaxInternalMapMaskUV ("UV", Int) = 0
+ _ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
+ _ParallaxInternalMinDepth ("Min Depth", Float) = 0
+ _ParallaxInternalMaxDepth ("Max Depth", Float) = 1
+ _ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
+ _ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
+ _ParallaxInternalMinColor ("Min Depth Color", Color) = (1, 1, 1, 1)
+ _ParallaxInternalMaxColor ("Max Depth Color", Color) = (1, 1, 1, 1)
+ [Vector2]_ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0, 0, 0, 0)
+ [Vector2]_ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0, 0, 0, 0)
+ [HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
+ [HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
+ _ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
+ [HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
+
+ // Rendering Options
+ [HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
+ [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
+ [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
+ [Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Int) = 1
+ [Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Int) = 15
+ _OffsetFactor ("Offset Factor", Float) = 0.0
+ _OffsetUnits ("Offset Units", Float) = 0.0
+ [ToggleUI]_IgnoreFog ("Ignore Fog", Float) = 0
+ [HideInInspector] Instancing ("Instancing", Float) = 0 //add this property for instancing variants settings to be shown
+
+ // Blending Options
+ [HideInInspector] m_start_blending ("Blending", Float) = 0
+ [Enum(Thry.BlendOp)]_BlendOp ("RGB Blend Op", Int) = 0
+ [Enum(Thry.BlendOp)]_BlendOpAlpha ("Alpha Blend Op", Int) = 0
+ [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Int) = 1
+ [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Int) = 0
+ [HideInInspector] m_end_blending ("Blending", Float) = 0
+
+ // Stencils
+ [HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
+ [IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
+
+ // Outline Stencil
+ [HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
+ [IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
+ [IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
+ [IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
+ [Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
+ [HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
+
+ // Debug Options
+ [HideInInspector] m_start_debugOptions ("Debug", Float) = 0
+ [HideInInspector][Toggle(_COLOROVERLAY_ON)]_DebugEnabled ("Display Debug Info", Float) = 0
+ _VertexUnwrap ("Unwrap", Range(0, 1)) = 0
+ [Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Int) = 0
+ [Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Int) = 0
+ [Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Int) = 0
+ [HideInInspector] m_end_debugOptions ("Debug", Float) = 0
+
+ //[HideInInspector] m_animationToggles ("Animation Support Toggles", Float) = 0
+ //[HelpBox(1)] _AnimationToggleHelp ("You don't need to search through this list. You can enable animation support on any property by right clicking it", Int) = 0
+
+ // Main
+ [HideInInspector]_ColorAnimated ("Color & Alpha", Int) = 0
+ [HideInInspector]_MainTexAnimated ("Texture", Int) = 0
+ [HideInInspector]_MainTex_STAnimated ("Texture Offset/Scale", Int) = 0
+ [HideInInspector]_MainTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_MainVertexColoringAnimated ("Use Vertex Color", Int) = 0
+ [HideInInspector]_MainUseVertexColorAlphaAnimated ("Use Vertex Alpha", Int) = 0
+ [HideInInspector]_MainEmissionStrengthAnimated ("Basic Emission", Int) = 0
+ [HideInInspector]_BumpMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_BumpMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_BumpMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_BumpScaleAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_AlphaMaskAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_AlphaMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AlphaMaskUVAnimated ("UV", Int) = 0
+
+ //Hue Shifting
+ [HideInInspector]_MainHueShiftToggleAnimated ("Toggle Hueshift", Int) = 0
+ [HideInInspector]_MainHueShiftReplaceAnimated ("Replace?", Int) = 0
+ [HideInInspector]_MainHueShiftAnimated ("Hue Shift", Int) = 0
+ [HideInInspector]_MainHueShiftSpeedAnimated ("Shift Speed", Int) = 0
+ [HideInInspector]_MainHueShiftMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MainHueShiftMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainHueShiftMaskUVAnimated ("UV", Int) = 0
+
+ // RGB Masking
+ [HideInInspector]_RGBMaskEnabledAnimated ("RGB Mask Enabled", Int) = 0
+ [HideInInspector]_RGBUseVertexColorsAnimated ("Use Vertex Colors", Int) = 0
+ [HideInInspector]_RGBBlendMultiplicativeAnimated ("Multiplicative?", Int) = 0
+ [HideInInspector]_RGBMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RGBMaskPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RedColorAnimated ("R Color", Int) = 0
+ [HideInInspector]_RedTexureAnimated ("R Texture", Int) = 0
+ [HideInInspector]_RGBRedPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBRed_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_GreenColorAnimated ("G Color", Int) = 0
+ [HideInInspector]_GreenTextureAnimated ("G Texture", Int) = 0
+ [HideInInspector]_RGBGreenPanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBGreen_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_BlueColorAnimated ("B Color", Int) = 0
+ [HideInInspector]_BlueTextureAnimated ("B Texture", Int) = 0
+ [HideInInspector]_RGBBluePanningAnimated ("Panning", Int) = 0
+ [HideInInspector]_RGBBlue_UVAnimated ("UV", Int) = 0
+ [HideInInspector]_RGBNormalBlendAnimated ("UV", Int) = 0
+
+ // Detail Options
+ [HideInInspector]_DetailMaskAnimated ("Detail Mask (R:Texture, G:Normal)", Int) = 0
+ [HideInInspector]_DetailMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTintAnimated ("Detail Texture Tint", Int) = 0
+ [HideInInspector]_DetailTexAnimated ("Detail Texture", Int) = 0
+ [HideInInspector]_DetailTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DetailTexIntensityAnimated ("Detail Tex Intensity", Int) = 0
+ [HideInInspector]_DetailBrightnessAnimated ("Detail Brightness:", Int) = 0
+ [HideInInspector]_DetailNormalMapAnimated ("Detail Normal", Int) = 0
+ [HideInInspector]_DetailNormalMapScaleAnimated ("Detail Normal Intensity", Int) = 0
+ [HideInInspector]_DetailNormalMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DetailNormalMapUVAnimated ("UV", Int) = 0
+
+ //Vertex Manipulations
+ [HideInInspector]_VertexManipulationLocalTranslationAnimated ("Local Translation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalRotationAnimated ("Local Rotation", Int) = 0
+ [HideInInspector]_VertexManipulationLocalScaleAnimated ("Local Scale", Int) = 0
+ [HideInInspector]_VertexManipulationWorldTranslationAnimated ("World Translation", Int) = 0
+ [HideInInspector]_VertexManipulationHeightAnimated ("Vertex Height", Int) = 0
+ [HideInInspector]_VertexManipulationHeightMaskAnimated ("Height Map", Int) = 0
+ [HideInInspector]_VertexManipulationHeightPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VertexManipulationHeightUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VertexManipulationHeightBiasAnimated ("Mask Bias", Int) = 0
+ [HideInInspector]_VertexRoundingEnabledAnimated ("Rounding Enabled", Int) = 0
+ [HideInInspector]_VertexRoundingDivisionAnimated ("Division Amount", Int) = 0
+
+ // Alpha Options
+ [HideInInspector]_AlphaModAnimated ("Alpha Mod", Int) = 0
+ [HideInInspector]_CutoffAnimated ("Alpha Cuttoff", Int) = 0
+ [HideInInspector]_DitheringEnabledAnimated ("Enable Dithering", Int) = 0
+ [HideInInspector]_DitherGradientAnimated ("Dither Gradient", Int) = 0
+ [HideInInspector]_ForceOpaqueAnimated ("Force Opaque", Int) = 0
+ [HideInInspector]_MainShadowClipModAnimated ("Shadow Clip Mod", Int) = 0
+ [HideInInspector]_AlphaToMaskAnimated ("Alpha To Coverage", Int) = 0
+ [HideInInspector]_MainAlphaToCoverageAnimated ("Sharpenned A2C", Int) = 0
+ [HideInInspector]_AlphaPremultiplyAnimated ("Alpha Premultiply", Int) = 0
+ [HideInInspector]_MainMipScaleAnimated ("Mip Level Alpha Scale", Int) = 0
+
+ // Decal Texture
+ [HideInInspector]_DecalEnabledAnimated ("Enable", Int) = 0
+ [HideInInspector]_DecalColorAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalEmissionStrengthAnimated ("Color", Int) = 0
+ [HideInInspector]_DecalTextureAnimated ("Decal", Int) = 0
+ [HideInInspector]_DecalTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DecalMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DecalMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DecalTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_DecalScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_DecalPositionAnimated ("Position", Int) = 0
+ [HideInInspector]_DecalRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_DecalRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_DecalBlendAddAnimated ("Add", Int) = 0
+ [HideInInspector]_DecalBlendMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_DecalBlendReplaceAnimated ("Replace", Int) = 0
+
+ // Lighting
+ [HideInInspector]_EnableLightingAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LightingModeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingStandardSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_LightingShadingEnabledAnimated ("Enable Shading-",Int) = 0
+ [HideInInspector]_LightingRampTypeAnimated ("Ramp Type", Int) = 0
+ [HideInInspector]_ToonRampAnimated ("Lighting Ramp", Int) = 0
+ [HideInInspector]_LightingShadowMaskAnimated ("Ramp Mask", Int) = 0
+ [HideInInspector]_LightingShadowMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ShadowOffsetAnimated ("Ramp Offset", Int) = 0
+ [HideInInspector]_LightingGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingShadowColorAnimated ("Shadow Tint", Int) = 0
+ [HideInInspector]_ShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_AttenuationMultiplierAnimated ("Unity Shadows", Int) = 0
+ [HideInInspector]_LightingIgnoreAmbientColorAnimated ("Ignore Ambient Color", Int) = 0
+
+ [HideInInspector]_LightingDirectColorModeAnimated ("D Color", Int) = 0
+ [HideInInspector]_LightingIndirectColorModeAnimated ("I Color?", Int) = 0
+ [HideInInspector]_LightingMonochromaticAnimated ("Monochromatic Lighting?", Int) = 0
+ [HideInInspector]_LightingUncappedAnimated ("Uncapped Lighting", Int) = 0
+ [HideInInspector]_LightingOnlyUnityShadowsAnimated ("Only Unity Shadows", Int) = 0
+ [HideInInspector]_LightingMinLightBrightnessAnimated ("Min Brightnes", Int) = 0
+ [HideInInspector]_LightingMinShadowBrightnessRatioAnimated ("Shadow:Light min Ratio", Int) = 0
+
+ [HideInInspector]_LightingDetailShadowsEnabledAnimated ("Enabled Detail Shadows?", Int) = 0
+ [HideInInspector]_LightingDetailShadowsAnimated ("Detail Shadows", Int) = 0
+ [HideInInspector]_LightingDetailShadowsPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingDetailShadowsUVAnimated ("UV", Int) = 0
+ [HideInInspector]_LightingDetailStrengthAnimated ("Detail Strength", Int) = 0
+
+ [HideInInspector]_LightingEnableAOAnimated ("Enable AO", Int) = 0
+ [HideInInspector]_LightingAOTexAnimated ("AO Map", Int) = 0
+ [HideInInspector]_LightingAOTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingAOTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_AOStrengthAnimated ("AO Strength", Range(0, 1)) = 0
+
+ [HideInInspector]_UseShadowTextureAnimated ("EnableShadowTexture", Int) = 0
+ [HideInInspector]_LightingShadowTextureAnimated ("Shadow Texture", Int) = 0
+ [HideInInspector]_LightingShadowTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_LightingShadowTextureUVAnimated ("UV", Int) = 0
+
+ [HideInInspector]_LightingEnableHSLAnimated ("Enabled HSL Lighting", Int) = 0
+ [HideInInspector]_LightingHSLIntensityAnimated ("Shadow HSL Intensity", Int) = 0
+ [HideInInspector]_LightingShadowHueAnimated ("Shadow Hue Change", Int) = 0
+ [HideInInspector]_LightingShadowSaturationAnimated ("Shadow Saturation Change", Int) = 0
+ [HideInInspector]_LightingShadowLightnessAnimated ("Shadow Lightness Change", Int) = 0
+
+ // point/spot Light Settings
+ [HideInInspector]_commentIfZero_LightingAdditiveEnableAnimated ("Enable Additive", Int) = 0
+ [HideInInspector]_LightingAdditiveTypeAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_LightingAdditiveGradientEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_LightingAdditivePassthroughAnimated ("Point Light Passthrough", Int) = 0
+ [HideInInspector]_LightingAdditiveDetailStrengthAnimated ("Detail Shadow Strength", Int) = 0
+ [HideInInspector]_LightingAdditiveLimitIntensityAnimated ("Limit Intensity", Int) = 0
+ [HideInInspector]_LightingAdditiveMaxIntensityAnimated ("Max Intensity", Int) = 0
+
+ // Subsurface Scattering
+ [HideInInspector]_EnableSSSAnimated ("Enable Subsurface Scattering", Int) = 0
+ [HideInInspector]_SSSColorAnimated ("Subsurface Color", Int) = 0
+ [HideInInspector]_SSSThicknessMapAnimated ("Thickness Map", Int) = 0
+ [HideInInspector]_SSSThicknessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SSSThicknessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SSSThicknessModAnimated ("Thickness mod", Int) = 0
+ [HideInInspector]_SSSSCaleAnimated ("Light Strength", Int) = 0
+ [HideInInspector]_SSSPowerAnimated ("Light Spread", Int) = 0
+ [HideInInspector]_SSSDistortionAnimated ("Light Distortion", Int) = 0
+
+ // Rim Lighting
+ [HideInInspector]_EnableRimLightingAnimated ("Enable Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_RimLightingInvertAnimated ("Invert Rim Lighting", Int) = 0
+ [HideInInspector]_RimLightColorAnimated ("Rim Color", Int) = 0
+ [HideInInspector]_RimWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimStrengthAnimated ("Rim Emission", Int) = 0
+ [HideInInspector]_RimBrightenAnimated ("Rim Color Brighten", Int) = 0
+ [HideInInspector]_RimLightColorBiasAnimated ("Rim Color Bias", Int) = 0
+ [HideInInspector]_RimTexAnimated ("Rim Texture", Int) = 0
+ [HideInInspector]_RimTexPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimTexUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimMaskAnimated ("Rim Mask", Int) = 0
+ [HideInInspector]_RimMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimMaskUVAnimated ("UV", Int) = 0
+
+ // Rim Noise
+ [HideInInspector]_RimWidthNoiseTextureAnimated ("Rim Width Noise", Int) = 0
+ [HideInInspector]_RimWidthNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimWidthNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimWidthNoiseStrengthAnimated ("Intensity", Int) = 0
+
+ // Rim Shadow Mix
+ [HideInInspector]_ShadowMixAnimated ("Shadow Mix In", Int) = 0
+ [HideInInspector]_ShadowMixThresholdAnimated ("Shadow Mix Threshold", Int) = 0
+ [HideInInspector]_ShadowMixWidthModAnimated ("Shadow Mix Width Mod", Int) = 0
+
+ // Environmental Rim Lighting
+ [HideInInspector]_EnableEnvironmentalRimAnimated ("Enable Environmental Rim", Int) = 0
+ [HideInInspector]_RimEnviroMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_RimEnviroMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_RimEnviroMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_RimEnviroBlurAnimated ("Blur", Int) = 0
+ [HideInInspector]_RimEnviroWidthAnimated ("Rim Width", Int) = 0
+ [HideInInspector]_RimEnviroSharpnessAnimated ("Rim Sharpness", Int) = 0
+ [HideInInspector]_RimEnviroMinBrightnessAnimated ("Min Brightness Threshold", Int) = 0
+ [HideInInspector]_RimEnviroIntensityAnimated ("Intensity", Int) = 0
+
+ // Metallics
+ [HideInInspector]_EnableMetallicAnimated ("Enable Metallics", Int) = 0
+ [HideInInspector]_CubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_SampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_MetalReflectionTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_MetallicTintMapAnimated ("Tint Map", Int) = 0
+ [HideInInspector]_MetallicTintMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicTintMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicMaskAnimated ("Metallic Mask", Int) = 0
+ [HideInInspector]_MetallicMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MetallicMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SmoothnessMaskAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SmoothnessMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_InvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_SmoothnessAnimated ("Smoothness", Int) = 0
+
+ // Clearcoat
+ [HideInInspector]_EnableClearCoatAnimated ("Enable Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatNormalToUseAnimated ("What Normal?", Int) = 0
+ [HideInInspector]_ClearCoatCubeMapAnimated ("Baked CubeMap", Int) = 0
+ [HideInInspector]_ClearCoatSampleWorldAnimated ("Force Baked Cubemap", Int) = 0
+ [HideInInspector]_ClearCoatTintAnimated ("Reflection Tint", Int) = 0
+ [HideInInspector]_ClearCoatMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ClearCoatMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapAnimated ("Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ClearCoatInvertSmoothnessAnimated ("Invert Smoothness Map", Int) = 0
+ [HideInInspector]_ClearCoatSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_ClearCoatForceLightingAnimated ("Force Lighting", Int) = 0
+
+ // First Matcap
+ [HideInInspector]_MatcapEnableAnimated ("Enable Matcap", Int) = 0
+ [HideInInspector]_MatcapColorAnimated ("Color", Int) = 0
+ [HideInInspector]_MatcapAnimated ("Matcap", Int) = 0
+ [HideInInspector]_MatcapBorderAnimated ("Border", Int) = 0
+ [HideInInspector]_MatcapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_MatcapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MatcapMaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_MatcapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MatcapEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_MatcapIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_MatcapLightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_MatcapReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_MatcapMultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_MatcapAddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_MatcapNormalAnimated ("Normal to use", Int) = 0
+
+ // Second Matcap
+ [HideInInspector]_Matcap2EnableAnimated ("Enable Matcap 2", Int) = 0
+ [HideInInspector]_Matcap2ColorAnimated ("Color", Int) = 0
+ [HideInInspector]_Matcap2Animated ("Matcap", Int) = 0
+ [HideInInspector]_Matcap2BorderAnimated ("Border", Int) = 0
+ [HideInInspector]_Matcap2MaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_Matcap2MaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_Matcap2MaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_Matcap2MaskInvertAnimated ("Invert", Int) = 0
+ [HideInInspector]_Matcap2EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_Matcap2IntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_Matcap2LightMaskAnimated ("Hide in Shadow", Int) = 0
+ [HideInInspector]_Matcap2ReplaceAnimated ("Replace With Matcap", Int) = 0
+ [HideInInspector]_Matcap2MultiplyAnimated ("Multiply Matcap", Int) = 0
+ [HideInInspector]_Matcap2AddAnimated ("Add Matcap", Int) = 0
+ [HideInInspector]_Matcap2NormalAnimated ("Normal to use", Int) = 0
+
+ // Specular
+ [HideInInspector]_EnableSpecularAnimated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularTypeAnimated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormalAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTintAnimated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothnessAnimated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMapAnimated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothnessAnimated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMaskAnimated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFromAnimated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangentAnimated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1AlphaAnimated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2AlphaAnimated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1OffsetAnimated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2SmoothnessAnimated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMapAnimated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMapAnimated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStartAnimated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEndAnimated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColorAnimated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirroredAnimated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroAnimated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplierAnimated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroAnimated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplierAnimated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroUVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuterAnimated ("Inner/Outer Edge", Int) = 0
+
+ // Second Specular
+ [HideInInspector]_EnableSpecular1Animated ("Enable Specular", Int) = 0
+ [HideInInspector]_SpecularType1Animated ("Specular Type", Int) = 0
+ [HideInInspector]_SpecularNormal1Animated ("Normal Select", Int) = 0
+ [HideInInspector]_SpecularTint1Animated ("Specular Tint", Int) = 0
+ [HideInInspector]_SpecularMetallic1Animated ("Metallic", Int) = 0
+ [HideInInspector]_SpecularSmoothness1Animated ("Smoothness", Int) = 0
+ [HideInInspector]_SpecularMap1Animated ("Specular Map", Int) = 0
+ [HideInInspector]_SpecularMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularInvertSmoothness1Animated ("Invert Smoothness", Int) = 0
+ [HideInInspector]_SpecularMask1Animated ("Specular Mask", Int) = 0
+ [HideInInspector]_SpecularMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SmoothnessFrom1Animated ("Smoothness From", Int) = 0
+ [HideInInspector]_SpecWhatTangent1Animated ("(Bi)Tangent?", Int) = 0
+ [HideInInspector]_AnisoSpec1Alpha1Animated ("Spec1 Alpha", Int) = 0
+ [HideInInspector]_AnisoSpec2Alpha1Animated ("Spec2 Alpha", Int) = 0
+ [HideInInspector]_Spec1Offset1Animated ("Spec1 Offset", Int) = 0
+ [HideInInspector]_Spec2Smoothness1Animated ("Spec2 Smoothness", Int) = 0
+ [HideInInspector]_AnisoUseTangentMap1Animated ("Use Directional Map?", Int) = 0
+ [HideInInspector]_AnisoTangentMap1Animated ("Anisotropic Directional Map", Int) = 0
+ [HideInInspector]_AnisoTangentMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_AnisoTangentMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonStart1Animated ("Spec Toon Start", Int) = 0
+ [HideInInspector]_SpecularToonEnd1Animated ("Spec Toon End", Int) = 0
+ //[ToggleUI]_CenterOutSpecColor1Animated ("Center Out SpecMap", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMirrored1Animated ("Mirrored?", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1Animated ("Micro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicroMultiplier1Animated ("Micro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMicro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1Animated ("Macro Shift", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacroMultiplier1Animated ("Macro Multiplier", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_SpecularAnisoJitterMacro1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_SpecularToonInnerOuter1Animated ("Inner/Outer Edge", Int) = 0
+
+ // First Emission
+ [HideInInspector]_EnableEmissionAnimated ("Enable Emission", Int) = 0
+ [HideInInspector]_EmissionReplaceAnimated ("Replace Base Color", Int) = 0
+ [HideInInspector]_EmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMapAnimated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMapAnimated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMaskAnimated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabledAnimated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShiftAnimated ("Hue Shift", Int) = 0
+
+ // Center out emission
+ [HideInInspector]_EmissionCenterOutEnabledAnimated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeedAnimated ("Flow Speed", Int) = 0
+
+ // Glow in the dark Emission
+ [HideInInspector]_EnableGITDEmissionAnimated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMeshAnimated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplierAnimated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplierAnimated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLightAnimated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLightAnimated ("Max Lighting", Int) = 0
+
+ // Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_MinAnimated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_MaxAnimated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_VelocityAnimated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffsetAnimated ("Offset", Int) = 0
+
+ // Scrolling Emission
+ [HideInInspector]_ScrollingEmissionAnimated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurveAnimated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurveAnimated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColorAnimated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_DirectionAnimated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_WidthAnimated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_VelocityAnimated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_IntervalAnimated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffsetAnimated ("Offset", Int) = 0
+
+ // Second Enission
+ [HideInInspector]_EnableEmission1Animated ("Enable Emission 2", Int) = 0
+ [HideInInspector]_EmissionColor1Animated ("Emission Color", Int) = 0
+ [HideInInspector]_EmissionMap1Animated ("Emission Map", Int) = 0
+ [HideInInspector]_EmissionBaseColorAsMap1Animated ("Base Color as Map?", Int) = 0
+ [HideInInspector]_EmissionMap1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMap1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionMask1Animated ("Emission Mask", Int) = 0
+ [HideInInspector]_EmissionMask1PanAnimated ("Panning", Int) = 0
+ [HideInInspector]_EmissionMask1UVAnimated ("UV", Int) = 0
+ [HideInInspector]_EmissionStrength1Animated ("Emission Strength", Int) = 0
+ [HideInInspector]_EmissionHueShiftEnabled1Animated ("Enable Hue Shift", Int) = 0
+ [HideInInspector]_EmissionHueShift1Animated ("Hue Shift", Int) = 0
+
+ // Second Center Out Enission
+ [HideInInspector]_EmissionCenterOutEnabled1Animated ("Enable Center Out", Int) = 0
+ [HideInInspector]_EmissionCenterOutSpeed1Animated ("Flow Speed", Int) = 0
+
+ // Second Glow In The Dark Emission
+ [HideInInspector]_EnableGITDEmission1Animated ("Enable Glow In The Dark", Int) = 0
+ [HideInInspector]_GITDEWorldOrMesh1Animated ("Lighting Type", Int) = 0
+ [HideInInspector]_GITDEMinEmissionMultiplier1Animated ("Min Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMaxEmissionMultiplier1Animated ("Max Emission Multiplier", Int) = 0
+ [HideInInspector]_GITDEMinLight1Animated ("Min Lighting", Int) = 0
+ [HideInInspector]_GITDEMaxLight1Animated ("Max Lighting", Int) = 0
+
+ // Second Blinking Emission
+ [HideInInspector]_EmissionBlinkingEnabledAnimated ("Blinking Enabled", Int) = 0
+ [HideInInspector]_EmissiveBlink_Min1Animated ("Emissive Blink Min", Int) = 0
+ [HideInInspector]_EmissiveBlink_Max1Animated ("Emissive Blink Max", Int) = 0
+ [HideInInspector]_EmissiveBlink_Velocity1Animated ("Emissive Blink Velocity", Int) = 0
+ [HideInInspector]_EmissionBlinkingOffset1Animated ("Offset", Int) = 0
+
+ // Scrolling Scrolling Emission
+ [HideInInspector]_ScrollingEmission1Animated ("Enable Scrolling Emission", Int) = 0
+ [HideInInspector]_EmissionScrollingUseCurve1Animated ("Use Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingCurve1Animated ("Curve", Int) = 0
+ [HideInInspector]_EmissionScrollingVertexColor1Animated ("use vcolor", Int) = 0
+ [HideInInspector]_EmissiveScroll_Direction1Animated ("Direction", Int) = 0
+ [HideInInspector]_EmissiveScroll_Width1Animated ("Width", Int) = 0
+ [HideInInspector]_EmissiveScroll_Velocity1Animated ("Velocity", Int) = 0
+ [HideInInspector]_EmissiveScroll_Interval1Animated ("Interval", Int) = 0
+ [HideInInspector]_EmissionScrollingOffset1Animated ("Offset", Int) = 0
+
+ // Flipbook
+ [HideInInspector]_EnableFlipbookAnimated ("Enable Flipbook", Int) = 0
+ [HideInInspector]_FlipbookAlphaControlsFinalAlphaAnimated ("Flipbook Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookIntensityControlsAlphaAnimated ("Intensity Controls Alpha?", Int) = 0
+ [HideInInspector]_FlipbookColorReplacesAnimated ("Color Replaces Flipbook", Int) = 0
+ [HideInInspector]_FlipbookTexArrayAnimated ("Texture Array", Int) = 0
+ [HideInInspector]_FlipbookTexArrayUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookTexArrayPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_FlipbookMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_FlipbookMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_FlipbookColorAnimated ("Color & alpha", Int) = 0
+ [HideInInspector]_FlipbookTotalFramesAnimated ("Total Frames", Int) = 0
+ [HideInInspector]_FlipbookFPSAnimated ("FPS", Int) = 0
+ [HideInInspector]_FlipbookScaleOffsetAnimated ("Scale | Offset", Int) = 0
+ [HideInInspector]_FlipbookTiledAnimated ("Tiled?", Int) = 0
+ [HideInInspector]_FlipbookEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_FlipbookRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_FlipbookRotationSpeedAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_FlipbookReplaceAnimated ("Replace", Int) = 0
+ [HideInInspector]_FlipbookMultiplyAnimated ("Multiply", Int) = 0
+ [HideInInspector]_FlipbookAddAnimated ("Add", Int) = 0
+ [HideInInspector]_FlipbookCurrentFrameAnimated ("Current Frame", Int) = 0
+
+ // Dissolve
+ [HideInInspector]_EnableDissolveAnimated ("Enable Dissolve", Int) = 0
+ [HideInInspector]_DissolveTypeAnimated ("Dissolve Type", Int) = 0
+ [HideInInspector]_DissolveEdgeWidthAnimated ("Edge Width", Int) = 0
+ [HideInInspector]_DissolveEdgeHardnessAnimated ("Edge Hardness", Int) = 0
+ [HideInInspector]_DissolveEdgeColorAnimated ("Edge Color", Int) = 0
+ [HideInInspector]_DissolveEdgeGradientAnimated ("Edge Gradient", Int) = 0
+ [HideInInspector]_DissolveEdgeEmissionAnimated ("Edge Emission", Int) = 0
+ [HideInInspector]_DissolveTextureColorAnimated ("Dissolved Color", Int) = 0
+ [HideInInspector]_DissolveToTextureAnimated ("Dissolved Texture", Int) = 0
+ [HideInInspector]_DissolveToTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveToTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveToEmissionStrengthAnimated ("Dissolved Emission Strength", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureAnimated ("Dissolve Noise", Int) = 0
+ [HideInInspector]_DissolveNoiseTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveNoiseTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseAnimated ("Dissolve Detail Noise", Int) = 0
+ [HideInInspector]_DissolveDetailNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveDetailNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveInvertDetailNoiseAnimated ("Invert?", Int) = 0
+ [HideInInspector]_DissolveDetailStrengthAnimated ("Dissolve Detail Strength", Int) = 0
+ [HideInInspector]_DissolveAlphaAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveUseVertexColorsAnimated ("Dissolve Alpha", Int) = 0
+ [HideInInspector]_DissolveMaskAnimated ("Dissolve Mask", Int) = 0
+ [HideInInspector]_DissolveMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DissolveMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_DissolveMaskInvertAnimated ("Invert?", Int) = 0
+ [HideInInspector]_ContinuousDissolveAnimated ("Continuous Dissolve Speed", Int) = 0
+ [HideInInspector]_DissolveEmissionSideAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_DissolveEmission1SideAnimated ("Emission 2", Int) = 0
+
+ // Point to Point Dissolve
+ [HideInInspector]_DissolveP2PWorldLocalAnimated ("World/Local", Int) = 0
+ [HideInInspector]_DissolveP2PEdgeLengthAnimated ("Edge Length", Int) = 0
+ [HideInInspector]_DissolveStartPointAnimated ("Start Point", Int) = 0
+ [HideInInspector]_DissolveEndPointAnimated ("End Point", Int) = 0
+
+ [HideInInspector]_DissolveAlpha0Animated ("_DissolveAlpha0", Int) = 0
+ [HideInInspector]_DissolveAlpha1Animated ("_DissolveAlpha1", Int) = 0
+ [HideInInspector]_DissolveAlpha2Animated ("_DissolveAlpha2", Int) = 0
+ [HideInInspector]_DissolveAlpha3Animated ("_DissolveAlpha3", Int) = 0
+ [HideInInspector]_DissolveAlpha4Animated ("_DissolveAlpha4", Int) = 0
+ [HideInInspector]_DissolveAlpha5Animated ("_DissolveAlpha5", Int) = 0
+ [HideInInspector]_DissolveAlpha6Animated ("_DissolveAlpha6", Int) = 0
+ [HideInInspector]_DissolveAlpha7Animated ("_DissolveAlpha7", Int) = 0
+ [HideInInspector]_DissolveAlpha8Animated ("_DissolveAlpha8", Int) = 0
+ [HideInInspector]_DissolveAlpha9Animated ("_DissolveAlpha9", Int) = 0
+
+ // Panosphere
+ [HideInInspector]_PanoToggleAnimated ("Enable Panosphere", Int) = 0
+ [HideInInspector]_PanoInfiniteStereoToggleAnimated ("Infinite Stereo", Int) = 0
+ [HideInInspector]_PanosphereColorAnimated ("Color", Int) = 0
+ [HideInInspector]_PanosphereTextureAnimated ("Texture", Int) = 0
+ [HideInInspector]_PanoMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_PanoMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_PanoMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_PanoEmissionAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_PanoBlendAnimated ("Alpha", Int) = 0
+ [HideInInspector]_PanospherePanAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_PanoCubeMapToggleAnimated ("Use Cubemap", Int) = 0
+ [HideInInspector]_PanoCubeMapAnimated ("CubeMap", Int) = 0
+
+ // Glitter
+ [HideInInspector]_GlitterEnableAnimated ("Enable Glitter?", Int) = 0
+ [HideInInspector]_GlitterModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterShapeAnimated ("Mode", Int) = 0
+ [HideInInspector]_GlitterBlendTypeAnimated ("Blend Mode", Int) = 0
+ [HideInInspector]_GlitterColorAnimated ("Color", Int) = 0
+ [HideInInspector]_GlitterUseSurfaceColorAnimated ("Use Surface Color", Int) = 0
+ [HideInInspector]_GlitterColorMapAnimated ("Glitter Color Map", Int) = 0
+ [HideInInspector]_GlitterColorMapPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterColorMapUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_GlitterTextureAnimated ("Glitter Mask", Int) = 0
+ [HideInInspector]_GlitterTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterRandomRotationAnimated ("Panning", Int) = 0
+ [HideInInspector]_GlitterFrequencyAnimated ("Glitter Density", Int) = 0
+ [HideInInspector]_GlitterJitterAnimated ("Glitter Jitter", Int) = 0
+ [HideInInspector]_GlitterSpeedAnimated ("Glitter Wobble Speed", Int) = 0
+ [HideInInspector]_GlitterSizeAnimated ("Glitter Size", Int) = 0
+ [HideInInspector]_GlitterContrastAnimated ("Glitter Contrast", Int) = 0
+ [HideInInspector]_GlitterAngleRangeAnimated ("Glitter Angle Range", Int) = 0
+ [HideInInspector]_GlitterMinBrightnessAnimated ("Glitter Min Brightness", Int) = 0
+ [HideInInspector]_GlitterBrightnessAnimated ("Glitter Max Brightness", Int) = 0
+ [HideInInspector]_GlitterBiasAnimated ("Glitter Bias", Int) = 0
+ [HideInInspector]_GlitterCenterSizeAnimated ("center size", Int) = 0
+ [HideInInspector]_GlitterTextureRotationAnimated ("Rotation Speed", Int) = 0
+ [HideInInspector]_glitterFrequencyLinearEmissiveAnimated ("Frequency", Int) = 0
+ [HideInInspector]_GlitterJaggyFixAnimated ("Jaggy Fix", Int) = 0
+
+ // Glitter Random Colors
+ [HideInInspector]_GlitterRandomColorsAnimated ("Enable", Int) = 0
+ [HideInInspector]_GlitterMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_GlitterMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+ [HideInInspector]_GlitterRandomSizeAnimated ("random Size Toggle", Int) = 0
+ [HideInInspector]_GlitterMinMaxSizeAnimated ("Min Max Random Size", Int) = 0
+
+ // MSDF OVERLAY
+ [HideInInspector]_TextGlyphsAnimated ("Font Array", Int) = 0
+ [HideInInspector]_TextPixelRangeAnimated ("Pixel Range", Int) = 0
+ [HideInInspector]_TextEnabledAnimated ("Text?", Int) = 0
+
+ // FPS
+ [HideInInspector]_TextFPSEnabledAnimated ("FPS Text?", Int) = 0
+ [HideInInspector]_TextFPSUVAnimated ("FPS UV", Int) = 0
+ [HideInInspector]_TextFPSColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextFPSEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextFPSOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextFPSRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextFPSScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextFPSPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // POSITION
+ [HideInInspector]_TextPositionEnabledAnimated ("Position Text?", Int) = 0
+ [HideInInspector]_TextPositionUVAnimated ("Position UV", Int) = 0
+ //[ToggleUI]_TextPositionVerticalAnimated ("Vertical?", Int) = 0
+ [HideInInspector]_TextPositionColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextPositionEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextPositionOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextPositionRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextPositionScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextPositionPaddingAnimated ("Padding Reduction", Int) = 0
+
+ // INSTANCE TIME
+ [HideInInspector]_TextTimeEnabledAnimated ("Time Text?", Int) = 0
+ [HideInInspector]_TextTimeUVAnimated ("Time UV", Int) = 0
+ [HideInInspector]_TextTimeColorAnimated ("Color", Int) = 0
+ [HideInInspector]_TextTimeEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_TextTimeOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_TextTimeRotationAnimated ("Rotation", Int) = 0
+ [HideInInspector]_TextTimeScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_TextTimePaddingAnimated ("Padding Reduction", Int) = 0
+
+ // Mirror Rendering
+ [HideInInspector]_EnableMirrorOptionsAnimated ("Enable Mirror Options", Int) = 0
+ [HideInInspector]_MirrorAnimated ("Show in mirror", Int) = 0
+ [HideInInspector]_EnableMirrorTextureAnimated ("Enable Mirror Texture", Int) = 0
+ [HideInInspector]_MirrorTextureAnimated ("Mirror Tex", Int) = 0
+ [HideInInspector]_MirrorTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MirrorTextureUVAnimated ("UV", Int) = 0
+
+ // Distance Fade
+ [HideInInspector]_MainMinAlphaAnimated ("Minimum Alpha", Int) = 0
+ [HideInInspector]_MainFadeTextureAnimated ("Fade Mask", Int) = 0
+ [HideInInspector]_MainFadeTexturePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_MainFadeTextureUVAnimated ("UV", Int) = 0
+ [HideInInspector]_MainDistanceFadeAnimated ("Distance Fade X to Y", Int) = 0
+
+ // Angular Fade
+ [HideInInspector]_EnableRandomAnimated ("Enable Angular Fade", Int) = 0
+ [HideInInspector]_AngleTypeAnimated ("Angle Type", Int) = 0
+ [HideInInspector]_AngleCompareToAnimated ("Model or Vert Positon", Int) = 0
+ [HideInInspector]_AngleForwardDirectionAnimated ("Forward Direction", Int) = 0
+ [HideInInspector]_CameraAngleMinAnimated ("Camera Angle Min", Int) = 0
+ [HideInInspector]_CameraAngleMaxAnimated ("Camera Angle Max", Int) = 0
+ [HideInInspector]_ModelAngleMinAnimated ("Model Angle Min", Int) = 0
+ [HideInInspector]_ModelAngleMaxAnimated ("Model Angle Max", Int) = 0
+ [HideInInspector]_AngleMinAlphaAnimated ("Min Alpha", Int) = 0
+
+ // UV Distortion
+ [HideInInspector]_EnableDistortionAnimated ("Enabled?", Int) = 0
+ [HideInInspector]_DistortionMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_DistortionMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_DistortionMaskUVAnimated ("Distortion Mask UV", Int) = 0
+ [HideInInspector]_DistortionFlowTextureAnimated ("Distortion Texture 1", Int) = 0
+ [HideInInspector]_DistortionFlowTexture1Animated ("Distortion Texture 2", Int) = 0
+ [HideInInspector]_DistortionStrengthAnimated ("Strength1", Int) = 0
+ [HideInInspector]_DistortionStrength1Animated ("Strength2", Int) = 0
+ [HideInInspector]_DistortionSpeedAnimated ("Speed1", Int) = 0
+ [HideInInspector]_DistortionSpeed1Animated ("Speed2", Int) = 0
+
+ // Video Options
+ [HideInInspector]_EnableVideoAnimated ("Enable Video", Int) = 0
+ [HideInInspector]_VideoUVNumberAnimated ("Screen UV#", Int) = 0
+ [HideInInspector]_VideoTypeAnimated ("Screen Type", Int) = 0
+ [HideInInspector]_VideoBacklightAnimated ("Brightness", Int) = 0
+ [HideInInspector]_VideoPixelTextureAnimated ("Pixel Texture", Int) = 0
+ [HideInInspector]_VideoResolutionAnimated ("Resolution", Int) = 0
+ [HideInInspector]_VideoMaskTextureAnimated ("Mask", Int) = 0
+ [HideInInspector]_VideoMaskPanningAnimated ("Mask Pan Speed", Int) = 0
+ [HideInInspector]_VideoEnableVideoPlayerAnimated ("Enable Video Player", Int) = 0
+ [HideInInspector]_VideoPixelateToResolutionAnimated ("Pixelate To Resolution", Int) = 0
+ [HideInInspector]_VideoRepeatVideoTextureAnimated ("Clamp To UV", Int) = 0
+ [HideInInspector]_VideoPanningAnimated ("Panning Speed", Int) = 0
+ [HideInInspector]_VideoTilingAnimated ("Tiling", Int) = 0
+ [HideInInspector]_VideoOffsetAnimated ("Offset", Int) = 0
+ [HideInInspector]_VideoSaturationAnimated ("Saturation", Int) = 0
+ [HideInInspector]_VideoContrastAnimated ("Contrast boost", Int) = 0
+ [HideInInspector]_VideoEnableDebugAnimated ("Enable Debug", Int) = 0
+ [HideInInspector]_VideoDebugTextureAnimated ("Video Debug Tex", Int) = 0
+ [HideInInspector]_VideoCRTRefreshRateAnimated ("Refresh Rate", Int) = 0
+ [HideInInspector]_VideoCRTPixelEnergizedTimeAnimated ("Pixel Fade Time", Int) = 0
+ [HideInInspector]_VideoGameboyRampAnimated ("Color Ramp", Int) = 0
+
+ // TouchFX
+ [HideInInspector]_EnableBulgeAnimated ("Bulge", Int) = 0
+ [HideInInspector]_BulgeMaskAnimated ("Bulge Mask", Int) = 0
+ [HideInInspector]_BuldgeFadeLengthAnimated ("Touch Distance", Int) = 0
+ [HideInInspector]_BuldgeHeightAnimated ("Bulge Height", Int) = 0
+
+ [HideInInspector]_EnableTouchGlowAnimated ("Enable Touch Glow", Int) = 0
+ [HideInInspector]_DepthGradientTextureUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientBlendAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthGradientUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskPanAnimated ("", Int) = 0
+ [HideInInspector]_DepthMaskUVAnimated ("", Int) = 0
+ [HideInInspector]_DepthGlowColorAnimated ("Depth Glow Color", Int) = 0
+ [HideInInspector]_DepthGradientAnimated ("Depth Gradient", Int) = 0
+ [HideInInspector]_DepthMaskAnimated ("Depth Mask", Int) = 0
+ [HideInInspector]_DepthGlowEmissionAnimated ("Depth Glow Emission", Int) = 0
+ [HideInInspector]_FadeLengthAnimated ("Fade Length", Int) = 0
+ [HideInInspector]_DepthAlphaMinAnimated ("Alpha Min", Int) = 0
+ [HideInInspector]_DepthAlphaMaxAnimated ("Alpha Max", Int) = 0
+
+ // Hologram
+ [HideInInspector]_EnableHoloAnimated ("Enable Hologram Alpha", Int) = 0
+ [HideInInspector]_HoloAlphaMapAnimated ("Alpha Map", Int) = 0
+ [HideInInspector]_HoloCoordinateSpaceAnimated ("Coordinate Space", Int) = 0
+ [HideInInspector]_HoloDirectionAnimated ("Scroll Direction", Int) = 0
+ [HideInInspector]_HoloLineDensityAnimated ("Line Density", Int) = 0
+ [HideInInspector]_HoloScrollSpeedAnimated ("Scroll Speed", Int) = 0
+ [HideInInspector]_HoloFresnelAlphaAnimated ("Intensity", Int) = 0
+ [HideInInspector]_HoloRimSharpnessAnimated ("Sharpness", Int) = 0
+ [HideInInspector]_HoloRimWidthAnimated ("Width", Int) = 0
+
+ // GrabPass
+ [HideInInspector]_GrabPassUseAlphaAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabPassBlendFactorAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabSrcBlendAnimated ("Source Blend", Int) = 0
+ [HideInInspector]_GrabDstBlendAnimated ("Destination Blend", Int) = 0
+ [HideInInspector]_RefractionEnabledAnimated ("Enable Refraction,", Int) = 0
+ [HideInInspector]_RefractionIndexAnimated ("Refraction", Int) = 0
+ [HideInInspector]_RefractionChromaticAberattionAnimated ("Chromatic Aberration", Int) = 0
+ [HideInInspector]_EnableBlurAnimated ("Enable Blur", Int) = 0
+ [HideInInspector]_GrabBlurDistanceAnimated ("Blur Distance", Int) = 0
+ [HideInInspector]_GrabBlurQualityAnimated ("Blur Quality", Int) = 0
+ [HideInInspector]_GrabBlurDirectionsAnimated ("Blur Direction", Int) = 0
+
+ // Iridescence
+ [HideInInspector]_EnableIridescenceAnimated ("Enable Iridescence", Int) = 0
+ [HideInInspector]_IridescenceRampAnimated ("Ramp", Int) = 0
+ [HideInInspector]_IridescenceNormalToggleAnimated ("Custom Normals?", Int) = 0
+ [HideInInspector]_IridescenceNormalMapAnimated ("Normal Map", Int) = 0
+ [HideInInspector]_IridescenceMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_IridescenceNormalIntensityAnimated ("Normal Intensity", Int) = 0
+ [HideInInspector]_IridescenceNormalUVAnimated ("Normal UV", Int) = 0
+ [HideInInspector]_IridescenceMaskUVAnimated ("Mask UV", Int) = 0
+ [HideInInspector]_IridescenceNormalSelectionAnimated ("Normal Select", Int) = 0
+ [HideInInspector]_IridescenceIntensityAnimated ("Intensity", Int) = 0
+ [HideInInspector]_IridescenceAddBlendAnimated ("Blend Add", Int) = 0
+ [HideInInspector]_IridescenceReplaceBlendAnimated ("Blend Replace", Int) = 0
+ [HideInInspector]_IridescenceMultiplyBlendAnimated ("Blend Multiply", Int) = 0
+ [HideInInspector]_IridescenceEmissionStrengthAnimated ("Emission Strength", Int) = 0
+ [HideInInspector]_IridescenceTimeAnimated ("When To Run", Int) = 0
+
+ // Vertex Glitching
+ [HideInInspector]_EnableVertexGlitchAnimated ("Enable Vertex Glitching", Int) = 0
+ [HideInInspector]_VertexGlitchFrequencyAnimated ("Glitch Interval", Int) = 0
+ [HideInInspector]_VertexGlitchThresholdAnimated ("Glitch Threshold", Int) = 0
+ [HideInInspector]_VertexGlitchStrengthAnimated ("Glitch Strength", Int) = 0
+
+ // Spawn In Effects
+ [HideInInspector]_EnableScifiSpawnInAnimated ("Enable Sci Fi Spawn", Int) = 0
+ [HideInInspector]_SpawnInNoiseAnimated ("Spawn Noise", Int) = 0
+ [HideInInspector]_SpawnInNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_SpawnInAlphaAnimated ("Spawn Alpha", Int) = 0
+ [HideInInspector]_SpawnInGradientStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_SpawnInGradientFinishAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_SpawnInEmissionColorAnimated ("Emission Color", Int) = 0
+ [HideInInspector]_SpawnInEmissionOffsetAnimated ("Emission Width", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetAnimated ("Vertex Offset Speed", Int) = 0
+ [HideInInspector]_SpawnInVertOffsetOffsetAnimated ("vert width", Int) = 0
+
+ // Voronoi
+ [HideInInspector]_VoronoiTypeAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiSpaceAnimated ("Space", Int) = 0
+ [HideInInspector]_VoronoiBlendAnimated ("Blend", Int) = 0
+ [HideInInspector]_EnableVoronoiAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiEffectsMaterialAlphaAnimated ("Enable Voronoi", Int) = 0
+ [HideInInspector]_VoronoiMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_VoronoiMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseAnimated ("Edge Noise", Int) = 0
+ [HideInInspector]_VoronoiNoisePanAnimated ("Panning", Int) = 0
+ [HideInInspector]_VoronoiNoiseUVAnimated ("UV", Int) = 0
+ [HideInInspector]_VoronoiNoiseIntensityAnimated ("Noise Intensity", Int) = 0
+ [HideInInspector]_VoronoiColor0Animated ("Color 0", Int) = 0
+ [HideInInspector]_VoronoiEmission0Animated ("Emission 0", Int) = 0
+ [HideInInspector]_VoronoiColor1Animated ("Color 1", Int) = 0
+ [HideInInspector]_VoronoiEmission1Animated ("Emission 1", Int) = 0
+ [HideInInspector]_VoronoiGradientAnimated ("Gradient", Int) = 0
+ [HideInInspector]_VoronoiScaleAnimated ("Scale", Int) = 0
+ [HideInInspector]_VoronoiSpeedAnimated ("Speed", Int) = 0
+ [HideInInspector]_VoronoiEnableRandomCellColorAnimated ("Rando Cell Col", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxSaturationAnimated ("Saturation Range", Int) = 0
+ [HideInInspector]_VoronoiRandomMinMaxBrightnessAnimated ("Brightness Range", Int) = 0
+
+ // Blacklight mask
+ [HideInInspector]_BlackLightMaskEnabledAnimated ("Black Light Mask Enabled", Int) = 0
+ [HideInInspector]_BlackLightMaskKeysAnimated ("Mask Keys", Int) = 0
+ [HideInInspector]_BlackLightMaskStartAnimated ("Gradient Start", Int) = 0
+ [HideInInspector]_BlackLightMaskEndAnimated ("Gradient End", Int) = 0
+ [HideInInspector]_BlackLightMaskDebugAnimated ("Visualize", Int) = 0
+ [HideInInspector]_BlackLightMaskMetallicAnimated ("Metallic", Int) = 0
+ [HideInInspector]_BlackLightMaskClearCoatAnimated ("Clear Coat", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcapAnimated ("Matcap 1", Int) = 0
+ [HideInInspector]_BlackLightMaskMatcap2Animated ("Matcap 2", Int) = 0
+ [HideInInspector]_BlackLightMaskEmissionAnimated ("Emission 1", Int) = 0
+ [HideInInspector]_BlackLightMaskEmission2Animated ("Emission 2", Int) = 0
+ [HideInInspector]_BlackLightMaskFlipbookAnimated ("Flipbook", Int) = 0
+ [HideInInspector]_BlackLightMaskDissolveAnimated ("Dissolve", Int) = 0
+ [HideInInspector]_BlackLightMaskPanosphereAnimated ("Panosphere", Int) = 0
+ [HideInInspector]_BlackLightMaskGlitterAnimated ("Glitter", Int) = 0
+ [HideInInspector]_BlackLightMaskIridescenceAnimated ("Iridescence", Int) = 0
+
+ // Outline Options
+ [HideInInspector]_OutlineModeAnimated ("Mode", Int) = 0
+ [HideInInspector]_OutlineFixedSizeAnimated ("Fixed Size?", Int) = 0
+ [HideInInspector]_OutlineUseVertexColorsAnimated ("V Color", Int) = 0
+ [HideInInspector]_OutlineLitAnimated ("Enable Lighting", Int) = 0
+ [HideInInspector]_LineWidthAnimated ("Width", Int) = 0
+ [HideInInspector]_LineColorAnimated ("Color", Int) = 0
+ [HideInInspector]_OutlineTintMixAnimated ("Tint Mix", Int) = 0
+ [HideInInspector]_OutlineEmissionAnimated ("Outline Emission", Int) = 0
+ [HideInInspector]_OutlineTextureAnimated ("Outline Texture", Int) = 0
+ [HideInInspector]_OutlineMaskAnimated ("Outline Mask", Int) = 0
+ [HideInInspector]_OutlineTexturePanAnimated ("Outline Texture Pan", Int) = 0
+ [HideInInspector]_OutlineShadowStrengthAnimated ("Shadow Strength", Int) = 0
+ [HideInInspector]_OutlineRimLightBlendAnimated ("Rim Light Blend", Int) = 0
+ [HideInInspector]_OutlinePersonaDirectionAnimated ("directional Offset XY", Int) = 0
+ [HideInInspector]_OutlineDropShadowOffsetAnimated ("Drop Direction XY", Int) = 0
+ [HideInInspector]_OutlineFadeDistanceAnimated ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetFactor ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineOffsetUnits ("Outline distance Fade", Int) = 0
+ [HideInInspector]_OutlineCullAnimated ("Cull", Int) = 0
+
+ // Parallax Mapping
+ [HideInInspector]_ParallaxMapAnimated ("Enable Parallax FX", Int) = 0
+ [HideInInspector]_ParallaxHeightMapEnabledAnimated ("Enable Parallax Height", Int) = 0
+ [HideInInspector]_ParallaxInternalMapEnabledAnimated ("Enable Parallax Internal", Int) = 0
+ [HideInInspector]_ParallaxHeightMapPanAnimated ("Pan", Int) = 0
+ [HideInInspector]_ParallaxUVAnimated ("Parallax UV", Int) = 0
+ [HideInInspector]_ParallaxHeightMapAnimated ("Height Map", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxHeightMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxStrengthAnimated ("Parallax Strength", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightmapModeAnimated ("Parallax Mode", Int) = 0
+ [HideInInspector]_ParallaxInternalHeightFromAlphaAnimated ("HeightFromAlpha", Int) = 0
+ [HideInInspector]_ParallaxInternalMapAnimated ("Internal Map", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskAnimated ("Mask", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskPanAnimated ("Panning", Int) = 0
+ [HideInInspector]_ParallaxInternalMapMaskUVAnimated ("UV", Int) = 0
+ [HideInInspector]_ParallaxInternalIterationsAnimated ("Parallax Internal Iterations", Int) = 0
+ [HideInInspector]_ParallaxInternalMinDepthAnimated ("Min Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxDepthAnimated ("Max Depth", Int) = 0
+ [HideInInspector]_ParallaxInternalMinFadeAnimated ("Min Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxFadeAnimated ("Max Depth Brightness", Int) = 0
+ [HideInInspector]_ParallaxInternalMinColorAnimated ("Min Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalMaxColorAnimated ("Max Depth Color", Int) = 0
+ [HideInInspector]_ParallaxInternalPanSpeedAnimated ("Pan Speed", Int) = 0
+ [HideInInspector]_ParallaxInternalPanDepthSpeedAnimated ("Per Level Speed Multiplier", Int) = 0
+ [HideInInspector]_ParallaxBiasAnimated ("Parallax Bias (0.42)", Int) = 0
+
+ // Rendering Options
+ [HideInInspector]_CullAnimated ("Cull", Int) = 0
+ [HideInInspector]_ZTestAnimated ("ZTest", Int) = 0
+ [HideInInspector]_ZWriteAnimated ("ZWrite", Int) = 0
+ [HideInInspector]_ColorMaskAnimated ("Color Mask", Int) = 0
+ [HideInInspector]_OffsetFactorAnimated ("Offset Factor", Int) = 0
+ [HideInInspector]_OffsetUnitsAnimated ("Offset Units", Int) = 0
+ [HideInInspector]_IgnoreFogAnimated ("Ignore Fog", Int) = 0
+
+ // Blending Options
+ [HideInInspector]_BlendOpAnimated ("RGB Blend Op", Int) = 0
+ [HideInInspector]_BlendOpAlphaAnimated ("Alpha Blend Op", Int) = 0
+ [HideInInspector]_SrcBlendAnimated ("RGB Source Blend", Int) = 0
+ [HideInInspector]_DstBlendAnimated ("RGB Destination Blend", Int) = 0
+
+ // Stencils
+ [HideInInspector]_StencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_StencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_StencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_StencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_StencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_StencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_StencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Outline Stencil
+ [HideInInspector]_OutlineStencilRefAnimated ("Stencil Reference Value", Int) = 0
+ [HideInInspector]_OutlineStencilReadMaskAnimated ("Stencil ReadMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilWriteMaskAnimated ("Stencil WriteMask Value", Int) = 0
+ [HideInInspector]_OutlineStencilPassOpAnimated ("Stencil Pass Op", Int) = 0
+ [HideInInspector]_OutlineStencilFailOpAnimated ("Stencil Fail Op", Int) = 0
+ [HideInInspector]_OutlineStencilZFailOpAnimated ("Stencil ZFail Op", Int) = 0
+ [HideInInspector]_OutlineStencilCompareFunctionAnimated ("Stencil Compare Function", Int) = 0
+
+ // Debug Options
+ [HideInInspector]_VertexUnwrapAnimated ("Unwrap", Range(0, 1)) = 0
+ [HideInInspector]_DebugMeshDataAnimated ("Mesh Data", Int) = 0
+ [HideInInspector]_DebugLightingDataAnimated ("Lighting Data", Int) = 0
+ [HideInInspector]_DebugCameraDataAnimated ("Camera Data", Int) = 0
+ }
+
+
+ //originalEditorCustomEditor "PoiToon"
+ CustomEditor "Thry.ShaderEditor"
+ SubShader
+ {
+ Tags { "RenderType" = "Opaque" "Queue" = "Geometry" }
+
+// //EnableOutlinePass
+// Pass
+// {
+// Name "Outline"
+// Tags { "LightMode" = "ForwardBase" }
+// Stencil
+// {
+// Ref [_OutlineStencilRef]
+// ReadMask [_OutlineStencilReadMask]
+// WriteMask [_OutlineStencilWriteMask]
+// Comp [_OutlineStencilCompareFunction]
+// Pass [_OutlineStencilPassOp]
+// Fail [_OutlineStencilFailOp]
+// ZFail [_OutlineStencilZFailOp]
+// }
+// ZTest [_ZTest]
+// ColorMask [_ColorMask]
+// Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
+// BlendOp [_BlendOp], [_BlendOpAlpha]
+// Blend [_SrcBlend] [_DstBlend]
+// ZWrite [_ZWrite]
+// AlphaToMask [_AlphaToMask]
+// Cull [_OutlineCull]
+// CGPROGRAM
+//
+// #pragma target 5.0
+// #define FORWARD_BASE_PASS
+// #define OUTLINE
+// float _Mode;
+// // patreon Additive
+// // Black Light Mask
+//// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+// // voronoi
+//// #pragma shader_feature CHROMATIC_ABERRATION
+// // UV Distortion
+//// #pragma shader_feature USER_LUT
+// // Vertex Offsets
+//// #pragma shader_feature AUTO_EXPOSURE
+// // Mirror
+//// #pragma shader_feature _REQUIRE_UV2
+// // Random
+//// #pragma shader_feature _SUNDISK_NONE
+// // Dissolve
+//// #pragma shader_feature DISTORT
+// // Lighting
+//// #pragma shader_feature VIGNETTE_MASKED
+// #pragma multi_compile_fwdbase
+// #pragma fragmentoption ARB_precision_hint_fastest
+// #pragma multi_compile_fog
+// #pragma multi_compile_instancing
+// #pragma vertex vert
+// #pragma fragment frag
+// #include "../Includes/CGI_PoiPassOutline.cginc"
+// ENDCG
+//
+// }
+ //EnableOutlinePass
+
+ Pass
+ {
+ Name "MainPass"
+ Tags { "LightMode" = "ForwardBase" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ AlphaToMask [_AlphaToMask]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend [_SrcBlend] [_DstBlend]
+
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_BASE_PASS
+ float _Mode;
+ // Base Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ #pragma multi_compile _ VERTEXLIGHT_ON
+ // patreon Base
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Grab Pass Blur
+// #pragma shader_feature CHROMATIC_ABERRATION_LOW
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Touch Color
+// #pragma shader_feature GRAIN
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdbase
+ #pragma fragmentoption ARB_precision_hint_fastest
+ #pragma multi_compile_fog
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+
+ //LightingAdditiveEnable
+ Pass
+ {
+ Name "ForwardAddPass"
+ Tags { "LightMode" = "ForwardAdd" }
+
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ ZWrite Off
+ BlendOp [_BlendOp], [_BlendOpAlpha]
+ Blend One One
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define FORWARD_ADD_PASS
+ float _Mode;
+ // Add Pass Features
+ // Decal
+// #pragma shader_feature GEOM_TYPE_BRANCH
+ // patreon Additive
+ // Black Light Mask
+// #pragma shader_feature _SPECULARHIGHLIGHTS_OFF
+ // voronoi
+// #pragma shader_feature CHROMATIC_ABERRATION
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Bulge
+// #pragma shader_feature BLOOM_LOW
+// #pragma shader_feature _PARALLAX_MAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Disable Directionals
+// #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+
+ #pragma multi_compile_instancing
+ #pragma multi_compile_fwdadd_fullshadows
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ //LightingAdditiveEnable
+
+ //LightingCastShadows
+ Pass
+ {
+ Name "ShadowCasterPass"
+ Tags { "LightMode" = "ShadowCaster" }
+ Stencil
+ {
+ Ref [_StencilRef]
+ Comp [_StencilCompareFunction]
+ Pass [_StencilPassOp]
+ Fail [_StencilFailOp]
+ ZFail [_StencilZFailOp]
+ }
+ AlphaToMask Off
+ ZWrite [_ZWrite]
+ Cull [_Cull]
+ ZTest [_ZTest]
+ ColorMask [_ColorMask]
+ Offset [_OffsetFactor], [_OffsetUnits]
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_SHADOW
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Vertex Offsets
+// #pragma shader_feature AUTO_EXPOSURE
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Dissolve
+// #pragma shader_feature DISTORT
+ #pragma multi_compile_instancing
+ #pragma vertex vertShadowCaster
+ #pragma fragment fragShadowCaster
+ #include "../Includes/CGI_PoiPassShadow.cginc"
+ ENDCG
+
+ }
+ //LightingCastShadows
+
+ Pass
+ {
+ Tags { "LightMode" = "Meta" }
+ Cull Off
+ CGPROGRAM
+#define OPTIMIZER_ENABLED
+#define VIGNETTE_MASKED
+#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+#define PROPSHADER_IS_USING_THRY_EDITOR 0
+#define PROPSHADER_MASTER_LABEL 0
+#define PROPSHADER_PRESETS 0
+#define PROPSHADER_PROPERTIES_LABEL_FILE 0
+#define PROPFOOTER_YOUTUBE 0
+#define PROPFOOTER_TWITTER 0
+#define PROPFOOTER_PATREON 0
+#define PROPFOOTER_DISCORD 0
+#define PROPFOOTER_GITHUB 0
+#define PROP_FORGOTTOLOCKMATERIAL 1
+#define PROP_SHADEROPTIMIZERENABLED 0
+#define PROP_LOCKTOOLTIP 0
+#define PROP_MODE 0
+#define PROPM_LOCKINGINFO 0
+#define PROP_HELPBOXLOCKING 0
+#define PROP_HELPBOXHIDELOCKING 0
+#define PROPM_MAINOPTIONS 0
+#define PROP_MAINTEX
+#define PROP_MAINTEXTUREUV 0
+#define PROP_SATURATION 0
+#define PROP_MAINEMISSIONSTRENGTH 0
+#define PROP_BUMPMAPUV 0
+#define PROP_BUMPSCALE 1
+#define PROP_ALPHAMASKUV 0
+#define PROPM_START_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTTOGGLE 0
+#define PROP_MAINHUESHIFTREPLACE 1
+#define PROP_MAINHUESHIFT 0
+#define PROP_MAINHUESHIFTSPEED 0
+#define PROP_MAINHUESHIFTMASKUV 0
+#define PROPM_END_MAINHUESHIFT 0
+#define PROPM_START_RGBMASK 0
+#define PROP_RGBMASKENABLED 0
+#define PROP_RGBUSEVERTEXCOLORS 0
+#define PROP_RGBBLENDMULTIPLICATIVE 0
+#define PROP_RGBMASKUV 0
+#define PROP_RGBRED_UV 0
+#define PROP_RGBGREEN_UV 0
+#define PROP_RGBBLUE_UV 0
+#define PROP_RGBNORMALSENABLED 0
+#define PROP_RGBNORMALBLEND 0
+#define PROP_RGBNORMALRUV 0
+#define PROP_RGBNORMALRSCALE 0
+#define PROP_RGBNORMALGUV 0
+#define PROP_RGBNORMALGSCALE 0
+#define PROP_RGBNORMALBUV 0
+#define PROP_RGBNORMALBSCALE 0
+#define PROPM_END_RGBMASK 0
+#define PROPM_START_DETAILOPTIONS 0
+#define PROP_DETAILENABLED 0
+#define PROP_DETAILMASKUV 0
+#define PROP_DETAILTEXUV 0
+#define PROP_DETAILTEXINTENSITY 1
+#define PROP_DETAILBRIGHTNESS 1
+#define PROP_DETAILNORMALMAPSCALE 1
+#define PROP_DETAILNORMALMAPUV 0
+#define PROPM_END_DETAILOPTIONS 0
+#define PROPM_START_MAINVERTEXCOLORS 0
+#define PROP_MAINVERTEXCOLORING 0
+#define PROP_MAINUSEVERTEXCOLORALPHA 0
+#define PROPM_END_MAINVERTEXCOLORS 0
+#define PROPM_START_VERTEXMANIPULATION 0
+#define PROP_VERTEXMANIPULATIONSENABLED 0
+#define PROP_VERTEXMANIPULATIONHEIGHT 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUV 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIAS 0
+#define PROP_VERTEXROUNDINGENABLED 0
+#define PROP_VERTEXROUNDINGDIVISION 500
+#define PROPM_END_VERTEXMANIPULATION 0
+#define PROPM_START_ALPHA 0
+#define PROP_CUTOFF 0.5
+#define PROP_DITHERINGENABLED 0
+#define PROP_DITHERGRADIENT 0.1
+#define PROP_FORCEOPAQUE 0
+#define PROP_MAINSHADOWCLIPMOD 0
+#define PROP_ALPHATOMASK 0
+#define PROP_MAINALPHATOCOVERAGE 0
+#define PROP_MAINMIPSCALE 0.25
+#define PROP_ALPHAPREMULTIPLY 0
+#define PROP_ALPHAMOD 0
+#define PROPM_END_ALPHA 0
+#define PROPM_START_DECALSECTION 0
+#define PROP_DECALENABLED 0
+#define PROP_DECALEMISSIONSTRENGTH 0
+#define PROP_DECALTEXTUREUV 0
+#define PROP_DECALMASKUV 0
+#define PROP_DECALTILED 0
+#define PROP_DECALROTATION 0
+#define PROP_DECALROTATIONSPEED 0
+#define PROP_DECALBLENDADD 0
+#define PROP_DECALBLENDMULTIPLY 0
+#define PROP_DECALBLENDREPLACE 0
+#define PROPM_END_DECALSECTION 0
+#define PROPM_START_BACKFACE 0
+#define PROP_BACKFACEENABLED 0
+#define PROP_BACKFACETEXTUREUV 0
+#define PROP_BACKFACEDETAILINTENSITY 1
+#define PROP_BACKFACEHUESHIFT 0
+#define PROP_BACKFACEEMISSIONSTRENGTH 0
+#define PROPM_END_BACKFACE 0
+#define PROPM_LIGHTINGOPTIONS 0
+#define PROPM_START_LIGHTING 0
+#define PROP_ENABLELIGHTING 1
+#define PROP_LIGHTINGMODE 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESS 0
+#define PROP_LIGHTINGSHADINGENABLED 0
+#define PROP_LIGHTINGRAMPTYPE 0
+#define PROP_TOONRAMP
+#define PROP_LIGHTINGSHADOWMASKUV 0
+#define PROP_SHADOWOFFSET 0
+#define PROP_LIGHTINGGRADIENTSTART 0
+#define PROP_LIGHTINGGRADIENTEND 0.5
+#define PROP_SHADOWSTRENGTH 1
+#define PROP_ATTENUATIONMULTIPLIER 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLOR 0
+#define PROPM_START_LIGHTINGMODIFIERS 0
+#define PROP_LIGHTINGDIRECTCOLORMODE 0
+#define PROP_LIGHTINGINDIRECTCOLORMODE 0
+#define PROP_LIGHTINGUNCAPPED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWS 0
+#define PROP_LIGHTINGMONOCHROMATIC 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESS 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIO 0
+#define PROPM_END_LIGHTINGMODIFIERS 0
+#define PROPM_START_DETAILSHADOWS 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLED 0
+#define PROP_LIGHTINGDETAILSHADOWSUV 0
+#define PROP_LIGHTINGDETAILSTRENGTH 1
+#define PROPM_END_DETAILSHADOWS 0
+#define PROPM_START_AMBIENTOCCLUSION 0
+#define PROP_LIGHTINGENABLEAO 0
+#define PROP_LIGHTINGAOTEXUV 0
+#define PROP_AOSTRENGTH 1
+#define PROPM_END_AMBIENTOCCLUSION 0
+#define PROPM_START_SHADOWTEXTURE 0
+#define PROP_USESHADOWTEXTURE 0
+#define PROP_LIGHTINGSHADOWTEXTUREUV 0
+#define PROPM_END_SHADOWTEXTURE 0
+#define PROPM_START_LIGHTINGHSL 0
+#define PROP_LIGHTINGENABLEHSL 0
+#define PROP_LIGHTINGHSLINTENSITY 1
+#define PROP_LIGHTINGSHADOWHUE 0.5
+#define PROP_LIGHTINGSHADOWSATURATION 0.5
+#define PROP_LIGHTINGSHADOWLIGHTNESS 0.5
+#define PROPM_END_LIGHTINGHSL 0
+#define PROPM_START_LIGHTINGADVANCED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLE 1
+#define PROP_LIGHTINGADDITIVETYPE 1
+#define PROP_LIGHTINGADDITIVEGRADIENTSTART 0
+#define PROP_LIGHTINGADDITIVEGRADIENTEND 0.5
+#define PROP_LIGHTINGADDITIVEPASSTHROUGH 0.5
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTH 1
+#define PROP_LIGHTINGADDITIVELIMITINTENSITY 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITY 1
+#define PROP_DISABLEDIRECTIONALINADD 1
+#define PROPM_END_LIGHTINGADVANCED 0
+#define PROPM_END_LIGHTING 0
+#define PROPM_START_SUBSURFACE 0
+#define PROP_ENABLESSS 0
+#define PROP_SSSTHICKNESSMAPUV 0
+#define PROP_SSSTHICKNESSMOD 0
+#define PROP_SSSSCALE 0.25
+#define PROP_SSSPOWER 5
+#define PROP_SSSDISTORTION 1
+#define PROPM_END_SUBSURFACE 0
+#define PROPM_START_RIMLIGHTOPTIONS 0
+#define PROP_ENABLERIMLIGHTING 0
+#define PROP_RIMLIGHTNORMAL 1
+#define PROP_RIMLIGHTINGINVERT 0
+#define PROP_RIMWIDTH 0.8
+#define PROP_RIMSHARPNESS 0.25
+#define PROP_RIMSTRENGTH 0
+#define PROP_RIMBRIGHTEN 0
+#define PROP_RIMLIGHTCOLORBIAS 0
+#define PROP_RIMTEXUV 0
+#define PROP_RIMMASKUV 0
+#define PROPM_START_RIMWIDTHNOISE 0
+#define PROP_RIMWIDTHNOISETEXTUREUV 0
+#define PROP_RIMWIDTHNOISESTRENGTH 0.1
+#define PROPM_END_RIMWIDTHNOISE 0
+#define PROPM_START_SHADOWMIX 0
+#define PROP_SHADOWMIX 0
+#define PROP_SHADOWMIXTHRESHOLD 0.5
+#define PROP_SHADOWMIXWIDTHMOD 0.5
+#define PROPM_END_SHADOWMIX 0
+#define PROPM_END_RIMLIGHTOPTIONS 0
+#define PROPM_START_REFLECTIONRIM 0
+#define PROP_ENABLEENVIRONMENTALRIM 0
+#define PROP_RIMENVIROMASKUV 0
+#define PROP_RIMENVIROBLUR 0.7
+#define PROP_RIMENVIROWIDTH 0.45
+#define PROP_RIMENVIROSHARPNESS 0
+#define PROP_RIMENVIROMINBRIGHTNESS 0
+#define PROP_RIMENVIROINTENSITY 1
+#define PROPM_END_REFLECTIONRIM 0
+#define PROPM_START_BAKEDLIGHTING 0
+#define PROP_GIEMISSIONMULTIPLIER 1
+#define PROPDSGI 0
+#define PROPLIGHTMAPFLAGS 0
+#define PROPM_END_BAKEDLIGHTING 0
+#define PROPM_START_METALLIC 0
+#define PROP_ENABLEMETALLIC 0
+#define PROP_CUBEMAP
+#define PROP_SAMPLEWORLD 0
+#define PROP_METALLICTINTMAPUV 0
+#define PROP_METALLICMASKUV 0
+#define PROP_METALLIC 0
+#define PROP_SMOOTHNESSMASKUV 0
+#define PROP_INVERTSMOOTHNESS 0
+#define PROP_SMOOTHNESS 0
+#define PROPM_END_METALLIC 0
+#define PROPM_START_CLEARCOAT 0
+#define PROP_ENABLECLEARCOAT 0
+#define PROP_CLEARCOATNORMALTOUSE 0
+#define PROP_CLEARCOATCUBEMAP
+#define PROP_CLEARCOATSAMPLEWORLD 0
+#define PROP_CLEARCOATMASKUV 0
+#define PROP_CLEARCOAT 1
+#define PROP_CLEARCOATSMOOTHNESSMAPUV 0
+#define PROP_CLEARCOATINVERTSMOOTHNESS 0
+#define PROP_CLEARCOATSMOOTHNESS 0
+#define PROP_CLEARCOATFORCELIGHTING 0
+#define PROPM_END_CLEARCOAT 0
+#define PROPM_START_MATCAP 0
+#define PROP_MATCAPENABLE 0
+#define PROP_MATCAPBORDER 0.43
+#define PROP_MATCAPMASKUV 0
+#define PROP_MATCAPMASKINVERT 0
+#define PROP_MATCAPEMISSIONSTRENGTH 0
+#define PROP_MATCAPINTENSITY 1
+#define PROP_MATCAPLIGHTMASK 0
+#define PROP_MATCAPREPLACE 1
+#define PROP_MATCAPMULTIPLY 0
+#define PROP_MATCAPADD 0
+#define PROP_MATCAPNORMAL 1
+#define PROPM_END_MATCAP 0
+#define PROPM_START_MATCAP2 0
+#define PROP_MATCAP2ENABLE 0
+#define PROP_MATCAP2BORDER 0.43
+#define PROP_MATCAP2MASKUV 0
+#define PROP_MATCAP2MASKINVERT 0
+#define PROP_MATCAP2EMISSIONSTRENGTH 0
+#define PROP_MATCAP2INTENSITY 1
+#define PROP_MATCAP2LIGHTMASK 0
+#define PROP_MATCAP2REPLACE 0
+#define PROP_MATCAP2MULTIPLY 0
+#define PROP_MATCAP2ADD 0
+#define PROP_MATCAP2NORMAL 1
+#define PROPM_END_MATCAP2 0
+#define PROPM_START_SPECULAR 0
+#define PROP_ENABLESPECULAR 0
+#define PROP_SPECULARTYPE 1
+#define PROP_SPECULARNORMAL 1
+#define PROP_SPECULARMETALLIC 0
+#define PROP_SPECULARMETALLICMAPUV 0
+#define PROP_SPECULARSMOOTHNESS 1
+#define PROP_SPECULARMAPUV 0
+#define PROP_SPECULARINVERTSMOOTHNESS 0
+#define PROP_SPECULARMASKUV 0
+#define PROP_SMOOTHNESSFROM 1
+#define PROP_SPECWHATTANGENT 0
+#define PROP_ANISOSPEC1ALPHA 1
+#define PROP_ANISOSPEC2ALPHA 1
+#define PROP_SPEC1OFFSET 0
+#define PROP_SPEC2SMOOTHNESS 0
+#define PROP_ANISOUSETANGENTMAP 0
+#define PROP_ANISOTANGENTMAPUV 0
+#define PROP_SPECULARTOONSTART 0.95
+#define PROP_SPECULARTOONEND 1
+#define PROP_SPECULARANISOJITTERMIRRORED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMICROUV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER 0
+#define PROP_SPECULARANISOJITTERMACROUV 0
+#define PROPM_END_SPECULAR 0
+#define PROPM_START_SPECULAR1 0
+#define PROP_ENABLESPECULAR1 0
+#define PROP_SPECULARTYPE1 1
+#define PROP_SPECULARNORMAL1 1
+#define PROP_SPECULARMETALLIC1 0
+#define PROP_SPECULARMETALLICMAP1UV 0
+#define PROP_SPECULARSMOOTHNESS1 0.75
+#define PROP_SPECULARMAP1UV 0
+#define PROP_SPECULARINVERTSMOOTHNESS1 0
+#define PROP_SPECULARMASK1UV 0
+#define PROP_SMOOTHNESSFROM1 1
+#define PROP_SPECWHATTANGENT1 0
+#define PROP_ANISOSPEC1ALPHA1 1
+#define PROP_ANISOSPEC2ALPHA1 1
+#define PROP_SPEC1OFFSET1 0
+#define PROP_SPEC2SMOOTHNESS1 0
+#define PROP_ANISOUSETANGENTMAP1 0
+#define PROP_ANISOTANGENTMAP1UV 0
+#define PROP_SPECULARTOONSTART1 0.95
+#define PROP_SPECULARTOONEND1 1
+#define PROP_SPECULARANISOJITTERMIRRORED1 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMICRO1UV 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1 0
+#define PROP_SPECULARANISOJITTERMACRO1UV 0
+#define PROPM_END_SPECULAR1 0
+#define PROPM_SPECIAL_EFFECTS 0
+#define PROPM_START_EMISSIONOPTIONS 0
+#define PROP_ENABLEEMISSION 0
+#define PROP_EMISSIONREPLACE 0
+#define PROP_EMISSIONBASECOLORASMAP 0
+#define PROP_EMISSIONMAPUV 0
+#define PROP_EMISSIONMASKUV 0
+#define PROP_EMISSIONSTRENGTH 0
+#define PROP_EMISSIONHUESHIFTENABLED 0
+#define PROP_EMISSIONHUESHIFT 0
+#define PROPM_START_CENTEROUTEMISSION 0
+#define PROP_EMISSIONCENTEROUTENABLED 0
+#define PROP_EMISSIONCENTEROUTSPEED 5
+#define PROPM_END_CENTEROUTEMISSION 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS 0
+#define PROP_ENABLEGITDEMISSION 0
+#define PROP_GITDEWORLDORMESH 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER 0
+#define PROP_GITDEMINLIGHT 0
+#define PROP_GITDEMAXLIGHT 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS 0
+#define PROP_EMISSIONBLINKINGENABLED 0
+#define PROP_EMISSIVEBLINK_MIN 0
+#define PROP_EMISSIVEBLINK_MAX 1
+#define PROP_EMISSIVEBLINK_VELOCITY 4
+#define PROP_EMISSIONBLINKINGOFFSET 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS 0
+#define PROP_SCROLLINGEMISSION 0
+#define PROP_EMISSIONSCROLLINGUSECURVE 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR 0
+#define PROP_EMISSIVESCROLL_WIDTH 10
+#define PROP_EMISSIVESCROLL_VELOCITY 10
+#define PROP_EMISSIVESCROLL_INTERVAL 20
+#define PROP_EMISSIONSCROLLINGOFFSET 0
+#define PROPM_END_SCROLLINGEMISSIONOPTIONS 0
+#define PROPM_END_EMISSIONOPTIONS 0
+#define PROPM_START_EMISSION1OPTIONS 0
+#define PROP_ENABLEEMISSION1 0
+#define PROP_EMISSIONBASECOLORASMAP1 0
+#define PROP_EMISSIONMAP1UV 0
+#define PROP_EMISSIONMASK1UV 0
+#define PROP_EMISSIONSTRENGTH1 0
+#define PROP_EMISSIONHUESHIFTENABLED1 0
+#define PROP_EMISSIONHUESHIFT1 0
+#define PROPM_START_CENTEROUTEMISSION1 0
+#define PROP_EMISSIONCENTEROUTENABLED1 0
+#define PROP_EMISSIONCENTEROUTSPEED1 5
+#define PROPM_END_CENTEROUTEMISSION1 0
+#define PROPM_START_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROP_ENABLEGITDEMISSION1 0
+#define PROP_GITDEWORLDORMESH1 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1 1
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1 0
+#define PROP_GITDEMINLIGHT1 0
+#define PROP_GITDEMAXLIGHT1 1
+#define PROPM_END_GLOWINDARKEMISSIONOPTIONS1 0
+#define PROPM_START_BLINKINGEMISSIONOPTIONS1 0
+#define PROP_EMISSIONBLINKINGENABLED1 0
+#define PROP_EMISSIVEBLINK_MIN1 0
+#define PROP_EMISSIVEBLINK_MAX1 1
+#define PROP_EMISSIVEBLINK_VELOCITY1 4
+#define PROP_EMISSIONBLINKINGOFFSET1 0
+#define PROPM_END_BLINKINGEMISSIONOPTIONS1 0
+#define PROPM_START_SCROLLINGEMISSIONOPTIONS1 0
+#define PROP_SCROLLINGEMISSION1 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1 0
+#define PROP_EMISSIVESCROLL_WIDTH1 10
+#define PROP_EMISSIVESCROLL_VELOCITY1 10
+#define PROP_EMISSIVESCROLL_INTERVAL1 20
+#define PROP_EMISSIONSCROLLINGOFFSET1 0
+#define PROPM_END_SCROLLINGEMISSION1OPTIONS 0
+#define PROPM_END_EMISSION1OPTIONS 0
+#define PROPM_START_FLIPBOOK 0
+#define PROP_ENABLEFLIPBOOK 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHA 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHA 0
+#define PROP_FLIPBOOKCOLORREPLACES 0
+#define PROP_FLIPBOOKTEXARRAYUV 0
+#define PROP_FLIPBOOKMASKUV 0
+#define PROP_FLIPBOOKTOTALFRAMES 1
+#define PROP_FLIPBOOKFPS 30
+#define PROP_FLIPBOOKTILED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTH 0
+#define PROP_FLIPBOOKROTATION 0
+#define PROP_FLIPBOOKROTATIONSPEED 0
+#define PROP_FLIPBOOKREPLACE 1
+#define PROP_FLIPBOOKMULTIPLY 0
+#define PROP_FLIPBOOKADD 0
+#define PROPM_START_MANUALFLIPBOOKCONTROL 0
+#define PROP_FLIPBOOKCURRENTFRAME -1
+#define PROPM_END_MANUALFLIPBOOKCONTROL 0
+#define PROPM_END_FLIPBOOK 0
+#define PROPM_START_DISSOLVE 0
+#define PROP_ENABLEDISSOLVE 0
+#define PROP_DISSOLVETYPE 1
+#define PROP_DISSOLVEEDGEWIDTH 0.025
+#define PROP_DISSOLVEEDGEHARDNESS 0.5
+#define PROP_DISSOLVEEDGEEMISSION 0
+#define PROP_DISSOLVETOTEXTUREUV 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTH 0
+#define PROP_DISSOLVENOISETEXTUREUV 0
+#define PROP_DISSOLVEINVERTNOISE 0
+#define PROP_DISSOLVEDETAILNOISEUV 0
+#define PROP_DISSOLVEINVERTDETAILNOISE 0
+#define PROP_DISSOLVEDETAILSTRENGTH 0.1
+#define PROP_DISSOLVEALPHA 0
+#define PROP_DISSOLVEUSEVERTEXCOLORS 0
+#define PROP_DISSOLVEMASKUV 0
+#define PROP_DISSOLVEMASKINVERT 0
+#define PROP_CONTINUOUSDISSOLVE 0
+#define PROPM_START_DISSOLVEMASKING 0
+#define PROP_DISSOLVEEMISSIONSIDE 2
+#define PROP_DISSOLVEEMISSION1SIDE 2
+#define PROPM_END_DISSOLVEMASKING 0
+#define PROPM_START_POINTTOPOINT 0
+#define PROP_DISSOLVEP2PWORLDLOCAL 0
+#define PROP_DISSOLVEP2PEDGELENGTH 0.1
+#define PROPM_END_POINTTOPOINT 0
+#define PROPM_START_BONUSSLIDERS 0
+#define PROP_DISSOLVEALPHA0 0
+#define PROP_DISSOLVEALPHA1 0
+#define PROP_DISSOLVEALPHA2 0
+#define PROP_DISSOLVEALPHA3 0
+#define PROP_DISSOLVEALPHA4 0
+#define PROP_DISSOLVEALPHA5 0
+#define PROP_DISSOLVEALPHA6 0
+#define PROP_DISSOLVEALPHA7 0
+#define PROP_DISSOLVEALPHA8 0
+#define PROP_DISSOLVEALPHA9 0
+#define PROPM_END_BONUSSLIDERS 0
+#define PROPM_END_DISSOLVE 0
+#define PROPM_START_PANOSPHEREOPTIONS 0
+#define PROP_PANOTOGGLE 0
+#define PROP_PANOINFINITESTEREOTOGGLE 0
+#define PROP_PANOMASKUV 0
+#define PROP_PANOEMISSION 0
+#define PROP_PANOBLEND 0
+#define PROP_PANOCUBEMAPTOGGLE 0
+#define PROPM_END_PANOSPHEREOPTIONS 0
+#define PROPM_START_GLITTER 0
+#define PROP_GLITTERENABLE 0
+#define PROP_GLITTERMODE 0
+#define PROP_GLITTERSHAPE 0
+#define PROP_GLITTERBLENDTYPE 0
+#define PROP_GLITTERUSESURFACECOLOR 0
+#define PROP_GLITTERCOLORMAPUV 0
+#define PROP_GLITTERMASKUV 0
+#define PROP_GLITTERTEXTUREROTATION 0
+#define PROP_GLITTERFREQUENCY 300
+#define PROP_GLITTERJITTER 1
+#define PROP_GLITTERSPEED 10
+#define PROP_GLITTERSIZE 0.3
+#define PROP_GLITTERCONTRAST 300
+#define PROP_GLITTERANGLERANGE 90
+#define PROP_GLITTERMINBRIGHTNESS 0
+#define PROP_GLITTERBRIGHTNESS 3
+#define PROP_GLITTERBIAS 0.8
+#define PROP_GLITTERCENTERSIZE 0.08
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVE 20
+#define PROP_GLITTERJAGGYFIX 0
+#define PROPM_START_GLITTERRANDOM 0
+#define PROP_GLITTERRANDOMCOLORS 0
+#define PROP_GLITTERRANDOMSIZE 0
+#define PROP_GLITTERRANDOMROTATION 0
+#define PROPM_END_GLITTERRANDOM 0
+#define PROPM_END_GLITTER 0
+#define PROPM_START_TEXT 0
+#define PROP_TEXTPIXELRANGE 4
+#define PROP_TEXTENABLED 0
+#define PROPM_START_TEXTFPS 0
+#define PROP_TEXTFPSENABLED 0
+#define PROP_TEXTFPSUV 0
+#define PROP_TEXTFPSEMISSIONSTRENGTH 0
+#define PROP_TEXTFPSROTATION 0
+#define PROPM_END_TEXTFPS 0
+#define PROPM_START_TEXTPOSITION 0
+#define PROP_TEXTPOSITIONENABLED 0
+#define PROP_TEXTPOSITIONUV 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTH 0
+#define PROP_TEXTPOSITIONROTATION 0
+#define PROPM_END_TEXTPOSITION 0
+#define PROPM_START_TEXTINSTANCETIME 0
+#define PROP_TEXTTIMEENABLED 0
+#define PROP_TEXTTIMEUV 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTH 0
+#define PROP_TEXTTIMEROTATION 0
+#define PROPM_END_TEXTINSTANCETIME 0
+#define PROPM_END_TEXT 0
+#define PROPM_START_MIRROROPTIONS 0
+#define PROP_ENABLEMIRROROPTIONS 0
+#define PROP_MIRROR 0
+#define PROP_ENABLEMIRRORTEXTURE 0
+#define PROP_MIRRORTEXTUREUV 0
+#define PROPM_END_MIRROROPTIONS 0
+#define PROPM_START_DISTANCEFADE 0
+#define PROP_MAINMINALPHA 0
+#define PROP_MAINFADETEXTUREUV 0
+#define PROPM_END_DISTANCEFADE 0
+#define PROPM_START_ANGULARFADE 0
+#define PROP_ENABLERANDOM 0
+#define PROP_ANGLETYPE 0
+#define PROP_ANGLECOMPARETO 0
+#define PROP_CAMERAANGLEMIN 45
+#define PROP_CAMERAANGLEMAX 90
+#define PROP_MODELANGLEMIN 45
+#define PROP_MODELANGLEMAX 90
+#define PROP_ANGLEMINALPHA 0
+#define PROPM_END_ANGULARFADE 0
+#define PROPM_START_DISTORTIONFLOW 0
+#define PROP_ENABLEDISTORTION 0
+#define PROP_DISTORTIONMASKUV 0
+#define PROP_DISTORTIONSTRENGTH 0.5
+#define PROP_DISTORTIONSTRENGTH1 0.5
+#define PROPM_END_DISTORTIONFLOW 0
+#define PROPM_OUTLINEOPTIONS 0
+#define PROP_COMMENTIFZERO_ENABLEOUTLINEPASS 0
+#define PROP_OUTLINEMODE 0
+#define PROP_OUTLINETINTMIX 0
+#define PROP_OUTLINERIMLIGHTBLEND 0
+#define PROP_OUTLINEFIXEDSIZE 0
+#define PROP_OUTLINEUSEVERTEXCOLORS 0
+#define PROP_OUTLINELIT 1
+#define PROP_LINEWIDTH 0
+#define PROP_OUTLINEEMISSION 0
+#define PROP_OUTLINETEXTUREUV 0
+#define PROP_OUTLINEMASKUV 0
+#define PROP_OUTLINESHADOWSTRENGTH 1
+#define PROPM_START_OUTLINEADVANCED 0
+#define PROP_OUTLINECULL 1
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROPM_END_OUTLINEADVANCED 0
+#define PROPM_PARALLAXMAP 0
+#define PROP_PARALLAXMAP 0
+#define PROP_PARALLAXHEIGHTMAPENABLED 0
+#define PROP_PARALLAXINTERNALMAPENABLED 0
+#define PROPM_START_PARALLAXHEIGHTMAP 0
+#define PROP_PARALLAXUV 0
+#define PROP_PARALLAXHEIGHTMAPMASKUV 0
+#define PROP_PARALLAXSTRENGTH 0
+#define PROPM_END_PARALLAXHEIGHTMAP 0
+#define PROPM_START_PARALLAXINTERNAL 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODE 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHA 0
+#define PROP_PARALLAXINTERNALMAPMASKUV 0
+#define PROP_PARALLAXINTERNALITERATIONS 1
+#define PROP_PARALLAXINTERNALMINDEPTH 0
+#define PROP_PARALLAXINTERNALMAXDEPTH 1
+#define PROP_PARALLAXINTERNALMINFADE 0
+#define PROP_PARALLAXINTERNALMAXFADE 1
+#define PROPM_END_PARALLAXINTERNAL 0
+#define PROPM_START_PARALLAXADVANCED 0
+#define PROP_PARALLAXBIAS 0.42
+#define PROPM_END_PARALLAXADVANCED 0
+#define PROPM_RENDERINGOPTIONS 0
+#define PROP_CULL 2
+#define PROP_ZTEST 4
+#define PROP_ZWRITE 1
+#define PROP_COLORMASK 15
+#define PROP_OFFSETFACTOR 0
+#define PROP_OFFSETUNITS 0
+#define PROP_IGNOREFOG 0
+#define PROPINSTANCING 0
+#define PROPM_START_BLENDING 0
+#define PROP_BLENDOP 0
+#define PROP_BLENDOPALPHA 0
+#define PROP_SRCBLEND 1
+#define PROP_DSTBLEND 0
+#define PROPM_END_BLENDING 0
+#define PROPM_START_STENCILPASSOPTIONS 0
+#define PROP_STENCILREF 0
+#define PROP_STENCILREADMASK 255
+#define PROP_STENCILWRITEMASK 255
+#define PROP_STENCILPASSOP 0
+#define PROP_STENCILFAILOP 0
+#define PROP_STENCILZFAILOP 0
+#define PROP_STENCILCOMPAREFUNCTION 8
+#define PROPM_END_STENCILPASSOPTIONS 0
+#define PROPM_START_OUTLINESTENCIL 0
+#define PROP_OUTLINESTENCILREF 0
+#define PROP_OUTLINESTENCILREADMASK 255
+#define PROP_OUTLINESTENCILWRITEMASK 255
+#define PROP_OUTLINESTENCILPASSOP 0
+#define PROP_OUTLINESTENCILFAILOP 0
+#define PROP_OUTLINESTENCILZFAILOP 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTION 8
+#define PROPM_END_OUTLINESTENCIL 0
+#define PROPM_START_DEBUGOPTIONS 0
+#define PROP_DEBUGENABLED 0
+#define PROP_VERTEXUNWRAP 0
+#define PROP_DEBUGMESHDATA 0
+#define PROP_DEBUGLIGHTINGDATA 0
+#define PROP_DEBUGCAMERADATA 0
+#define PROPM_END_DEBUGOPTIONS 0
+#define PROP_COLORANIMATED 0
+#define PROP_MAINTEXANIMATED 0
+#define PROP_MAINTEX_STANIMATED 0
+#define PROP_MAINTEXPANANIMATED 0
+#define PROP_MAINTEXTUREUVANIMATED 0
+#define PROP_SATURATIONANIMATED 0
+#define PROP_MAINVERTEXCOLORINGANIMATED 0
+#define PROP_MAINUSEVERTEXCOLORALPHAANIMATED 0
+#define PROP_MAINEMISSIONSTRENGTHANIMATED 0
+#define PROP_BUMPMAPANIMATED 0
+#define PROP_BUMPMAPUVANIMATED 0
+#define PROP_BUMPMAPPANANIMATED 0
+#define PROP_BUMPSCALEANIMATED 0
+#define PROP_ALPHAMASKANIMATED 0
+#define PROP_ALPHAMASKPANANIMATED 0
+#define PROP_ALPHAMASKUVANIMATED 0
+#define PROP_MAINHUESHIFTTOGGLEANIMATED 0
+#define PROP_MAINHUESHIFTREPLACEANIMATED 0
+#define PROP_MAINHUESHIFTANIMATED 0
+#define PROP_MAINHUESHIFTSPEEDANIMATED 0
+#define PROP_MAINHUESHIFTMASKANIMATED 0
+#define PROP_MAINHUESHIFTMASKPANANIMATED 0
+#define PROP_MAINHUESHIFTMASKUVANIMATED 0
+#define PROP_RGBMASKENABLEDANIMATED 0
+#define PROP_RGBUSEVERTEXCOLORSANIMATED 0
+#define PROP_RGBBLENDMULTIPLICATIVEANIMATED 0
+#define PROP_RGBMASKANIMATED 0
+#define PROP_RGBMASKPANNINGANIMATED 0
+#define PROP_RGBMASKUVANIMATED 0
+#define PROP_REDCOLORANIMATED 0
+#define PROP_REDTEXUREANIMATED 0
+#define PROP_RGBREDPANNINGANIMATED 0
+#define PROP_RGBRED_UVANIMATED 0
+#define PROP_GREENCOLORANIMATED 0
+#define PROP_GREENTEXTUREANIMATED 0
+#define PROP_RGBGREENPANNINGANIMATED 0
+#define PROP_RGBGREEN_UVANIMATED 0
+#define PROP_BLUECOLORANIMATED 0
+#define PROP_BLUETEXTUREANIMATED 0
+#define PROP_RGBBLUEPANNINGANIMATED 0
+#define PROP_RGBBLUE_UVANIMATED 0
+#define PROP_RGBNORMALBLENDANIMATED 0
+#define PROP_DETAILMASKANIMATED 0
+#define PROP_DETAILMASKPANANIMATED 0
+#define PROP_DETAILMASKUVANIMATED 0
+#define PROP_DETAILTINTANIMATED 0
+#define PROP_DETAILTEXANIMATED 0
+#define PROP_DETAILTEXPANANIMATED 0
+#define PROP_DETAILTEXUVANIMATED 0
+#define PROP_DETAILTEXINTENSITYANIMATED 0
+#define PROP_DETAILBRIGHTNESSANIMATED 0
+#define PROP_DETAILNORMALMAPANIMATED 0
+#define PROP_DETAILNORMALMAPSCALEANIMATED 0
+#define PROP_DETAILNORMALMAPPANANIMATED 0
+#define PROP_DETAILNORMALMAPUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALROTATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONLOCALSCALEANIMATED 0
+#define PROP_VERTEXMANIPULATIONWORLDTRANSLATIONANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTMASKANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTPANANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTUVANIMATED 0
+#define PROP_VERTEXMANIPULATIONHEIGHTBIASANIMATED 0
+#define PROP_VERTEXROUNDINGENABLEDANIMATED 0
+#define PROP_VERTEXROUNDINGDIVISIONANIMATED 0
+#define PROP_ALPHAMODANIMATED 0
+#define PROP_CUTOFFANIMATED 0
+#define PROP_DITHERINGENABLEDANIMATED 0
+#define PROP_DITHERGRADIENTANIMATED 0
+#define PROP_FORCEOPAQUEANIMATED 0
+#define PROP_MAINSHADOWCLIPMODANIMATED 0
+#define PROP_ALPHATOMASKANIMATED 0
+#define PROP_MAINALPHATOCOVERAGEANIMATED 0
+#define PROP_ALPHAPREMULTIPLYANIMATED 0
+#define PROP_MAINMIPSCALEANIMATED 0
+#define PROP_DECALENABLEDANIMATED 0
+#define PROP_DECALCOLORANIMATED 0
+#define PROP_DECALEMISSIONSTRENGTHANIMATED 0
+#define PROP_DECALTEXTUREANIMATED 0
+#define PROP_DECALTEXTUREPANANIMATED 0
+#define PROP_DECALTEXTUREUVANIMATED 0
+#define PROP_DECALMASKANIMATED 0
+#define PROP_DECALMASKPANANIMATED 0
+#define PROP_DECALMASKUVANIMATED 0
+#define PROP_DECALTILEDANIMATED 0
+#define PROP_DECALSCALEANIMATED 0
+#define PROP_DECALPOSITIONANIMATED 0
+#define PROP_DECALROTATIONANIMATED 0
+#define PROP_DECALROTATIONSPEEDANIMATED 0
+#define PROP_DECALBLENDADDANIMATED 0
+#define PROP_DECALBLENDMULTIPLYANIMATED 0
+#define PROP_DECALBLENDREPLACEANIMATED 0
+#define PROP_ENABLELIGHTINGANIMATED 0
+#define PROP_LIGHTINGMODEANIMATED 0
+#define PROP_LIGHTINGSTANDARDSMOOTHNESSANIMATED 0
+#define PROP_LIGHTINGSHADINGENABLEDANIMATED 0
+#define PROP_LIGHTINGRAMPTYPEANIMATED 0
+#define PROP_TOONRAMPANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKPANANIMATED 0
+#define PROP_LIGHTINGSHADOWMASKUVANIMATED 0
+#define PROP_SHADOWOFFSETANIMATED 0
+#define PROP_LIGHTINGGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGSHADOWCOLORANIMATED 0
+#define PROP_SHADOWSTRENGTHANIMATED 0
+#define PROP_ATTENUATIONMULTIPLIERANIMATED 0
+#define PROP_LIGHTINGIGNOREAMBIENTCOLORANIMATED 0
+#define PROP_LIGHTINGDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGINDIRECTCOLORMODEANIMATED 0
+#define PROP_LIGHTINGMONOCHROMATICANIMATED 0
+#define PROP_LIGHTINGUNCAPPEDANIMATED 0
+#define PROP_LIGHTINGONLYUNITYSHADOWSANIMATED 0
+#define PROP_LIGHTINGMINLIGHTBRIGHTNESSANIMATED 0
+#define PROP_LIGHTINGMINSHADOWBRIGHTNESSRATIOANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSENABLEDANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSPANANIMATED 0
+#define PROP_LIGHTINGDETAILSHADOWSUVANIMATED 0
+#define PROP_LIGHTINGDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGENABLEAOANIMATED 0
+#define PROP_LIGHTINGAOTEXANIMATED 0
+#define PROP_LIGHTINGAOTEXPANANIMATED 0
+#define PROP_LIGHTINGAOTEXUVANIMATED 0
+#define PROP_AOSTRENGTHANIMATED 0
+#define PROP_USESHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREPANANIMATED 0
+#define PROP_LIGHTINGSHADOWTEXTUREUVANIMATED 0
+#define PROP_LIGHTINGENABLEHSLANIMATED 0
+#define PROP_LIGHTINGHSLINTENSITYANIMATED 0
+#define PROP_LIGHTINGSHADOWHUEANIMATED 0
+#define PROP_LIGHTINGSHADOWSATURATIONANIMATED 0
+#define PROP_LIGHTINGSHADOWLIGHTNESSANIMATED 0
+#define PROP_COMMENTIFZERO_LIGHTINGADDITIVEENABLEANIMATED 0
+#define PROP_LIGHTINGADDITIVETYPEANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTSTARTANIMATED 0
+#define PROP_LIGHTINGADDITIVEGRADIENTENDANIMATED 0
+#define PROP_LIGHTINGADDITIVEPASSTHROUGHANIMATED 0
+#define PROP_LIGHTINGADDITIVEDETAILSTRENGTHANIMATED 0
+#define PROP_LIGHTINGADDITIVELIMITINTENSITYANIMATED 0
+#define PROP_LIGHTINGADDITIVEMAXINTENSITYANIMATED 0
+#define PROP_ENABLESSSANIMATED 0
+#define PROP_SSSCOLORANIMATED 0
+#define PROP_SSSTHICKNESSMAPANIMATED 0
+#define PROP_SSSTHICKNESSMAPPANANIMATED 0
+#define PROP_SSSTHICKNESSMAPUVANIMATED 0
+#define PROP_SSSTHICKNESSMODANIMATED 0
+#define PROP_SSSSCALEANIMATED 0
+#define PROP_SSSPOWERANIMATED 0
+#define PROP_SSSDISTORTIONANIMATED 0
+#define PROP_ENABLERIMLIGHTINGANIMATED 0
+#define PROP_RIMLIGHTNORMALANIMATED 0
+#define PROP_RIMLIGHTINGINVERTANIMATED 0
+#define PROP_RIMLIGHTCOLORANIMATED 0
+#define PROP_RIMWIDTHANIMATED 0
+#define PROP_RIMSHARPNESSANIMATED 0
+#define PROP_RIMSTRENGTHANIMATED 0
+#define PROP_RIMBRIGHTENANIMATED 0
+#define PROP_RIMLIGHTCOLORBIASANIMATED 0
+#define PROP_RIMTEXANIMATED 0
+#define PROP_RIMTEXPANANIMATED 0
+#define PROP_RIMTEXUVANIMATED 0
+#define PROP_RIMMASKANIMATED 0
+#define PROP_RIMMASKPANANIMATED 0
+#define PROP_RIMMASKUVANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREPANANIMATED 0
+#define PROP_RIMWIDTHNOISETEXTUREUVANIMATED 0
+#define PROP_RIMWIDTHNOISESTRENGTHANIMATED 0
+#define PROP_SHADOWMIXANIMATED 0
+#define PROP_SHADOWMIXTHRESHOLDANIMATED 0
+#define PROP_SHADOWMIXWIDTHMODANIMATED 0
+#define PROP_ENABLEENVIRONMENTALRIMANIMATED 0
+#define PROP_RIMENVIROMASKANIMATED 0
+#define PROP_RIMENVIROMASKPANANIMATED 0
+#define PROP_RIMENVIROMASKUVANIMATED 0
+#define PROP_RIMENVIROBLURANIMATED 0
+#define PROP_RIMENVIROWIDTHANIMATED 0
+#define PROP_RIMENVIROSHARPNESSANIMATED 0
+#define PROP_RIMENVIROMINBRIGHTNESSANIMATED 0
+#define PROP_RIMENVIROINTENSITYANIMATED 0
+#define PROP_ENABLEMETALLICANIMATED 0
+#define PROP_CUBEMAPANIMATED 0
+#define PROP_SAMPLEWORLDANIMATED 0
+#define PROP_METALREFLECTIONTINTANIMATED 0
+#define PROP_METALLICTINTMAPANIMATED 0
+#define PROP_METALLICTINTMAPPANANIMATED 0
+#define PROP_METALLICTINTMAPUVANIMATED 0
+#define PROP_METALLICMASKANIMATED 0
+#define PROP_METALLICMASKPANANIMATED 0
+#define PROP_METALLICMASKUVANIMATED 0
+#define PROP_METALLICANIMATED 0
+#define PROP_SMOOTHNESSMASKANIMATED 0
+#define PROP_SMOOTHNESSMASKPANANIMATED 0
+#define PROP_SMOOTHNESSMASKUVANIMATED 0
+#define PROP_INVERTSMOOTHNESSANIMATED 0
+#define PROP_SMOOTHNESSANIMATED 0
+#define PROP_ENABLECLEARCOATANIMATED 0
+#define PROP_CLEARCOATNORMALTOUSEANIMATED 0
+#define PROP_CLEARCOATCUBEMAPANIMATED 0
+#define PROP_CLEARCOATSAMPLEWORLDANIMATED 0
+#define PROP_CLEARCOATTINTANIMATED 0
+#define PROP_CLEARCOATMASKANIMATED 0
+#define PROP_CLEARCOATMASKPANANIMATED 0
+#define PROP_CLEARCOATMASKUVANIMATED 0
+#define PROP_CLEARCOATANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPPANANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSMAPUVANIMATED 0
+#define PROP_CLEARCOATINVERTSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATSMOOTHNESSANIMATED 0
+#define PROP_CLEARCOATFORCELIGHTINGANIMATED 0
+#define PROP_MATCAPENABLEANIMATED 0
+#define PROP_MATCAPCOLORANIMATED 0
+#define PROP_MATCAPANIMATED 0
+#define PROP_MATCAPBORDERANIMATED 0
+#define PROP_MATCAPMASKANIMATED 0
+#define PROP_MATCAPMASKPANANIMATED 0
+#define PROP_MATCAPMASKINVERTANIMATED 0
+#define PROP_MATCAPMASKUVANIMATED 0
+#define PROP_MATCAPEMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAPINTENSITYANIMATED 0
+#define PROP_MATCAPLIGHTMASKANIMATED 0
+#define PROP_MATCAPREPLACEANIMATED 0
+#define PROP_MATCAPMULTIPLYANIMATED 0
+#define PROP_MATCAPADDANIMATED 0
+#define PROP_MATCAPNORMALANIMATED 0
+#define PROP_MATCAP2ENABLEANIMATED 0
+#define PROP_MATCAP2COLORANIMATED 0
+#define PROP_MATCAP2ANIMATED 0
+#define PROP_MATCAP2BORDERANIMATED 0
+#define PROP_MATCAP2MASKANIMATED 0
+#define PROP_MATCAP2MASKPANANIMATED 0
+#define PROP_MATCAP2MASKUVANIMATED 0
+#define PROP_MATCAP2MASKINVERTANIMATED 0
+#define PROP_MATCAP2EMISSIONSTRENGTHANIMATED 0
+#define PROP_MATCAP2INTENSITYANIMATED 0
+#define PROP_MATCAP2LIGHTMASKANIMATED 0
+#define PROP_MATCAP2REPLACEANIMATED 0
+#define PROP_MATCAP2MULTIPLYANIMATED 0
+#define PROP_MATCAP2ADDANIMATED 0
+#define PROP_MATCAP2NORMALANIMATED 0
+#define PROP_ENABLESPECULARANIMATED 0
+#define PROP_SPECULARTYPEANIMATED 0
+#define PROP_SPECULARNORMALANIMATED 0
+#define PROP_SPECULARTINTANIMATED 0
+#define PROP_SPECULARMETALLICANIMATED 0
+#define PROP_SPECULARSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMAPANIMATED 0
+#define PROP_SPECULARMAPPANANIMATED 0
+#define PROP_SPECULARMAPUVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESSANIMATED 0
+#define PROP_SPECULARMASKANIMATED 0
+#define PROP_SPECULARMASKPANANIMATED 0
+#define PROP_SPECULARMASKUVANIMATED 0
+#define PROP_SMOOTHNESSFROMANIMATED 0
+#define PROP_SPECWHATTANGENTANIMATED 0
+#define PROP_ANISOSPEC1ALPHAANIMATED 0
+#define PROP_ANISOSPEC2ALPHAANIMATED 0
+#define PROP_SPEC1OFFSETANIMATED 0
+#define PROP_SPEC2SMOOTHNESSANIMATED 0
+#define PROP_ANISOUSETANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPANIMATED 0
+#define PROP_ANISOTANGENTMAPPANANIMATED 0
+#define PROP_ANISOTANGENTMAPUVANIMATED 0
+#define PROP_SPECULARTOONSTARTANIMATED 0
+#define PROP_SPECULARTOONENDANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRROREDANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROUVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIERANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROPANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROUVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTERANIMATED 0
+#define PROP_ENABLESPECULAR1ANIMATED 0
+#define PROP_SPECULARTYPE1ANIMATED 0
+#define PROP_SPECULARNORMAL1ANIMATED 0
+#define PROP_SPECULARTINT1ANIMATED 0
+#define PROP_SPECULARMETALLIC1ANIMATED 0
+#define PROP_SPECULARSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMAP1ANIMATED 0
+#define PROP_SPECULARMAP1PANANIMATED 0
+#define PROP_SPECULARMAP1UVANIMATED 0
+#define PROP_SPECULARINVERTSMOOTHNESS1ANIMATED 0
+#define PROP_SPECULARMASK1ANIMATED 0
+#define PROP_SPECULARMASK1PANANIMATED 0
+#define PROP_SPECULARMASK1UVANIMATED 0
+#define PROP_SMOOTHNESSFROM1ANIMATED 0
+#define PROP_SPECWHATTANGENT1ANIMATED 0
+#define PROP_ANISOSPEC1ALPHA1ANIMATED 0
+#define PROP_ANISOSPEC2ALPHA1ANIMATED 0
+#define PROP_SPEC1OFFSET1ANIMATED 0
+#define PROP_SPEC2SMOOTHNESS1ANIMATED 0
+#define PROP_ANISOUSETANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1ANIMATED 0
+#define PROP_ANISOTANGENTMAP1PANANIMATED 0
+#define PROP_ANISOTANGENTMAP1UVANIMATED 0
+#define PROP_SPECULARTOONSTART1ANIMATED 0
+#define PROP_SPECULARTOONEND1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMIRRORED1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMICRO1UVANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACROMULTIPLIER1ANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1PANANIMATED 0
+#define PROP_SPECULARANISOJITTERMACRO1UVANIMATED 0
+#define PROP_SPECULARTOONINNEROUTER1ANIMATED 0
+#define PROP_ENABLEEMISSIONANIMATED 0
+#define PROP_EMISSIONREPLACEANIMATED 0
+#define PROP_EMISSIONCOLORANIMATED 0
+#define PROP_EMISSIONMAPANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAPANIMATED 0
+#define PROP_EMISSIONMAPPANANIMATED 0
+#define PROP_EMISSIONMAPUVANIMATED 0
+#define PROP_EMISSIONMASKANIMATED 0
+#define PROP_EMISSIONMASKPANANIMATED 0
+#define PROP_EMISSIONMASKUVANIMATED 0
+#define PROP_EMISSIONSTRENGTHANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLEDANIMATED 0
+#define PROP_EMISSIONHUESHIFTANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLEDANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEEDANIMATED 0
+#define PROP_ENABLEGITDEMISSIONANIMATED 0
+#define PROP_GITDEWORLDORMESHANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIERANIMATED 0
+#define PROP_GITDEMINLIGHTANIMATED 0
+#define PROP_GITDEMAXLIGHTANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MINANIMATED 0
+#define PROP_EMISSIVEBLINK_MAXANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITYANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSETANIMATED 0
+#define PROP_SCROLLINGEMISSIONANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVEANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLORANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTIONANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTHANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITYANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVALANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSETANIMATED 0
+#define PROP_ENABLEEMISSION1ANIMATED 0
+#define PROP_EMISSIONCOLOR1ANIMATED 0
+#define PROP_EMISSIONMAP1ANIMATED 0
+#define PROP_EMISSIONBASECOLORASMAP1ANIMATED 0
+#define PROP_EMISSIONMAP1PANANIMATED 0
+#define PROP_EMISSIONMAP1UVANIMATED 0
+#define PROP_EMISSIONMASK1ANIMATED 0
+#define PROP_EMISSIONMASK1PANANIMATED 0
+#define PROP_EMISSIONMASK1UVANIMATED 0
+#define PROP_EMISSIONSTRENGTH1ANIMATED 0
+#define PROP_EMISSIONHUESHIFTENABLED1ANIMATED 0
+#define PROP_EMISSIONHUESHIFT1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTENABLED1ANIMATED 0
+#define PROP_EMISSIONCENTEROUTSPEED1ANIMATED 0
+#define PROP_ENABLEGITDEMISSION1ANIMATED 0
+#define PROP_GITDEWORLDORMESH1ANIMATED 0
+#define PROP_GITDEMINEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMAXEMISSIONMULTIPLIER1ANIMATED 0
+#define PROP_GITDEMINLIGHT1ANIMATED 0
+#define PROP_GITDEMAXLIGHT1ANIMATED 0
+#define PROP_EMISSIONBLINKINGENABLEDANIMATED 0
+#define PROP_EMISSIVEBLINK_MIN1ANIMATED 0
+#define PROP_EMISSIVEBLINK_MAX1ANIMATED 0
+#define PROP_EMISSIVEBLINK_VELOCITY1ANIMATED 0
+#define PROP_EMISSIONBLINKINGOFFSET1ANIMATED 0
+#define PROP_SCROLLINGEMISSION1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGUSECURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGCURVE1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGVERTEXCOLOR1ANIMATED 0
+#define PROP_EMISSIVESCROLL_DIRECTION1ANIMATED 0
+#define PROP_EMISSIVESCROLL_WIDTH1ANIMATED 0
+#define PROP_EMISSIVESCROLL_VELOCITY1ANIMATED 0
+#define PROP_EMISSIVESCROLL_INTERVAL1ANIMATED 0
+#define PROP_EMISSIONSCROLLINGOFFSET1ANIMATED 0
+#define PROP_ENABLEFLIPBOOKANIMATED 0
+#define PROP_FLIPBOOKALPHACONTROLSFINALALPHAANIMATED 0
+#define PROP_FLIPBOOKINTENSITYCONTROLSALPHAANIMATED 0
+#define PROP_FLIPBOOKCOLORREPLACESANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYUVANIMATED 0
+#define PROP_FLIPBOOKTEXARRAYPANANIMATED 0
+#define PROP_FLIPBOOKMASKANIMATED 0
+#define PROP_FLIPBOOKMASKUVANIMATED 0
+#define PROP_FLIPBOOKMASKPANANIMATED 0
+#define PROP_FLIPBOOKCOLORANIMATED 0
+#define PROP_FLIPBOOKTOTALFRAMESANIMATED 0
+#define PROP_FLIPBOOKFPSANIMATED 0
+#define PROP_FLIPBOOKSCALEOFFSETANIMATED 0
+#define PROP_FLIPBOOKTILEDANIMATED 0
+#define PROP_FLIPBOOKEMISSIONSTRENGTHANIMATED 0
+#define PROP_FLIPBOOKROTATIONANIMATED 0
+#define PROP_FLIPBOOKROTATIONSPEEDANIMATED 0
+#define PROP_FLIPBOOKREPLACEANIMATED 0
+#define PROP_FLIPBOOKMULTIPLYANIMATED 0
+#define PROP_FLIPBOOKADDANIMATED 0
+#define PROP_FLIPBOOKCURRENTFRAMEANIMATED 0
+#define PROP_ENABLEDISSOLVEANIMATED 0
+#define PROP_DISSOLVETYPEANIMATED 0
+#define PROP_DISSOLVEEDGEWIDTHANIMATED 0
+#define PROP_DISSOLVEEDGEHARDNESSANIMATED 0
+#define PROP_DISSOLVEEDGECOLORANIMATED 0
+#define PROP_DISSOLVEEDGEGRADIENTANIMATED 0
+#define PROP_DISSOLVEEDGEEMISSIONANIMATED 0
+#define PROP_DISSOLVETEXTURECOLORANIMATED 0
+#define PROP_DISSOLVETOTEXTUREANIMATED 0
+#define PROP_DISSOLVETOTEXTUREPANANIMATED 0
+#define PROP_DISSOLVETOTEXTUREUVANIMATED 0
+#define PROP_DISSOLVETOEMISSIONSTRENGTHANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREPANANIMATED 0
+#define PROP_DISSOLVENOISETEXTUREUVANIMATED 0
+#define PROP_DISSOLVEINVERTNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEPANANIMATED 0
+#define PROP_DISSOLVEDETAILNOISEUVANIMATED 0
+#define PROP_DISSOLVEINVERTDETAILNOISEANIMATED 0
+#define PROP_DISSOLVEDETAILSTRENGTHANIMATED 0
+#define PROP_DISSOLVEALPHAANIMATED 0
+#define PROP_DISSOLVEUSEVERTEXCOLORSANIMATED 0
+#define PROP_DISSOLVEMASKANIMATED 0
+#define PROP_DISSOLVEMASKPANANIMATED 0
+#define PROP_DISSOLVEMASKUVANIMATED 0
+#define PROP_DISSOLVEMASKINVERTANIMATED 0
+#define PROP_CONTINUOUSDISSOLVEANIMATED 0
+#define PROP_DISSOLVEEMISSIONSIDEANIMATED 0
+#define PROP_DISSOLVEEMISSION1SIDEANIMATED 0
+#define PROP_DISSOLVEP2PWORLDLOCALANIMATED 0
+#define PROP_DISSOLVEP2PEDGELENGTHANIMATED 0
+#define PROP_DISSOLVESTARTPOINTANIMATED 0
+#define PROP_DISSOLVEENDPOINTANIMATED 0
+#define PROP_DISSOLVEALPHA0ANIMATED 0
+#define PROP_DISSOLVEALPHA1ANIMATED 0
+#define PROP_DISSOLVEALPHA2ANIMATED 0
+#define PROP_DISSOLVEALPHA3ANIMATED 0
+#define PROP_DISSOLVEALPHA4ANIMATED 0
+#define PROP_DISSOLVEALPHA5ANIMATED 0
+#define PROP_DISSOLVEALPHA6ANIMATED 0
+#define PROP_DISSOLVEALPHA7ANIMATED 0
+#define PROP_DISSOLVEALPHA8ANIMATED 0
+#define PROP_DISSOLVEALPHA9ANIMATED 0
+#define PROP_PANOTOGGLEANIMATED 0
+#define PROP_PANOINFINITESTEREOTOGGLEANIMATED 0
+#define PROP_PANOSPHERECOLORANIMATED 0
+#define PROP_PANOSPHERETEXTUREANIMATED 0
+#define PROP_PANOMASKANIMATED 0
+#define PROP_PANOMASKPANANIMATED 0
+#define PROP_PANOMASKUVANIMATED 0
+#define PROP_PANOEMISSIONANIMATED 0
+#define PROP_PANOBLENDANIMATED 0
+#define PROP_PANOSPHEREPANANIMATED 0
+#define PROP_PANOCUBEMAPTOGGLEANIMATED 0
+#define PROP_PANOCUBEMAPANIMATED 0
+#define PROP_GLITTERENABLEANIMATED 0
+#define PROP_GLITTERMODEANIMATED 0
+#define PROP_GLITTERSHAPEANIMATED 0
+#define PROP_GLITTERBLENDTYPEANIMATED 0
+#define PROP_GLITTERCOLORANIMATED 0
+#define PROP_GLITTERUSESURFACECOLORANIMATED 0
+#define PROP_GLITTERCOLORMAPANIMATED 0
+#define PROP_GLITTERCOLORMAPPANANIMATED 0
+#define PROP_GLITTERCOLORMAPUVANIMATED 0
+#define PROP_GLITTERPANANIMATED 0
+#define PROP_GLITTERMASKANIMATED 0
+#define PROP_GLITTERMASKPANANIMATED 0
+#define PROP_GLITTERMASKUVANIMATED 0
+#define PROP_GLITTERTEXTUREANIMATED 0
+#define PROP_GLITTERTEXTUREPANANIMATED 0
+#define PROP_GLITTERRANDOMROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYANIMATED 0
+#define PROP_GLITTERJITTERANIMATED 0
+#define PROP_GLITTERSPEEDANIMATED 0
+#define PROP_GLITTERSIZEANIMATED 0
+#define PROP_GLITTERCONTRASTANIMATED 0
+#define PROP_GLITTERANGLERANGEANIMATED 0
+#define PROP_GLITTERMINBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBRIGHTNESSANIMATED 0
+#define PROP_GLITTERBIASANIMATED 0
+#define PROP_GLITTERCENTERSIZEANIMATED 0
+#define PROP_GLITTERTEXTUREROTATIONANIMATED 0
+#define PROP_GLITTERFREQUENCYLINEAREMISSIVEANIMATED 0
+#define PROP_GLITTERJAGGYFIXANIMATED 0
+#define PROP_GLITTERRANDOMCOLORSANIMATED 0
+#define PROP_GLITTERMINMAXSATURATIONANIMATED 0
+#define PROP_GLITTERMINMAXBRIGHTNESSANIMATED 0
+#define PROP_GLITTERRANDOMSIZEANIMATED 0
+#define PROP_GLITTERMINMAXSIZEANIMATED 0
+#define PROP_TEXTGLYPHSANIMATED 0
+#define PROP_TEXTPIXELRANGEANIMATED 0
+#define PROP_TEXTENABLEDANIMATED 0
+#define PROP_TEXTFPSENABLEDANIMATED 0
+#define PROP_TEXTFPSUVANIMATED 0
+#define PROP_TEXTFPSCOLORANIMATED 0
+#define PROP_TEXTFPSEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTFPSOFFSETANIMATED 0
+#define PROP_TEXTFPSROTATIONANIMATED 0
+#define PROP_TEXTFPSSCALEANIMATED 0
+#define PROP_TEXTFPSPADDINGANIMATED 0
+#define PROP_TEXTPOSITIONENABLEDANIMATED 0
+#define PROP_TEXTPOSITIONUVANIMATED 0
+#define PROP_TEXTPOSITIONCOLORANIMATED 0
+#define PROP_TEXTPOSITIONEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTPOSITIONOFFSETANIMATED 0
+#define PROP_TEXTPOSITIONROTATIONANIMATED 0
+#define PROP_TEXTPOSITIONSCALEANIMATED 0
+#define PROP_TEXTPOSITIONPADDINGANIMATED 0
+#define PROP_TEXTTIMEENABLEDANIMATED 0
+#define PROP_TEXTTIMEUVANIMATED 0
+#define PROP_TEXTTIMECOLORANIMATED 0
+#define PROP_TEXTTIMEEMISSIONSTRENGTHANIMATED 0
+#define PROP_TEXTTIMEOFFSETANIMATED 0
+#define PROP_TEXTTIMEROTATIONANIMATED 0
+#define PROP_TEXTTIMESCALEANIMATED 0
+#define PROP_TEXTTIMEPADDINGANIMATED 0
+#define PROP_ENABLEMIRROROPTIONSANIMATED 0
+#define PROP_MIRRORANIMATED 0
+#define PROP_ENABLEMIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREANIMATED 0
+#define PROP_MIRRORTEXTUREPANANIMATED 0
+#define PROP_MIRRORTEXTUREUVANIMATED 0
+#define PROP_MAINMINALPHAANIMATED 0
+#define PROP_MAINFADETEXTUREANIMATED 0
+#define PROP_MAINFADETEXTUREPANANIMATED 0
+#define PROP_MAINFADETEXTUREUVANIMATED 0
+#define PROP_MAINDISTANCEFADEANIMATED 0
+#define PROP_ENABLERANDOMANIMATED 0
+#define PROP_ANGLETYPEANIMATED 0
+#define PROP_ANGLECOMPARETOANIMATED 0
+#define PROP_ANGLEFORWARDDIRECTIONANIMATED 0
+#define PROP_CAMERAANGLEMINANIMATED 0
+#define PROP_CAMERAANGLEMAXANIMATED 0
+#define PROP_MODELANGLEMINANIMATED 0
+#define PROP_MODELANGLEMAXANIMATED 0
+#define PROP_ANGLEMINALPHAANIMATED 0
+#define PROP_ENABLEDISTORTIONANIMATED 0
+#define PROP_DISTORTIONMASKANIMATED 0
+#define PROP_DISTORTIONMASKPANANIMATED 0
+#define PROP_DISTORTIONMASKUVANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTUREANIMATED 0
+#define PROP_DISTORTIONFLOWTEXTURE1ANIMATED 0
+#define PROP_DISTORTIONSTRENGTHANIMATED 0
+#define PROP_DISTORTIONSTRENGTH1ANIMATED 0
+#define PROP_DISTORTIONSPEEDANIMATED 0
+#define PROP_DISTORTIONSPEED1ANIMATED 0
+#define PROP_ENABLEVIDEOANIMATED 0
+#define PROP_VIDEOUVNUMBERANIMATED 0
+#define PROP_VIDEOTYPEANIMATED 0
+#define PROP_VIDEOBACKLIGHTANIMATED 0
+#define PROP_VIDEOPIXELTEXTUREANIMATED 0
+#define PROP_VIDEORESOLUTIONANIMATED 0
+#define PROP_VIDEOMASKTEXTUREANIMATED 0
+#define PROP_VIDEOMASKPANNINGANIMATED 0
+#define PROP_VIDEOENABLEVIDEOPLAYERANIMATED 0
+#define PROP_VIDEOPIXELATETORESOLUTIONANIMATED 0
+#define PROP_VIDEOREPEATVIDEOTEXTUREANIMATED 0
+#define PROP_VIDEOPANNINGANIMATED 0
+#define PROP_VIDEOTILINGANIMATED 0
+#define PROP_VIDEOOFFSETANIMATED 0
+#define PROP_VIDEOSATURATIONANIMATED 0
+#define PROP_VIDEOCONTRASTANIMATED 0
+#define PROP_VIDEOENABLEDEBUGANIMATED 0
+#define PROP_VIDEODEBUGTEXTUREANIMATED 0
+#define PROP_VIDEOCRTREFRESHRATEANIMATED 0
+#define PROP_VIDEOCRTPIXELENERGIZEDTIMEANIMATED 0
+#define PROP_VIDEOGAMEBOYRAMPANIMATED 0
+#define PROP_ENABLEBULGEANIMATED 0
+#define PROP_BULGEMASKANIMATED 0
+#define PROP_BULDGEFADELENGTHANIMATED 0
+#define PROP_BULDGEHEIGHTANIMATED 0
+#define PROP_ENABLETOUCHGLOWANIMATED 0
+#define PROP_DEPTHGRADIENTTEXTUREUVANIMATED 0
+#define PROP_DEPTHGRADIENTBLENDANIMATED 0
+#define PROP_DEPTHGRADIENTPANANIMATED 0
+#define PROP_DEPTHGRADIENTUVANIMATED 0
+#define PROP_DEPTHMASKPANANIMATED 0
+#define PROP_DEPTHMASKUVANIMATED 0
+#define PROP_DEPTHGLOWCOLORANIMATED 0
+#define PROP_DEPTHGRADIENTANIMATED 0
+#define PROP_DEPTHMASKANIMATED 0
+#define PROP_DEPTHGLOWEMISSIONANIMATED 0
+#define PROP_FADELENGTHANIMATED 0
+#define PROP_DEPTHALPHAMINANIMATED 0
+#define PROP_DEPTHALPHAMAXANIMATED 0
+#define PROP_ENABLEHOLOANIMATED 0
+#define PROP_HOLOALPHAMAPANIMATED 0
+#define PROP_HOLOCOORDINATESPACEANIMATED 0
+#define PROP_HOLODIRECTIONANIMATED 0
+#define PROP_HOLOLINEDENSITYANIMATED 0
+#define PROP_HOLOSCROLLSPEEDANIMATED 0
+#define PROP_HOLOFRESNELALPHAANIMATED 0
+#define PROP_HOLORIMSHARPNESSANIMATED 0
+#define PROP_HOLORIMWIDTHANIMATED 0
+#define PROP_GRABPASSUSEALPHAANIMATED 0
+#define PROP_GRABPASSBLENDFACTORANIMATED 0
+#define PROP_GRABSRCBLENDANIMATED 0
+#define PROP_GRABDSTBLENDANIMATED 0
+#define PROP_REFRACTIONENABLEDANIMATED 0
+#define PROP_REFRACTIONINDEXANIMATED 0
+#define PROP_REFRACTIONCHROMATICABERATTIONANIMATED 0
+#define PROP_ENABLEBLURANIMATED 0
+#define PROP_GRABBLURDISTANCEANIMATED 0
+#define PROP_GRABBLURQUALITYANIMATED 0
+#define PROP_GRABBLURDIRECTIONSANIMATED 0
+#define PROP_ENABLEIRIDESCENCEANIMATED 0
+#define PROP_IRIDESCENCERAMPANIMATED 0
+#define PROP_IRIDESCENCENORMALTOGGLEANIMATED 0
+#define PROP_IRIDESCENCENORMALMAPANIMATED 0
+#define PROP_IRIDESCENCEMASKANIMATED 0
+#define PROP_IRIDESCENCENORMALINTENSITYANIMATED 0
+#define PROP_IRIDESCENCENORMALUVANIMATED 0
+#define PROP_IRIDESCENCEMASKUVANIMATED 0
+#define PROP_IRIDESCENCENORMALSELECTIONANIMATED 0
+#define PROP_IRIDESCENCEINTENSITYANIMATED 0
+#define PROP_IRIDESCENCEADDBLENDANIMATED 0
+#define PROP_IRIDESCENCEREPLACEBLENDANIMATED 0
+#define PROP_IRIDESCENCEMULTIPLYBLENDANIMATED 0
+#define PROP_IRIDESCENCEEMISSIONSTRENGTHANIMATED 0
+#define PROP_IRIDESCENCETIMEANIMATED 0
+#define PROP_ENABLEVERTEXGLITCHANIMATED 0
+#define PROP_VERTEXGLITCHFREQUENCYANIMATED 0
+#define PROP_VERTEXGLITCHTHRESHOLDANIMATED 0
+#define PROP_VERTEXGLITCHSTRENGTHANIMATED 0
+#define PROP_ENABLESCIFISPAWNINANIMATED 0
+#define PROP_SPAWNINNOISEANIMATED 0
+#define PROP_SPAWNINNOISEINTENSITYANIMATED 0
+#define PROP_SPAWNINALPHAANIMATED 0
+#define PROP_SPAWNINGRADIENTSTARTANIMATED 0
+#define PROP_SPAWNINGRADIENTFINISHANIMATED 0
+#define PROP_SPAWNINEMISSIONCOLORANIMATED 0
+#define PROP_SPAWNINEMISSIONOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETANIMATED 0
+#define PROP_SPAWNINVERTOFFSETOFFSETANIMATED 0
+#define PROP_VORONOITYPEANIMATED 0
+#define PROP_VORONOISPACEANIMATED 0
+#define PROP_VORONOIBLENDANIMATED 0
+#define PROP_ENABLEVORONOIANIMATED 0
+#define PROP_VORONOIEFFECTSMATERIALALPHAANIMATED 0
+#define PROP_VORONOIMASKANIMATED 0
+#define PROP_VORONOIMASKPANANIMATED 0
+#define PROP_VORONOIMASKUVANIMATED 0
+#define PROP_VORONOINOISEANIMATED 0
+#define PROP_VORONOINOISEPANANIMATED 0
+#define PROP_VORONOINOISEUVANIMATED 0
+#define PROP_VORONOINOISEINTENSITYANIMATED 0
+#define PROP_VORONOICOLOR0ANIMATED 0
+#define PROP_VORONOIEMISSION0ANIMATED 0
+#define PROP_VORONOICOLOR1ANIMATED 0
+#define PROP_VORONOIEMISSION1ANIMATED 0
+#define PROP_VORONOIGRADIENTANIMATED 0
+#define PROP_VORONOISCALEANIMATED 0
+#define PROP_VORONOISPEEDANIMATED 0
+#define PROP_VORONOIENABLERANDOMCELLCOLORANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXSATURATIONANIMATED 0
+#define PROP_VORONOIRANDOMMINMAXBRIGHTNESSANIMATED 0
+#define PROP_BLACKLIGHTMASKENABLEDANIMATED 0
+#define PROP_BLACKLIGHTMASKKEYSANIMATED 0
+#define PROP_BLACKLIGHTMASKSTARTANIMATED 0
+#define PROP_BLACKLIGHTMASKENDANIMATED 0
+#define PROP_BLACKLIGHTMASKDEBUGANIMATED 0
+#define PROP_BLACKLIGHTMASKMETALLICANIMATED 0
+#define PROP_BLACKLIGHTMASKCLEARCOATANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAPANIMATED 0
+#define PROP_BLACKLIGHTMASKMATCAP2ANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSIONANIMATED 0
+#define PROP_BLACKLIGHTMASKEMISSION2ANIMATED 0
+#define PROP_BLACKLIGHTMASKFLIPBOOKANIMATED 0
+#define PROP_BLACKLIGHTMASKDISSOLVEANIMATED 0
+#define PROP_BLACKLIGHTMASKPANOSPHEREANIMATED 0
+#define PROP_BLACKLIGHTMASKGLITTERANIMATED 0
+#define PROP_BLACKLIGHTMASKIRIDESCENCEANIMATED 0
+#define PROP_OUTLINEMODEANIMATED 0
+#define PROP_OUTLINEFIXEDSIZEANIMATED 0
+#define PROP_OUTLINEUSEVERTEXCOLORSANIMATED 0
+#define PROP_OUTLINELITANIMATED 0
+#define PROP_LINEWIDTHANIMATED 0
+#define PROP_LINECOLORANIMATED 0
+#define PROP_OUTLINETINTMIXANIMATED 0
+#define PROP_OUTLINEEMISSIONANIMATED 0
+#define PROP_OUTLINETEXTUREANIMATED 0
+#define PROP_OUTLINEMASKANIMATED 0
+#define PROP_OUTLINETEXTUREPANANIMATED 0
+#define PROP_OUTLINESHADOWSTRENGTHANIMATED 0
+#define PROP_OUTLINERIMLIGHTBLENDANIMATED 0
+#define PROP_OUTLINEPERSONADIRECTIONANIMATED 0
+#define PROP_OUTLINEDROPSHADOWOFFSETANIMATED 0
+#define PROP_OUTLINEFADEDISTANCEANIMATED 0
+#define PROP_OUTLINEOFFSETFACTOR 0
+#define PROP_OUTLINEOFFSETUNITS 0
+#define PROP_OUTLINECULLANIMATED 0
+#define PROP_PARALLAXMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPENABLEDANIMATED 0
+#define PROP_PARALLAXINTERNALMAPENABLEDANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPPANANIMATED 0
+#define PROP_PARALLAXUVANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKPANANIMATED 0
+#define PROP_PARALLAXHEIGHTMAPMASKUVANIMATED 0
+#define PROP_PARALLAXSTRENGTHANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTMAPMODEANIMATED 0
+#define PROP_PARALLAXINTERNALHEIGHTFROMALPHAANIMATED 0
+#define PROP_PARALLAXINTERNALMAPANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKPANANIMATED 0
+#define PROP_PARALLAXINTERNALMAPMASKUVANIMATED 0
+#define PROP_PARALLAXINTERNALITERATIONSANIMATED 0
+#define PROP_PARALLAXINTERNALMINDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMAXDEPTHANIMATED 0
+#define PROP_PARALLAXINTERNALMINFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMAXFADEANIMATED 0
+#define PROP_PARALLAXINTERNALMINCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALMAXCOLORANIMATED 0
+#define PROP_PARALLAXINTERNALPANSPEEDANIMATED 0
+#define PROP_PARALLAXINTERNALPANDEPTHSPEEDANIMATED 0
+#define PROP_PARALLAXBIASANIMATED 0
+#define PROP_CULLANIMATED 0
+#define PROP_ZTESTANIMATED 0
+#define PROP_ZWRITEANIMATED 0
+#define PROP_COLORMASKANIMATED 0
+#define PROP_OFFSETFACTORANIMATED 0
+#define PROP_OFFSETUNITSANIMATED 0
+#define PROP_IGNOREFOGANIMATED 0
+#define PROP_BLENDOPANIMATED 0
+#define PROP_BLENDOPALPHAANIMATED 0
+#define PROP_SRCBLENDANIMATED 0
+#define PROP_DSTBLENDANIMATED 0
+#define PROP_STENCILREFANIMATED 0
+#define PROP_STENCILREADMASKANIMATED 0
+#define PROP_STENCILWRITEMASKANIMATED 0
+#define PROP_STENCILPASSOPANIMATED 0
+#define PROP_STENCILFAILOPANIMATED 0
+#define PROP_STENCILZFAILOPANIMATED 0
+#define PROP_STENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_OUTLINESTENCILREFANIMATED 0
+#define PROP_OUTLINESTENCILREADMASKANIMATED 0
+#define PROP_OUTLINESTENCILWRITEMASKANIMATED 0
+#define PROP_OUTLINESTENCILPASSOPANIMATED 0
+#define PROP_OUTLINESTENCILFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILZFAILOPANIMATED 0
+#define PROP_OUTLINESTENCILCOMPAREFUNCTIONANIMATED 0
+#define PROP_VERTEXUNWRAPANIMATED 0
+#define PROP_DEBUGMESHDATAANIMATED 0
+#define PROP_DEBUGLIGHTINGDATAANIMATED 0
+#define PROP_DEBUGCAMERADATAANIMATED 0
+
+
+ #pragma target 5.0
+ #define POI_META_PASS
+ float _Mode;
+ // UV Distortion
+// #pragma shader_feature USER_LUT
+ // Hologram Alpha
+// #pragma shader_feature DEPTH_OF_FIELD
+ //Video
+// #pragma shader_feature BLOOM
+// #pragma shader_feature _PARALLAXMAP
+ // Mirror
+// #pragma shader_feature _REQUIRE_UV2
+ // Random
+// #pragma shader_feature _SUNDISK_NONE
+ // Hue Shift
+// #pragma shader_feature COLOR_GRADING_HDR
+ // Dissolve
+// #pragma shader_feature DISTORT
+ // Panosphere
+// #pragma shader_feature _DETAIL_MULX2
+ // Lighting
+// #pragma shader_feature VIGNETTE_MASKED
+ // Flipbook
+// #pragma shader_feature _SUNDISK_HIGH_QUALITY
+ // Rim Lighting
+// #pragma shader_feature _GLOSSYREFLECTIONS_OFF
+ // Enviro Rim
+// #pragma shader_feature _MAPPING_6_FRAMES_LAYOUT
+ // Metal
+// #pragma shader_feature _METALLICGLOSSMAP
+ // Iridescence
+// #pragma shader_feature BLOOM_LENS_DIRT
+ // Matcap
+// #pragma shader_feature _COLORADDSUBDIFF_ON
+ // Specular
+// #pragma shader_feature _SPECGLOSSMAP
+ // SubSurface
+// #pragma shader_feature _TERRAIN_NORMAL_MAP
+ // Debug
+// #pragma shader_feature _COLOROVERLAY_ON
+ // Glitter
+// #pragma shader_feature _SUNDISK_SIMPLE
+ // RGBMask
+// #pragma shader_feature VIGNETTE
+ // RGB NORMALS
+// #pragma shader_feature GEOM_TYPE_MESH
+ //Details
+// #pragma shader_feature FINALPASS
+ // Text
+// #pragma shader_feature EFFECT_BUMP
+ // Emission 1
+// #pragma shader_feature _EMISSION
+ // Emission 2
+// #pragma shader_feature EFFECT_HUE_VARIATION
+ // Clear Coat
+// #pragma shader_feature _COLORCOLOR_ON
+ #pragma vertex vert
+ #pragma fragment frag
+ #include "../Includes/CGI_PoiPass.cginc"
+ ENDCG
+
+ }
+ }
+}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
new file mode 100644
index 00000000..fa901dab
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/OptimizedShaders/yan-b188a58c/Assets/_PoiyomiShaders/Shaders/Toon/Shaders/S_Poiyomi_Toon.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 17e18eb91a88b91489c023fca3426042
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.mat
new file mode 100644
index 00000000..15cdd5e0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.mat
@@ -0,0 +1,1855 @@
+%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: R2Changyu01001Body
+ m_Shader: {fileID: 4800000, guid: fee1767ee5aa3814384cccc3f1707fa1, type: 3}
+ m_ShaderKeywords: VIGNETTE_MASKED _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap:
+ OptimizedShaderFolder: R2Changyu01001Body-af5b04c1
+ OriginalShader: ".poiyomi/\u2022 Poiyomi Toon \u2022"
+ RenderType: Opaque
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _AlphaMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BackFaceTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BlueTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatCubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatSmoothnessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _CubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalTexture:
+ 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}
+ - _DetailTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveDetailNoise:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveEdgeGradient:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveToTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionMask:
+ 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}
+ - _EmissionMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookTexArray:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterColorMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GreenTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingAOTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingDetailShadows:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainFadeTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainHueShiftMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: b324a58f5c65b8b41b7623fd778b429d, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2Mask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MatcapMask:
+ 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}
+ - _MetallicMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicTintMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MirrorTexture:
+ 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}
+ - _OutlineMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OutlineTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoCubeMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanosphereTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMapMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMapMask:
+ 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}
+ - _RGBMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RedTexure:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalB:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalG:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalR:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimEnviroMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimWidthNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SSSThicknessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SmoothnessMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _TextGlyphs:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ToonRamp:
+ m_Texture: {fileID: 2800000, guid: 61bd594533da4fc42bd46ef93ba5a4f6, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _VertexManipulationHeightMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - DSGI: 0
+ - Instancing: 0
+ - LightmapFlags: 0
+ - _AOStrength: 1
+ - _AOStrengthAnimated: 0
+ - _AlphaMaskAnimated: 0
+ - _AlphaMaskPanAnimated: 0
+ - _AlphaMaskUV: 0
+ - _AlphaMaskUVAnimated: 0
+ - _AlphaMod: 0
+ - _AlphaModAnimated: 0
+ - _AlphaPremultiply: 0
+ - _AlphaPremultiplyAnimated: 0
+ - _AlphaToMask: 0
+ - _AlphaToMaskAnimated: 0
+ - _AngleCompareTo: 0
+ - _AngleCompareToAnimated: 0
+ - _AngleForwardDirectionAnimated: 0
+ - _AngleMinAlpha: 0
+ - _AngleMinAlphaAnimated: 0
+ - _AngleType: 0
+ - _AngleTypeAnimated: 0
+ - _AnisoSpec1Alpha: 1
+ - _AnisoSpec1Alpha1: 1
+ - _AnisoSpec1Alpha1Animated: 0
+ - _AnisoSpec1AlphaAnimated: 0
+ - _AnisoSpec2Alpha: 1
+ - _AnisoSpec2Alpha1: 1
+ - _AnisoSpec2Alpha1Animated: 0
+ - _AnisoSpec2AlphaAnimated: 0
+ - _AnisoTangentMap1Animated: 0
+ - _AnisoTangentMap1PanAnimated: 0
+ - _AnisoTangentMap1UV: 0
+ - _AnisoTangentMap1UVAnimated: 0
+ - _AnisoTangentMapAnimated: 0
+ - _AnisoTangentMapPanAnimated: 0
+ - _AnisoTangentMapUV: 0
+ - _AnisoTangentMapUVAnimated: 0
+ - _AnisoUseTangentMap: 0
+ - _AnisoUseTangentMap1: 0
+ - _AnisoUseTangentMap1Animated: 0
+ - _AnisoUseTangentMapAnimated: 0
+ - _AttenuationMultiplier: 0
+ - _AttenuationMultiplierAnimated: 0
+ - _BackFaceDetailIntensity: 1
+ - _BackFaceEmissionStrength: 0
+ - _BackFaceEnabled: 0
+ - _BackFaceHueShift: 0
+ - _BackFaceTextureUV: 0
+ - _BlackLightMaskClearCoatAnimated: 0
+ - _BlackLightMaskDebugAnimated: 0
+ - _BlackLightMaskDissolveAnimated: 0
+ - _BlackLightMaskEmission2Animated: 0
+ - _BlackLightMaskEmissionAnimated: 0
+ - _BlackLightMaskEnabledAnimated: 0
+ - _BlackLightMaskEndAnimated: 0
+ - _BlackLightMaskFlipbookAnimated: 0
+ - _BlackLightMaskGlitterAnimated: 0
+ - _BlackLightMaskIridescenceAnimated: 0
+ - _BlackLightMaskKeysAnimated: 0
+ - _BlackLightMaskMatcap2Animated: 0
+ - _BlackLightMaskMatcapAnimated: 0
+ - _BlackLightMaskMetallicAnimated: 0
+ - _BlackLightMaskPanosphereAnimated: 0
+ - _BlackLightMaskStartAnimated: 0
+ - _BlendOp: 0
+ - _BlendOpAlpha: 0
+ - _BlendOpAlphaAnimated: 0
+ - _BlendOpAnimated: 0
+ - _BlueColorAnimated: 0
+ - _BlueTextureAnimated: 0
+ - _BuldgeFadeLengthAnimated: 0
+ - _BuldgeHeightAnimated: 0
+ - _BulgeMaskAnimated: 0
+ - _BumpMapAnimated: 0
+ - _BumpMapPanAnimated: 0
+ - _BumpMapUV: 0
+ - _BumpMapUVAnimated: 0
+ - _BumpScale: 1
+ - _BumpScaleAnimated: 0
+ - _CameraAngleMax: 90
+ - _CameraAngleMaxAnimated: 0
+ - _CameraAngleMin: 45
+ - _CameraAngleMinAnimated: 0
+ - _ClearCoat: 1
+ - _ClearCoatAnimated: 0
+ - _ClearCoatCubeMapAnimated: 0
+ - _ClearCoatForceLighting: 0
+ - _ClearCoatForceLightingAnimated: 0
+ - _ClearCoatInvertSmoothness: 0
+ - _ClearCoatInvertSmoothnessAnimated: 0
+ - _ClearCoatMaskAnimated: 0
+ - _ClearCoatMaskPanAnimated: 0
+ - _ClearCoatMaskUV: 0
+ - _ClearCoatMaskUVAnimated: 0
+ - _ClearCoatNormalToUse: 0
+ - _ClearCoatNormalToUseAnimated: 0
+ - _ClearCoatSampleWorld: 0
+ - _ClearCoatSampleWorldAnimated: 0
+ - _ClearCoatSmoothness: 0
+ - _ClearCoatSmoothnessAnimated: 0
+ - _ClearCoatSmoothnessMapAnimated: 0
+ - _ClearCoatSmoothnessMapPanAnimated: 0
+ - _ClearCoatSmoothnessMapUV: 0
+ - _ClearCoatSmoothnessMapUVAnimated: 0
+ - _ClearCoatTintAnimated: 0
+ - _ColorAnimated: 0
+ - _ColorMask: 15
+ - _ColorMaskAnimated: 0
+ - _ContinuousDissolve: 0
+ - _ContinuousDissolveAnimated: 0
+ - _CubeMapAnimated: 0
+ - _Cull: 2
+ - _CullAnimated: 0
+ - _Cutoff: 0.5
+ - _CutoffAnimated: 0
+ - _DebugCameraData: 0
+ - _DebugCameraDataAnimated: 0
+ - _DebugEnabled: 0
+ - _DebugLightingData: 0
+ - _DebugLightingDataAnimated: 0
+ - _DebugMeshData: 0
+ - _DebugMeshDataAnimated: 0
+ - _DecalBlendAdd: 0
+ - _DecalBlendAddAnimated: 0
+ - _DecalBlendMultiply: 0
+ - _DecalBlendMultiplyAnimated: 0
+ - _DecalBlendReplace: 0
+ - _DecalBlendReplaceAnimated: 0
+ - _DecalColorAnimated: 0
+ - _DecalEmissionStrength: 0
+ - _DecalEmissionStrengthAnimated: 0
+ - _DecalEnabled: 0
+ - _DecalEnabledAnimated: 0
+ - _DecalMaskAnimated: 0
+ - _DecalMaskPanAnimated: 0
+ - _DecalMaskUV: 0
+ - _DecalMaskUVAnimated: 0
+ - _DecalPositionAnimated: 0
+ - _DecalRotation: 0
+ - _DecalRotationAnimated: 0
+ - _DecalRotationSpeed: 0
+ - _DecalRotationSpeedAnimated: 0
+ - _DecalScaleAnimated: 0
+ - _DecalTextureAnimated: 0
+ - _DecalTexturePanAnimated: 0
+ - _DecalTextureUV: 0
+ - _DecalTextureUVAnimated: 0
+ - _DecalTiled: 0
+ - _DecalTiledAnimated: 0
+ - _DepthAlphaMaxAnimated: 0
+ - _DepthAlphaMinAnimated: 0
+ - _DepthGlowColorAnimated: 0
+ - _DepthGlowEmissionAnimated: 0
+ - _DepthGradientAnimated: 0
+ - _DepthGradientBlendAnimated: 0
+ - _DepthGradientPanAnimated: 0
+ - _DepthGradientTextureUVAnimated: 0
+ - _DepthGradientUVAnimated: 0
+ - _DepthMaskAnimated: 0
+ - _DepthMaskPanAnimated: 0
+ - _DepthMaskUVAnimated: 0
+ - _DetailBrightness: 1
+ - _DetailBrightnessAnimated: 0
+ - _DetailEnabled: 0
+ - _DetailMaskAnimated: 0
+ - _DetailMaskPanAnimated: 0
+ - _DetailMaskUV: 0
+ - _DetailMaskUVAnimated: 0
+ - _DetailNormalMapAnimated: 0
+ - _DetailNormalMapPanAnimated: 0
+ - _DetailNormalMapScale: 1
+ - _DetailNormalMapScaleAnimated: 0
+ - _DetailNormalMapUV: 0
+ - _DetailNormalMapUVAnimated: 0
+ - _DetailTexAnimated: 0
+ - _DetailTexIntensity: 1
+ - _DetailTexIntensityAnimated: 0
+ - _DetailTexPanAnimated: 0
+ - _DetailTexUV: 0
+ - _DetailTexUVAnimated: 0
+ - _DetailTintAnimated: 0
+ - _DisableDirectionalInAdd: 1
+ - _DissolveAlpha: 0
+ - _DissolveAlpha0: 0
+ - _DissolveAlpha0Animated: 0
+ - _DissolveAlpha1: 0
+ - _DissolveAlpha1Animated: 0
+ - _DissolveAlpha2: 0
+ - _DissolveAlpha2Animated: 0
+ - _DissolveAlpha3: 0
+ - _DissolveAlpha3Animated: 0
+ - _DissolveAlpha4: 0
+ - _DissolveAlpha4Animated: 0
+ - _DissolveAlpha5: 0
+ - _DissolveAlpha5Animated: 0
+ - _DissolveAlpha6: 0
+ - _DissolveAlpha6Animated: 0
+ - _DissolveAlpha7: 0
+ - _DissolveAlpha7Animated: 0
+ - _DissolveAlpha8: 0
+ - _DissolveAlpha8Animated: 0
+ - _DissolveAlpha9: 0
+ - _DissolveAlpha9Animated: 0
+ - _DissolveAlphaAnimated: 0
+ - _DissolveDetailNoiseAnimated: 0
+ - _DissolveDetailNoisePanAnimated: 0
+ - _DissolveDetailNoiseUV: 0
+ - _DissolveDetailNoiseUVAnimated: 0
+ - _DissolveDetailStrength: 0.1
+ - _DissolveDetailStrengthAnimated: 0
+ - _DissolveEdgeColorAnimated: 0
+ - _DissolveEdgeEmission: 0
+ - _DissolveEdgeEmissionAnimated: 0
+ - _DissolveEdgeGradientAnimated: 0
+ - _DissolveEdgeHardness: 0.5
+ - _DissolveEdgeHardnessAnimated: 0
+ - _DissolveEdgeWidth: 0.025
+ - _DissolveEdgeWidthAnimated: 0
+ - _DissolveEmission1Side: 2
+ - _DissolveEmission1SideAnimated: 0
+ - _DissolveEmissionSide: 2
+ - _DissolveEmissionSideAnimated: 0
+ - _DissolveEndPointAnimated: 0
+ - _DissolveInvertDetailNoise: 0
+ - _DissolveInvertDetailNoiseAnimated: 0
+ - _DissolveInvertNoise: 0
+ - _DissolveInvertNoiseAnimated: 0
+ - _DissolveMaskAnimated: 0
+ - _DissolveMaskInvert: 0
+ - _DissolveMaskInvertAnimated: 0
+ - _DissolveMaskPanAnimated: 0
+ - _DissolveMaskUV: 0
+ - _DissolveMaskUVAnimated: 0
+ - _DissolveNoiseTextureAnimated: 0
+ - _DissolveNoiseTexturePanAnimated: 0
+ - _DissolveNoiseTextureUV: 0
+ - _DissolveNoiseTextureUVAnimated: 0
+ - _DissolveP2PEdgeLength: 0.1
+ - _DissolveP2PEdgeLengthAnimated: 0
+ - _DissolveP2PWorldLocal: 0
+ - _DissolveP2PWorldLocalAnimated: 0
+ - _DissolveStartPointAnimated: 0
+ - _DissolveTextureColorAnimated: 0
+ - _DissolveToEmissionStrength: 0
+ - _DissolveToEmissionStrengthAnimated: 0
+ - _DissolveToTextureAnimated: 0
+ - _DissolveToTexturePanAnimated: 0
+ - _DissolveToTextureUV: 0
+ - _DissolveToTextureUVAnimated: 0
+ - _DissolveType: 1
+ - _DissolveTypeAnimated: 0
+ - _DissolveUseVertexColors: 0
+ - _DissolveUseVertexColorsAnimated: 0
+ - _DistortionFlowTexture1Animated: 0
+ - _DistortionFlowTextureAnimated: 0
+ - _DistortionMaskAnimated: 0
+ - _DistortionMaskPanAnimated: 0
+ - _DistortionMaskUV: 0
+ - _DistortionMaskUVAnimated: 0
+ - _DistortionSpeed1Animated: 0
+ - _DistortionSpeedAnimated: 0
+ - _DistortionStrength: 0.5
+ - _DistortionStrength1: 0.5
+ - _DistortionStrength1Animated: 0
+ - _DistortionStrengthAnimated: 0
+ - _DitherGradient: 0.1
+ - _DitherGradientAnimated: 0
+ - _DitheringEnabled: 0
+ - _DitheringEnabledAnimated: 0
+ - _DstBlend: 0
+ - _DstBlendAnimated: 0
+ - _EmissionBaseColorAsMap: 0
+ - _EmissionBaseColorAsMap1: 0
+ - _EmissionBaseColorAsMap1Animated: 0
+ - _EmissionBaseColorAsMapAnimated: 0
+ - _EmissionBlinkingEnabled: 0
+ - _EmissionBlinkingEnabled1: 0
+ - _EmissionBlinkingEnabledAnimated: 0
+ - _EmissionBlinkingOffset: 0
+ - _EmissionBlinkingOffset1: 0
+ - _EmissionBlinkingOffset1Animated: 0
+ - _EmissionBlinkingOffsetAnimated: 0
+ - _EmissionCenterOutEnabled: 0
+ - _EmissionCenterOutEnabled1: 0
+ - _EmissionCenterOutEnabled1Animated: 0
+ - _EmissionCenterOutEnabledAnimated: 0
+ - _EmissionCenterOutSpeed: 5
+ - _EmissionCenterOutSpeed1: 5
+ - _EmissionCenterOutSpeed1Animated: 0
+ - _EmissionCenterOutSpeedAnimated: 0
+ - _EmissionColor1Animated: 0
+ - _EmissionColorAnimated: 0
+ - _EmissionHueShift: 0
+ - _EmissionHueShift1: 0
+ - _EmissionHueShift1Animated: 0
+ - _EmissionHueShiftAnimated: 0
+ - _EmissionHueShiftEnabled: 0
+ - _EmissionHueShiftEnabled1: 0
+ - _EmissionHueShiftEnabled1Animated: 0
+ - _EmissionHueShiftEnabledAnimated: 0
+ - _EmissionMap1Animated: 0
+ - _EmissionMap1PanAnimated: 0
+ - _EmissionMap1UV: 0
+ - _EmissionMap1UVAnimated: 0
+ - _EmissionMapAnimated: 0
+ - _EmissionMapPanAnimated: 0
+ - _EmissionMapUV: 0
+ - _EmissionMapUVAnimated: 0
+ - _EmissionMask1Animated: 0
+ - _EmissionMask1PanAnimated: 0
+ - _EmissionMask1UV: 0
+ - _EmissionMask1UVAnimated: 0
+ - _EmissionMaskAnimated: 0
+ - _EmissionMaskPanAnimated: 0
+ - _EmissionMaskUV: 0
+ - _EmissionMaskUVAnimated: 0
+ - _EmissionReplace: 0
+ - _EmissionReplaceAnimated: 0
+ - _EmissionScrollingCurve1Animated: 0
+ - _EmissionScrollingCurveAnimated: 0
+ - _EmissionScrollingOffset: 0
+ - _EmissionScrollingOffset1: 0
+ - _EmissionScrollingOffset1Animated: 0
+ - _EmissionScrollingOffsetAnimated: 0
+ - _EmissionScrollingUseCurve: 0
+ - _EmissionScrollingUseCurve1: 0
+ - _EmissionScrollingUseCurve1Animated: 0
+ - _EmissionScrollingUseCurveAnimated: 0
+ - _EmissionScrollingVertexColor: 0
+ - _EmissionScrollingVertexColor1: 0
+ - _EmissionScrollingVertexColor1Animated: 0
+ - _EmissionScrollingVertexColorAnimated: 0
+ - _EmissionStrength: 0
+ - _EmissionStrength1: 0
+ - _EmissionStrength1Animated: 0
+ - _EmissionStrengthAnimated: 0
+ - _EmissiveBlink_Max: 1
+ - _EmissiveBlink_Max1: 1
+ - _EmissiveBlink_Max1Animated: 0
+ - _EmissiveBlink_MaxAnimated: 0
+ - _EmissiveBlink_Min: 0
+ - _EmissiveBlink_Min1: 0
+ - _EmissiveBlink_Min1Animated: 0
+ - _EmissiveBlink_MinAnimated: 0
+ - _EmissiveBlink_Velocity: 4
+ - _EmissiveBlink_Velocity1: 4
+ - _EmissiveBlink_Velocity1Animated: 0
+ - _EmissiveBlink_VelocityAnimated: 0
+ - _EmissiveScroll_Direction1Animated: 0
+ - _EmissiveScroll_DirectionAnimated: 0
+ - _EmissiveScroll_Interval: 20
+ - _EmissiveScroll_Interval1: 20
+ - _EmissiveScroll_Interval1Animated: 0
+ - _EmissiveScroll_IntervalAnimated: 0
+ - _EmissiveScroll_Velocity: 10
+ - _EmissiveScroll_Velocity1: 10
+ - _EmissiveScroll_Velocity1Animated: 0
+ - _EmissiveScroll_VelocityAnimated: 0
+ - _EmissiveScroll_Width: 10
+ - _EmissiveScroll_Width1: 10
+ - _EmissiveScroll_Width1Animated: 0
+ - _EmissiveScroll_WidthAnimated: 0
+ - _EnableBlurAnimated: 0
+ - _EnableBulgeAnimated: 0
+ - _EnableClearCoat: 0
+ - _EnableClearCoatAnimated: 0
+ - _EnableDissolve: 0
+ - _EnableDissolveAnimated: 0
+ - _EnableDistortion: 0
+ - _EnableDistortionAnimated: 0
+ - _EnableEmission: 0
+ - _EnableEmission1: 0
+ - _EnableEmission1Animated: 0
+ - _EnableEmissionAnimated: 0
+ - _EnableEnvironmentalRim: 0
+ - _EnableEnvironmentalRimAnimated: 0
+ - _EnableFlipbook: 0
+ - _EnableFlipbookAnimated: 0
+ - _EnableGITDEmission: 0
+ - _EnableGITDEmission1: 0
+ - _EnableGITDEmission1Animated: 0
+ - _EnableGITDEmissionAnimated: 0
+ - _EnableHoloAnimated: 0
+ - _EnableIridescenceAnimated: 0
+ - _EnableLighting: 1
+ - _EnableLightingAnimated: 0
+ - _EnableMetallic: 0
+ - _EnableMetallicAnimated: 0
+ - _EnableMirrorOptions: 0
+ - _EnableMirrorOptionsAnimated: 0
+ - _EnableMirrorTexture: 0
+ - _EnableMirrorTextureAnimated: 0
+ - _EnableRandom: 0
+ - _EnableRandomAnimated: 0
+ - _EnableRimLighting: 0
+ - _EnableRimLightingAnimated: 0
+ - _EnableSSS: 0
+ - _EnableSSSAnimated: 0
+ - _EnableScifiSpawnInAnimated: 0
+ - _EnableSpecular: 0
+ - _EnableSpecular1: 0
+ - _EnableSpecular1Animated: 0
+ - _EnableSpecularAnimated: 0
+ - _EnableTouchGlowAnimated: 0
+ - _EnableVertexGlitchAnimated: 0
+ - _EnableVideoAnimated: 0
+ - _EnableVoronoiAnimated: 0
+ - _FadeLengthAnimated: 0
+ - _FlipbookAdd: 0
+ - _FlipbookAddAnimated: 0
+ - _FlipbookAlphaControlsFinalAlpha: 0
+ - _FlipbookAlphaControlsFinalAlphaAnimated: 0
+ - _FlipbookColorAnimated: 0
+ - _FlipbookColorReplaces: 0
+ - _FlipbookColorReplacesAnimated: 0
+ - _FlipbookCurrentFrame: -1
+ - _FlipbookCurrentFrameAnimated: 0
+ - _FlipbookEmissionStrength: 0
+ - _FlipbookEmissionStrengthAnimated: 0
+ - _FlipbookFPS: 30
+ - _FlipbookFPSAnimated: 0
+ - _FlipbookIntensityControlsAlpha: 0
+ - _FlipbookIntensityControlsAlphaAnimated: 0
+ - _FlipbookMaskAnimated: 0
+ - _FlipbookMaskPanAnimated: 0
+ - _FlipbookMaskUV: 0
+ - _FlipbookMaskUVAnimated: 0
+ - _FlipbookMultiply: 0
+ - _FlipbookMultiplyAnimated: 0
+ - _FlipbookReplace: 1
+ - _FlipbookReplaceAnimated: 0
+ - _FlipbookRotation: 0
+ - _FlipbookRotationAnimated: 0
+ - _FlipbookRotationSpeed: 0
+ - _FlipbookRotationSpeedAnimated: 0
+ - _FlipbookScaleOffsetAnimated: 0
+ - _FlipbookTexArrayAnimated: 0
+ - _FlipbookTexArrayPanAnimated: 0
+ - _FlipbookTexArrayUV: 0
+ - _FlipbookTexArrayUVAnimated: 0
+ - _FlipbookTiled: 0
+ - _FlipbookTiledAnimated: 0
+ - _FlipbookTotalFrames: 1
+ - _FlipbookTotalFramesAnimated: 0
+ - _ForceOpaque: 0
+ - _ForceOpaqueAnimated: 0
+ - _ForgotToLockMaterial: 1
+ - _GIEmissionMultiplier: 1
+ - _GITDEMaxEmissionMultiplier: 0
+ - _GITDEMaxEmissionMultiplier1: 0
+ - _GITDEMaxEmissionMultiplier1Animated: 0
+ - _GITDEMaxEmissionMultiplierAnimated: 0
+ - _GITDEMaxLight: 1
+ - _GITDEMaxLight1: 1
+ - _GITDEMaxLight1Animated: 0
+ - _GITDEMaxLightAnimated: 0
+ - _GITDEMinEmissionMultiplier: 1
+ - _GITDEMinEmissionMultiplier1: 1
+ - _GITDEMinEmissionMultiplier1Animated: 0
+ - _GITDEMinEmissionMultiplierAnimated: 0
+ - _GITDEMinLight: 0
+ - _GITDEMinLight1: 0
+ - _GITDEMinLight1Animated: 0
+ - _GITDEMinLightAnimated: 0
+ - _GITDEWorldOrMesh: 0
+ - _GITDEWorldOrMesh1: 0
+ - _GITDEWorldOrMesh1Animated: 0
+ - _GITDEWorldOrMeshAnimated: 0
+ - _GlitterAngleRange: 90
+ - _GlitterAngleRangeAnimated: 0
+ - _GlitterBias: 0.8
+ - _GlitterBiasAnimated: 0
+ - _GlitterBlendType: 0
+ - _GlitterBlendTypeAnimated: 0
+ - _GlitterBrightness: 3
+ - _GlitterBrightnessAnimated: 0
+ - _GlitterCenterSize: 0.08
+ - _GlitterCenterSizeAnimated: 0
+ - _GlitterColorAnimated: 0
+ - _GlitterColorMapAnimated: 0
+ - _GlitterColorMapPanAnimated: 0
+ - _GlitterColorMapUV: 0
+ - _GlitterColorMapUVAnimated: 0
+ - _GlitterContrast: 300
+ - _GlitterContrastAnimated: 0
+ - _GlitterEnable: 0
+ - _GlitterEnableAnimated: 0
+ - _GlitterFrequency: 300
+ - _GlitterFrequencyAnimated: 0
+ - _GlitterJaggyFix: 0
+ - _GlitterJaggyFixAnimated: 0
+ - _GlitterJitter: 1
+ - _GlitterJitterAnimated: 0
+ - _GlitterMaskAnimated: 0
+ - _GlitterMaskPanAnimated: 0
+ - _GlitterMaskUV: 0
+ - _GlitterMaskUVAnimated: 0
+ - _GlitterMinBrightness: 0
+ - _GlitterMinBrightnessAnimated: 0
+ - _GlitterMinMaxBrightnessAnimated: 0
+ - _GlitterMinMaxSaturationAnimated: 0
+ - _GlitterMinMaxSizeAnimated: 0
+ - _GlitterMode: 0
+ - _GlitterModeAnimated: 0
+ - _GlitterPanAnimated: 0
+ - _GlitterRandomColors: 0
+ - _GlitterRandomColorsAnimated: 0
+ - _GlitterRandomRotation: 0
+ - _GlitterRandomRotationAnimated: 0
+ - _GlitterRandomSize: 0
+ - _GlitterRandomSizeAnimated: 0
+ - _GlitterShape: 0
+ - _GlitterShapeAnimated: 0
+ - _GlitterSize: 0.3
+ - _GlitterSizeAnimated: 0
+ - _GlitterSpeed: 10
+ - _GlitterSpeedAnimated: 0
+ - _GlitterTextureAnimated: 0
+ - _GlitterTexturePanAnimated: 0
+ - _GlitterTextureRotation: 0
+ - _GlitterTextureRotationAnimated: 0
+ - _GlitterUseSurfaceColor: 0
+ - _GlitterUseSurfaceColorAnimated: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0
+ - _GlossyReflections: 1
+ - _GrabBlurDirectionsAnimated: 0
+ - _GrabBlurDistanceAnimated: 0
+ - _GrabBlurQualityAnimated: 0
+ - _GrabDstBlendAnimated: 0
+ - _GrabPassBlendFactorAnimated: 0
+ - _GrabPassUseAlphaAnimated: 0
+ - _GrabSrcBlendAnimated: 0
+ - _GreenColorAnimated: 0
+ - _GreenTextureAnimated: 0
+ - _HelpBoxHideLocking: 0
+ - _HelpBoxLocking: 0
+ - _HoloAlphaMapAnimated: 0
+ - _HoloCoordinateSpaceAnimated: 0
+ - _HoloDirectionAnimated: 0
+ - _HoloFresnelAlphaAnimated: 0
+ - _HoloLineDensityAnimated: 0
+ - _HoloRimSharpnessAnimated: 0
+ - _HoloRimWidthAnimated: 0
+ - _HoloScrollSpeedAnimated: 0
+ - _IgnoreFog: 0
+ - _IgnoreFogAnimated: 0
+ - _InvertSmoothness: 0
+ - _InvertSmoothnessAnimated: 0
+ - _IridescenceAddBlendAnimated: 0
+ - _IridescenceEmissionStrengthAnimated: 0
+ - _IridescenceIntensityAnimated: 0
+ - _IridescenceMaskAnimated: 0
+ - _IridescenceMaskUVAnimated: 0
+ - _IridescenceMultiplyBlendAnimated: 0
+ - _IridescenceNormalIntensityAnimated: 0
+ - _IridescenceNormalMapAnimated: 0
+ - _IridescenceNormalSelectionAnimated: 0
+ - _IridescenceNormalToggleAnimated: 0
+ - _IridescenceNormalUVAnimated: 0
+ - _IridescenceRampAnimated: 0
+ - _IridescenceReplaceBlendAnimated: 0
+ - _IridescenceTimeAnimated: 0
+ - _LightingAOTexAnimated: 0
+ - _LightingAOTexPanAnimated: 0
+ - _LightingAOTexUV: 0
+ - _LightingAOTexUVAnimated: 0
+ - _LightingAdditiveDetailStrength: 1
+ - _LightingAdditiveDetailStrengthAnimated: 0
+ - _LightingAdditiveGradientEnd: 0.5
+ - _LightingAdditiveGradientEndAnimated: 0
+ - _LightingAdditiveGradientStart: 0
+ - _LightingAdditiveGradientStartAnimated: 0
+ - _LightingAdditiveLimitIntensity: 0
+ - _LightingAdditiveLimitIntensityAnimated: 0
+ - _LightingAdditiveMaxIntensity: 1
+ - _LightingAdditiveMaxIntensityAnimated: 0
+ - _LightingAdditivePassthrough: 0.5
+ - _LightingAdditivePassthroughAnimated: 0
+ - _LightingAdditiveType: 1
+ - _LightingAdditiveTypeAnimated: 0
+ - _LightingDetailShadowsAnimated: 0
+ - _LightingDetailShadowsEnabled: 0
+ - _LightingDetailShadowsEnabledAnimated: 0
+ - _LightingDetailShadowsPanAnimated: 0
+ - _LightingDetailShadowsUV: 0
+ - _LightingDetailShadowsUVAnimated: 0
+ - _LightingDetailStrength: 1
+ - _LightingDetailStrengthAnimated: 0
+ - _LightingDirectColorMode: 0
+ - _LightingDirectColorModeAnimated: 0
+ - _LightingEnableAO: 0
+ - _LightingEnableAOAnimated: 0
+ - _LightingEnableHSL: 0
+ - _LightingEnableHSLAnimated: 0
+ - _LightingGradientEnd: 0.5
+ - _LightingGradientEndAnimated: 0
+ - _LightingGradientStart: 0
+ - _LightingGradientStartAnimated: 0
+ - _LightingHSLIntensity: 1
+ - _LightingHSLIntensityAnimated: 0
+ - _LightingIgnoreAmbientColor: 0
+ - _LightingIgnoreAmbientColorAnimated: 0
+ - _LightingIndirectColorMode: 0
+ - _LightingIndirectColorModeAnimated: 0
+ - _LightingMinLightBrightness: 0
+ - _LightingMinLightBrightnessAnimated: 0
+ - _LightingMinShadowBrightnessRatio: 0
+ - _LightingMinShadowBrightnessRatioAnimated: 0
+ - _LightingMode: 0
+ - _LightingModeAnimated: 0
+ - _LightingMonochromatic: 0
+ - _LightingMonochromaticAnimated: 0
+ - _LightingOnlyUnityShadows: 0
+ - _LightingOnlyUnityShadowsAnimated: 0
+ - _LightingRampType: 0
+ - _LightingRampTypeAnimated: 0
+ - _LightingShadingEnabled: 0
+ - _LightingShadingEnabledAnimated: 0
+ - _LightingShadowColorAnimated: 0
+ - _LightingShadowHue: 0.5
+ - _LightingShadowHueAnimated: 0
+ - _LightingShadowLightness: 0.5
+ - _LightingShadowLightnessAnimated: 0
+ - _LightingShadowMaskAnimated: 0
+ - _LightingShadowMaskPanAnimated: 0
+ - _LightingShadowMaskUV: 0
+ - _LightingShadowMaskUVAnimated: 0
+ - _LightingShadowSaturation: 0.5
+ - _LightingShadowSaturationAnimated: 0
+ - _LightingShadowTextureAnimated: 0
+ - _LightingShadowTexturePanAnimated: 0
+ - _LightingShadowTextureUV: 0
+ - _LightingShadowTextureUVAnimated: 0
+ - _LightingStandardSmoothness: 0
+ - _LightingStandardSmoothnessAnimated: 0
+ - _LightingUncapped: 0
+ - _LightingUncappedAnimated: 0
+ - _LineColorAnimated: 0
+ - _LineWidth: 0
+ - _LineWidthAnimated: 0
+ - _LockTooltip: 0
+ - _MainAlphaToCoverage: 0
+ - _MainAlphaToCoverageAnimated: 0
+ - _MainDistanceFadeAnimated: 0
+ - _MainEmissionStrength: 0
+ - _MainEmissionStrengthAnimated: 0
+ - _MainFadeTextureAnimated: 0
+ - _MainFadeTexturePanAnimated: 0
+ - _MainFadeTextureUV: 0
+ - _MainFadeTextureUVAnimated: 0
+ - _MainHueShift: 0
+ - _MainHueShiftAnimated: 0
+ - _MainHueShiftMaskAnimated: 0
+ - _MainHueShiftMaskPanAnimated: 0
+ - _MainHueShiftMaskUV: 0
+ - _MainHueShiftMaskUVAnimated: 0
+ - _MainHueShiftReplace: 1
+ - _MainHueShiftReplaceAnimated: 0
+ - _MainHueShiftSpeed: 0
+ - _MainHueShiftSpeedAnimated: 0
+ - _MainHueShiftToggle: 0
+ - _MainHueShiftToggleAnimated: 0
+ - _MainMinAlpha: 0
+ - _MainMinAlphaAnimated: 0
+ - _MainMipScale: 0.25
+ - _MainMipScaleAnimated: 0
+ - _MainShadowClipMod: 0
+ - _MainShadowClipModAnimated: 0
+ - _MainTexAnimated: 0
+ - _MainTexPanAnimated: 0
+ - _MainTex_STAnimated: 0
+ - _MainTextureUV: 0
+ - _MainTextureUVAnimated: 0
+ - _MainUseVertexColorAlpha: 0
+ - _MainUseVertexColorAlphaAnimated: 0
+ - _MainVertexColoring: 0
+ - _MainVertexColoringAnimated: 0
+ - _Matcap2Add: 0
+ - _Matcap2AddAnimated: 0
+ - _Matcap2Animated: 0
+ - _Matcap2Border: 0.43
+ - _Matcap2BorderAnimated: 0
+ - _Matcap2ColorAnimated: 0
+ - _Matcap2EmissionStrength: 0
+ - _Matcap2EmissionStrengthAnimated: 0
+ - _Matcap2Enable: 0
+ - _Matcap2EnableAnimated: 0
+ - _Matcap2Intensity: 1
+ - _Matcap2IntensityAnimated: 0
+ - _Matcap2LightMask: 0
+ - _Matcap2LightMaskAnimated: 0
+ - _Matcap2MaskAnimated: 0
+ - _Matcap2MaskInvert: 0
+ - _Matcap2MaskInvertAnimated: 0
+ - _Matcap2MaskPanAnimated: 0
+ - _Matcap2MaskUV: 0
+ - _Matcap2MaskUVAnimated: 0
+ - _Matcap2Multiply: 0
+ - _Matcap2MultiplyAnimated: 0
+ - _Matcap2Normal: 1
+ - _Matcap2NormalAnimated: 0
+ - _Matcap2Replace: 0
+ - _Matcap2ReplaceAnimated: 0
+ - _MatcapAdd: 0
+ - _MatcapAddAnimated: 0
+ - _MatcapAnimated: 0
+ - _MatcapBorder: 0.43
+ - _MatcapBorderAnimated: 0
+ - _MatcapColorAnimated: 0
+ - _MatcapEmissionStrength: 0
+ - _MatcapEmissionStrengthAnimated: 0
+ - _MatcapEnable: 0
+ - _MatcapEnableAnimated: 0
+ - _MatcapIntensity: 1
+ - _MatcapIntensityAnimated: 0
+ - _MatcapLightMask: 0
+ - _MatcapLightMaskAnimated: 0
+ - _MatcapMaskAnimated: 0
+ - _MatcapMaskInvert: 0
+ - _MatcapMaskInvertAnimated: 0
+ - _MatcapMaskPanAnimated: 0
+ - _MatcapMaskUV: 0
+ - _MatcapMaskUVAnimated: 0
+ - _MatcapMultiply: 0
+ - _MatcapMultiplyAnimated: 0
+ - _MatcapNormal: 1
+ - _MatcapNormalAnimated: 0
+ - _MatcapReplace: 1
+ - _MatcapReplaceAnimated: 0
+ - _MetalReflectionTintAnimated: 0
+ - _Metallic: 0
+ - _MetallicAnimated: 0
+ - _MetallicMaskAnimated: 0
+ - _MetallicMaskPanAnimated: 0
+ - _MetallicMaskUV: 0
+ - _MetallicMaskUVAnimated: 0
+ - _MetallicTintMapAnimated: 0
+ - _MetallicTintMapPanAnimated: 0
+ - _MetallicTintMapUV: 0
+ - _MetallicTintMapUVAnimated: 0
+ - _Mirror: 0
+ - _MirrorAnimated: 0
+ - _MirrorTextureAnimated: 0
+ - _MirrorTexturePanAnimated: 0
+ - _MirrorTextureUV: 0
+ - _MirrorTextureUVAnimated: 0
+ - _Mode: 0
+ - _ModelAngleMax: 90
+ - _ModelAngleMaxAnimated: 0
+ - _ModelAngleMin: 45
+ - _ModelAngleMinAnimated: 0
+ - _OcclusionStrength: 1
+ - _OffsetFactor: 0
+ - _OffsetFactorAnimated: 0
+ - _OffsetUnits: 0
+ - _OffsetUnitsAnimated: 0
+ - _OutlineCull: 1
+ - _OutlineCullAnimated: 0
+ - _OutlineDropShadowOffsetAnimated: 0
+ - _OutlineEmission: 0
+ - _OutlineEmissionAnimated: 0
+ - _OutlineFadeDistanceAnimated: 0
+ - _OutlineFixedSize: 0
+ - _OutlineFixedSizeAnimated: 0
+ - _OutlineLit: 1
+ - _OutlineLitAnimated: 0
+ - _OutlineMaskAnimated: 0
+ - _OutlineMaskUV: 0
+ - _OutlineMode: 0
+ - _OutlineModeAnimated: 0
+ - _OutlineOffsetFactor: 0
+ - _OutlineOffsetUnits: 0
+ - _OutlinePersonaDirectionAnimated: 0
+ - _OutlineRimLightBlend: 0
+ - _OutlineRimLightBlendAnimated: 0
+ - _OutlineShadowStrength: 1
+ - _OutlineShadowStrengthAnimated: 0
+ - _OutlineStencilCompareFunction: 8
+ - _OutlineStencilCompareFunctionAnimated: 0
+ - _OutlineStencilFailOp: 0
+ - _OutlineStencilFailOpAnimated: 0
+ - _OutlineStencilPassOp: 0
+ - _OutlineStencilPassOpAnimated: 0
+ - _OutlineStencilReadMask: 255
+ - _OutlineStencilReadMaskAnimated: 0
+ - _OutlineStencilRef: 0
+ - _OutlineStencilRefAnimated: 0
+ - _OutlineStencilWriteMask: 255
+ - _OutlineStencilWriteMaskAnimated: 0
+ - _OutlineStencilZFailOp: 0
+ - _OutlineStencilZFailOpAnimated: 0
+ - _OutlineTextureAnimated: 0
+ - _OutlineTexturePanAnimated: 0
+ - _OutlineTextureUV: 0
+ - _OutlineTintMix: 0
+ - _OutlineTintMixAnimated: 0
+ - _OutlineUseVertexColors: 0
+ - _OutlineUseVertexColorsAnimated: 0
+ - _PanoBlend: 0
+ - _PanoBlendAnimated: 0
+ - _PanoCubeMapAnimated: 0
+ - _PanoCubeMapToggle: 0
+ - _PanoCubeMapToggleAnimated: 0
+ - _PanoEmission: 0
+ - _PanoEmissionAnimated: 0
+ - _PanoInfiniteStereoToggle: 0
+ - _PanoInfiniteStereoToggleAnimated: 0
+ - _PanoMaskAnimated: 0
+ - _PanoMaskPanAnimated: 0
+ - _PanoMaskUV: 0
+ - _PanoMaskUVAnimated: 0
+ - _PanoToggle: 0
+ - _PanoToggleAnimated: 0
+ - _PanosphereColorAnimated: 0
+ - _PanospherePanAnimated: 0
+ - _PanosphereTextureAnimated: 0
+ - _Parallax: 0.02
+ - _ParallaxBias: 0.42
+ - _ParallaxBiasAnimated: 0
+ - _ParallaxHeightMapAnimated: 0
+ - _ParallaxHeightMapEnabled: 0
+ - _ParallaxHeightMapEnabledAnimated: 0
+ - _ParallaxHeightMapMaskAnimated: 0
+ - _ParallaxHeightMapMaskPanAnimated: 0
+ - _ParallaxHeightMapMaskUV: 0
+ - _ParallaxHeightMapMaskUVAnimated: 0
+ - _ParallaxHeightMapPanAnimated: 0
+ - _ParallaxInternalHeightFromAlpha: 0
+ - _ParallaxInternalHeightFromAlphaAnimated: 0
+ - _ParallaxInternalHeightmapMode: 0
+ - _ParallaxInternalHeightmapModeAnimated: 0
+ - _ParallaxInternalIterations: 1
+ - _ParallaxInternalIterationsAnimated: 0
+ - _ParallaxInternalMapAnimated: 0
+ - _ParallaxInternalMapEnabled: 0
+ - _ParallaxInternalMapEnabledAnimated: 0
+ - _ParallaxInternalMapMaskAnimated: 0
+ - _ParallaxInternalMapMaskPanAnimated: 0
+ - _ParallaxInternalMapMaskUV: 0
+ - _ParallaxInternalMapMaskUVAnimated: 0
+ - _ParallaxInternalMaxColorAnimated: 0
+ - _ParallaxInternalMaxDepth: 1
+ - _ParallaxInternalMaxDepthAnimated: 0
+ - _ParallaxInternalMaxFade: 1
+ - _ParallaxInternalMaxFadeAnimated: 0
+ - _ParallaxInternalMinColorAnimated: 0
+ - _ParallaxInternalMinDepth: 0
+ - _ParallaxInternalMinDepthAnimated: 0
+ - _ParallaxInternalMinFade: 0
+ - _ParallaxInternalMinFadeAnimated: 0
+ - _ParallaxInternalPanDepthSpeedAnimated: 0
+ - _ParallaxInternalPanSpeedAnimated: 0
+ - _ParallaxMap: 0
+ - _ParallaxMapAnimated: 0
+ - _ParallaxStrength: 0
+ - _ParallaxStrengthAnimated: 0
+ - _ParallaxUV: 0
+ - _ParallaxUVAnimated: 0
+ - _RGBBlendMultiplicative: 0
+ - _RGBBlendMultiplicativeAnimated: 0
+ - _RGBBluePanningAnimated: 0
+ - _RGBBlue_UV: 0
+ - _RGBBlue_UVAnimated: 0
+ - _RGBGreenPanningAnimated: 0
+ - _RGBGreen_UV: 0
+ - _RGBGreen_UVAnimated: 0
+ - _RGBMaskAnimated: 0
+ - _RGBMaskEnabled: 0
+ - _RGBMaskEnabledAnimated: 0
+ - _RGBMaskPanningAnimated: 0
+ - _RGBMaskUV: 0
+ - _RGBMaskUVAnimated: 0
+ - _RGBNormalBlend: 0
+ - _RGBNormalBlendAnimated: 0
+ - _RGBRedPanningAnimated: 0
+ - _RGBRed_UV: 0
+ - _RGBRed_UVAnimated: 0
+ - _RGBUseVertexColors: 0
+ - _RGBUseVertexColorsAnimated: 0
+ - _RedColorAnimated: 0
+ - _RedTexureAnimated: 0
+ - _RefractionChromaticAberattionAnimated: 0
+ - _RefractionEnabledAnimated: 0
+ - _RefractionIndexAnimated: 0
+ - _RgbNormalBScale: 0
+ - _RgbNormalBUV: 0
+ - _RgbNormalGScale: 0
+ - _RgbNormalGUV: 0
+ - _RgbNormalRScale: 0
+ - _RgbNormalRUV: 0
+ - _RgbNormalsEnabled: 0
+ - _RimBrighten: 0
+ - _RimBrightenAnimated: 0
+ - _RimEnviroBlur: 0.7
+ - _RimEnviroBlurAnimated: 0
+ - _RimEnviroIntensity: 1
+ - _RimEnviroIntensityAnimated: 0
+ - _RimEnviroMaskAnimated: 0
+ - _RimEnviroMaskPanAnimated: 0
+ - _RimEnviroMaskUV: 0
+ - _RimEnviroMaskUVAnimated: 0
+ - _RimEnviroMinBrightness: 0
+ - _RimEnviroMinBrightnessAnimated: 0
+ - _RimEnviroSharpness: 0
+ - _RimEnviroSharpnessAnimated: 0
+ - _RimEnviroWidth: 0.45
+ - _RimEnviroWidthAnimated: 0
+ - _RimLightColorAnimated: 0
+ - _RimLightColorBias: 0
+ - _RimLightColorBiasAnimated: 0
+ - _RimLightNormal: 1
+ - _RimLightNormalAnimated: 0
+ - _RimLightingInvert: 0
+ - _RimLightingInvertAnimated: 0
+ - _RimMaskAnimated: 0
+ - _RimMaskPanAnimated: 0
+ - _RimMaskUV: 0
+ - _RimMaskUVAnimated: 0
+ - _RimSharpness: 0.25
+ - _RimSharpnessAnimated: 0
+ - _RimStrength: 0
+ - _RimStrengthAnimated: 0
+ - _RimTexAnimated: 0
+ - _RimTexPanAnimated: 0
+ - _RimTexUV: 0
+ - _RimTexUVAnimated: 0
+ - _RimWidth: 0.8
+ - _RimWidthAnimated: 0
+ - _RimWidthNoiseStrength: 0.1
+ - _RimWidthNoiseStrengthAnimated: 0
+ - _RimWidthNoiseTextureAnimated: 0
+ - _RimWidthNoiseTexturePanAnimated: 0
+ - _RimWidthNoiseTextureUV: 0
+ - _RimWidthNoiseTextureUVAnimated: 0
+ - _SSSColorAnimated: 0
+ - _SSSDistortion: 1
+ - _SSSDistortionAnimated: 0
+ - _SSSPower: 5
+ - _SSSPowerAnimated: 0
+ - _SSSSCale: 0.25
+ - _SSSSCaleAnimated: 0
+ - _SSSThicknessMapAnimated: 0
+ - _SSSThicknessMapPanAnimated: 0
+ - _SSSThicknessMapUV: 0
+ - _SSSThicknessMapUVAnimated: 0
+ - _SSSThicknessMod: 0
+ - _SSSThicknessModAnimated: 0
+ - _SampleWorld: 0
+ - _SampleWorldAnimated: 0
+ - _Saturation: 0
+ - _SaturationAnimated: 0
+ - _ScrollingEmission: 0
+ - _ScrollingEmission1: 0
+ - _ScrollingEmission1Animated: 0
+ - _ScrollingEmissionAnimated: 0
+ - _ShaderOptimizerEnabled: 1
+ - _ShadowMix: 0
+ - _ShadowMixAnimated: 0
+ - _ShadowMixThreshold: 0.5
+ - _ShadowMixThresholdAnimated: 0
+ - _ShadowMixWidthMod: 0.5
+ - _ShadowMixWidthModAnimated: 0
+ - _ShadowOffset: 0
+ - _ShadowOffsetAnimated: 0
+ - _ShadowStrength: 1
+ - _ShadowStrengthAnimated: 0
+ - _Smoothness: 0
+ - _SmoothnessAnimated: 0
+ - _SmoothnessFrom: 1
+ - _SmoothnessFrom1: 1
+ - _SmoothnessFrom1Animated: 0
+ - _SmoothnessFromAnimated: 0
+ - _SmoothnessMaskAnimated: 0
+ - _SmoothnessMaskPanAnimated: 0
+ - _SmoothnessMaskUV: 0
+ - _SmoothnessMaskUVAnimated: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpawnInAlphaAnimated: 0
+ - _SpawnInEmissionColorAnimated: 0
+ - _SpawnInEmissionOffsetAnimated: 0
+ - _SpawnInGradientFinishAnimated: 0
+ - _SpawnInGradientStartAnimated: 0
+ - _SpawnInNoiseAnimated: 0
+ - _SpawnInNoiseIntensityAnimated: 0
+ - _SpawnInVertOffsetAnimated: 0
+ - _SpawnInVertOffsetOffsetAnimated: 0
+ - _Spec1Offset: 0
+ - _Spec1Offset1: 0
+ - _Spec1Offset1Animated: 0
+ - _Spec1OffsetAnimated: 0
+ - _Spec2Smoothness: 0
+ - _Spec2Smoothness1: 0
+ - _Spec2Smoothness1Animated: 0
+ - _Spec2SmoothnessAnimated: 0
+ - _SpecWhatTangent: 0
+ - _SpecWhatTangent1: 0
+ - _SpecWhatTangent1Animated: 0
+ - _SpecWhatTangentAnimated: 0
+ - _SpecularAnisoJitterMacro1Animated: 0
+ - _SpecularAnisoJitterMacro1PanAnimated: 0
+ - _SpecularAnisoJitterMacro1UV: 0
+ - _SpecularAnisoJitterMacro1UVAnimated: 0
+ - _SpecularAnisoJitterMacroAnimated: 0
+ - _SpecularAnisoJitterMacroMultiplier: 0
+ - _SpecularAnisoJitterMacroMultiplier1: 0
+ - _SpecularAnisoJitterMacroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMacroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMacroPanAnimated: 0
+ - _SpecularAnisoJitterMacroUV: 0
+ - _SpecularAnisoJitterMacroUVAnimated: 0
+ - _SpecularAnisoJitterMicro1Animated: 0
+ - _SpecularAnisoJitterMicro1PanAnimated: 0
+ - _SpecularAnisoJitterMicro1UV: 0
+ - _SpecularAnisoJitterMicro1UVAnimated: 0
+ - _SpecularAnisoJitterMicroAnimated: 0
+ - _SpecularAnisoJitterMicroMultiplier: 0
+ - _SpecularAnisoJitterMicroMultiplier1: 0
+ - _SpecularAnisoJitterMicroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMicroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMicroPanAnimated: 0
+ - _SpecularAnisoJitterMicroUV: 0
+ - _SpecularAnisoJitterMicroUVAnimated: 0
+ - _SpecularAnisoJitterMirrored: 0
+ - _SpecularAnisoJitterMirrored1: 0
+ - _SpecularAnisoJitterMirrored1Animated: 0
+ - _SpecularAnisoJitterMirroredAnimated: 0
+ - _SpecularHighlights: 1
+ - _SpecularInvertSmoothness: 0
+ - _SpecularInvertSmoothness1: 0
+ - _SpecularInvertSmoothness1Animated: 0
+ - _SpecularInvertSmoothnessAnimated: 0
+ - _SpecularMap1Animated: 0
+ - _SpecularMap1PanAnimated: 0
+ - _SpecularMap1UV: 0
+ - _SpecularMap1UVAnimated: 0
+ - _SpecularMapAnimated: 0
+ - _SpecularMapPanAnimated: 0
+ - _SpecularMapUV: 0
+ - _SpecularMapUVAnimated: 0
+ - _SpecularMask1Animated: 0
+ - _SpecularMask1PanAnimated: 0
+ - _SpecularMask1UV: 0
+ - _SpecularMask1UVAnimated: 0
+ - _SpecularMaskAnimated: 0
+ - _SpecularMaskPanAnimated: 0
+ - _SpecularMaskUV: 0
+ - _SpecularMaskUVAnimated: 0
+ - _SpecularMetallic: 0
+ - _SpecularMetallic1: 0
+ - _SpecularMetallic1Animated: 0
+ - _SpecularMetallicAnimated: 0
+ - _SpecularMetallicMap1UV: 0
+ - _SpecularMetallicMapUV: 0
+ - _SpecularNormal: 1
+ - _SpecularNormal1: 1
+ - _SpecularNormal1Animated: 0
+ - _SpecularNormalAnimated: 0
+ - _SpecularSmoothness: 1
+ - _SpecularSmoothness1: 0.75
+ - _SpecularSmoothness1Animated: 0
+ - _SpecularSmoothnessAnimated: 0
+ - _SpecularTint1Animated: 0
+ - _SpecularTintAnimated: 0
+ - _SpecularToonEnd: 1
+ - _SpecularToonEnd1: 1
+ - _SpecularToonEnd1Animated: 0
+ - _SpecularToonEndAnimated: 0
+ - _SpecularToonInnerOuter1Animated: 0
+ - _SpecularToonInnerOuterAnimated: 0
+ - _SpecularToonStart: 0.95
+ - _SpecularToonStart1: 0.95
+ - _SpecularToonStart1Animated: 0
+ - _SpecularToonStartAnimated: 0
+ - _SpecularType: 1
+ - _SpecularType1: 1
+ - _SpecularType1Animated: 0
+ - _SpecularTypeAnimated: 0
+ - _SrcBlend: 1
+ - _SrcBlendAnimated: 0
+ - _StencilCompareFunction: 8
+ - _StencilCompareFunctionAnimated: 0
+ - _StencilFailOp: 0
+ - _StencilFailOpAnimated: 0
+ - _StencilPassOp: 0
+ - _StencilPassOpAnimated: 0
+ - _StencilReadMask: 255
+ - _StencilReadMaskAnimated: 0
+ - _StencilRef: 0
+ - _StencilRefAnimated: 0
+ - _StencilWriteMask: 255
+ - _StencilWriteMaskAnimated: 0
+ - _StencilZFailOp: 0
+ - _StencilZFailOpAnimated: 0
+ - _TextEnabled: 0
+ - _TextEnabledAnimated: 0
+ - _TextFPSColorAnimated: 0
+ - _TextFPSEmissionStrength: 0
+ - _TextFPSEmissionStrengthAnimated: 0
+ - _TextFPSEnabled: 0
+ - _TextFPSEnabledAnimated: 0
+ - _TextFPSOffsetAnimated: 0
+ - _TextFPSPaddingAnimated: 0
+ - _TextFPSRotation: 0
+ - _TextFPSRotationAnimated: 0
+ - _TextFPSScaleAnimated: 0
+ - _TextFPSUV: 0
+ - _TextFPSUVAnimated: 0
+ - _TextGlyphsAnimated: 0
+ - _TextPixelRange: 4
+ - _TextPixelRangeAnimated: 0
+ - _TextPositionColorAnimated: 0
+ - _TextPositionEmissionStrength: 0
+ - _TextPositionEmissionStrengthAnimated: 0
+ - _TextPositionEnabled: 0
+ - _TextPositionEnabledAnimated: 0
+ - _TextPositionOffsetAnimated: 0
+ - _TextPositionPaddingAnimated: 0
+ - _TextPositionRotation: 0
+ - _TextPositionRotationAnimated: 0
+ - _TextPositionScaleAnimated: 0
+ - _TextPositionUV: 0
+ - _TextPositionUVAnimated: 0
+ - _TextTimeColorAnimated: 0
+ - _TextTimeEmissionStrength: 0
+ - _TextTimeEmissionStrengthAnimated: 0
+ - _TextTimeEnabled: 0
+ - _TextTimeEnabledAnimated: 0
+ - _TextTimeOffsetAnimated: 0
+ - _TextTimePaddingAnimated: 0
+ - _TextTimeRotation: 0
+ - _TextTimeRotationAnimated: 0
+ - _TextTimeScaleAnimated: 0
+ - _TextTimeUV: 0
+ - _TextTimeUVAnimated: 0
+ - _ToonRampAnimated: 0
+ - _UVSec: 0
+ - _UseShadowTexture: 0
+ - _UseShadowTextureAnimated: 0
+ - _VertexGlitchFrequencyAnimated: 0
+ - _VertexGlitchStrengthAnimated: 0
+ - _VertexGlitchThresholdAnimated: 0
+ - _VertexManipulationHeight: 0
+ - _VertexManipulationHeightAnimated: 0
+ - _VertexManipulationHeightBias: 0
+ - _VertexManipulationHeightBiasAnimated: 0
+ - _VertexManipulationHeightMaskAnimated: 0
+ - _VertexManipulationHeightPanAnimated: 0
+ - _VertexManipulationHeightUV: 0
+ - _VertexManipulationHeightUVAnimated: 0
+ - _VertexManipulationLocalRotationAnimated: 0
+ - _VertexManipulationLocalScaleAnimated: 0
+ - _VertexManipulationLocalTranslationAnimated: 0
+ - _VertexManipulationWorldTranslationAnimated: 0
+ - _VertexManipulationsEnabled: 0
+ - _VertexRoundingDivision: 500
+ - _VertexRoundingDivisionAnimated: 0
+ - _VertexRoundingEnabled: 0
+ - _VertexRoundingEnabledAnimated: 0
+ - _VertexUnwrap: 0
+ - _VertexUnwrapAnimated: 0
+ - _VideoBacklightAnimated: 0
+ - _VideoCRTPixelEnergizedTimeAnimated: 0
+ - _VideoCRTRefreshRateAnimated: 0
+ - _VideoContrastAnimated: 0
+ - _VideoDebugTextureAnimated: 0
+ - _VideoEnableDebugAnimated: 0
+ - _VideoEnableVideoPlayerAnimated: 0
+ - _VideoGameboyRampAnimated: 0
+ - _VideoMaskPanningAnimated: 0
+ - _VideoMaskTextureAnimated: 0
+ - _VideoOffsetAnimated: 0
+ - _VideoPanningAnimated: 0
+ - _VideoPixelTextureAnimated: 0
+ - _VideoPixelateToResolutionAnimated: 0
+ - _VideoRepeatVideoTextureAnimated: 0
+ - _VideoResolutionAnimated: 0
+ - _VideoSaturationAnimated: 0
+ - _VideoTilingAnimated: 0
+ - _VideoTypeAnimated: 0
+ - _VideoUVNumberAnimated: 0
+ - _VoronoiBlendAnimated: 0
+ - _VoronoiColor0Animated: 0
+ - _VoronoiColor1Animated: 0
+ - _VoronoiEffectsMaterialAlphaAnimated: 0
+ - _VoronoiEmission0Animated: 0
+ - _VoronoiEmission1Animated: 0
+ - _VoronoiEnableRandomCellColorAnimated: 0
+ - _VoronoiGradientAnimated: 0
+ - _VoronoiMaskAnimated: 0
+ - _VoronoiMaskPanAnimated: 0
+ - _VoronoiMaskUVAnimated: 0
+ - _VoronoiNoiseAnimated: 0
+ - _VoronoiNoiseIntensityAnimated: 0
+ - _VoronoiNoisePanAnimated: 0
+ - _VoronoiNoiseUVAnimated: 0
+ - _VoronoiRandomMinMaxBrightnessAnimated: 0
+ - _VoronoiRandomMinMaxSaturationAnimated: 0
+ - _VoronoiScaleAnimated: 0
+ - _VoronoiSpaceAnimated: 0
+ - _VoronoiSpeedAnimated: 0
+ - _VoronoiTypeAnimated: 0
+ - _ZTest: 4
+ - _ZTestAnimated: 0
+ - _ZWrite: 1
+ - _ZWriteAnimated: 0
+ - _commentIfZero_EnableOutlinePass: 0
+ - _commentIfZero_LightingAdditiveEnable: 1
+ - _commentIfZero_LightingAdditiveEnableAnimated: 0
+ - _glitterFrequencyLinearEmissive: 20
+ - _glitterFrequencyLinearEmissiveAnimated: 0
+ - footer_discord: 0
+ - footer_github: 0
+ - footer_patreon: 0
+ - footer_twitter: 0
+ - footer_youtube: 0
+ - m_LockingInfo: 0
+ - m_ParallaxMap: 0
+ - m_Special_Effects: 0
+ - m_end_Alpha: 0
+ - m_end_BonusSliders: 0
+ - m_end_CenterOutEmission: 0
+ - m_end_CenterOutEmission1: 0
+ - m_end_DecalSection: 0
+ - m_end_DetailOptions: 0
+ - m_end_Lighting: 0
+ - m_end_MainHueShift: 0
+ - m_end_MainVertexColors: 0
+ - m_end_Matcap2: 0
+ - m_end_Metallic: 0
+ - m_end_OutlineStencil: 0
+ - m_end_RGBMask: 0
+ - m_end_ShadowMix: 0
+ - m_end_StencilPassOptions: 0
+ - m_end_Text: 0
+ - m_end_TextFPS: 0
+ - m_end_TextInstanceTime: 0
+ - m_end_TextPosition: 0
+ - m_end_ambientOcclusion: 0
+ - m_end_angularFade: 0
+ - m_end_backFace: 0
+ - m_end_bakedLighting: 0
+ - m_end_blending: 0
+ - m_end_blinkingEmissionOptions: 0
+ - m_end_blinkingEmissionOptions1: 0
+ - m_end_clearCoat: 0
+ - m_end_debugOptions: 0
+ - m_end_detailShadows: 0
+ - m_end_dissolve: 0
+ - m_end_dissolveMasking: 0
+ - m_end_distanceFade: 0
+ - m_end_distortionFlow: 0
+ - m_end_emission1Options: 0
+ - m_end_emissionOptions: 0
+ - m_end_flipBook: 0
+ - m_end_glitter: 0
+ - m_end_glitterRandom: 0
+ - m_end_glowInDarkEmissionOptions: 0
+ - m_end_glowInDarkEmissionOptions1: 0
+ - m_end_lightingAdvanced: 0
+ - m_end_lightingHSL: 0
+ - m_end_lightingModifiers: 0
+ - m_end_manualFlipbookControl: 0
+ - m_end_matcap: 0
+ - m_end_mirrorOptions: 0
+ - m_end_outlineAdvanced: 0
+ - m_end_panosphereOptions: 0
+ - m_end_parallaxAdvanced: 0
+ - m_end_parallaxHeightmap: 0
+ - m_end_parallaxInternal: 0
+ - m_end_pointToPoint: 0
+ - m_end_reflectionRim: 0
+ - m_end_rimLightOptions: 0
+ - m_end_rimWidthNoise: 0
+ - m_end_scrollingEmission1Options: 0
+ - m_end_scrollingEmissionOptions: 0
+ - m_end_shadowTexture: 0
+ - m_end_specular: 0
+ - m_end_specular1: 0
+ - m_end_subsurface: 0
+ - m_end_vertexManipulation: 0
+ - m_lightingOptions: 0
+ - m_mainOptions: 0
+ - m_outlineOptions: 0
+ - m_renderingOptions: 0
+ - m_start_Alpha: 0
+ - m_start_BonusSliders: 0
+ - m_start_CenterOutEmission: 0
+ - m_start_CenterOutEmission1: 0
+ - m_start_DecalSection: 0
+ - m_start_DetailOptions: 0
+ - m_start_Lighting: 0
+ - m_start_MainHueShift: 0
+ - m_start_MainVertexColors: 0
+ - m_start_Matcap2: 0
+ - m_start_Metallic: 0
+ - m_start_OutlineStencil: 0
+ - m_start_RGBMask: 0
+ - m_start_ShadowMix: 0
+ - m_start_StencilPassOptions: 0
+ - m_start_Text: 0
+ - m_start_TextFPS: 0
+ - m_start_TextInstanceTime: 0
+ - m_start_TextPosition: 0
+ - m_start_ambientOcclusion: 0
+ - m_start_angularFade: 0
+ - m_start_backFace: 0
+ - m_start_bakedLighting: 0
+ - m_start_blending: 0
+ - m_start_blinkingEmissionOptions: 0
+ - m_start_blinkingEmissionOptions1: 0
+ - m_start_clearCoat: 0
+ - m_start_debugOptions: 0
+ - m_start_detailShadows: 0
+ - m_start_dissolve: 0
+ - m_start_dissolveMasking: 0
+ - m_start_distanceFade: 0
+ - m_start_distortionFlow: 0
+ - m_start_emission1Options: 0
+ - m_start_emissionOptions: 0
+ - m_start_flipBook: 0
+ - m_start_glitter: 0
+ - m_start_glitterRandom: 0
+ - m_start_glowInDarkEmissionOptions: 0
+ - m_start_glowInDarkEmissionOptions1: 0
+ - m_start_lightingAdvanced: 0
+ - m_start_lightingHSL: 0
+ - m_start_lightingModifiers: 0
+ - m_start_manualFlipbookControl: 0
+ - m_start_matcap: 0
+ - m_start_mirrorOptions: 0
+ - m_start_outlineAdvanced: 0
+ - m_start_panosphereOptions: 0
+ - m_start_parallaxAdvanced: 0
+ - m_start_parallaxHeightmap: 0
+ - m_start_parallaxInternal: 0
+ - m_start_pointToPoint: 0
+ - m_start_reflectionRim: 0
+ - m_start_rimLightOptions: 0
+ - m_start_rimWidthNoise: 0
+ - m_start_scrollingEmissionOptions: 0
+ - m_start_scrollingEmissionOptions1: 0
+ - m_start_shadowTexture: 0
+ - m_start_specular: 0
+ - m_start_specular1: 0
+ - m_start_subsurface: 0
+ - m_start_vertexManipulation: 0
+ - shader_is_using_thry_editor: 0
+ - shader_master_label: 0
+ - shader_presets: 0
+ - shader_properties_label_file: 0
+ m_Colors:
+ - _AlphaMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _AngleForwardDirection: {r: 0, g: 0, b: 1, a: 0}
+ - _AnisoTangentMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _AnisoTangentMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _BackFaceColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BackFacePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _BlueColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BumpMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatSmoothnessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatTint: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DecalPosition: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DecalScale: {r: 1, g: 1, b: 0, a: 0}
+ - _DecalTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailNormalMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTint: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveDetailNoisePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveEdgeColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveEndPoint: {r: 0, g: 1, b: 0, a: 0}
+ - _DissolveMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveStartPoint: {r: 0, g: -1, b: 0, a: 0}
+ - _DissolveTextureColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveToTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionSpeed: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DistortionSpeed1: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionColor1: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissiveScroll_Direction: {r: 0, g: -10, b: 0, a: 0}
+ - _EmissiveScroll_Direction1: {r: 0, g: -10, b: 0, a: 0}
+ - _FlipbookColor: {r: 1, g: 1, b: 1, a: 1}
+ - _FlipbookMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _FlipbookScaleOffset: {r: 1, g: 1, b: 0, a: 0}
+ - _FlipbookTexArrayPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterColor: {r: 1, g: 1, b: 1, a: 1}
+ - _GlitterColorMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMinMaxBrightness: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSaturation: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSize: {r: 0.1, g: 0.5, b: 0, a: 1}
+ - _GlitterPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _GreenColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingAOTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingDetailShadowsPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingShadowMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _LineColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MainDistanceFade: {r: 0, g: 0, b: 0, a: 0}
+ - _MainFadeTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainHueShiftMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _Matcap2Color: {r: 1, g: 1, b: 1, a: 1}
+ - _Matcap2MaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MatcapColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MatcapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetalReflectionTint: {r: 1, g: 1, b: 1, a: 1}
+ - _MetallicMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetallicTintMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MirrorTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineDropShadowOffset: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineFadeDistance: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlinePersonaDirection: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanoMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanosphereColor: {r: 1, g: 1, b: 1, a: 1}
+ - _PanospherePan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMaxColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalMinColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalPanDepthSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalPanSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBBluePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBGreenPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBMaskPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBRedPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RedColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RgbNormalBPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalGPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalRPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimEnviroMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimLightColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RimMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimWidthNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _SSSColor: {r: 1, g: 0, b: 0, a: 1}
+ - _SSSThicknessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SmoothnessMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularTint: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularTint1: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularToonInnerOuter: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _SpecularToonInnerOuter1: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _TextFPSColor: {r: 1, g: 1, b: 1, a: 1}
+ - _TextFPSOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextPositionColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextPositionOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextTimeColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextTimeOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimePadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimeScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationHeightPan: {r: 0, g: 0, b: 0, a: 0}
+ - _VertexManipulationLocalRotation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationLocalScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationLocalTranslation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationWorldTranslation: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.mat.meta
new file mode 100644
index 00000000..42d7ff53
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 6f0b4803ca1cad748af07853028a3cb4
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.png b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.png
new file mode 100644
index 00000000..1459882d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.png
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.png.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.png.meta
new file mode 100644
index 00000000..425e0e0b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Body.png.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: b324a58f5c65b8b41b7623fd778b429d
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 1
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.mat
new file mode 100644
index 00000000..8985f172
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.mat
@@ -0,0 +1,1855 @@
+%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: R2Changyu01001Cloth
+ m_Shader: {fileID: 4800000, guid: ee778f5331edea44baeddcfb5d8669ae, type: 3}
+ m_ShaderKeywords: VIGNETTE_MASKED _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap:
+ OptimizedShaderFolder: R2Changyu01001Cloth-163ee521
+ OriginalShader: ".poiyomi/\u2022 Poiyomi Toon \u2022"
+ RenderType: Opaque
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _AlphaMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BackFaceTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BlueTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatCubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatSmoothnessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _CubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalTexture:
+ 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}
+ - _DetailTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveDetailNoise:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveEdgeGradient:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveToTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionMask:
+ 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}
+ - _EmissionMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookTexArray:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterColorMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GreenTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingAOTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingDetailShadows:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainFadeTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainHueShiftMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: c9ae99659b55b6243aa68e60cca3d268, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2Mask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MatcapMask:
+ 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}
+ - _MetallicMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicTintMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MirrorTexture:
+ 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}
+ - _OutlineMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OutlineTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoCubeMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanosphereTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMapMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMapMask:
+ 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}
+ - _RGBMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RedTexure:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalB:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalG:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalR:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimEnviroMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimWidthNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SSSThicknessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SmoothnessMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _TextGlyphs:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ToonRamp:
+ m_Texture: {fileID: 2800000, guid: 61bd594533da4fc42bd46ef93ba5a4f6, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _VertexManipulationHeightMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - DSGI: 0
+ - Instancing: 0
+ - LightmapFlags: 0
+ - _AOStrength: 1
+ - _AOStrengthAnimated: 0
+ - _AlphaMaskAnimated: 0
+ - _AlphaMaskPanAnimated: 0
+ - _AlphaMaskUV: 0
+ - _AlphaMaskUVAnimated: 0
+ - _AlphaMod: 0
+ - _AlphaModAnimated: 0
+ - _AlphaPremultiply: 0
+ - _AlphaPremultiplyAnimated: 0
+ - _AlphaToMask: 0
+ - _AlphaToMaskAnimated: 0
+ - _AngleCompareTo: 0
+ - _AngleCompareToAnimated: 0
+ - _AngleForwardDirectionAnimated: 0
+ - _AngleMinAlpha: 0
+ - _AngleMinAlphaAnimated: 0
+ - _AngleType: 0
+ - _AngleTypeAnimated: 0
+ - _AnisoSpec1Alpha: 1
+ - _AnisoSpec1Alpha1: 1
+ - _AnisoSpec1Alpha1Animated: 0
+ - _AnisoSpec1AlphaAnimated: 0
+ - _AnisoSpec2Alpha: 1
+ - _AnisoSpec2Alpha1: 1
+ - _AnisoSpec2Alpha1Animated: 0
+ - _AnisoSpec2AlphaAnimated: 0
+ - _AnisoTangentMap1Animated: 0
+ - _AnisoTangentMap1PanAnimated: 0
+ - _AnisoTangentMap1UV: 0
+ - _AnisoTangentMap1UVAnimated: 0
+ - _AnisoTangentMapAnimated: 0
+ - _AnisoTangentMapPanAnimated: 0
+ - _AnisoTangentMapUV: 0
+ - _AnisoTangentMapUVAnimated: 0
+ - _AnisoUseTangentMap: 0
+ - _AnisoUseTangentMap1: 0
+ - _AnisoUseTangentMap1Animated: 0
+ - _AnisoUseTangentMapAnimated: 0
+ - _AttenuationMultiplier: 0
+ - _AttenuationMultiplierAnimated: 0
+ - _BackFaceDetailIntensity: 1
+ - _BackFaceEmissionStrength: 0
+ - _BackFaceEnabled: 0
+ - _BackFaceHueShift: 0
+ - _BackFaceTextureUV: 0
+ - _BlackLightMaskClearCoatAnimated: 0
+ - _BlackLightMaskDebugAnimated: 0
+ - _BlackLightMaskDissolveAnimated: 0
+ - _BlackLightMaskEmission2Animated: 0
+ - _BlackLightMaskEmissionAnimated: 0
+ - _BlackLightMaskEnabledAnimated: 0
+ - _BlackLightMaskEndAnimated: 0
+ - _BlackLightMaskFlipbookAnimated: 0
+ - _BlackLightMaskGlitterAnimated: 0
+ - _BlackLightMaskIridescenceAnimated: 0
+ - _BlackLightMaskKeysAnimated: 0
+ - _BlackLightMaskMatcap2Animated: 0
+ - _BlackLightMaskMatcapAnimated: 0
+ - _BlackLightMaskMetallicAnimated: 0
+ - _BlackLightMaskPanosphereAnimated: 0
+ - _BlackLightMaskStartAnimated: 0
+ - _BlendOp: 0
+ - _BlendOpAlpha: 0
+ - _BlendOpAlphaAnimated: 0
+ - _BlendOpAnimated: 0
+ - _BlueColorAnimated: 0
+ - _BlueTextureAnimated: 0
+ - _BuldgeFadeLengthAnimated: 0
+ - _BuldgeHeightAnimated: 0
+ - _BulgeMaskAnimated: 0
+ - _BumpMapAnimated: 0
+ - _BumpMapPanAnimated: 0
+ - _BumpMapUV: 0
+ - _BumpMapUVAnimated: 0
+ - _BumpScale: 1
+ - _BumpScaleAnimated: 0
+ - _CameraAngleMax: 90
+ - _CameraAngleMaxAnimated: 0
+ - _CameraAngleMin: 45
+ - _CameraAngleMinAnimated: 0
+ - _ClearCoat: 1
+ - _ClearCoatAnimated: 0
+ - _ClearCoatCubeMapAnimated: 0
+ - _ClearCoatForceLighting: 0
+ - _ClearCoatForceLightingAnimated: 0
+ - _ClearCoatInvertSmoothness: 0
+ - _ClearCoatInvertSmoothnessAnimated: 0
+ - _ClearCoatMaskAnimated: 0
+ - _ClearCoatMaskPanAnimated: 0
+ - _ClearCoatMaskUV: 0
+ - _ClearCoatMaskUVAnimated: 0
+ - _ClearCoatNormalToUse: 0
+ - _ClearCoatNormalToUseAnimated: 0
+ - _ClearCoatSampleWorld: 0
+ - _ClearCoatSampleWorldAnimated: 0
+ - _ClearCoatSmoothness: 0
+ - _ClearCoatSmoothnessAnimated: 0
+ - _ClearCoatSmoothnessMapAnimated: 0
+ - _ClearCoatSmoothnessMapPanAnimated: 0
+ - _ClearCoatSmoothnessMapUV: 0
+ - _ClearCoatSmoothnessMapUVAnimated: 0
+ - _ClearCoatTintAnimated: 0
+ - _ColorAnimated: 0
+ - _ColorMask: 15
+ - _ColorMaskAnimated: 0
+ - _ContinuousDissolve: 0
+ - _ContinuousDissolveAnimated: 0
+ - _CubeMapAnimated: 0
+ - _Cull: 2
+ - _CullAnimated: 0
+ - _Cutoff: 0.5
+ - _CutoffAnimated: 0
+ - _DebugCameraData: 0
+ - _DebugCameraDataAnimated: 0
+ - _DebugEnabled: 0
+ - _DebugLightingData: 0
+ - _DebugLightingDataAnimated: 0
+ - _DebugMeshData: 0
+ - _DebugMeshDataAnimated: 0
+ - _DecalBlendAdd: 0
+ - _DecalBlendAddAnimated: 0
+ - _DecalBlendMultiply: 0
+ - _DecalBlendMultiplyAnimated: 0
+ - _DecalBlendReplace: 0
+ - _DecalBlendReplaceAnimated: 0
+ - _DecalColorAnimated: 0
+ - _DecalEmissionStrength: 0
+ - _DecalEmissionStrengthAnimated: 0
+ - _DecalEnabled: 0
+ - _DecalEnabledAnimated: 0
+ - _DecalMaskAnimated: 0
+ - _DecalMaskPanAnimated: 0
+ - _DecalMaskUV: 0
+ - _DecalMaskUVAnimated: 0
+ - _DecalPositionAnimated: 0
+ - _DecalRotation: 0
+ - _DecalRotationAnimated: 0
+ - _DecalRotationSpeed: 0
+ - _DecalRotationSpeedAnimated: 0
+ - _DecalScaleAnimated: 0
+ - _DecalTextureAnimated: 0
+ - _DecalTexturePanAnimated: 0
+ - _DecalTextureUV: 0
+ - _DecalTextureUVAnimated: 0
+ - _DecalTiled: 0
+ - _DecalTiledAnimated: 0
+ - _DepthAlphaMaxAnimated: 0
+ - _DepthAlphaMinAnimated: 0
+ - _DepthGlowColorAnimated: 0
+ - _DepthGlowEmissionAnimated: 0
+ - _DepthGradientAnimated: 0
+ - _DepthGradientBlendAnimated: 0
+ - _DepthGradientPanAnimated: 0
+ - _DepthGradientTextureUVAnimated: 0
+ - _DepthGradientUVAnimated: 0
+ - _DepthMaskAnimated: 0
+ - _DepthMaskPanAnimated: 0
+ - _DepthMaskUVAnimated: 0
+ - _DetailBrightness: 1
+ - _DetailBrightnessAnimated: 0
+ - _DetailEnabled: 0
+ - _DetailMaskAnimated: 0
+ - _DetailMaskPanAnimated: 0
+ - _DetailMaskUV: 0
+ - _DetailMaskUVAnimated: 0
+ - _DetailNormalMapAnimated: 0
+ - _DetailNormalMapPanAnimated: 0
+ - _DetailNormalMapScale: 1
+ - _DetailNormalMapScaleAnimated: 0
+ - _DetailNormalMapUV: 0
+ - _DetailNormalMapUVAnimated: 0
+ - _DetailTexAnimated: 0
+ - _DetailTexIntensity: 1
+ - _DetailTexIntensityAnimated: 0
+ - _DetailTexPanAnimated: 0
+ - _DetailTexUV: 0
+ - _DetailTexUVAnimated: 0
+ - _DetailTintAnimated: 0
+ - _DisableDirectionalInAdd: 1
+ - _DissolveAlpha: 0
+ - _DissolveAlpha0: 0
+ - _DissolveAlpha0Animated: 0
+ - _DissolveAlpha1: 0
+ - _DissolveAlpha1Animated: 0
+ - _DissolveAlpha2: 0
+ - _DissolveAlpha2Animated: 0
+ - _DissolveAlpha3: 0
+ - _DissolveAlpha3Animated: 0
+ - _DissolveAlpha4: 0
+ - _DissolveAlpha4Animated: 0
+ - _DissolveAlpha5: 0
+ - _DissolveAlpha5Animated: 0
+ - _DissolveAlpha6: 0
+ - _DissolveAlpha6Animated: 0
+ - _DissolveAlpha7: 0
+ - _DissolveAlpha7Animated: 0
+ - _DissolveAlpha8: 0
+ - _DissolveAlpha8Animated: 0
+ - _DissolveAlpha9: 0
+ - _DissolveAlpha9Animated: 0
+ - _DissolveAlphaAnimated: 0
+ - _DissolveDetailNoiseAnimated: 0
+ - _DissolveDetailNoisePanAnimated: 0
+ - _DissolveDetailNoiseUV: 0
+ - _DissolveDetailNoiseUVAnimated: 0
+ - _DissolveDetailStrength: 0.1
+ - _DissolveDetailStrengthAnimated: 0
+ - _DissolveEdgeColorAnimated: 0
+ - _DissolveEdgeEmission: 0
+ - _DissolveEdgeEmissionAnimated: 0
+ - _DissolveEdgeGradientAnimated: 0
+ - _DissolveEdgeHardness: 0.5
+ - _DissolveEdgeHardnessAnimated: 0
+ - _DissolveEdgeWidth: 0.025
+ - _DissolveEdgeWidthAnimated: 0
+ - _DissolveEmission1Side: 2
+ - _DissolveEmission1SideAnimated: 0
+ - _DissolveEmissionSide: 2
+ - _DissolveEmissionSideAnimated: 0
+ - _DissolveEndPointAnimated: 0
+ - _DissolveInvertDetailNoise: 0
+ - _DissolveInvertDetailNoiseAnimated: 0
+ - _DissolveInvertNoise: 0
+ - _DissolveInvertNoiseAnimated: 0
+ - _DissolveMaskAnimated: 0
+ - _DissolveMaskInvert: 0
+ - _DissolveMaskInvertAnimated: 0
+ - _DissolveMaskPanAnimated: 0
+ - _DissolveMaskUV: 0
+ - _DissolveMaskUVAnimated: 0
+ - _DissolveNoiseTextureAnimated: 0
+ - _DissolveNoiseTexturePanAnimated: 0
+ - _DissolveNoiseTextureUV: 0
+ - _DissolveNoiseTextureUVAnimated: 0
+ - _DissolveP2PEdgeLength: 0.1
+ - _DissolveP2PEdgeLengthAnimated: 0
+ - _DissolveP2PWorldLocal: 0
+ - _DissolveP2PWorldLocalAnimated: 0
+ - _DissolveStartPointAnimated: 0
+ - _DissolveTextureColorAnimated: 0
+ - _DissolveToEmissionStrength: 0
+ - _DissolveToEmissionStrengthAnimated: 0
+ - _DissolveToTextureAnimated: 0
+ - _DissolveToTexturePanAnimated: 0
+ - _DissolveToTextureUV: 0
+ - _DissolveToTextureUVAnimated: 0
+ - _DissolveType: 1
+ - _DissolveTypeAnimated: 0
+ - _DissolveUseVertexColors: 0
+ - _DissolveUseVertexColorsAnimated: 0
+ - _DistortionFlowTexture1Animated: 0
+ - _DistortionFlowTextureAnimated: 0
+ - _DistortionMaskAnimated: 0
+ - _DistortionMaskPanAnimated: 0
+ - _DistortionMaskUV: 0
+ - _DistortionMaskUVAnimated: 0
+ - _DistortionSpeed1Animated: 0
+ - _DistortionSpeedAnimated: 0
+ - _DistortionStrength: 0.5
+ - _DistortionStrength1: 0.5
+ - _DistortionStrength1Animated: 0
+ - _DistortionStrengthAnimated: 0
+ - _DitherGradient: 0.1
+ - _DitherGradientAnimated: 0
+ - _DitheringEnabled: 0
+ - _DitheringEnabledAnimated: 0
+ - _DstBlend: 0
+ - _DstBlendAnimated: 0
+ - _EmissionBaseColorAsMap: 0
+ - _EmissionBaseColorAsMap1: 0
+ - _EmissionBaseColorAsMap1Animated: 0
+ - _EmissionBaseColorAsMapAnimated: 0
+ - _EmissionBlinkingEnabled: 0
+ - _EmissionBlinkingEnabled1: 0
+ - _EmissionBlinkingEnabledAnimated: 0
+ - _EmissionBlinkingOffset: 0
+ - _EmissionBlinkingOffset1: 0
+ - _EmissionBlinkingOffset1Animated: 0
+ - _EmissionBlinkingOffsetAnimated: 0
+ - _EmissionCenterOutEnabled: 0
+ - _EmissionCenterOutEnabled1: 0
+ - _EmissionCenterOutEnabled1Animated: 0
+ - _EmissionCenterOutEnabledAnimated: 0
+ - _EmissionCenterOutSpeed: 5
+ - _EmissionCenterOutSpeed1: 5
+ - _EmissionCenterOutSpeed1Animated: 0
+ - _EmissionCenterOutSpeedAnimated: 0
+ - _EmissionColor1Animated: 0
+ - _EmissionColorAnimated: 0
+ - _EmissionHueShift: 0
+ - _EmissionHueShift1: 0
+ - _EmissionHueShift1Animated: 0
+ - _EmissionHueShiftAnimated: 0
+ - _EmissionHueShiftEnabled: 0
+ - _EmissionHueShiftEnabled1: 0
+ - _EmissionHueShiftEnabled1Animated: 0
+ - _EmissionHueShiftEnabledAnimated: 0
+ - _EmissionMap1Animated: 0
+ - _EmissionMap1PanAnimated: 0
+ - _EmissionMap1UV: 0
+ - _EmissionMap1UVAnimated: 0
+ - _EmissionMapAnimated: 0
+ - _EmissionMapPanAnimated: 0
+ - _EmissionMapUV: 0
+ - _EmissionMapUVAnimated: 0
+ - _EmissionMask1Animated: 0
+ - _EmissionMask1PanAnimated: 0
+ - _EmissionMask1UV: 0
+ - _EmissionMask1UVAnimated: 0
+ - _EmissionMaskAnimated: 0
+ - _EmissionMaskPanAnimated: 0
+ - _EmissionMaskUV: 0
+ - _EmissionMaskUVAnimated: 0
+ - _EmissionReplace: 0
+ - _EmissionReplaceAnimated: 0
+ - _EmissionScrollingCurve1Animated: 0
+ - _EmissionScrollingCurveAnimated: 0
+ - _EmissionScrollingOffset: 0
+ - _EmissionScrollingOffset1: 0
+ - _EmissionScrollingOffset1Animated: 0
+ - _EmissionScrollingOffsetAnimated: 0
+ - _EmissionScrollingUseCurve: 0
+ - _EmissionScrollingUseCurve1: 0
+ - _EmissionScrollingUseCurve1Animated: 0
+ - _EmissionScrollingUseCurveAnimated: 0
+ - _EmissionScrollingVertexColor: 0
+ - _EmissionScrollingVertexColor1: 0
+ - _EmissionScrollingVertexColor1Animated: 0
+ - _EmissionScrollingVertexColorAnimated: 0
+ - _EmissionStrength: 0
+ - _EmissionStrength1: 0
+ - _EmissionStrength1Animated: 0
+ - _EmissionStrengthAnimated: 0
+ - _EmissiveBlink_Max: 1
+ - _EmissiveBlink_Max1: 1
+ - _EmissiveBlink_Max1Animated: 0
+ - _EmissiveBlink_MaxAnimated: 0
+ - _EmissiveBlink_Min: 0
+ - _EmissiveBlink_Min1: 0
+ - _EmissiveBlink_Min1Animated: 0
+ - _EmissiveBlink_MinAnimated: 0
+ - _EmissiveBlink_Velocity: 4
+ - _EmissiveBlink_Velocity1: 4
+ - _EmissiveBlink_Velocity1Animated: 0
+ - _EmissiveBlink_VelocityAnimated: 0
+ - _EmissiveScroll_Direction1Animated: 0
+ - _EmissiveScroll_DirectionAnimated: 0
+ - _EmissiveScroll_Interval: 20
+ - _EmissiveScroll_Interval1: 20
+ - _EmissiveScroll_Interval1Animated: 0
+ - _EmissiveScroll_IntervalAnimated: 0
+ - _EmissiveScroll_Velocity: 10
+ - _EmissiveScroll_Velocity1: 10
+ - _EmissiveScroll_Velocity1Animated: 0
+ - _EmissiveScroll_VelocityAnimated: 0
+ - _EmissiveScroll_Width: 10
+ - _EmissiveScroll_Width1: 10
+ - _EmissiveScroll_Width1Animated: 0
+ - _EmissiveScroll_WidthAnimated: 0
+ - _EnableBlurAnimated: 0
+ - _EnableBulgeAnimated: 0
+ - _EnableClearCoat: 0
+ - _EnableClearCoatAnimated: 0
+ - _EnableDissolve: 0
+ - _EnableDissolveAnimated: 0
+ - _EnableDistortion: 0
+ - _EnableDistortionAnimated: 0
+ - _EnableEmission: 0
+ - _EnableEmission1: 0
+ - _EnableEmission1Animated: 0
+ - _EnableEmissionAnimated: 0
+ - _EnableEnvironmentalRim: 0
+ - _EnableEnvironmentalRimAnimated: 0
+ - _EnableFlipbook: 0
+ - _EnableFlipbookAnimated: 0
+ - _EnableGITDEmission: 0
+ - _EnableGITDEmission1: 0
+ - _EnableGITDEmission1Animated: 0
+ - _EnableGITDEmissionAnimated: 0
+ - _EnableHoloAnimated: 0
+ - _EnableIridescenceAnimated: 0
+ - _EnableLighting: 1
+ - _EnableLightingAnimated: 0
+ - _EnableMetallic: 0
+ - _EnableMetallicAnimated: 0
+ - _EnableMirrorOptions: 0
+ - _EnableMirrorOptionsAnimated: 0
+ - _EnableMirrorTexture: 0
+ - _EnableMirrorTextureAnimated: 0
+ - _EnableRandom: 0
+ - _EnableRandomAnimated: 0
+ - _EnableRimLighting: 0
+ - _EnableRimLightingAnimated: 0
+ - _EnableSSS: 0
+ - _EnableSSSAnimated: 0
+ - _EnableScifiSpawnInAnimated: 0
+ - _EnableSpecular: 0
+ - _EnableSpecular1: 0
+ - _EnableSpecular1Animated: 0
+ - _EnableSpecularAnimated: 0
+ - _EnableTouchGlowAnimated: 0
+ - _EnableVertexGlitchAnimated: 0
+ - _EnableVideoAnimated: 0
+ - _EnableVoronoiAnimated: 0
+ - _FadeLengthAnimated: 0
+ - _FlipbookAdd: 0
+ - _FlipbookAddAnimated: 0
+ - _FlipbookAlphaControlsFinalAlpha: 0
+ - _FlipbookAlphaControlsFinalAlphaAnimated: 0
+ - _FlipbookColorAnimated: 0
+ - _FlipbookColorReplaces: 0
+ - _FlipbookColorReplacesAnimated: 0
+ - _FlipbookCurrentFrame: -1
+ - _FlipbookCurrentFrameAnimated: 0
+ - _FlipbookEmissionStrength: 0
+ - _FlipbookEmissionStrengthAnimated: 0
+ - _FlipbookFPS: 30
+ - _FlipbookFPSAnimated: 0
+ - _FlipbookIntensityControlsAlpha: 0
+ - _FlipbookIntensityControlsAlphaAnimated: 0
+ - _FlipbookMaskAnimated: 0
+ - _FlipbookMaskPanAnimated: 0
+ - _FlipbookMaskUV: 0
+ - _FlipbookMaskUVAnimated: 0
+ - _FlipbookMultiply: 0
+ - _FlipbookMultiplyAnimated: 0
+ - _FlipbookReplace: 1
+ - _FlipbookReplaceAnimated: 0
+ - _FlipbookRotation: 0
+ - _FlipbookRotationAnimated: 0
+ - _FlipbookRotationSpeed: 0
+ - _FlipbookRotationSpeedAnimated: 0
+ - _FlipbookScaleOffsetAnimated: 0
+ - _FlipbookTexArrayAnimated: 0
+ - _FlipbookTexArrayPanAnimated: 0
+ - _FlipbookTexArrayUV: 0
+ - _FlipbookTexArrayUVAnimated: 0
+ - _FlipbookTiled: 0
+ - _FlipbookTiledAnimated: 0
+ - _FlipbookTotalFrames: 1
+ - _FlipbookTotalFramesAnimated: 0
+ - _ForceOpaque: 0
+ - _ForceOpaqueAnimated: 0
+ - _ForgotToLockMaterial: 1
+ - _GIEmissionMultiplier: 1
+ - _GITDEMaxEmissionMultiplier: 0
+ - _GITDEMaxEmissionMultiplier1: 0
+ - _GITDEMaxEmissionMultiplier1Animated: 0
+ - _GITDEMaxEmissionMultiplierAnimated: 0
+ - _GITDEMaxLight: 1
+ - _GITDEMaxLight1: 1
+ - _GITDEMaxLight1Animated: 0
+ - _GITDEMaxLightAnimated: 0
+ - _GITDEMinEmissionMultiplier: 1
+ - _GITDEMinEmissionMultiplier1: 1
+ - _GITDEMinEmissionMultiplier1Animated: 0
+ - _GITDEMinEmissionMultiplierAnimated: 0
+ - _GITDEMinLight: 0
+ - _GITDEMinLight1: 0
+ - _GITDEMinLight1Animated: 0
+ - _GITDEMinLightAnimated: 0
+ - _GITDEWorldOrMesh: 0
+ - _GITDEWorldOrMesh1: 0
+ - _GITDEWorldOrMesh1Animated: 0
+ - _GITDEWorldOrMeshAnimated: 0
+ - _GlitterAngleRange: 90
+ - _GlitterAngleRangeAnimated: 0
+ - _GlitterBias: 0.8
+ - _GlitterBiasAnimated: 0
+ - _GlitterBlendType: 0
+ - _GlitterBlendTypeAnimated: 0
+ - _GlitterBrightness: 3
+ - _GlitterBrightnessAnimated: 0
+ - _GlitterCenterSize: 0.08
+ - _GlitterCenterSizeAnimated: 0
+ - _GlitterColorAnimated: 0
+ - _GlitterColorMapAnimated: 0
+ - _GlitterColorMapPanAnimated: 0
+ - _GlitterColorMapUV: 0
+ - _GlitterColorMapUVAnimated: 0
+ - _GlitterContrast: 300
+ - _GlitterContrastAnimated: 0
+ - _GlitterEnable: 0
+ - _GlitterEnableAnimated: 0
+ - _GlitterFrequency: 300
+ - _GlitterFrequencyAnimated: 0
+ - _GlitterJaggyFix: 0
+ - _GlitterJaggyFixAnimated: 0
+ - _GlitterJitter: 1
+ - _GlitterJitterAnimated: 0
+ - _GlitterMaskAnimated: 0
+ - _GlitterMaskPanAnimated: 0
+ - _GlitterMaskUV: 0
+ - _GlitterMaskUVAnimated: 0
+ - _GlitterMinBrightness: 0
+ - _GlitterMinBrightnessAnimated: 0
+ - _GlitterMinMaxBrightnessAnimated: 0
+ - _GlitterMinMaxSaturationAnimated: 0
+ - _GlitterMinMaxSizeAnimated: 0
+ - _GlitterMode: 0
+ - _GlitterModeAnimated: 0
+ - _GlitterPanAnimated: 0
+ - _GlitterRandomColors: 0
+ - _GlitterRandomColorsAnimated: 0
+ - _GlitterRandomRotation: 0
+ - _GlitterRandomRotationAnimated: 0
+ - _GlitterRandomSize: 0
+ - _GlitterRandomSizeAnimated: 0
+ - _GlitterShape: 0
+ - _GlitterShapeAnimated: 0
+ - _GlitterSize: 0.3
+ - _GlitterSizeAnimated: 0
+ - _GlitterSpeed: 10
+ - _GlitterSpeedAnimated: 0
+ - _GlitterTextureAnimated: 0
+ - _GlitterTexturePanAnimated: 0
+ - _GlitterTextureRotation: 0
+ - _GlitterTextureRotationAnimated: 0
+ - _GlitterUseSurfaceColor: 0
+ - _GlitterUseSurfaceColorAnimated: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0
+ - _GlossyReflections: 1
+ - _GrabBlurDirectionsAnimated: 0
+ - _GrabBlurDistanceAnimated: 0
+ - _GrabBlurQualityAnimated: 0
+ - _GrabDstBlendAnimated: 0
+ - _GrabPassBlendFactorAnimated: 0
+ - _GrabPassUseAlphaAnimated: 0
+ - _GrabSrcBlendAnimated: 0
+ - _GreenColorAnimated: 0
+ - _GreenTextureAnimated: 0
+ - _HelpBoxHideLocking: 0
+ - _HelpBoxLocking: 0
+ - _HoloAlphaMapAnimated: 0
+ - _HoloCoordinateSpaceAnimated: 0
+ - _HoloDirectionAnimated: 0
+ - _HoloFresnelAlphaAnimated: 0
+ - _HoloLineDensityAnimated: 0
+ - _HoloRimSharpnessAnimated: 0
+ - _HoloRimWidthAnimated: 0
+ - _HoloScrollSpeedAnimated: 0
+ - _IgnoreFog: 0
+ - _IgnoreFogAnimated: 0
+ - _InvertSmoothness: 0
+ - _InvertSmoothnessAnimated: 0
+ - _IridescenceAddBlendAnimated: 0
+ - _IridescenceEmissionStrengthAnimated: 0
+ - _IridescenceIntensityAnimated: 0
+ - _IridescenceMaskAnimated: 0
+ - _IridescenceMaskUVAnimated: 0
+ - _IridescenceMultiplyBlendAnimated: 0
+ - _IridescenceNormalIntensityAnimated: 0
+ - _IridescenceNormalMapAnimated: 0
+ - _IridescenceNormalSelectionAnimated: 0
+ - _IridescenceNormalToggleAnimated: 0
+ - _IridescenceNormalUVAnimated: 0
+ - _IridescenceRampAnimated: 0
+ - _IridescenceReplaceBlendAnimated: 0
+ - _IridescenceTimeAnimated: 0
+ - _LightingAOTexAnimated: 0
+ - _LightingAOTexPanAnimated: 0
+ - _LightingAOTexUV: 0
+ - _LightingAOTexUVAnimated: 0
+ - _LightingAdditiveDetailStrength: 1
+ - _LightingAdditiveDetailStrengthAnimated: 0
+ - _LightingAdditiveGradientEnd: 0.5
+ - _LightingAdditiveGradientEndAnimated: 0
+ - _LightingAdditiveGradientStart: 0
+ - _LightingAdditiveGradientStartAnimated: 0
+ - _LightingAdditiveLimitIntensity: 0
+ - _LightingAdditiveLimitIntensityAnimated: 0
+ - _LightingAdditiveMaxIntensity: 1
+ - _LightingAdditiveMaxIntensityAnimated: 0
+ - _LightingAdditivePassthrough: 0.5
+ - _LightingAdditivePassthroughAnimated: 0
+ - _LightingAdditiveType: 1
+ - _LightingAdditiveTypeAnimated: 0
+ - _LightingDetailShadowsAnimated: 0
+ - _LightingDetailShadowsEnabled: 0
+ - _LightingDetailShadowsEnabledAnimated: 0
+ - _LightingDetailShadowsPanAnimated: 0
+ - _LightingDetailShadowsUV: 0
+ - _LightingDetailShadowsUVAnimated: 0
+ - _LightingDetailStrength: 1
+ - _LightingDetailStrengthAnimated: 0
+ - _LightingDirectColorMode: 0
+ - _LightingDirectColorModeAnimated: 0
+ - _LightingEnableAO: 0
+ - _LightingEnableAOAnimated: 0
+ - _LightingEnableHSL: 0
+ - _LightingEnableHSLAnimated: 0
+ - _LightingGradientEnd: 0.5
+ - _LightingGradientEndAnimated: 0
+ - _LightingGradientStart: 0
+ - _LightingGradientStartAnimated: 0
+ - _LightingHSLIntensity: 1
+ - _LightingHSLIntensityAnimated: 0
+ - _LightingIgnoreAmbientColor: 0
+ - _LightingIgnoreAmbientColorAnimated: 0
+ - _LightingIndirectColorMode: 0
+ - _LightingIndirectColorModeAnimated: 0
+ - _LightingMinLightBrightness: 0
+ - _LightingMinLightBrightnessAnimated: 0
+ - _LightingMinShadowBrightnessRatio: 0
+ - _LightingMinShadowBrightnessRatioAnimated: 0
+ - _LightingMode: 0
+ - _LightingModeAnimated: 0
+ - _LightingMonochromatic: 0
+ - _LightingMonochromaticAnimated: 0
+ - _LightingOnlyUnityShadows: 0
+ - _LightingOnlyUnityShadowsAnimated: 0
+ - _LightingRampType: 0
+ - _LightingRampTypeAnimated: 0
+ - _LightingShadingEnabled: 0
+ - _LightingShadingEnabledAnimated: 0
+ - _LightingShadowColorAnimated: 0
+ - _LightingShadowHue: 0.5
+ - _LightingShadowHueAnimated: 0
+ - _LightingShadowLightness: 0.5
+ - _LightingShadowLightnessAnimated: 0
+ - _LightingShadowMaskAnimated: 0
+ - _LightingShadowMaskPanAnimated: 0
+ - _LightingShadowMaskUV: 0
+ - _LightingShadowMaskUVAnimated: 0
+ - _LightingShadowSaturation: 0.5
+ - _LightingShadowSaturationAnimated: 0
+ - _LightingShadowTextureAnimated: 0
+ - _LightingShadowTexturePanAnimated: 0
+ - _LightingShadowTextureUV: 0
+ - _LightingShadowTextureUVAnimated: 0
+ - _LightingStandardSmoothness: 0
+ - _LightingStandardSmoothnessAnimated: 0
+ - _LightingUncapped: 0
+ - _LightingUncappedAnimated: 0
+ - _LineColorAnimated: 0
+ - _LineWidth: 0
+ - _LineWidthAnimated: 0
+ - _LockTooltip: 0
+ - _MainAlphaToCoverage: 0
+ - _MainAlphaToCoverageAnimated: 0
+ - _MainDistanceFadeAnimated: 0
+ - _MainEmissionStrength: 0
+ - _MainEmissionStrengthAnimated: 0
+ - _MainFadeTextureAnimated: 0
+ - _MainFadeTexturePanAnimated: 0
+ - _MainFadeTextureUV: 0
+ - _MainFadeTextureUVAnimated: 0
+ - _MainHueShift: 0
+ - _MainHueShiftAnimated: 0
+ - _MainHueShiftMaskAnimated: 0
+ - _MainHueShiftMaskPanAnimated: 0
+ - _MainHueShiftMaskUV: 0
+ - _MainHueShiftMaskUVAnimated: 0
+ - _MainHueShiftReplace: 1
+ - _MainHueShiftReplaceAnimated: 0
+ - _MainHueShiftSpeed: 0
+ - _MainHueShiftSpeedAnimated: 0
+ - _MainHueShiftToggle: 0
+ - _MainHueShiftToggleAnimated: 0
+ - _MainMinAlpha: 0
+ - _MainMinAlphaAnimated: 0
+ - _MainMipScale: 0.25
+ - _MainMipScaleAnimated: 0
+ - _MainShadowClipMod: 0
+ - _MainShadowClipModAnimated: 0
+ - _MainTexAnimated: 0
+ - _MainTexPanAnimated: 0
+ - _MainTex_STAnimated: 0
+ - _MainTextureUV: 0
+ - _MainTextureUVAnimated: 0
+ - _MainUseVertexColorAlpha: 0
+ - _MainUseVertexColorAlphaAnimated: 0
+ - _MainVertexColoring: 0
+ - _MainVertexColoringAnimated: 0
+ - _Matcap2Add: 0
+ - _Matcap2AddAnimated: 0
+ - _Matcap2Animated: 0
+ - _Matcap2Border: 0.43
+ - _Matcap2BorderAnimated: 0
+ - _Matcap2ColorAnimated: 0
+ - _Matcap2EmissionStrength: 0
+ - _Matcap2EmissionStrengthAnimated: 0
+ - _Matcap2Enable: 0
+ - _Matcap2EnableAnimated: 0
+ - _Matcap2Intensity: 1
+ - _Matcap2IntensityAnimated: 0
+ - _Matcap2LightMask: 0
+ - _Matcap2LightMaskAnimated: 0
+ - _Matcap2MaskAnimated: 0
+ - _Matcap2MaskInvert: 0
+ - _Matcap2MaskInvertAnimated: 0
+ - _Matcap2MaskPanAnimated: 0
+ - _Matcap2MaskUV: 0
+ - _Matcap2MaskUVAnimated: 0
+ - _Matcap2Multiply: 0
+ - _Matcap2MultiplyAnimated: 0
+ - _Matcap2Normal: 1
+ - _Matcap2NormalAnimated: 0
+ - _Matcap2Replace: 0
+ - _Matcap2ReplaceAnimated: 0
+ - _MatcapAdd: 0
+ - _MatcapAddAnimated: 0
+ - _MatcapAnimated: 0
+ - _MatcapBorder: 0.43
+ - _MatcapBorderAnimated: 0
+ - _MatcapColorAnimated: 0
+ - _MatcapEmissionStrength: 0
+ - _MatcapEmissionStrengthAnimated: 0
+ - _MatcapEnable: 0
+ - _MatcapEnableAnimated: 0
+ - _MatcapIntensity: 1
+ - _MatcapIntensityAnimated: 0
+ - _MatcapLightMask: 0
+ - _MatcapLightMaskAnimated: 0
+ - _MatcapMaskAnimated: 0
+ - _MatcapMaskInvert: 0
+ - _MatcapMaskInvertAnimated: 0
+ - _MatcapMaskPanAnimated: 0
+ - _MatcapMaskUV: 0
+ - _MatcapMaskUVAnimated: 0
+ - _MatcapMultiply: 0
+ - _MatcapMultiplyAnimated: 0
+ - _MatcapNormal: 1
+ - _MatcapNormalAnimated: 0
+ - _MatcapReplace: 1
+ - _MatcapReplaceAnimated: 0
+ - _MetalReflectionTintAnimated: 0
+ - _Metallic: 0
+ - _MetallicAnimated: 0
+ - _MetallicMaskAnimated: 0
+ - _MetallicMaskPanAnimated: 0
+ - _MetallicMaskUV: 0
+ - _MetallicMaskUVAnimated: 0
+ - _MetallicTintMapAnimated: 0
+ - _MetallicTintMapPanAnimated: 0
+ - _MetallicTintMapUV: 0
+ - _MetallicTintMapUVAnimated: 0
+ - _Mirror: 0
+ - _MirrorAnimated: 0
+ - _MirrorTextureAnimated: 0
+ - _MirrorTexturePanAnimated: 0
+ - _MirrorTextureUV: 0
+ - _MirrorTextureUVAnimated: 0
+ - _Mode: 0
+ - _ModelAngleMax: 90
+ - _ModelAngleMaxAnimated: 0
+ - _ModelAngleMin: 45
+ - _ModelAngleMinAnimated: 0
+ - _OcclusionStrength: 1
+ - _OffsetFactor: 0
+ - _OffsetFactorAnimated: 0
+ - _OffsetUnits: 0
+ - _OffsetUnitsAnimated: 0
+ - _OutlineCull: 1
+ - _OutlineCullAnimated: 0
+ - _OutlineDropShadowOffsetAnimated: 0
+ - _OutlineEmission: 0
+ - _OutlineEmissionAnimated: 0
+ - _OutlineFadeDistanceAnimated: 0
+ - _OutlineFixedSize: 0
+ - _OutlineFixedSizeAnimated: 0
+ - _OutlineLit: 1
+ - _OutlineLitAnimated: 0
+ - _OutlineMaskAnimated: 0
+ - _OutlineMaskUV: 0
+ - _OutlineMode: 0
+ - _OutlineModeAnimated: 0
+ - _OutlineOffsetFactor: 0
+ - _OutlineOffsetUnits: 0
+ - _OutlinePersonaDirectionAnimated: 0
+ - _OutlineRimLightBlend: 0
+ - _OutlineRimLightBlendAnimated: 0
+ - _OutlineShadowStrength: 1
+ - _OutlineShadowStrengthAnimated: 0
+ - _OutlineStencilCompareFunction: 8
+ - _OutlineStencilCompareFunctionAnimated: 0
+ - _OutlineStencilFailOp: 0
+ - _OutlineStencilFailOpAnimated: 0
+ - _OutlineStencilPassOp: 0
+ - _OutlineStencilPassOpAnimated: 0
+ - _OutlineStencilReadMask: 255
+ - _OutlineStencilReadMaskAnimated: 0
+ - _OutlineStencilRef: 0
+ - _OutlineStencilRefAnimated: 0
+ - _OutlineStencilWriteMask: 255
+ - _OutlineStencilWriteMaskAnimated: 0
+ - _OutlineStencilZFailOp: 0
+ - _OutlineStencilZFailOpAnimated: 0
+ - _OutlineTextureAnimated: 0
+ - _OutlineTexturePanAnimated: 0
+ - _OutlineTextureUV: 0
+ - _OutlineTintMix: 0
+ - _OutlineTintMixAnimated: 0
+ - _OutlineUseVertexColors: 0
+ - _OutlineUseVertexColorsAnimated: 0
+ - _PanoBlend: 0
+ - _PanoBlendAnimated: 0
+ - _PanoCubeMapAnimated: 0
+ - _PanoCubeMapToggle: 0
+ - _PanoCubeMapToggleAnimated: 0
+ - _PanoEmission: 0
+ - _PanoEmissionAnimated: 0
+ - _PanoInfiniteStereoToggle: 0
+ - _PanoInfiniteStereoToggleAnimated: 0
+ - _PanoMaskAnimated: 0
+ - _PanoMaskPanAnimated: 0
+ - _PanoMaskUV: 0
+ - _PanoMaskUVAnimated: 0
+ - _PanoToggle: 0
+ - _PanoToggleAnimated: 0
+ - _PanosphereColorAnimated: 0
+ - _PanospherePanAnimated: 0
+ - _PanosphereTextureAnimated: 0
+ - _Parallax: 0.02
+ - _ParallaxBias: 0.42
+ - _ParallaxBiasAnimated: 0
+ - _ParallaxHeightMapAnimated: 0
+ - _ParallaxHeightMapEnabled: 0
+ - _ParallaxHeightMapEnabledAnimated: 0
+ - _ParallaxHeightMapMaskAnimated: 0
+ - _ParallaxHeightMapMaskPanAnimated: 0
+ - _ParallaxHeightMapMaskUV: 0
+ - _ParallaxHeightMapMaskUVAnimated: 0
+ - _ParallaxHeightMapPanAnimated: 0
+ - _ParallaxInternalHeightFromAlpha: 0
+ - _ParallaxInternalHeightFromAlphaAnimated: 0
+ - _ParallaxInternalHeightmapMode: 0
+ - _ParallaxInternalHeightmapModeAnimated: 0
+ - _ParallaxInternalIterations: 1
+ - _ParallaxInternalIterationsAnimated: 0
+ - _ParallaxInternalMapAnimated: 0
+ - _ParallaxInternalMapEnabled: 0
+ - _ParallaxInternalMapEnabledAnimated: 0
+ - _ParallaxInternalMapMaskAnimated: 0
+ - _ParallaxInternalMapMaskPanAnimated: 0
+ - _ParallaxInternalMapMaskUV: 0
+ - _ParallaxInternalMapMaskUVAnimated: 0
+ - _ParallaxInternalMaxColorAnimated: 0
+ - _ParallaxInternalMaxDepth: 1
+ - _ParallaxInternalMaxDepthAnimated: 0
+ - _ParallaxInternalMaxFade: 1
+ - _ParallaxInternalMaxFadeAnimated: 0
+ - _ParallaxInternalMinColorAnimated: 0
+ - _ParallaxInternalMinDepth: 0
+ - _ParallaxInternalMinDepthAnimated: 0
+ - _ParallaxInternalMinFade: 0
+ - _ParallaxInternalMinFadeAnimated: 0
+ - _ParallaxInternalPanDepthSpeedAnimated: 0
+ - _ParallaxInternalPanSpeedAnimated: 0
+ - _ParallaxMap: 0
+ - _ParallaxMapAnimated: 0
+ - _ParallaxStrength: 0
+ - _ParallaxStrengthAnimated: 0
+ - _ParallaxUV: 0
+ - _ParallaxUVAnimated: 0
+ - _RGBBlendMultiplicative: 0
+ - _RGBBlendMultiplicativeAnimated: 0
+ - _RGBBluePanningAnimated: 0
+ - _RGBBlue_UV: 0
+ - _RGBBlue_UVAnimated: 0
+ - _RGBGreenPanningAnimated: 0
+ - _RGBGreen_UV: 0
+ - _RGBGreen_UVAnimated: 0
+ - _RGBMaskAnimated: 0
+ - _RGBMaskEnabled: 0
+ - _RGBMaskEnabledAnimated: 0
+ - _RGBMaskPanningAnimated: 0
+ - _RGBMaskUV: 0
+ - _RGBMaskUVAnimated: 0
+ - _RGBNormalBlend: 0
+ - _RGBNormalBlendAnimated: 0
+ - _RGBRedPanningAnimated: 0
+ - _RGBRed_UV: 0
+ - _RGBRed_UVAnimated: 0
+ - _RGBUseVertexColors: 0
+ - _RGBUseVertexColorsAnimated: 0
+ - _RedColorAnimated: 0
+ - _RedTexureAnimated: 0
+ - _RefractionChromaticAberattionAnimated: 0
+ - _RefractionEnabledAnimated: 0
+ - _RefractionIndexAnimated: 0
+ - _RgbNormalBScale: 0
+ - _RgbNormalBUV: 0
+ - _RgbNormalGScale: 0
+ - _RgbNormalGUV: 0
+ - _RgbNormalRScale: 0
+ - _RgbNormalRUV: 0
+ - _RgbNormalsEnabled: 0
+ - _RimBrighten: 0
+ - _RimBrightenAnimated: 0
+ - _RimEnviroBlur: 0.7
+ - _RimEnviroBlurAnimated: 0
+ - _RimEnviroIntensity: 1
+ - _RimEnviroIntensityAnimated: 0
+ - _RimEnviroMaskAnimated: 0
+ - _RimEnviroMaskPanAnimated: 0
+ - _RimEnviroMaskUV: 0
+ - _RimEnviroMaskUVAnimated: 0
+ - _RimEnviroMinBrightness: 0
+ - _RimEnviroMinBrightnessAnimated: 0
+ - _RimEnviroSharpness: 0
+ - _RimEnviroSharpnessAnimated: 0
+ - _RimEnviroWidth: 0.45
+ - _RimEnviroWidthAnimated: 0
+ - _RimLightColorAnimated: 0
+ - _RimLightColorBias: 0
+ - _RimLightColorBiasAnimated: 0
+ - _RimLightNormal: 1
+ - _RimLightNormalAnimated: 0
+ - _RimLightingInvert: 0
+ - _RimLightingInvertAnimated: 0
+ - _RimMaskAnimated: 0
+ - _RimMaskPanAnimated: 0
+ - _RimMaskUV: 0
+ - _RimMaskUVAnimated: 0
+ - _RimSharpness: 0.25
+ - _RimSharpnessAnimated: 0
+ - _RimStrength: 0
+ - _RimStrengthAnimated: 0
+ - _RimTexAnimated: 0
+ - _RimTexPanAnimated: 0
+ - _RimTexUV: 0
+ - _RimTexUVAnimated: 0
+ - _RimWidth: 0.8
+ - _RimWidthAnimated: 0
+ - _RimWidthNoiseStrength: 0.1
+ - _RimWidthNoiseStrengthAnimated: 0
+ - _RimWidthNoiseTextureAnimated: 0
+ - _RimWidthNoiseTexturePanAnimated: 0
+ - _RimWidthNoiseTextureUV: 0
+ - _RimWidthNoiseTextureUVAnimated: 0
+ - _SSSColorAnimated: 0
+ - _SSSDistortion: 1
+ - _SSSDistortionAnimated: 0
+ - _SSSPower: 5
+ - _SSSPowerAnimated: 0
+ - _SSSSCale: 0.25
+ - _SSSSCaleAnimated: 0
+ - _SSSThicknessMapAnimated: 0
+ - _SSSThicknessMapPanAnimated: 0
+ - _SSSThicknessMapUV: 0
+ - _SSSThicknessMapUVAnimated: 0
+ - _SSSThicknessMod: 0
+ - _SSSThicknessModAnimated: 0
+ - _SampleWorld: 0
+ - _SampleWorldAnimated: 0
+ - _Saturation: 0
+ - _SaturationAnimated: 0
+ - _ScrollingEmission: 0
+ - _ScrollingEmission1: 0
+ - _ScrollingEmission1Animated: 0
+ - _ScrollingEmissionAnimated: 0
+ - _ShaderOptimizerEnabled: 1
+ - _ShadowMix: 0
+ - _ShadowMixAnimated: 0
+ - _ShadowMixThreshold: 0.5
+ - _ShadowMixThresholdAnimated: 0
+ - _ShadowMixWidthMod: 0.5
+ - _ShadowMixWidthModAnimated: 0
+ - _ShadowOffset: 0
+ - _ShadowOffsetAnimated: 0
+ - _ShadowStrength: 1
+ - _ShadowStrengthAnimated: 0
+ - _Smoothness: 0
+ - _SmoothnessAnimated: 0
+ - _SmoothnessFrom: 1
+ - _SmoothnessFrom1: 1
+ - _SmoothnessFrom1Animated: 0
+ - _SmoothnessFromAnimated: 0
+ - _SmoothnessMaskAnimated: 0
+ - _SmoothnessMaskPanAnimated: 0
+ - _SmoothnessMaskUV: 0
+ - _SmoothnessMaskUVAnimated: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpawnInAlphaAnimated: 0
+ - _SpawnInEmissionColorAnimated: 0
+ - _SpawnInEmissionOffsetAnimated: 0
+ - _SpawnInGradientFinishAnimated: 0
+ - _SpawnInGradientStartAnimated: 0
+ - _SpawnInNoiseAnimated: 0
+ - _SpawnInNoiseIntensityAnimated: 0
+ - _SpawnInVertOffsetAnimated: 0
+ - _SpawnInVertOffsetOffsetAnimated: 0
+ - _Spec1Offset: 0
+ - _Spec1Offset1: 0
+ - _Spec1Offset1Animated: 0
+ - _Spec1OffsetAnimated: 0
+ - _Spec2Smoothness: 0
+ - _Spec2Smoothness1: 0
+ - _Spec2Smoothness1Animated: 0
+ - _Spec2SmoothnessAnimated: 0
+ - _SpecWhatTangent: 0
+ - _SpecWhatTangent1: 0
+ - _SpecWhatTangent1Animated: 0
+ - _SpecWhatTangentAnimated: 0
+ - _SpecularAnisoJitterMacro1Animated: 0
+ - _SpecularAnisoJitterMacro1PanAnimated: 0
+ - _SpecularAnisoJitterMacro1UV: 0
+ - _SpecularAnisoJitterMacro1UVAnimated: 0
+ - _SpecularAnisoJitterMacroAnimated: 0
+ - _SpecularAnisoJitterMacroMultiplier: 0
+ - _SpecularAnisoJitterMacroMultiplier1: 0
+ - _SpecularAnisoJitterMacroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMacroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMacroPanAnimated: 0
+ - _SpecularAnisoJitterMacroUV: 0
+ - _SpecularAnisoJitterMacroUVAnimated: 0
+ - _SpecularAnisoJitterMicro1Animated: 0
+ - _SpecularAnisoJitterMicro1PanAnimated: 0
+ - _SpecularAnisoJitterMicro1UV: 0
+ - _SpecularAnisoJitterMicro1UVAnimated: 0
+ - _SpecularAnisoJitterMicroAnimated: 0
+ - _SpecularAnisoJitterMicroMultiplier: 0
+ - _SpecularAnisoJitterMicroMultiplier1: 0
+ - _SpecularAnisoJitterMicroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMicroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMicroPanAnimated: 0
+ - _SpecularAnisoJitterMicroUV: 0
+ - _SpecularAnisoJitterMicroUVAnimated: 0
+ - _SpecularAnisoJitterMirrored: 0
+ - _SpecularAnisoJitterMirrored1: 0
+ - _SpecularAnisoJitterMirrored1Animated: 0
+ - _SpecularAnisoJitterMirroredAnimated: 0
+ - _SpecularHighlights: 1
+ - _SpecularInvertSmoothness: 0
+ - _SpecularInvertSmoothness1: 0
+ - _SpecularInvertSmoothness1Animated: 0
+ - _SpecularInvertSmoothnessAnimated: 0
+ - _SpecularMap1Animated: 0
+ - _SpecularMap1PanAnimated: 0
+ - _SpecularMap1UV: 0
+ - _SpecularMap1UVAnimated: 0
+ - _SpecularMapAnimated: 0
+ - _SpecularMapPanAnimated: 0
+ - _SpecularMapUV: 0
+ - _SpecularMapUVAnimated: 0
+ - _SpecularMask1Animated: 0
+ - _SpecularMask1PanAnimated: 0
+ - _SpecularMask1UV: 0
+ - _SpecularMask1UVAnimated: 0
+ - _SpecularMaskAnimated: 0
+ - _SpecularMaskPanAnimated: 0
+ - _SpecularMaskUV: 0
+ - _SpecularMaskUVAnimated: 0
+ - _SpecularMetallic: 0
+ - _SpecularMetallic1: 0
+ - _SpecularMetallic1Animated: 0
+ - _SpecularMetallicAnimated: 0
+ - _SpecularMetallicMap1UV: 0
+ - _SpecularMetallicMapUV: 0
+ - _SpecularNormal: 1
+ - _SpecularNormal1: 1
+ - _SpecularNormal1Animated: 0
+ - _SpecularNormalAnimated: 0
+ - _SpecularSmoothness: 1
+ - _SpecularSmoothness1: 0.75
+ - _SpecularSmoothness1Animated: 0
+ - _SpecularSmoothnessAnimated: 0
+ - _SpecularTint1Animated: 0
+ - _SpecularTintAnimated: 0
+ - _SpecularToonEnd: 1
+ - _SpecularToonEnd1: 1
+ - _SpecularToonEnd1Animated: 0
+ - _SpecularToonEndAnimated: 0
+ - _SpecularToonInnerOuter1Animated: 0
+ - _SpecularToonInnerOuterAnimated: 0
+ - _SpecularToonStart: 0.95
+ - _SpecularToonStart1: 0.95
+ - _SpecularToonStart1Animated: 0
+ - _SpecularToonStartAnimated: 0
+ - _SpecularType: 1
+ - _SpecularType1: 1
+ - _SpecularType1Animated: 0
+ - _SpecularTypeAnimated: 0
+ - _SrcBlend: 1
+ - _SrcBlendAnimated: 0
+ - _StencilCompareFunction: 8
+ - _StencilCompareFunctionAnimated: 0
+ - _StencilFailOp: 0
+ - _StencilFailOpAnimated: 0
+ - _StencilPassOp: 0
+ - _StencilPassOpAnimated: 0
+ - _StencilReadMask: 255
+ - _StencilReadMaskAnimated: 0
+ - _StencilRef: 0
+ - _StencilRefAnimated: 0
+ - _StencilWriteMask: 255
+ - _StencilWriteMaskAnimated: 0
+ - _StencilZFailOp: 0
+ - _StencilZFailOpAnimated: 0
+ - _TextEnabled: 0
+ - _TextEnabledAnimated: 0
+ - _TextFPSColorAnimated: 0
+ - _TextFPSEmissionStrength: 0
+ - _TextFPSEmissionStrengthAnimated: 0
+ - _TextFPSEnabled: 0
+ - _TextFPSEnabledAnimated: 0
+ - _TextFPSOffsetAnimated: 0
+ - _TextFPSPaddingAnimated: 0
+ - _TextFPSRotation: 0
+ - _TextFPSRotationAnimated: 0
+ - _TextFPSScaleAnimated: 0
+ - _TextFPSUV: 0
+ - _TextFPSUVAnimated: 0
+ - _TextGlyphsAnimated: 0
+ - _TextPixelRange: 4
+ - _TextPixelRangeAnimated: 0
+ - _TextPositionColorAnimated: 0
+ - _TextPositionEmissionStrength: 0
+ - _TextPositionEmissionStrengthAnimated: 0
+ - _TextPositionEnabled: 0
+ - _TextPositionEnabledAnimated: 0
+ - _TextPositionOffsetAnimated: 0
+ - _TextPositionPaddingAnimated: 0
+ - _TextPositionRotation: 0
+ - _TextPositionRotationAnimated: 0
+ - _TextPositionScaleAnimated: 0
+ - _TextPositionUV: 0
+ - _TextPositionUVAnimated: 0
+ - _TextTimeColorAnimated: 0
+ - _TextTimeEmissionStrength: 0
+ - _TextTimeEmissionStrengthAnimated: 0
+ - _TextTimeEnabled: 0
+ - _TextTimeEnabledAnimated: 0
+ - _TextTimeOffsetAnimated: 0
+ - _TextTimePaddingAnimated: 0
+ - _TextTimeRotation: 0
+ - _TextTimeRotationAnimated: 0
+ - _TextTimeScaleAnimated: 0
+ - _TextTimeUV: 0
+ - _TextTimeUVAnimated: 0
+ - _ToonRampAnimated: 0
+ - _UVSec: 0
+ - _UseShadowTexture: 0
+ - _UseShadowTextureAnimated: 0
+ - _VertexGlitchFrequencyAnimated: 0
+ - _VertexGlitchStrengthAnimated: 0
+ - _VertexGlitchThresholdAnimated: 0
+ - _VertexManipulationHeight: 0
+ - _VertexManipulationHeightAnimated: 0
+ - _VertexManipulationHeightBias: 0
+ - _VertexManipulationHeightBiasAnimated: 0
+ - _VertexManipulationHeightMaskAnimated: 0
+ - _VertexManipulationHeightPanAnimated: 0
+ - _VertexManipulationHeightUV: 0
+ - _VertexManipulationHeightUVAnimated: 0
+ - _VertexManipulationLocalRotationAnimated: 0
+ - _VertexManipulationLocalScaleAnimated: 0
+ - _VertexManipulationLocalTranslationAnimated: 0
+ - _VertexManipulationWorldTranslationAnimated: 0
+ - _VertexManipulationsEnabled: 0
+ - _VertexRoundingDivision: 500
+ - _VertexRoundingDivisionAnimated: 0
+ - _VertexRoundingEnabled: 0
+ - _VertexRoundingEnabledAnimated: 0
+ - _VertexUnwrap: 0
+ - _VertexUnwrapAnimated: 0
+ - _VideoBacklightAnimated: 0
+ - _VideoCRTPixelEnergizedTimeAnimated: 0
+ - _VideoCRTRefreshRateAnimated: 0
+ - _VideoContrastAnimated: 0
+ - _VideoDebugTextureAnimated: 0
+ - _VideoEnableDebugAnimated: 0
+ - _VideoEnableVideoPlayerAnimated: 0
+ - _VideoGameboyRampAnimated: 0
+ - _VideoMaskPanningAnimated: 0
+ - _VideoMaskTextureAnimated: 0
+ - _VideoOffsetAnimated: 0
+ - _VideoPanningAnimated: 0
+ - _VideoPixelTextureAnimated: 0
+ - _VideoPixelateToResolutionAnimated: 0
+ - _VideoRepeatVideoTextureAnimated: 0
+ - _VideoResolutionAnimated: 0
+ - _VideoSaturationAnimated: 0
+ - _VideoTilingAnimated: 0
+ - _VideoTypeAnimated: 0
+ - _VideoUVNumberAnimated: 0
+ - _VoronoiBlendAnimated: 0
+ - _VoronoiColor0Animated: 0
+ - _VoronoiColor1Animated: 0
+ - _VoronoiEffectsMaterialAlphaAnimated: 0
+ - _VoronoiEmission0Animated: 0
+ - _VoronoiEmission1Animated: 0
+ - _VoronoiEnableRandomCellColorAnimated: 0
+ - _VoronoiGradientAnimated: 0
+ - _VoronoiMaskAnimated: 0
+ - _VoronoiMaskPanAnimated: 0
+ - _VoronoiMaskUVAnimated: 0
+ - _VoronoiNoiseAnimated: 0
+ - _VoronoiNoiseIntensityAnimated: 0
+ - _VoronoiNoisePanAnimated: 0
+ - _VoronoiNoiseUVAnimated: 0
+ - _VoronoiRandomMinMaxBrightnessAnimated: 0
+ - _VoronoiRandomMinMaxSaturationAnimated: 0
+ - _VoronoiScaleAnimated: 0
+ - _VoronoiSpaceAnimated: 0
+ - _VoronoiSpeedAnimated: 0
+ - _VoronoiTypeAnimated: 0
+ - _ZTest: 4
+ - _ZTestAnimated: 0
+ - _ZWrite: 1
+ - _ZWriteAnimated: 0
+ - _commentIfZero_EnableOutlinePass: 0
+ - _commentIfZero_LightingAdditiveEnable: 1
+ - _commentIfZero_LightingAdditiveEnableAnimated: 0
+ - _glitterFrequencyLinearEmissive: 20
+ - _glitterFrequencyLinearEmissiveAnimated: 0
+ - footer_discord: 0
+ - footer_github: 0
+ - footer_patreon: 0
+ - footer_twitter: 0
+ - footer_youtube: 0
+ - m_LockingInfo: 0
+ - m_ParallaxMap: 0
+ - m_Special_Effects: 0
+ - m_end_Alpha: 0
+ - m_end_BonusSliders: 0
+ - m_end_CenterOutEmission: 0
+ - m_end_CenterOutEmission1: 0
+ - m_end_DecalSection: 0
+ - m_end_DetailOptions: 0
+ - m_end_Lighting: 0
+ - m_end_MainHueShift: 0
+ - m_end_MainVertexColors: 0
+ - m_end_Matcap2: 0
+ - m_end_Metallic: 0
+ - m_end_OutlineStencil: 0
+ - m_end_RGBMask: 0
+ - m_end_ShadowMix: 0
+ - m_end_StencilPassOptions: 0
+ - m_end_Text: 0
+ - m_end_TextFPS: 0
+ - m_end_TextInstanceTime: 0
+ - m_end_TextPosition: 0
+ - m_end_ambientOcclusion: 0
+ - m_end_angularFade: 0
+ - m_end_backFace: 0
+ - m_end_bakedLighting: 0
+ - m_end_blending: 0
+ - m_end_blinkingEmissionOptions: 0
+ - m_end_blinkingEmissionOptions1: 0
+ - m_end_clearCoat: 0
+ - m_end_debugOptions: 0
+ - m_end_detailShadows: 0
+ - m_end_dissolve: 0
+ - m_end_dissolveMasking: 0
+ - m_end_distanceFade: 0
+ - m_end_distortionFlow: 0
+ - m_end_emission1Options: 0
+ - m_end_emissionOptions: 0
+ - m_end_flipBook: 0
+ - m_end_glitter: 0
+ - m_end_glitterRandom: 0
+ - m_end_glowInDarkEmissionOptions: 0
+ - m_end_glowInDarkEmissionOptions1: 0
+ - m_end_lightingAdvanced: 0
+ - m_end_lightingHSL: 0
+ - m_end_lightingModifiers: 0
+ - m_end_manualFlipbookControl: 0
+ - m_end_matcap: 0
+ - m_end_mirrorOptions: 0
+ - m_end_outlineAdvanced: 0
+ - m_end_panosphereOptions: 0
+ - m_end_parallaxAdvanced: 0
+ - m_end_parallaxHeightmap: 0
+ - m_end_parallaxInternal: 0
+ - m_end_pointToPoint: 0
+ - m_end_reflectionRim: 0
+ - m_end_rimLightOptions: 0
+ - m_end_rimWidthNoise: 0
+ - m_end_scrollingEmission1Options: 0
+ - m_end_scrollingEmissionOptions: 0
+ - m_end_shadowTexture: 0
+ - m_end_specular: 0
+ - m_end_specular1: 0
+ - m_end_subsurface: 0
+ - m_end_vertexManipulation: 0
+ - m_lightingOptions: 0
+ - m_mainOptions: 0
+ - m_outlineOptions: 0
+ - m_renderingOptions: 0
+ - m_start_Alpha: 0
+ - m_start_BonusSliders: 0
+ - m_start_CenterOutEmission: 0
+ - m_start_CenterOutEmission1: 0
+ - m_start_DecalSection: 0
+ - m_start_DetailOptions: 0
+ - m_start_Lighting: 0
+ - m_start_MainHueShift: 0
+ - m_start_MainVertexColors: 0
+ - m_start_Matcap2: 0
+ - m_start_Metallic: 0
+ - m_start_OutlineStencil: 0
+ - m_start_RGBMask: 0
+ - m_start_ShadowMix: 0
+ - m_start_StencilPassOptions: 0
+ - m_start_Text: 0
+ - m_start_TextFPS: 0
+ - m_start_TextInstanceTime: 0
+ - m_start_TextPosition: 0
+ - m_start_ambientOcclusion: 0
+ - m_start_angularFade: 0
+ - m_start_backFace: 0
+ - m_start_bakedLighting: 0
+ - m_start_blending: 0
+ - m_start_blinkingEmissionOptions: 0
+ - m_start_blinkingEmissionOptions1: 0
+ - m_start_clearCoat: 0
+ - m_start_debugOptions: 0
+ - m_start_detailShadows: 0
+ - m_start_dissolve: 0
+ - m_start_dissolveMasking: 0
+ - m_start_distanceFade: 0
+ - m_start_distortionFlow: 0
+ - m_start_emission1Options: 0
+ - m_start_emissionOptions: 0
+ - m_start_flipBook: 0
+ - m_start_glitter: 0
+ - m_start_glitterRandom: 0
+ - m_start_glowInDarkEmissionOptions: 0
+ - m_start_glowInDarkEmissionOptions1: 0
+ - m_start_lightingAdvanced: 0
+ - m_start_lightingHSL: 0
+ - m_start_lightingModifiers: 0
+ - m_start_manualFlipbookControl: 0
+ - m_start_matcap: 0
+ - m_start_mirrorOptions: 0
+ - m_start_outlineAdvanced: 0
+ - m_start_panosphereOptions: 0
+ - m_start_parallaxAdvanced: 0
+ - m_start_parallaxHeightmap: 0
+ - m_start_parallaxInternal: 0
+ - m_start_pointToPoint: 0
+ - m_start_reflectionRim: 0
+ - m_start_rimLightOptions: 0
+ - m_start_rimWidthNoise: 0
+ - m_start_scrollingEmissionOptions: 0
+ - m_start_scrollingEmissionOptions1: 0
+ - m_start_shadowTexture: 0
+ - m_start_specular: 0
+ - m_start_specular1: 0
+ - m_start_subsurface: 0
+ - m_start_vertexManipulation: 0
+ - shader_is_using_thry_editor: 0
+ - shader_master_label: 0
+ - shader_presets: 0
+ - shader_properties_label_file: 0
+ m_Colors:
+ - _AlphaMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _AngleForwardDirection: {r: 0, g: 0, b: 1, a: 0}
+ - _AnisoTangentMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _AnisoTangentMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _BackFaceColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BackFacePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _BlueColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BumpMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatSmoothnessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatTint: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DecalPosition: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DecalScale: {r: 1, g: 1, b: 0, a: 0}
+ - _DecalTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailNormalMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTint: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveDetailNoisePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveEdgeColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveEndPoint: {r: 0, g: 1, b: 0, a: 0}
+ - _DissolveMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveStartPoint: {r: 0, g: -1, b: 0, a: 0}
+ - _DissolveTextureColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveToTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionSpeed: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DistortionSpeed1: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionColor1: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissiveScroll_Direction: {r: 0, g: -10, b: 0, a: 0}
+ - _EmissiveScroll_Direction1: {r: 0, g: -10, b: 0, a: 0}
+ - _FlipbookColor: {r: 1, g: 1, b: 1, a: 1}
+ - _FlipbookMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _FlipbookScaleOffset: {r: 1, g: 1, b: 0, a: 0}
+ - _FlipbookTexArrayPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterColor: {r: 1, g: 1, b: 1, a: 1}
+ - _GlitterColorMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMinMaxBrightness: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSaturation: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSize: {r: 0.1, g: 0.5, b: 0, a: 1}
+ - _GlitterPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _GreenColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingAOTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingDetailShadowsPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingShadowMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _LineColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MainDistanceFade: {r: 0, g: 0, b: 0, a: 0}
+ - _MainFadeTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainHueShiftMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _Matcap2Color: {r: 1, g: 1, b: 1, a: 1}
+ - _Matcap2MaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MatcapColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MatcapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetalReflectionTint: {r: 1, g: 1, b: 1, a: 1}
+ - _MetallicMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetallicTintMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MirrorTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineDropShadowOffset: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineFadeDistance: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlinePersonaDirection: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanoMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanosphereColor: {r: 1, g: 1, b: 1, a: 1}
+ - _PanospherePan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMaxColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalMinColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalPanDepthSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalPanSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBBluePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBGreenPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBMaskPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBRedPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RedColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RgbNormalBPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalGPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalRPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimEnviroMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimLightColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RimMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimWidthNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _SSSColor: {r: 1, g: 0, b: 0, a: 1}
+ - _SSSThicknessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SmoothnessMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularTint: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularTint1: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularToonInnerOuter: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _SpecularToonInnerOuter1: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _TextFPSColor: {r: 1, g: 1, b: 1, a: 1}
+ - _TextFPSOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextPositionColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextPositionOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextTimeColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextTimeOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimePadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimeScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationHeightPan: {r: 0, g: 0, b: 0, a: 0}
+ - _VertexManipulationLocalRotation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationLocalScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationLocalTranslation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationWorldTranslation: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.mat.meta
new file mode 100644
index 00000000..9276f7a9
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: bbf11a8ec5676d44bb7d71c38920ddfe
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.png b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.png
new file mode 100644
index 00000000..5eb6587c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.png
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.png.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.png.meta
new file mode 100644
index 00000000..48ae6ff7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Cloth.png.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: c9ae99659b55b6243aa68e60cca3d268
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 1
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.mat
new file mode 100644
index 00000000..0bbb385e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.mat
@@ -0,0 +1,1855 @@
+%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: R2Changyu01001Face
+ m_Shader: {fileID: 4800000, guid: 37e66a8573d638243adf7f13575675bc, type: 3}
+ m_ShaderKeywords: VIGNETTE_MASKED _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap:
+ OptimizedShaderFolder: R2Changyu01001Face-d37d2b3e
+ OriginalShader: ".poiyomi/\u2022 Poiyomi Toon \u2022"
+ RenderType: Opaque
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _AlphaMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BackFaceTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BlueTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatCubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatSmoothnessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _CubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalTexture:
+ 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}
+ - _DetailTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveDetailNoise:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveEdgeGradient:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveToTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionMask:
+ 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}
+ - _EmissionMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookTexArray:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterColorMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GreenTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingAOTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingDetailShadows:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainFadeTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainHueShiftMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: e3874f8522ff2c943b83628dcf248c97, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2Mask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MatcapMask:
+ 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}
+ - _MetallicMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicTintMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MirrorTexture:
+ 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}
+ - _OutlineMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OutlineTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoCubeMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanosphereTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMapMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMapMask:
+ 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}
+ - _RGBMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RedTexure:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalB:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalG:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalR:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimEnviroMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimWidthNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SSSThicknessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SmoothnessMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _TextGlyphs:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ToonRamp:
+ m_Texture: {fileID: 2800000, guid: 61bd594533da4fc42bd46ef93ba5a4f6, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _VertexManipulationHeightMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - DSGI: 0
+ - Instancing: 0
+ - LightmapFlags: 0
+ - _AOStrength: 1
+ - _AOStrengthAnimated: 0
+ - _AlphaMaskAnimated: 0
+ - _AlphaMaskPanAnimated: 0
+ - _AlphaMaskUV: 0
+ - _AlphaMaskUVAnimated: 0
+ - _AlphaMod: 0
+ - _AlphaModAnimated: 0
+ - _AlphaPremultiply: 0
+ - _AlphaPremultiplyAnimated: 0
+ - _AlphaToMask: 0
+ - _AlphaToMaskAnimated: 0
+ - _AngleCompareTo: 0
+ - _AngleCompareToAnimated: 0
+ - _AngleForwardDirectionAnimated: 0
+ - _AngleMinAlpha: 0
+ - _AngleMinAlphaAnimated: 0
+ - _AngleType: 0
+ - _AngleTypeAnimated: 0
+ - _AnisoSpec1Alpha: 1
+ - _AnisoSpec1Alpha1: 1
+ - _AnisoSpec1Alpha1Animated: 0
+ - _AnisoSpec1AlphaAnimated: 0
+ - _AnisoSpec2Alpha: 1
+ - _AnisoSpec2Alpha1: 1
+ - _AnisoSpec2Alpha1Animated: 0
+ - _AnisoSpec2AlphaAnimated: 0
+ - _AnisoTangentMap1Animated: 0
+ - _AnisoTangentMap1PanAnimated: 0
+ - _AnisoTangentMap1UV: 0
+ - _AnisoTangentMap1UVAnimated: 0
+ - _AnisoTangentMapAnimated: 0
+ - _AnisoTangentMapPanAnimated: 0
+ - _AnisoTangentMapUV: 0
+ - _AnisoTangentMapUVAnimated: 0
+ - _AnisoUseTangentMap: 0
+ - _AnisoUseTangentMap1: 0
+ - _AnisoUseTangentMap1Animated: 0
+ - _AnisoUseTangentMapAnimated: 0
+ - _AttenuationMultiplier: 0
+ - _AttenuationMultiplierAnimated: 0
+ - _BackFaceDetailIntensity: 1
+ - _BackFaceEmissionStrength: 0
+ - _BackFaceEnabled: 0
+ - _BackFaceHueShift: 0
+ - _BackFaceTextureUV: 0
+ - _BlackLightMaskClearCoatAnimated: 0
+ - _BlackLightMaskDebugAnimated: 0
+ - _BlackLightMaskDissolveAnimated: 0
+ - _BlackLightMaskEmission2Animated: 0
+ - _BlackLightMaskEmissionAnimated: 0
+ - _BlackLightMaskEnabledAnimated: 0
+ - _BlackLightMaskEndAnimated: 0
+ - _BlackLightMaskFlipbookAnimated: 0
+ - _BlackLightMaskGlitterAnimated: 0
+ - _BlackLightMaskIridescenceAnimated: 0
+ - _BlackLightMaskKeysAnimated: 0
+ - _BlackLightMaskMatcap2Animated: 0
+ - _BlackLightMaskMatcapAnimated: 0
+ - _BlackLightMaskMetallicAnimated: 0
+ - _BlackLightMaskPanosphereAnimated: 0
+ - _BlackLightMaskStartAnimated: 0
+ - _BlendOp: 0
+ - _BlendOpAlpha: 0
+ - _BlendOpAlphaAnimated: 0
+ - _BlendOpAnimated: 0
+ - _BlueColorAnimated: 0
+ - _BlueTextureAnimated: 0
+ - _BuldgeFadeLengthAnimated: 0
+ - _BuldgeHeightAnimated: 0
+ - _BulgeMaskAnimated: 0
+ - _BumpMapAnimated: 0
+ - _BumpMapPanAnimated: 0
+ - _BumpMapUV: 0
+ - _BumpMapUVAnimated: 0
+ - _BumpScale: 1
+ - _BumpScaleAnimated: 0
+ - _CameraAngleMax: 90
+ - _CameraAngleMaxAnimated: 0
+ - _CameraAngleMin: 45
+ - _CameraAngleMinAnimated: 0
+ - _ClearCoat: 1
+ - _ClearCoatAnimated: 0
+ - _ClearCoatCubeMapAnimated: 0
+ - _ClearCoatForceLighting: 0
+ - _ClearCoatForceLightingAnimated: 0
+ - _ClearCoatInvertSmoothness: 0
+ - _ClearCoatInvertSmoothnessAnimated: 0
+ - _ClearCoatMaskAnimated: 0
+ - _ClearCoatMaskPanAnimated: 0
+ - _ClearCoatMaskUV: 0
+ - _ClearCoatMaskUVAnimated: 0
+ - _ClearCoatNormalToUse: 0
+ - _ClearCoatNormalToUseAnimated: 0
+ - _ClearCoatSampleWorld: 0
+ - _ClearCoatSampleWorldAnimated: 0
+ - _ClearCoatSmoothness: 0
+ - _ClearCoatSmoothnessAnimated: 0
+ - _ClearCoatSmoothnessMapAnimated: 0
+ - _ClearCoatSmoothnessMapPanAnimated: 0
+ - _ClearCoatSmoothnessMapUV: 0
+ - _ClearCoatSmoothnessMapUVAnimated: 0
+ - _ClearCoatTintAnimated: 0
+ - _ColorAnimated: 0
+ - _ColorMask: 15
+ - _ColorMaskAnimated: 0
+ - _ContinuousDissolve: 0
+ - _ContinuousDissolveAnimated: 0
+ - _CubeMapAnimated: 0
+ - _Cull: 2
+ - _CullAnimated: 0
+ - _Cutoff: 0.5
+ - _CutoffAnimated: 0
+ - _DebugCameraData: 0
+ - _DebugCameraDataAnimated: 0
+ - _DebugEnabled: 0
+ - _DebugLightingData: 0
+ - _DebugLightingDataAnimated: 0
+ - _DebugMeshData: 0
+ - _DebugMeshDataAnimated: 0
+ - _DecalBlendAdd: 0
+ - _DecalBlendAddAnimated: 0
+ - _DecalBlendMultiply: 0
+ - _DecalBlendMultiplyAnimated: 0
+ - _DecalBlendReplace: 0
+ - _DecalBlendReplaceAnimated: 0
+ - _DecalColorAnimated: 0
+ - _DecalEmissionStrength: 0
+ - _DecalEmissionStrengthAnimated: 0
+ - _DecalEnabled: 0
+ - _DecalEnabledAnimated: 0
+ - _DecalMaskAnimated: 0
+ - _DecalMaskPanAnimated: 0
+ - _DecalMaskUV: 0
+ - _DecalMaskUVAnimated: 0
+ - _DecalPositionAnimated: 0
+ - _DecalRotation: 0
+ - _DecalRotationAnimated: 0
+ - _DecalRotationSpeed: 0
+ - _DecalRotationSpeedAnimated: 0
+ - _DecalScaleAnimated: 0
+ - _DecalTextureAnimated: 0
+ - _DecalTexturePanAnimated: 0
+ - _DecalTextureUV: 0
+ - _DecalTextureUVAnimated: 0
+ - _DecalTiled: 0
+ - _DecalTiledAnimated: 0
+ - _DepthAlphaMaxAnimated: 0
+ - _DepthAlphaMinAnimated: 0
+ - _DepthGlowColorAnimated: 0
+ - _DepthGlowEmissionAnimated: 0
+ - _DepthGradientAnimated: 0
+ - _DepthGradientBlendAnimated: 0
+ - _DepthGradientPanAnimated: 0
+ - _DepthGradientTextureUVAnimated: 0
+ - _DepthGradientUVAnimated: 0
+ - _DepthMaskAnimated: 0
+ - _DepthMaskPanAnimated: 0
+ - _DepthMaskUVAnimated: 0
+ - _DetailBrightness: 1
+ - _DetailBrightnessAnimated: 0
+ - _DetailEnabled: 0
+ - _DetailMaskAnimated: 0
+ - _DetailMaskPanAnimated: 0
+ - _DetailMaskUV: 0
+ - _DetailMaskUVAnimated: 0
+ - _DetailNormalMapAnimated: 0
+ - _DetailNormalMapPanAnimated: 0
+ - _DetailNormalMapScale: 1
+ - _DetailNormalMapScaleAnimated: 0
+ - _DetailNormalMapUV: 0
+ - _DetailNormalMapUVAnimated: 0
+ - _DetailTexAnimated: 0
+ - _DetailTexIntensity: 1
+ - _DetailTexIntensityAnimated: 0
+ - _DetailTexPanAnimated: 0
+ - _DetailTexUV: 0
+ - _DetailTexUVAnimated: 0
+ - _DetailTintAnimated: 0
+ - _DisableDirectionalInAdd: 1
+ - _DissolveAlpha: 0
+ - _DissolveAlpha0: 0
+ - _DissolveAlpha0Animated: 0
+ - _DissolveAlpha1: 0
+ - _DissolveAlpha1Animated: 0
+ - _DissolveAlpha2: 0
+ - _DissolveAlpha2Animated: 0
+ - _DissolveAlpha3: 0
+ - _DissolveAlpha3Animated: 0
+ - _DissolveAlpha4: 0
+ - _DissolveAlpha4Animated: 0
+ - _DissolveAlpha5: 0
+ - _DissolveAlpha5Animated: 0
+ - _DissolveAlpha6: 0
+ - _DissolveAlpha6Animated: 0
+ - _DissolveAlpha7: 0
+ - _DissolveAlpha7Animated: 0
+ - _DissolveAlpha8: 0
+ - _DissolveAlpha8Animated: 0
+ - _DissolveAlpha9: 0
+ - _DissolveAlpha9Animated: 0
+ - _DissolveAlphaAnimated: 0
+ - _DissolveDetailNoiseAnimated: 0
+ - _DissolveDetailNoisePanAnimated: 0
+ - _DissolveDetailNoiseUV: 0
+ - _DissolveDetailNoiseUVAnimated: 0
+ - _DissolveDetailStrength: 0.1
+ - _DissolveDetailStrengthAnimated: 0
+ - _DissolveEdgeColorAnimated: 0
+ - _DissolveEdgeEmission: 0
+ - _DissolveEdgeEmissionAnimated: 0
+ - _DissolveEdgeGradientAnimated: 0
+ - _DissolveEdgeHardness: 0.5
+ - _DissolveEdgeHardnessAnimated: 0
+ - _DissolveEdgeWidth: 0.025
+ - _DissolveEdgeWidthAnimated: 0
+ - _DissolveEmission1Side: 2
+ - _DissolveEmission1SideAnimated: 0
+ - _DissolveEmissionSide: 2
+ - _DissolveEmissionSideAnimated: 0
+ - _DissolveEndPointAnimated: 0
+ - _DissolveInvertDetailNoise: 0
+ - _DissolveInvertDetailNoiseAnimated: 0
+ - _DissolveInvertNoise: 0
+ - _DissolveInvertNoiseAnimated: 0
+ - _DissolveMaskAnimated: 0
+ - _DissolveMaskInvert: 0
+ - _DissolveMaskInvertAnimated: 0
+ - _DissolveMaskPanAnimated: 0
+ - _DissolveMaskUV: 0
+ - _DissolveMaskUVAnimated: 0
+ - _DissolveNoiseTextureAnimated: 0
+ - _DissolveNoiseTexturePanAnimated: 0
+ - _DissolveNoiseTextureUV: 0
+ - _DissolveNoiseTextureUVAnimated: 0
+ - _DissolveP2PEdgeLength: 0.1
+ - _DissolveP2PEdgeLengthAnimated: 0
+ - _DissolveP2PWorldLocal: 0
+ - _DissolveP2PWorldLocalAnimated: 0
+ - _DissolveStartPointAnimated: 0
+ - _DissolveTextureColorAnimated: 0
+ - _DissolveToEmissionStrength: 0
+ - _DissolveToEmissionStrengthAnimated: 0
+ - _DissolveToTextureAnimated: 0
+ - _DissolveToTexturePanAnimated: 0
+ - _DissolveToTextureUV: 0
+ - _DissolveToTextureUVAnimated: 0
+ - _DissolveType: 1
+ - _DissolveTypeAnimated: 0
+ - _DissolveUseVertexColors: 0
+ - _DissolveUseVertexColorsAnimated: 0
+ - _DistortionFlowTexture1Animated: 0
+ - _DistortionFlowTextureAnimated: 0
+ - _DistortionMaskAnimated: 0
+ - _DistortionMaskPanAnimated: 0
+ - _DistortionMaskUV: 0
+ - _DistortionMaskUVAnimated: 0
+ - _DistortionSpeed1Animated: 0
+ - _DistortionSpeedAnimated: 0
+ - _DistortionStrength: 0.5
+ - _DistortionStrength1: 0.5
+ - _DistortionStrength1Animated: 0
+ - _DistortionStrengthAnimated: 0
+ - _DitherGradient: 0.1
+ - _DitherGradientAnimated: 0
+ - _DitheringEnabled: 0
+ - _DitheringEnabledAnimated: 0
+ - _DstBlend: 0
+ - _DstBlendAnimated: 0
+ - _EmissionBaseColorAsMap: 0
+ - _EmissionBaseColorAsMap1: 0
+ - _EmissionBaseColorAsMap1Animated: 0
+ - _EmissionBaseColorAsMapAnimated: 0
+ - _EmissionBlinkingEnabled: 0
+ - _EmissionBlinkingEnabled1: 0
+ - _EmissionBlinkingEnabledAnimated: 0
+ - _EmissionBlinkingOffset: 0
+ - _EmissionBlinkingOffset1: 0
+ - _EmissionBlinkingOffset1Animated: 0
+ - _EmissionBlinkingOffsetAnimated: 0
+ - _EmissionCenterOutEnabled: 0
+ - _EmissionCenterOutEnabled1: 0
+ - _EmissionCenterOutEnabled1Animated: 0
+ - _EmissionCenterOutEnabledAnimated: 0
+ - _EmissionCenterOutSpeed: 5
+ - _EmissionCenterOutSpeed1: 5
+ - _EmissionCenterOutSpeed1Animated: 0
+ - _EmissionCenterOutSpeedAnimated: 0
+ - _EmissionColor1Animated: 0
+ - _EmissionColorAnimated: 0
+ - _EmissionHueShift: 0
+ - _EmissionHueShift1: 0
+ - _EmissionHueShift1Animated: 0
+ - _EmissionHueShiftAnimated: 0
+ - _EmissionHueShiftEnabled: 0
+ - _EmissionHueShiftEnabled1: 0
+ - _EmissionHueShiftEnabled1Animated: 0
+ - _EmissionHueShiftEnabledAnimated: 0
+ - _EmissionMap1Animated: 0
+ - _EmissionMap1PanAnimated: 0
+ - _EmissionMap1UV: 0
+ - _EmissionMap1UVAnimated: 0
+ - _EmissionMapAnimated: 0
+ - _EmissionMapPanAnimated: 0
+ - _EmissionMapUV: 0
+ - _EmissionMapUVAnimated: 0
+ - _EmissionMask1Animated: 0
+ - _EmissionMask1PanAnimated: 0
+ - _EmissionMask1UV: 0
+ - _EmissionMask1UVAnimated: 0
+ - _EmissionMaskAnimated: 0
+ - _EmissionMaskPanAnimated: 0
+ - _EmissionMaskUV: 0
+ - _EmissionMaskUVAnimated: 0
+ - _EmissionReplace: 0
+ - _EmissionReplaceAnimated: 0
+ - _EmissionScrollingCurve1Animated: 0
+ - _EmissionScrollingCurveAnimated: 0
+ - _EmissionScrollingOffset: 0
+ - _EmissionScrollingOffset1: 0
+ - _EmissionScrollingOffset1Animated: 0
+ - _EmissionScrollingOffsetAnimated: 0
+ - _EmissionScrollingUseCurve: 0
+ - _EmissionScrollingUseCurve1: 0
+ - _EmissionScrollingUseCurve1Animated: 0
+ - _EmissionScrollingUseCurveAnimated: 0
+ - _EmissionScrollingVertexColor: 0
+ - _EmissionScrollingVertexColor1: 0
+ - _EmissionScrollingVertexColor1Animated: 0
+ - _EmissionScrollingVertexColorAnimated: 0
+ - _EmissionStrength: 0
+ - _EmissionStrength1: 0
+ - _EmissionStrength1Animated: 0
+ - _EmissionStrengthAnimated: 0
+ - _EmissiveBlink_Max: 1
+ - _EmissiveBlink_Max1: 1
+ - _EmissiveBlink_Max1Animated: 0
+ - _EmissiveBlink_MaxAnimated: 0
+ - _EmissiveBlink_Min: 0
+ - _EmissiveBlink_Min1: 0
+ - _EmissiveBlink_Min1Animated: 0
+ - _EmissiveBlink_MinAnimated: 0
+ - _EmissiveBlink_Velocity: 4
+ - _EmissiveBlink_Velocity1: 4
+ - _EmissiveBlink_Velocity1Animated: 0
+ - _EmissiveBlink_VelocityAnimated: 0
+ - _EmissiveScroll_Direction1Animated: 0
+ - _EmissiveScroll_DirectionAnimated: 0
+ - _EmissiveScroll_Interval: 20
+ - _EmissiveScroll_Interval1: 20
+ - _EmissiveScroll_Interval1Animated: 0
+ - _EmissiveScroll_IntervalAnimated: 0
+ - _EmissiveScroll_Velocity: 10
+ - _EmissiveScroll_Velocity1: 10
+ - _EmissiveScroll_Velocity1Animated: 0
+ - _EmissiveScroll_VelocityAnimated: 0
+ - _EmissiveScroll_Width: 10
+ - _EmissiveScroll_Width1: 10
+ - _EmissiveScroll_Width1Animated: 0
+ - _EmissiveScroll_WidthAnimated: 0
+ - _EnableBlurAnimated: 0
+ - _EnableBulgeAnimated: 0
+ - _EnableClearCoat: 0
+ - _EnableClearCoatAnimated: 0
+ - _EnableDissolve: 0
+ - _EnableDissolveAnimated: 0
+ - _EnableDistortion: 0
+ - _EnableDistortionAnimated: 0
+ - _EnableEmission: 0
+ - _EnableEmission1: 0
+ - _EnableEmission1Animated: 0
+ - _EnableEmissionAnimated: 0
+ - _EnableEnvironmentalRim: 0
+ - _EnableEnvironmentalRimAnimated: 0
+ - _EnableFlipbook: 0
+ - _EnableFlipbookAnimated: 0
+ - _EnableGITDEmission: 0
+ - _EnableGITDEmission1: 0
+ - _EnableGITDEmission1Animated: 0
+ - _EnableGITDEmissionAnimated: 0
+ - _EnableHoloAnimated: 0
+ - _EnableIridescenceAnimated: 0
+ - _EnableLighting: 1
+ - _EnableLightingAnimated: 0
+ - _EnableMetallic: 0
+ - _EnableMetallicAnimated: 0
+ - _EnableMirrorOptions: 0
+ - _EnableMirrorOptionsAnimated: 0
+ - _EnableMirrorTexture: 0
+ - _EnableMirrorTextureAnimated: 0
+ - _EnableRandom: 0
+ - _EnableRandomAnimated: 0
+ - _EnableRimLighting: 0
+ - _EnableRimLightingAnimated: 0
+ - _EnableSSS: 0
+ - _EnableSSSAnimated: 0
+ - _EnableScifiSpawnInAnimated: 0
+ - _EnableSpecular: 0
+ - _EnableSpecular1: 0
+ - _EnableSpecular1Animated: 0
+ - _EnableSpecularAnimated: 0
+ - _EnableTouchGlowAnimated: 0
+ - _EnableVertexGlitchAnimated: 0
+ - _EnableVideoAnimated: 0
+ - _EnableVoronoiAnimated: 0
+ - _FadeLengthAnimated: 0
+ - _FlipbookAdd: 0
+ - _FlipbookAddAnimated: 0
+ - _FlipbookAlphaControlsFinalAlpha: 0
+ - _FlipbookAlphaControlsFinalAlphaAnimated: 0
+ - _FlipbookColorAnimated: 0
+ - _FlipbookColorReplaces: 0
+ - _FlipbookColorReplacesAnimated: 0
+ - _FlipbookCurrentFrame: -1
+ - _FlipbookCurrentFrameAnimated: 0
+ - _FlipbookEmissionStrength: 0
+ - _FlipbookEmissionStrengthAnimated: 0
+ - _FlipbookFPS: 30
+ - _FlipbookFPSAnimated: 0
+ - _FlipbookIntensityControlsAlpha: 0
+ - _FlipbookIntensityControlsAlphaAnimated: 0
+ - _FlipbookMaskAnimated: 0
+ - _FlipbookMaskPanAnimated: 0
+ - _FlipbookMaskUV: 0
+ - _FlipbookMaskUVAnimated: 0
+ - _FlipbookMultiply: 0
+ - _FlipbookMultiplyAnimated: 0
+ - _FlipbookReplace: 1
+ - _FlipbookReplaceAnimated: 0
+ - _FlipbookRotation: 0
+ - _FlipbookRotationAnimated: 0
+ - _FlipbookRotationSpeed: 0
+ - _FlipbookRotationSpeedAnimated: 0
+ - _FlipbookScaleOffsetAnimated: 0
+ - _FlipbookTexArrayAnimated: 0
+ - _FlipbookTexArrayPanAnimated: 0
+ - _FlipbookTexArrayUV: 0
+ - _FlipbookTexArrayUVAnimated: 0
+ - _FlipbookTiled: 0
+ - _FlipbookTiledAnimated: 0
+ - _FlipbookTotalFrames: 1
+ - _FlipbookTotalFramesAnimated: 0
+ - _ForceOpaque: 0
+ - _ForceOpaqueAnimated: 0
+ - _ForgotToLockMaterial: 1
+ - _GIEmissionMultiplier: 1
+ - _GITDEMaxEmissionMultiplier: 0
+ - _GITDEMaxEmissionMultiplier1: 0
+ - _GITDEMaxEmissionMultiplier1Animated: 0
+ - _GITDEMaxEmissionMultiplierAnimated: 0
+ - _GITDEMaxLight: 1
+ - _GITDEMaxLight1: 1
+ - _GITDEMaxLight1Animated: 0
+ - _GITDEMaxLightAnimated: 0
+ - _GITDEMinEmissionMultiplier: 1
+ - _GITDEMinEmissionMultiplier1: 1
+ - _GITDEMinEmissionMultiplier1Animated: 0
+ - _GITDEMinEmissionMultiplierAnimated: 0
+ - _GITDEMinLight: 0
+ - _GITDEMinLight1: 0
+ - _GITDEMinLight1Animated: 0
+ - _GITDEMinLightAnimated: 0
+ - _GITDEWorldOrMesh: 0
+ - _GITDEWorldOrMesh1: 0
+ - _GITDEWorldOrMesh1Animated: 0
+ - _GITDEWorldOrMeshAnimated: 0
+ - _GlitterAngleRange: 90
+ - _GlitterAngleRangeAnimated: 0
+ - _GlitterBias: 0.8
+ - _GlitterBiasAnimated: 0
+ - _GlitterBlendType: 0
+ - _GlitterBlendTypeAnimated: 0
+ - _GlitterBrightness: 3
+ - _GlitterBrightnessAnimated: 0
+ - _GlitterCenterSize: 0.08
+ - _GlitterCenterSizeAnimated: 0
+ - _GlitterColorAnimated: 0
+ - _GlitterColorMapAnimated: 0
+ - _GlitterColorMapPanAnimated: 0
+ - _GlitterColorMapUV: 0
+ - _GlitterColorMapUVAnimated: 0
+ - _GlitterContrast: 300
+ - _GlitterContrastAnimated: 0
+ - _GlitterEnable: 0
+ - _GlitterEnableAnimated: 0
+ - _GlitterFrequency: 300
+ - _GlitterFrequencyAnimated: 0
+ - _GlitterJaggyFix: 0
+ - _GlitterJaggyFixAnimated: 0
+ - _GlitterJitter: 1
+ - _GlitterJitterAnimated: 0
+ - _GlitterMaskAnimated: 0
+ - _GlitterMaskPanAnimated: 0
+ - _GlitterMaskUV: 0
+ - _GlitterMaskUVAnimated: 0
+ - _GlitterMinBrightness: 0
+ - _GlitterMinBrightnessAnimated: 0
+ - _GlitterMinMaxBrightnessAnimated: 0
+ - _GlitterMinMaxSaturationAnimated: 0
+ - _GlitterMinMaxSizeAnimated: 0
+ - _GlitterMode: 0
+ - _GlitterModeAnimated: 0
+ - _GlitterPanAnimated: 0
+ - _GlitterRandomColors: 0
+ - _GlitterRandomColorsAnimated: 0
+ - _GlitterRandomRotation: 0
+ - _GlitterRandomRotationAnimated: 0
+ - _GlitterRandomSize: 0
+ - _GlitterRandomSizeAnimated: 0
+ - _GlitterShape: 0
+ - _GlitterShapeAnimated: 0
+ - _GlitterSize: 0.3
+ - _GlitterSizeAnimated: 0
+ - _GlitterSpeed: 10
+ - _GlitterSpeedAnimated: 0
+ - _GlitterTextureAnimated: 0
+ - _GlitterTexturePanAnimated: 0
+ - _GlitterTextureRotation: 0
+ - _GlitterTextureRotationAnimated: 0
+ - _GlitterUseSurfaceColor: 0
+ - _GlitterUseSurfaceColorAnimated: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0
+ - _GlossyReflections: 1
+ - _GrabBlurDirectionsAnimated: 0
+ - _GrabBlurDistanceAnimated: 0
+ - _GrabBlurQualityAnimated: 0
+ - _GrabDstBlendAnimated: 0
+ - _GrabPassBlendFactorAnimated: 0
+ - _GrabPassUseAlphaAnimated: 0
+ - _GrabSrcBlendAnimated: 0
+ - _GreenColorAnimated: 0
+ - _GreenTextureAnimated: 0
+ - _HelpBoxHideLocking: 0
+ - _HelpBoxLocking: 0
+ - _HoloAlphaMapAnimated: 0
+ - _HoloCoordinateSpaceAnimated: 0
+ - _HoloDirectionAnimated: 0
+ - _HoloFresnelAlphaAnimated: 0
+ - _HoloLineDensityAnimated: 0
+ - _HoloRimSharpnessAnimated: 0
+ - _HoloRimWidthAnimated: 0
+ - _HoloScrollSpeedAnimated: 0
+ - _IgnoreFog: 0
+ - _IgnoreFogAnimated: 0
+ - _InvertSmoothness: 0
+ - _InvertSmoothnessAnimated: 0
+ - _IridescenceAddBlendAnimated: 0
+ - _IridescenceEmissionStrengthAnimated: 0
+ - _IridescenceIntensityAnimated: 0
+ - _IridescenceMaskAnimated: 0
+ - _IridescenceMaskUVAnimated: 0
+ - _IridescenceMultiplyBlendAnimated: 0
+ - _IridescenceNormalIntensityAnimated: 0
+ - _IridescenceNormalMapAnimated: 0
+ - _IridescenceNormalSelectionAnimated: 0
+ - _IridescenceNormalToggleAnimated: 0
+ - _IridescenceNormalUVAnimated: 0
+ - _IridescenceRampAnimated: 0
+ - _IridescenceReplaceBlendAnimated: 0
+ - _IridescenceTimeAnimated: 0
+ - _LightingAOTexAnimated: 0
+ - _LightingAOTexPanAnimated: 0
+ - _LightingAOTexUV: 0
+ - _LightingAOTexUVAnimated: 0
+ - _LightingAdditiveDetailStrength: 1
+ - _LightingAdditiveDetailStrengthAnimated: 0
+ - _LightingAdditiveGradientEnd: 0.5
+ - _LightingAdditiveGradientEndAnimated: 0
+ - _LightingAdditiveGradientStart: 0
+ - _LightingAdditiveGradientStartAnimated: 0
+ - _LightingAdditiveLimitIntensity: 0
+ - _LightingAdditiveLimitIntensityAnimated: 0
+ - _LightingAdditiveMaxIntensity: 1
+ - _LightingAdditiveMaxIntensityAnimated: 0
+ - _LightingAdditivePassthrough: 0.5
+ - _LightingAdditivePassthroughAnimated: 0
+ - _LightingAdditiveType: 1
+ - _LightingAdditiveTypeAnimated: 0
+ - _LightingDetailShadowsAnimated: 0
+ - _LightingDetailShadowsEnabled: 0
+ - _LightingDetailShadowsEnabledAnimated: 0
+ - _LightingDetailShadowsPanAnimated: 0
+ - _LightingDetailShadowsUV: 0
+ - _LightingDetailShadowsUVAnimated: 0
+ - _LightingDetailStrength: 1
+ - _LightingDetailStrengthAnimated: 0
+ - _LightingDirectColorMode: 0
+ - _LightingDirectColorModeAnimated: 0
+ - _LightingEnableAO: 0
+ - _LightingEnableAOAnimated: 0
+ - _LightingEnableHSL: 0
+ - _LightingEnableHSLAnimated: 0
+ - _LightingGradientEnd: 0.5
+ - _LightingGradientEndAnimated: 0
+ - _LightingGradientStart: 0
+ - _LightingGradientStartAnimated: 0
+ - _LightingHSLIntensity: 1
+ - _LightingHSLIntensityAnimated: 0
+ - _LightingIgnoreAmbientColor: 0
+ - _LightingIgnoreAmbientColorAnimated: 0
+ - _LightingIndirectColorMode: 0
+ - _LightingIndirectColorModeAnimated: 0
+ - _LightingMinLightBrightness: 0
+ - _LightingMinLightBrightnessAnimated: 0
+ - _LightingMinShadowBrightnessRatio: 0
+ - _LightingMinShadowBrightnessRatioAnimated: 0
+ - _LightingMode: 0
+ - _LightingModeAnimated: 0
+ - _LightingMonochromatic: 0
+ - _LightingMonochromaticAnimated: 0
+ - _LightingOnlyUnityShadows: 0
+ - _LightingOnlyUnityShadowsAnimated: 0
+ - _LightingRampType: 0
+ - _LightingRampTypeAnimated: 0
+ - _LightingShadingEnabled: 0
+ - _LightingShadingEnabledAnimated: 0
+ - _LightingShadowColorAnimated: 0
+ - _LightingShadowHue: 0.5
+ - _LightingShadowHueAnimated: 0
+ - _LightingShadowLightness: 0.5
+ - _LightingShadowLightnessAnimated: 0
+ - _LightingShadowMaskAnimated: 0
+ - _LightingShadowMaskPanAnimated: 0
+ - _LightingShadowMaskUV: 0
+ - _LightingShadowMaskUVAnimated: 0
+ - _LightingShadowSaturation: 0.5
+ - _LightingShadowSaturationAnimated: 0
+ - _LightingShadowTextureAnimated: 0
+ - _LightingShadowTexturePanAnimated: 0
+ - _LightingShadowTextureUV: 0
+ - _LightingShadowTextureUVAnimated: 0
+ - _LightingStandardSmoothness: 0
+ - _LightingStandardSmoothnessAnimated: 0
+ - _LightingUncapped: 0
+ - _LightingUncappedAnimated: 0
+ - _LineColorAnimated: 0
+ - _LineWidth: 0
+ - _LineWidthAnimated: 0
+ - _LockTooltip: 0
+ - _MainAlphaToCoverage: 0
+ - _MainAlphaToCoverageAnimated: 0
+ - _MainDistanceFadeAnimated: 0
+ - _MainEmissionStrength: 0
+ - _MainEmissionStrengthAnimated: 0
+ - _MainFadeTextureAnimated: 0
+ - _MainFadeTexturePanAnimated: 0
+ - _MainFadeTextureUV: 0
+ - _MainFadeTextureUVAnimated: 0
+ - _MainHueShift: 0
+ - _MainHueShiftAnimated: 0
+ - _MainHueShiftMaskAnimated: 0
+ - _MainHueShiftMaskPanAnimated: 0
+ - _MainHueShiftMaskUV: 0
+ - _MainHueShiftMaskUVAnimated: 0
+ - _MainHueShiftReplace: 1
+ - _MainHueShiftReplaceAnimated: 0
+ - _MainHueShiftSpeed: 0
+ - _MainHueShiftSpeedAnimated: 0
+ - _MainHueShiftToggle: 0
+ - _MainHueShiftToggleAnimated: 0
+ - _MainMinAlpha: 0
+ - _MainMinAlphaAnimated: 0
+ - _MainMipScale: 0.25
+ - _MainMipScaleAnimated: 0
+ - _MainShadowClipMod: 0
+ - _MainShadowClipModAnimated: 0
+ - _MainTexAnimated: 0
+ - _MainTexPanAnimated: 0
+ - _MainTex_STAnimated: 0
+ - _MainTextureUV: 0
+ - _MainTextureUVAnimated: 0
+ - _MainUseVertexColorAlpha: 0
+ - _MainUseVertexColorAlphaAnimated: 0
+ - _MainVertexColoring: 0
+ - _MainVertexColoringAnimated: 0
+ - _Matcap2Add: 0
+ - _Matcap2AddAnimated: 0
+ - _Matcap2Animated: 0
+ - _Matcap2Border: 0.43
+ - _Matcap2BorderAnimated: 0
+ - _Matcap2ColorAnimated: 0
+ - _Matcap2EmissionStrength: 0
+ - _Matcap2EmissionStrengthAnimated: 0
+ - _Matcap2Enable: 0
+ - _Matcap2EnableAnimated: 0
+ - _Matcap2Intensity: 1
+ - _Matcap2IntensityAnimated: 0
+ - _Matcap2LightMask: 0
+ - _Matcap2LightMaskAnimated: 0
+ - _Matcap2MaskAnimated: 0
+ - _Matcap2MaskInvert: 0
+ - _Matcap2MaskInvertAnimated: 0
+ - _Matcap2MaskPanAnimated: 0
+ - _Matcap2MaskUV: 0
+ - _Matcap2MaskUVAnimated: 0
+ - _Matcap2Multiply: 0
+ - _Matcap2MultiplyAnimated: 0
+ - _Matcap2Normal: 1
+ - _Matcap2NormalAnimated: 0
+ - _Matcap2Replace: 0
+ - _Matcap2ReplaceAnimated: 0
+ - _MatcapAdd: 0
+ - _MatcapAddAnimated: 0
+ - _MatcapAnimated: 0
+ - _MatcapBorder: 0.43
+ - _MatcapBorderAnimated: 0
+ - _MatcapColorAnimated: 0
+ - _MatcapEmissionStrength: 0
+ - _MatcapEmissionStrengthAnimated: 0
+ - _MatcapEnable: 0
+ - _MatcapEnableAnimated: 0
+ - _MatcapIntensity: 1
+ - _MatcapIntensityAnimated: 0
+ - _MatcapLightMask: 0
+ - _MatcapLightMaskAnimated: 0
+ - _MatcapMaskAnimated: 0
+ - _MatcapMaskInvert: 0
+ - _MatcapMaskInvertAnimated: 0
+ - _MatcapMaskPanAnimated: 0
+ - _MatcapMaskUV: 0
+ - _MatcapMaskUVAnimated: 0
+ - _MatcapMultiply: 0
+ - _MatcapMultiplyAnimated: 0
+ - _MatcapNormal: 1
+ - _MatcapNormalAnimated: 0
+ - _MatcapReplace: 1
+ - _MatcapReplaceAnimated: 0
+ - _MetalReflectionTintAnimated: 0
+ - _Metallic: 0
+ - _MetallicAnimated: 0
+ - _MetallicMaskAnimated: 0
+ - _MetallicMaskPanAnimated: 0
+ - _MetallicMaskUV: 0
+ - _MetallicMaskUVAnimated: 0
+ - _MetallicTintMapAnimated: 0
+ - _MetallicTintMapPanAnimated: 0
+ - _MetallicTintMapUV: 0
+ - _MetallicTintMapUVAnimated: 0
+ - _Mirror: 0
+ - _MirrorAnimated: 0
+ - _MirrorTextureAnimated: 0
+ - _MirrorTexturePanAnimated: 0
+ - _MirrorTextureUV: 0
+ - _MirrorTextureUVAnimated: 0
+ - _Mode: 0
+ - _ModelAngleMax: 90
+ - _ModelAngleMaxAnimated: 0
+ - _ModelAngleMin: 45
+ - _ModelAngleMinAnimated: 0
+ - _OcclusionStrength: 1
+ - _OffsetFactor: 0
+ - _OffsetFactorAnimated: 0
+ - _OffsetUnits: 0
+ - _OffsetUnitsAnimated: 0
+ - _OutlineCull: 1
+ - _OutlineCullAnimated: 0
+ - _OutlineDropShadowOffsetAnimated: 0
+ - _OutlineEmission: 0
+ - _OutlineEmissionAnimated: 0
+ - _OutlineFadeDistanceAnimated: 0
+ - _OutlineFixedSize: 0
+ - _OutlineFixedSizeAnimated: 0
+ - _OutlineLit: 1
+ - _OutlineLitAnimated: 0
+ - _OutlineMaskAnimated: 0
+ - _OutlineMaskUV: 0
+ - _OutlineMode: 0
+ - _OutlineModeAnimated: 0
+ - _OutlineOffsetFactor: 0
+ - _OutlineOffsetUnits: 0
+ - _OutlinePersonaDirectionAnimated: 0
+ - _OutlineRimLightBlend: 0
+ - _OutlineRimLightBlendAnimated: 0
+ - _OutlineShadowStrength: 1
+ - _OutlineShadowStrengthAnimated: 0
+ - _OutlineStencilCompareFunction: 8
+ - _OutlineStencilCompareFunctionAnimated: 0
+ - _OutlineStencilFailOp: 0
+ - _OutlineStencilFailOpAnimated: 0
+ - _OutlineStencilPassOp: 0
+ - _OutlineStencilPassOpAnimated: 0
+ - _OutlineStencilReadMask: 255
+ - _OutlineStencilReadMaskAnimated: 0
+ - _OutlineStencilRef: 0
+ - _OutlineStencilRefAnimated: 0
+ - _OutlineStencilWriteMask: 255
+ - _OutlineStencilWriteMaskAnimated: 0
+ - _OutlineStencilZFailOp: 0
+ - _OutlineStencilZFailOpAnimated: 0
+ - _OutlineTextureAnimated: 0
+ - _OutlineTexturePanAnimated: 0
+ - _OutlineTextureUV: 0
+ - _OutlineTintMix: 0
+ - _OutlineTintMixAnimated: 0
+ - _OutlineUseVertexColors: 0
+ - _OutlineUseVertexColorsAnimated: 0
+ - _PanoBlend: 0
+ - _PanoBlendAnimated: 0
+ - _PanoCubeMapAnimated: 0
+ - _PanoCubeMapToggle: 0
+ - _PanoCubeMapToggleAnimated: 0
+ - _PanoEmission: 0
+ - _PanoEmissionAnimated: 0
+ - _PanoInfiniteStereoToggle: 0
+ - _PanoInfiniteStereoToggleAnimated: 0
+ - _PanoMaskAnimated: 0
+ - _PanoMaskPanAnimated: 0
+ - _PanoMaskUV: 0
+ - _PanoMaskUVAnimated: 0
+ - _PanoToggle: 0
+ - _PanoToggleAnimated: 0
+ - _PanosphereColorAnimated: 0
+ - _PanospherePanAnimated: 0
+ - _PanosphereTextureAnimated: 0
+ - _Parallax: 0.02
+ - _ParallaxBias: 0.42
+ - _ParallaxBiasAnimated: 0
+ - _ParallaxHeightMapAnimated: 0
+ - _ParallaxHeightMapEnabled: 0
+ - _ParallaxHeightMapEnabledAnimated: 0
+ - _ParallaxHeightMapMaskAnimated: 0
+ - _ParallaxHeightMapMaskPanAnimated: 0
+ - _ParallaxHeightMapMaskUV: 0
+ - _ParallaxHeightMapMaskUVAnimated: 0
+ - _ParallaxHeightMapPanAnimated: 0
+ - _ParallaxInternalHeightFromAlpha: 0
+ - _ParallaxInternalHeightFromAlphaAnimated: 0
+ - _ParallaxInternalHeightmapMode: 0
+ - _ParallaxInternalHeightmapModeAnimated: 0
+ - _ParallaxInternalIterations: 1
+ - _ParallaxInternalIterationsAnimated: 0
+ - _ParallaxInternalMapAnimated: 0
+ - _ParallaxInternalMapEnabled: 0
+ - _ParallaxInternalMapEnabledAnimated: 0
+ - _ParallaxInternalMapMaskAnimated: 0
+ - _ParallaxInternalMapMaskPanAnimated: 0
+ - _ParallaxInternalMapMaskUV: 0
+ - _ParallaxInternalMapMaskUVAnimated: 0
+ - _ParallaxInternalMaxColorAnimated: 0
+ - _ParallaxInternalMaxDepth: 1
+ - _ParallaxInternalMaxDepthAnimated: 0
+ - _ParallaxInternalMaxFade: 1
+ - _ParallaxInternalMaxFadeAnimated: 0
+ - _ParallaxInternalMinColorAnimated: 0
+ - _ParallaxInternalMinDepth: 0
+ - _ParallaxInternalMinDepthAnimated: 0
+ - _ParallaxInternalMinFade: 0
+ - _ParallaxInternalMinFadeAnimated: 0
+ - _ParallaxInternalPanDepthSpeedAnimated: 0
+ - _ParallaxInternalPanSpeedAnimated: 0
+ - _ParallaxMap: 0
+ - _ParallaxMapAnimated: 0
+ - _ParallaxStrength: 0
+ - _ParallaxStrengthAnimated: 0
+ - _ParallaxUV: 0
+ - _ParallaxUVAnimated: 0
+ - _RGBBlendMultiplicative: 0
+ - _RGBBlendMultiplicativeAnimated: 0
+ - _RGBBluePanningAnimated: 0
+ - _RGBBlue_UV: 0
+ - _RGBBlue_UVAnimated: 0
+ - _RGBGreenPanningAnimated: 0
+ - _RGBGreen_UV: 0
+ - _RGBGreen_UVAnimated: 0
+ - _RGBMaskAnimated: 0
+ - _RGBMaskEnabled: 0
+ - _RGBMaskEnabledAnimated: 0
+ - _RGBMaskPanningAnimated: 0
+ - _RGBMaskUV: 0
+ - _RGBMaskUVAnimated: 0
+ - _RGBNormalBlend: 0
+ - _RGBNormalBlendAnimated: 0
+ - _RGBRedPanningAnimated: 0
+ - _RGBRed_UV: 0
+ - _RGBRed_UVAnimated: 0
+ - _RGBUseVertexColors: 0
+ - _RGBUseVertexColorsAnimated: 0
+ - _RedColorAnimated: 0
+ - _RedTexureAnimated: 0
+ - _RefractionChromaticAberattionAnimated: 0
+ - _RefractionEnabledAnimated: 0
+ - _RefractionIndexAnimated: 0
+ - _RgbNormalBScale: 0
+ - _RgbNormalBUV: 0
+ - _RgbNormalGScale: 0
+ - _RgbNormalGUV: 0
+ - _RgbNormalRScale: 0
+ - _RgbNormalRUV: 0
+ - _RgbNormalsEnabled: 0
+ - _RimBrighten: 0
+ - _RimBrightenAnimated: 0
+ - _RimEnviroBlur: 0.7
+ - _RimEnviroBlurAnimated: 0
+ - _RimEnviroIntensity: 1
+ - _RimEnviroIntensityAnimated: 0
+ - _RimEnviroMaskAnimated: 0
+ - _RimEnviroMaskPanAnimated: 0
+ - _RimEnviroMaskUV: 0
+ - _RimEnviroMaskUVAnimated: 0
+ - _RimEnviroMinBrightness: 0
+ - _RimEnviroMinBrightnessAnimated: 0
+ - _RimEnviroSharpness: 0
+ - _RimEnviroSharpnessAnimated: 0
+ - _RimEnviroWidth: 0.45
+ - _RimEnviroWidthAnimated: 0
+ - _RimLightColorAnimated: 0
+ - _RimLightColorBias: 0
+ - _RimLightColorBiasAnimated: 0
+ - _RimLightNormal: 1
+ - _RimLightNormalAnimated: 0
+ - _RimLightingInvert: 0
+ - _RimLightingInvertAnimated: 0
+ - _RimMaskAnimated: 0
+ - _RimMaskPanAnimated: 0
+ - _RimMaskUV: 0
+ - _RimMaskUVAnimated: 0
+ - _RimSharpness: 0.25
+ - _RimSharpnessAnimated: 0
+ - _RimStrength: 0
+ - _RimStrengthAnimated: 0
+ - _RimTexAnimated: 0
+ - _RimTexPanAnimated: 0
+ - _RimTexUV: 0
+ - _RimTexUVAnimated: 0
+ - _RimWidth: 0.8
+ - _RimWidthAnimated: 0
+ - _RimWidthNoiseStrength: 0.1
+ - _RimWidthNoiseStrengthAnimated: 0
+ - _RimWidthNoiseTextureAnimated: 0
+ - _RimWidthNoiseTexturePanAnimated: 0
+ - _RimWidthNoiseTextureUV: 0
+ - _RimWidthNoiseTextureUVAnimated: 0
+ - _SSSColorAnimated: 0
+ - _SSSDistortion: 1
+ - _SSSDistortionAnimated: 0
+ - _SSSPower: 5
+ - _SSSPowerAnimated: 0
+ - _SSSSCale: 0.25
+ - _SSSSCaleAnimated: 0
+ - _SSSThicknessMapAnimated: 0
+ - _SSSThicknessMapPanAnimated: 0
+ - _SSSThicknessMapUV: 0
+ - _SSSThicknessMapUVAnimated: 0
+ - _SSSThicknessMod: 0
+ - _SSSThicknessModAnimated: 0
+ - _SampleWorld: 0
+ - _SampleWorldAnimated: 0
+ - _Saturation: 0
+ - _SaturationAnimated: 0
+ - _ScrollingEmission: 0
+ - _ScrollingEmission1: 0
+ - _ScrollingEmission1Animated: 0
+ - _ScrollingEmissionAnimated: 0
+ - _ShaderOptimizerEnabled: 1
+ - _ShadowMix: 0
+ - _ShadowMixAnimated: 0
+ - _ShadowMixThreshold: 0.5
+ - _ShadowMixThresholdAnimated: 0
+ - _ShadowMixWidthMod: 0.5
+ - _ShadowMixWidthModAnimated: 0
+ - _ShadowOffset: 0
+ - _ShadowOffsetAnimated: 0
+ - _ShadowStrength: 1
+ - _ShadowStrengthAnimated: 0
+ - _Smoothness: 0
+ - _SmoothnessAnimated: 0
+ - _SmoothnessFrom: 1
+ - _SmoothnessFrom1: 1
+ - _SmoothnessFrom1Animated: 0
+ - _SmoothnessFromAnimated: 0
+ - _SmoothnessMaskAnimated: 0
+ - _SmoothnessMaskPanAnimated: 0
+ - _SmoothnessMaskUV: 0
+ - _SmoothnessMaskUVAnimated: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpawnInAlphaAnimated: 0
+ - _SpawnInEmissionColorAnimated: 0
+ - _SpawnInEmissionOffsetAnimated: 0
+ - _SpawnInGradientFinishAnimated: 0
+ - _SpawnInGradientStartAnimated: 0
+ - _SpawnInNoiseAnimated: 0
+ - _SpawnInNoiseIntensityAnimated: 0
+ - _SpawnInVertOffsetAnimated: 0
+ - _SpawnInVertOffsetOffsetAnimated: 0
+ - _Spec1Offset: 0
+ - _Spec1Offset1: 0
+ - _Spec1Offset1Animated: 0
+ - _Spec1OffsetAnimated: 0
+ - _Spec2Smoothness: 0
+ - _Spec2Smoothness1: 0
+ - _Spec2Smoothness1Animated: 0
+ - _Spec2SmoothnessAnimated: 0
+ - _SpecWhatTangent: 0
+ - _SpecWhatTangent1: 0
+ - _SpecWhatTangent1Animated: 0
+ - _SpecWhatTangentAnimated: 0
+ - _SpecularAnisoJitterMacro1Animated: 0
+ - _SpecularAnisoJitterMacro1PanAnimated: 0
+ - _SpecularAnisoJitterMacro1UV: 0
+ - _SpecularAnisoJitterMacro1UVAnimated: 0
+ - _SpecularAnisoJitterMacroAnimated: 0
+ - _SpecularAnisoJitterMacroMultiplier: 0
+ - _SpecularAnisoJitterMacroMultiplier1: 0
+ - _SpecularAnisoJitterMacroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMacroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMacroPanAnimated: 0
+ - _SpecularAnisoJitterMacroUV: 0
+ - _SpecularAnisoJitterMacroUVAnimated: 0
+ - _SpecularAnisoJitterMicro1Animated: 0
+ - _SpecularAnisoJitterMicro1PanAnimated: 0
+ - _SpecularAnisoJitterMicro1UV: 0
+ - _SpecularAnisoJitterMicro1UVAnimated: 0
+ - _SpecularAnisoJitterMicroAnimated: 0
+ - _SpecularAnisoJitterMicroMultiplier: 0
+ - _SpecularAnisoJitterMicroMultiplier1: 0
+ - _SpecularAnisoJitterMicroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMicroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMicroPanAnimated: 0
+ - _SpecularAnisoJitterMicroUV: 0
+ - _SpecularAnisoJitterMicroUVAnimated: 0
+ - _SpecularAnisoJitterMirrored: 0
+ - _SpecularAnisoJitterMirrored1: 0
+ - _SpecularAnisoJitterMirrored1Animated: 0
+ - _SpecularAnisoJitterMirroredAnimated: 0
+ - _SpecularHighlights: 1
+ - _SpecularInvertSmoothness: 0
+ - _SpecularInvertSmoothness1: 0
+ - _SpecularInvertSmoothness1Animated: 0
+ - _SpecularInvertSmoothnessAnimated: 0
+ - _SpecularMap1Animated: 0
+ - _SpecularMap1PanAnimated: 0
+ - _SpecularMap1UV: 0
+ - _SpecularMap1UVAnimated: 0
+ - _SpecularMapAnimated: 0
+ - _SpecularMapPanAnimated: 0
+ - _SpecularMapUV: 0
+ - _SpecularMapUVAnimated: 0
+ - _SpecularMask1Animated: 0
+ - _SpecularMask1PanAnimated: 0
+ - _SpecularMask1UV: 0
+ - _SpecularMask1UVAnimated: 0
+ - _SpecularMaskAnimated: 0
+ - _SpecularMaskPanAnimated: 0
+ - _SpecularMaskUV: 0
+ - _SpecularMaskUVAnimated: 0
+ - _SpecularMetallic: 0
+ - _SpecularMetallic1: 0
+ - _SpecularMetallic1Animated: 0
+ - _SpecularMetallicAnimated: 0
+ - _SpecularMetallicMap1UV: 0
+ - _SpecularMetallicMapUV: 0
+ - _SpecularNormal: 1
+ - _SpecularNormal1: 1
+ - _SpecularNormal1Animated: 0
+ - _SpecularNormalAnimated: 0
+ - _SpecularSmoothness: 1
+ - _SpecularSmoothness1: 0.75
+ - _SpecularSmoothness1Animated: 0
+ - _SpecularSmoothnessAnimated: 0
+ - _SpecularTint1Animated: 0
+ - _SpecularTintAnimated: 0
+ - _SpecularToonEnd: 1
+ - _SpecularToonEnd1: 1
+ - _SpecularToonEnd1Animated: 0
+ - _SpecularToonEndAnimated: 0
+ - _SpecularToonInnerOuter1Animated: 0
+ - _SpecularToonInnerOuterAnimated: 0
+ - _SpecularToonStart: 0.95
+ - _SpecularToonStart1: 0.95
+ - _SpecularToonStart1Animated: 0
+ - _SpecularToonStartAnimated: 0
+ - _SpecularType: 1
+ - _SpecularType1: 1
+ - _SpecularType1Animated: 0
+ - _SpecularTypeAnimated: 0
+ - _SrcBlend: 1
+ - _SrcBlendAnimated: 0
+ - _StencilCompareFunction: 8
+ - _StencilCompareFunctionAnimated: 0
+ - _StencilFailOp: 0
+ - _StencilFailOpAnimated: 0
+ - _StencilPassOp: 0
+ - _StencilPassOpAnimated: 0
+ - _StencilReadMask: 255
+ - _StencilReadMaskAnimated: 0
+ - _StencilRef: 0
+ - _StencilRefAnimated: 0
+ - _StencilWriteMask: 255
+ - _StencilWriteMaskAnimated: 0
+ - _StencilZFailOp: 0
+ - _StencilZFailOpAnimated: 0
+ - _TextEnabled: 0
+ - _TextEnabledAnimated: 0
+ - _TextFPSColorAnimated: 0
+ - _TextFPSEmissionStrength: 0
+ - _TextFPSEmissionStrengthAnimated: 0
+ - _TextFPSEnabled: 0
+ - _TextFPSEnabledAnimated: 0
+ - _TextFPSOffsetAnimated: 0
+ - _TextFPSPaddingAnimated: 0
+ - _TextFPSRotation: 0
+ - _TextFPSRotationAnimated: 0
+ - _TextFPSScaleAnimated: 0
+ - _TextFPSUV: 0
+ - _TextFPSUVAnimated: 0
+ - _TextGlyphsAnimated: 0
+ - _TextPixelRange: 4
+ - _TextPixelRangeAnimated: 0
+ - _TextPositionColorAnimated: 0
+ - _TextPositionEmissionStrength: 0
+ - _TextPositionEmissionStrengthAnimated: 0
+ - _TextPositionEnabled: 0
+ - _TextPositionEnabledAnimated: 0
+ - _TextPositionOffsetAnimated: 0
+ - _TextPositionPaddingAnimated: 0
+ - _TextPositionRotation: 0
+ - _TextPositionRotationAnimated: 0
+ - _TextPositionScaleAnimated: 0
+ - _TextPositionUV: 0
+ - _TextPositionUVAnimated: 0
+ - _TextTimeColorAnimated: 0
+ - _TextTimeEmissionStrength: 0
+ - _TextTimeEmissionStrengthAnimated: 0
+ - _TextTimeEnabled: 0
+ - _TextTimeEnabledAnimated: 0
+ - _TextTimeOffsetAnimated: 0
+ - _TextTimePaddingAnimated: 0
+ - _TextTimeRotation: 0
+ - _TextTimeRotationAnimated: 0
+ - _TextTimeScaleAnimated: 0
+ - _TextTimeUV: 0
+ - _TextTimeUVAnimated: 0
+ - _ToonRampAnimated: 0
+ - _UVSec: 0
+ - _UseShadowTexture: 0
+ - _UseShadowTextureAnimated: 0
+ - _VertexGlitchFrequencyAnimated: 0
+ - _VertexGlitchStrengthAnimated: 0
+ - _VertexGlitchThresholdAnimated: 0
+ - _VertexManipulationHeight: 0
+ - _VertexManipulationHeightAnimated: 0
+ - _VertexManipulationHeightBias: 0
+ - _VertexManipulationHeightBiasAnimated: 0
+ - _VertexManipulationHeightMaskAnimated: 0
+ - _VertexManipulationHeightPanAnimated: 0
+ - _VertexManipulationHeightUV: 0
+ - _VertexManipulationHeightUVAnimated: 0
+ - _VertexManipulationLocalRotationAnimated: 0
+ - _VertexManipulationLocalScaleAnimated: 0
+ - _VertexManipulationLocalTranslationAnimated: 0
+ - _VertexManipulationWorldTranslationAnimated: 0
+ - _VertexManipulationsEnabled: 0
+ - _VertexRoundingDivision: 500
+ - _VertexRoundingDivisionAnimated: 0
+ - _VertexRoundingEnabled: 0
+ - _VertexRoundingEnabledAnimated: 0
+ - _VertexUnwrap: 0
+ - _VertexUnwrapAnimated: 0
+ - _VideoBacklightAnimated: 0
+ - _VideoCRTPixelEnergizedTimeAnimated: 0
+ - _VideoCRTRefreshRateAnimated: 0
+ - _VideoContrastAnimated: 0
+ - _VideoDebugTextureAnimated: 0
+ - _VideoEnableDebugAnimated: 0
+ - _VideoEnableVideoPlayerAnimated: 0
+ - _VideoGameboyRampAnimated: 0
+ - _VideoMaskPanningAnimated: 0
+ - _VideoMaskTextureAnimated: 0
+ - _VideoOffsetAnimated: 0
+ - _VideoPanningAnimated: 0
+ - _VideoPixelTextureAnimated: 0
+ - _VideoPixelateToResolutionAnimated: 0
+ - _VideoRepeatVideoTextureAnimated: 0
+ - _VideoResolutionAnimated: 0
+ - _VideoSaturationAnimated: 0
+ - _VideoTilingAnimated: 0
+ - _VideoTypeAnimated: 0
+ - _VideoUVNumberAnimated: 0
+ - _VoronoiBlendAnimated: 0
+ - _VoronoiColor0Animated: 0
+ - _VoronoiColor1Animated: 0
+ - _VoronoiEffectsMaterialAlphaAnimated: 0
+ - _VoronoiEmission0Animated: 0
+ - _VoronoiEmission1Animated: 0
+ - _VoronoiEnableRandomCellColorAnimated: 0
+ - _VoronoiGradientAnimated: 0
+ - _VoronoiMaskAnimated: 0
+ - _VoronoiMaskPanAnimated: 0
+ - _VoronoiMaskUVAnimated: 0
+ - _VoronoiNoiseAnimated: 0
+ - _VoronoiNoiseIntensityAnimated: 0
+ - _VoronoiNoisePanAnimated: 0
+ - _VoronoiNoiseUVAnimated: 0
+ - _VoronoiRandomMinMaxBrightnessAnimated: 0
+ - _VoronoiRandomMinMaxSaturationAnimated: 0
+ - _VoronoiScaleAnimated: 0
+ - _VoronoiSpaceAnimated: 0
+ - _VoronoiSpeedAnimated: 0
+ - _VoronoiTypeAnimated: 0
+ - _ZTest: 4
+ - _ZTestAnimated: 0
+ - _ZWrite: 1
+ - _ZWriteAnimated: 0
+ - _commentIfZero_EnableOutlinePass: 0
+ - _commentIfZero_LightingAdditiveEnable: 1
+ - _commentIfZero_LightingAdditiveEnableAnimated: 0
+ - _glitterFrequencyLinearEmissive: 20
+ - _glitterFrequencyLinearEmissiveAnimated: 0
+ - footer_discord: 0
+ - footer_github: 0
+ - footer_patreon: 0
+ - footer_twitter: 0
+ - footer_youtube: 0
+ - m_LockingInfo: 0
+ - m_ParallaxMap: 0
+ - m_Special_Effects: 0
+ - m_end_Alpha: 0
+ - m_end_BonusSliders: 0
+ - m_end_CenterOutEmission: 0
+ - m_end_CenterOutEmission1: 0
+ - m_end_DecalSection: 0
+ - m_end_DetailOptions: 0
+ - m_end_Lighting: 0
+ - m_end_MainHueShift: 0
+ - m_end_MainVertexColors: 0
+ - m_end_Matcap2: 0
+ - m_end_Metallic: 0
+ - m_end_OutlineStencil: 0
+ - m_end_RGBMask: 0
+ - m_end_ShadowMix: 0
+ - m_end_StencilPassOptions: 0
+ - m_end_Text: 0
+ - m_end_TextFPS: 0
+ - m_end_TextInstanceTime: 0
+ - m_end_TextPosition: 0
+ - m_end_ambientOcclusion: 0
+ - m_end_angularFade: 0
+ - m_end_backFace: 0
+ - m_end_bakedLighting: 0
+ - m_end_blending: 0
+ - m_end_blinkingEmissionOptions: 0
+ - m_end_blinkingEmissionOptions1: 0
+ - m_end_clearCoat: 0
+ - m_end_debugOptions: 0
+ - m_end_detailShadows: 0
+ - m_end_dissolve: 0
+ - m_end_dissolveMasking: 0
+ - m_end_distanceFade: 0
+ - m_end_distortionFlow: 0
+ - m_end_emission1Options: 0
+ - m_end_emissionOptions: 0
+ - m_end_flipBook: 0
+ - m_end_glitter: 0
+ - m_end_glitterRandom: 0
+ - m_end_glowInDarkEmissionOptions: 0
+ - m_end_glowInDarkEmissionOptions1: 0
+ - m_end_lightingAdvanced: 0
+ - m_end_lightingHSL: 0
+ - m_end_lightingModifiers: 0
+ - m_end_manualFlipbookControl: 0
+ - m_end_matcap: 0
+ - m_end_mirrorOptions: 0
+ - m_end_outlineAdvanced: 0
+ - m_end_panosphereOptions: 0
+ - m_end_parallaxAdvanced: 0
+ - m_end_parallaxHeightmap: 0
+ - m_end_parallaxInternal: 0
+ - m_end_pointToPoint: 0
+ - m_end_reflectionRim: 0
+ - m_end_rimLightOptions: 0
+ - m_end_rimWidthNoise: 0
+ - m_end_scrollingEmission1Options: 0
+ - m_end_scrollingEmissionOptions: 0
+ - m_end_shadowTexture: 0
+ - m_end_specular: 0
+ - m_end_specular1: 0
+ - m_end_subsurface: 0
+ - m_end_vertexManipulation: 0
+ - m_lightingOptions: 0
+ - m_mainOptions: 0
+ - m_outlineOptions: 0
+ - m_renderingOptions: 0
+ - m_start_Alpha: 0
+ - m_start_BonusSliders: 0
+ - m_start_CenterOutEmission: 0
+ - m_start_CenterOutEmission1: 0
+ - m_start_DecalSection: 0
+ - m_start_DetailOptions: 0
+ - m_start_Lighting: 0
+ - m_start_MainHueShift: 0
+ - m_start_MainVertexColors: 0
+ - m_start_Matcap2: 0
+ - m_start_Metallic: 0
+ - m_start_OutlineStencil: 0
+ - m_start_RGBMask: 0
+ - m_start_ShadowMix: 0
+ - m_start_StencilPassOptions: 0
+ - m_start_Text: 0
+ - m_start_TextFPS: 0
+ - m_start_TextInstanceTime: 0
+ - m_start_TextPosition: 0
+ - m_start_ambientOcclusion: 0
+ - m_start_angularFade: 0
+ - m_start_backFace: 0
+ - m_start_bakedLighting: 0
+ - m_start_blending: 0
+ - m_start_blinkingEmissionOptions: 0
+ - m_start_blinkingEmissionOptions1: 0
+ - m_start_clearCoat: 0
+ - m_start_debugOptions: 0
+ - m_start_detailShadows: 0
+ - m_start_dissolve: 0
+ - m_start_dissolveMasking: 0
+ - m_start_distanceFade: 0
+ - m_start_distortionFlow: 0
+ - m_start_emission1Options: 0
+ - m_start_emissionOptions: 0
+ - m_start_flipBook: 0
+ - m_start_glitter: 0
+ - m_start_glitterRandom: 0
+ - m_start_glowInDarkEmissionOptions: 0
+ - m_start_glowInDarkEmissionOptions1: 0
+ - m_start_lightingAdvanced: 0
+ - m_start_lightingHSL: 0
+ - m_start_lightingModifiers: 0
+ - m_start_manualFlipbookControl: 0
+ - m_start_matcap: 0
+ - m_start_mirrorOptions: 0
+ - m_start_outlineAdvanced: 0
+ - m_start_panosphereOptions: 0
+ - m_start_parallaxAdvanced: 0
+ - m_start_parallaxHeightmap: 0
+ - m_start_parallaxInternal: 0
+ - m_start_pointToPoint: 0
+ - m_start_reflectionRim: 0
+ - m_start_rimLightOptions: 0
+ - m_start_rimWidthNoise: 0
+ - m_start_scrollingEmissionOptions: 0
+ - m_start_scrollingEmissionOptions1: 0
+ - m_start_shadowTexture: 0
+ - m_start_specular: 0
+ - m_start_specular1: 0
+ - m_start_subsurface: 0
+ - m_start_vertexManipulation: 0
+ - shader_is_using_thry_editor: 0
+ - shader_master_label: 0
+ - shader_presets: 0
+ - shader_properties_label_file: 0
+ m_Colors:
+ - _AlphaMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _AngleForwardDirection: {r: 0, g: 0, b: 1, a: 0}
+ - _AnisoTangentMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _AnisoTangentMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _BackFaceColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BackFacePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _BlueColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BumpMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatSmoothnessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatTint: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DecalPosition: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DecalScale: {r: 1, g: 1, b: 0, a: 0}
+ - _DecalTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailNormalMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTint: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveDetailNoisePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveEdgeColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveEndPoint: {r: 0, g: 1, b: 0, a: 0}
+ - _DissolveMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveStartPoint: {r: 0, g: -1, b: 0, a: 0}
+ - _DissolveTextureColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveToTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionSpeed: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DistortionSpeed1: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionColor1: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissiveScroll_Direction: {r: 0, g: -10, b: 0, a: 0}
+ - _EmissiveScroll_Direction1: {r: 0, g: -10, b: 0, a: 0}
+ - _FlipbookColor: {r: 1, g: 1, b: 1, a: 1}
+ - _FlipbookMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _FlipbookScaleOffset: {r: 1, g: 1, b: 0, a: 0}
+ - _FlipbookTexArrayPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterColor: {r: 1, g: 1, b: 1, a: 1}
+ - _GlitterColorMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMinMaxBrightness: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSaturation: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSize: {r: 0.1, g: 0.5, b: 0, a: 1}
+ - _GlitterPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _GreenColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingAOTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingDetailShadowsPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingShadowMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _LineColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MainDistanceFade: {r: 0, g: 0, b: 0, a: 0}
+ - _MainFadeTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainHueShiftMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _Matcap2Color: {r: 1, g: 1, b: 1, a: 1}
+ - _Matcap2MaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MatcapColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MatcapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetalReflectionTint: {r: 1, g: 1, b: 1, a: 1}
+ - _MetallicMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetallicTintMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MirrorTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineDropShadowOffset: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineFadeDistance: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlinePersonaDirection: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanoMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanosphereColor: {r: 1, g: 1, b: 1, a: 1}
+ - _PanospherePan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMaxColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalMinColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalPanDepthSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalPanSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBBluePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBGreenPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBMaskPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBRedPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RedColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RgbNormalBPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalGPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalRPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimEnviroMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimLightColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RimMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimWidthNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _SSSColor: {r: 1, g: 0, b: 0, a: 1}
+ - _SSSThicknessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SmoothnessMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularTint: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularTint1: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularToonInnerOuter: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _SpecularToonInnerOuter1: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _TextFPSColor: {r: 1, g: 1, b: 1, a: 1}
+ - _TextFPSOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextPositionColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextPositionOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextTimeColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextTimeOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimePadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimeScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationHeightPan: {r: 0, g: 0, b: 0, a: 0}
+ - _VertexManipulationLocalRotation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationLocalScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationLocalTranslation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationWorldTranslation: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.mat.meta
new file mode 100644
index 00000000..38ebc363
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 4e3d71837aaf50d42a3022b67e548d2d
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.png b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.png
new file mode 100644
index 00000000..4bde2bd7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.png
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.png.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.png.meta
new file mode 100644
index 00000000..c2f80c17
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Face.png.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: e3874f8522ff2c943b83628dcf248c97
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 1
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.mat
new file mode 100644
index 00000000..d9b274ed
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.mat
@@ -0,0 +1,1855 @@
+%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: R2Changyu01001Hair
+ m_Shader: {fileID: 4800000, guid: ee904f95d5aaf6142b19f4df3c93a424, type: 3}
+ m_ShaderKeywords: VIGNETTE_MASKED _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap:
+ OptimizedShaderFolder: R2Changyu01001Hair-582d4d06
+ OriginalShader: ".poiyomi/\u2022 Poiyomi Toon \u2022"
+ RenderType: Opaque
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _AlphaMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BackFaceTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BlueTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatCubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatSmoothnessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _CubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalTexture:
+ 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}
+ - _DetailTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveDetailNoise:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveEdgeGradient:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveToTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionMask:
+ 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}
+ - _EmissionMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookTexArray:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterColorMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GreenTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingAOTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingDetailShadows:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainFadeTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainHueShiftMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: 2d7abbdf239bc314ca1cff905d7570b1, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2Mask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MatcapMask:
+ 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}
+ - _MetallicMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicTintMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MirrorTexture:
+ 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}
+ - _OutlineMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OutlineTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoCubeMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanosphereTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMapMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMapMask:
+ 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}
+ - _RGBMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RedTexure:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalB:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalG:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalR:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimEnviroMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimWidthNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SSSThicknessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SmoothnessMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _TextGlyphs:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ToonRamp:
+ m_Texture: {fileID: 2800000, guid: 61bd594533da4fc42bd46ef93ba5a4f6, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _VertexManipulationHeightMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - DSGI: 0
+ - Instancing: 0
+ - LightmapFlags: 0
+ - _AOStrength: 1
+ - _AOStrengthAnimated: 0
+ - _AlphaMaskAnimated: 0
+ - _AlphaMaskPanAnimated: 0
+ - _AlphaMaskUV: 0
+ - _AlphaMaskUVAnimated: 0
+ - _AlphaMod: 0
+ - _AlphaModAnimated: 0
+ - _AlphaPremultiply: 0
+ - _AlphaPremultiplyAnimated: 0
+ - _AlphaToMask: 0
+ - _AlphaToMaskAnimated: 0
+ - _AngleCompareTo: 0
+ - _AngleCompareToAnimated: 0
+ - _AngleForwardDirectionAnimated: 0
+ - _AngleMinAlpha: 0
+ - _AngleMinAlphaAnimated: 0
+ - _AngleType: 0
+ - _AngleTypeAnimated: 0
+ - _AnisoSpec1Alpha: 1
+ - _AnisoSpec1Alpha1: 1
+ - _AnisoSpec1Alpha1Animated: 0
+ - _AnisoSpec1AlphaAnimated: 0
+ - _AnisoSpec2Alpha: 1
+ - _AnisoSpec2Alpha1: 1
+ - _AnisoSpec2Alpha1Animated: 0
+ - _AnisoSpec2AlphaAnimated: 0
+ - _AnisoTangentMap1Animated: 0
+ - _AnisoTangentMap1PanAnimated: 0
+ - _AnisoTangentMap1UV: 0
+ - _AnisoTangentMap1UVAnimated: 0
+ - _AnisoTangentMapAnimated: 0
+ - _AnisoTangentMapPanAnimated: 0
+ - _AnisoTangentMapUV: 0
+ - _AnisoTangentMapUVAnimated: 0
+ - _AnisoUseTangentMap: 0
+ - _AnisoUseTangentMap1: 0
+ - _AnisoUseTangentMap1Animated: 0
+ - _AnisoUseTangentMapAnimated: 0
+ - _AttenuationMultiplier: 0
+ - _AttenuationMultiplierAnimated: 0
+ - _BackFaceDetailIntensity: 1
+ - _BackFaceEmissionStrength: 0
+ - _BackFaceEnabled: 0
+ - _BackFaceHueShift: 0
+ - _BackFaceTextureUV: 0
+ - _BlackLightMaskClearCoatAnimated: 0
+ - _BlackLightMaskDebugAnimated: 0
+ - _BlackLightMaskDissolveAnimated: 0
+ - _BlackLightMaskEmission2Animated: 0
+ - _BlackLightMaskEmissionAnimated: 0
+ - _BlackLightMaskEnabledAnimated: 0
+ - _BlackLightMaskEndAnimated: 0
+ - _BlackLightMaskFlipbookAnimated: 0
+ - _BlackLightMaskGlitterAnimated: 0
+ - _BlackLightMaskIridescenceAnimated: 0
+ - _BlackLightMaskKeysAnimated: 0
+ - _BlackLightMaskMatcap2Animated: 0
+ - _BlackLightMaskMatcapAnimated: 0
+ - _BlackLightMaskMetallicAnimated: 0
+ - _BlackLightMaskPanosphereAnimated: 0
+ - _BlackLightMaskStartAnimated: 0
+ - _BlendOp: 0
+ - _BlendOpAlpha: 0
+ - _BlendOpAlphaAnimated: 0
+ - _BlendOpAnimated: 0
+ - _BlueColorAnimated: 0
+ - _BlueTextureAnimated: 0
+ - _BuldgeFadeLengthAnimated: 0
+ - _BuldgeHeightAnimated: 0
+ - _BulgeMaskAnimated: 0
+ - _BumpMapAnimated: 0
+ - _BumpMapPanAnimated: 0
+ - _BumpMapUV: 0
+ - _BumpMapUVAnimated: 0
+ - _BumpScale: 1
+ - _BumpScaleAnimated: 0
+ - _CameraAngleMax: 90
+ - _CameraAngleMaxAnimated: 0
+ - _CameraAngleMin: 45
+ - _CameraAngleMinAnimated: 0
+ - _ClearCoat: 1
+ - _ClearCoatAnimated: 0
+ - _ClearCoatCubeMapAnimated: 0
+ - _ClearCoatForceLighting: 0
+ - _ClearCoatForceLightingAnimated: 0
+ - _ClearCoatInvertSmoothness: 0
+ - _ClearCoatInvertSmoothnessAnimated: 0
+ - _ClearCoatMaskAnimated: 0
+ - _ClearCoatMaskPanAnimated: 0
+ - _ClearCoatMaskUV: 0
+ - _ClearCoatMaskUVAnimated: 0
+ - _ClearCoatNormalToUse: 0
+ - _ClearCoatNormalToUseAnimated: 0
+ - _ClearCoatSampleWorld: 0
+ - _ClearCoatSampleWorldAnimated: 0
+ - _ClearCoatSmoothness: 0
+ - _ClearCoatSmoothnessAnimated: 0
+ - _ClearCoatSmoothnessMapAnimated: 0
+ - _ClearCoatSmoothnessMapPanAnimated: 0
+ - _ClearCoatSmoothnessMapUV: 0
+ - _ClearCoatSmoothnessMapUVAnimated: 0
+ - _ClearCoatTintAnimated: 0
+ - _ColorAnimated: 0
+ - _ColorMask: 15
+ - _ColorMaskAnimated: 0
+ - _ContinuousDissolve: 0
+ - _ContinuousDissolveAnimated: 0
+ - _CubeMapAnimated: 0
+ - _Cull: 2
+ - _CullAnimated: 0
+ - _Cutoff: 0.5
+ - _CutoffAnimated: 0
+ - _DebugCameraData: 0
+ - _DebugCameraDataAnimated: 0
+ - _DebugEnabled: 0
+ - _DebugLightingData: 0
+ - _DebugLightingDataAnimated: 0
+ - _DebugMeshData: 0
+ - _DebugMeshDataAnimated: 0
+ - _DecalBlendAdd: 0
+ - _DecalBlendAddAnimated: 0
+ - _DecalBlendMultiply: 0
+ - _DecalBlendMultiplyAnimated: 0
+ - _DecalBlendReplace: 0
+ - _DecalBlendReplaceAnimated: 0
+ - _DecalColorAnimated: 0
+ - _DecalEmissionStrength: 0
+ - _DecalEmissionStrengthAnimated: 0
+ - _DecalEnabled: 0
+ - _DecalEnabledAnimated: 0
+ - _DecalMaskAnimated: 0
+ - _DecalMaskPanAnimated: 0
+ - _DecalMaskUV: 0
+ - _DecalMaskUVAnimated: 0
+ - _DecalPositionAnimated: 0
+ - _DecalRotation: 0
+ - _DecalRotationAnimated: 0
+ - _DecalRotationSpeed: 0
+ - _DecalRotationSpeedAnimated: 0
+ - _DecalScaleAnimated: 0
+ - _DecalTextureAnimated: 0
+ - _DecalTexturePanAnimated: 0
+ - _DecalTextureUV: 0
+ - _DecalTextureUVAnimated: 0
+ - _DecalTiled: 0
+ - _DecalTiledAnimated: 0
+ - _DepthAlphaMaxAnimated: 0
+ - _DepthAlphaMinAnimated: 0
+ - _DepthGlowColorAnimated: 0
+ - _DepthGlowEmissionAnimated: 0
+ - _DepthGradientAnimated: 0
+ - _DepthGradientBlendAnimated: 0
+ - _DepthGradientPanAnimated: 0
+ - _DepthGradientTextureUVAnimated: 0
+ - _DepthGradientUVAnimated: 0
+ - _DepthMaskAnimated: 0
+ - _DepthMaskPanAnimated: 0
+ - _DepthMaskUVAnimated: 0
+ - _DetailBrightness: 1
+ - _DetailBrightnessAnimated: 0
+ - _DetailEnabled: 0
+ - _DetailMaskAnimated: 0
+ - _DetailMaskPanAnimated: 0
+ - _DetailMaskUV: 0
+ - _DetailMaskUVAnimated: 0
+ - _DetailNormalMapAnimated: 0
+ - _DetailNormalMapPanAnimated: 0
+ - _DetailNormalMapScale: 1
+ - _DetailNormalMapScaleAnimated: 0
+ - _DetailNormalMapUV: 0
+ - _DetailNormalMapUVAnimated: 0
+ - _DetailTexAnimated: 0
+ - _DetailTexIntensity: 1
+ - _DetailTexIntensityAnimated: 0
+ - _DetailTexPanAnimated: 0
+ - _DetailTexUV: 0
+ - _DetailTexUVAnimated: 0
+ - _DetailTintAnimated: 0
+ - _DisableDirectionalInAdd: 1
+ - _DissolveAlpha: 0
+ - _DissolveAlpha0: 0
+ - _DissolveAlpha0Animated: 0
+ - _DissolveAlpha1: 0
+ - _DissolveAlpha1Animated: 0
+ - _DissolveAlpha2: 0
+ - _DissolveAlpha2Animated: 0
+ - _DissolveAlpha3: 0
+ - _DissolveAlpha3Animated: 0
+ - _DissolveAlpha4: 0
+ - _DissolveAlpha4Animated: 0
+ - _DissolveAlpha5: 0
+ - _DissolveAlpha5Animated: 0
+ - _DissolveAlpha6: 0
+ - _DissolveAlpha6Animated: 0
+ - _DissolveAlpha7: 0
+ - _DissolveAlpha7Animated: 0
+ - _DissolveAlpha8: 0
+ - _DissolveAlpha8Animated: 0
+ - _DissolveAlpha9: 0
+ - _DissolveAlpha9Animated: 0
+ - _DissolveAlphaAnimated: 0
+ - _DissolveDetailNoiseAnimated: 0
+ - _DissolveDetailNoisePanAnimated: 0
+ - _DissolveDetailNoiseUV: 0
+ - _DissolveDetailNoiseUVAnimated: 0
+ - _DissolveDetailStrength: 0.1
+ - _DissolveDetailStrengthAnimated: 0
+ - _DissolveEdgeColorAnimated: 0
+ - _DissolveEdgeEmission: 0
+ - _DissolveEdgeEmissionAnimated: 0
+ - _DissolveEdgeGradientAnimated: 0
+ - _DissolveEdgeHardness: 0.5
+ - _DissolveEdgeHardnessAnimated: 0
+ - _DissolveEdgeWidth: 0.025
+ - _DissolveEdgeWidthAnimated: 0
+ - _DissolveEmission1Side: 2
+ - _DissolveEmission1SideAnimated: 0
+ - _DissolveEmissionSide: 2
+ - _DissolveEmissionSideAnimated: 0
+ - _DissolveEndPointAnimated: 0
+ - _DissolveInvertDetailNoise: 0
+ - _DissolveInvertDetailNoiseAnimated: 0
+ - _DissolveInvertNoise: 0
+ - _DissolveInvertNoiseAnimated: 0
+ - _DissolveMaskAnimated: 0
+ - _DissolveMaskInvert: 0
+ - _DissolveMaskInvertAnimated: 0
+ - _DissolveMaskPanAnimated: 0
+ - _DissolveMaskUV: 0
+ - _DissolveMaskUVAnimated: 0
+ - _DissolveNoiseTextureAnimated: 0
+ - _DissolveNoiseTexturePanAnimated: 0
+ - _DissolveNoiseTextureUV: 0
+ - _DissolveNoiseTextureUVAnimated: 0
+ - _DissolveP2PEdgeLength: 0.1
+ - _DissolveP2PEdgeLengthAnimated: 0
+ - _DissolveP2PWorldLocal: 0
+ - _DissolveP2PWorldLocalAnimated: 0
+ - _DissolveStartPointAnimated: 0
+ - _DissolveTextureColorAnimated: 0
+ - _DissolveToEmissionStrength: 0
+ - _DissolveToEmissionStrengthAnimated: 0
+ - _DissolveToTextureAnimated: 0
+ - _DissolveToTexturePanAnimated: 0
+ - _DissolveToTextureUV: 0
+ - _DissolveToTextureUVAnimated: 0
+ - _DissolveType: 1
+ - _DissolveTypeAnimated: 0
+ - _DissolveUseVertexColors: 0
+ - _DissolveUseVertexColorsAnimated: 0
+ - _DistortionFlowTexture1Animated: 0
+ - _DistortionFlowTextureAnimated: 0
+ - _DistortionMaskAnimated: 0
+ - _DistortionMaskPanAnimated: 0
+ - _DistortionMaskUV: 0
+ - _DistortionMaskUVAnimated: 0
+ - _DistortionSpeed1Animated: 0
+ - _DistortionSpeedAnimated: 0
+ - _DistortionStrength: 0.5
+ - _DistortionStrength1: 0.5
+ - _DistortionStrength1Animated: 0
+ - _DistortionStrengthAnimated: 0
+ - _DitherGradient: 0.1
+ - _DitherGradientAnimated: 0
+ - _DitheringEnabled: 0
+ - _DitheringEnabledAnimated: 0
+ - _DstBlend: 0
+ - _DstBlendAnimated: 0
+ - _EmissionBaseColorAsMap: 0
+ - _EmissionBaseColorAsMap1: 0
+ - _EmissionBaseColorAsMap1Animated: 0
+ - _EmissionBaseColorAsMapAnimated: 0
+ - _EmissionBlinkingEnabled: 0
+ - _EmissionBlinkingEnabled1: 0
+ - _EmissionBlinkingEnabledAnimated: 0
+ - _EmissionBlinkingOffset: 0
+ - _EmissionBlinkingOffset1: 0
+ - _EmissionBlinkingOffset1Animated: 0
+ - _EmissionBlinkingOffsetAnimated: 0
+ - _EmissionCenterOutEnabled: 0
+ - _EmissionCenterOutEnabled1: 0
+ - _EmissionCenterOutEnabled1Animated: 0
+ - _EmissionCenterOutEnabledAnimated: 0
+ - _EmissionCenterOutSpeed: 5
+ - _EmissionCenterOutSpeed1: 5
+ - _EmissionCenterOutSpeed1Animated: 0
+ - _EmissionCenterOutSpeedAnimated: 0
+ - _EmissionColor1Animated: 0
+ - _EmissionColorAnimated: 0
+ - _EmissionHueShift: 0
+ - _EmissionHueShift1: 0
+ - _EmissionHueShift1Animated: 0
+ - _EmissionHueShiftAnimated: 0
+ - _EmissionHueShiftEnabled: 0
+ - _EmissionHueShiftEnabled1: 0
+ - _EmissionHueShiftEnabled1Animated: 0
+ - _EmissionHueShiftEnabledAnimated: 0
+ - _EmissionMap1Animated: 0
+ - _EmissionMap1PanAnimated: 0
+ - _EmissionMap1UV: 0
+ - _EmissionMap1UVAnimated: 0
+ - _EmissionMapAnimated: 0
+ - _EmissionMapPanAnimated: 0
+ - _EmissionMapUV: 0
+ - _EmissionMapUVAnimated: 0
+ - _EmissionMask1Animated: 0
+ - _EmissionMask1PanAnimated: 0
+ - _EmissionMask1UV: 0
+ - _EmissionMask1UVAnimated: 0
+ - _EmissionMaskAnimated: 0
+ - _EmissionMaskPanAnimated: 0
+ - _EmissionMaskUV: 0
+ - _EmissionMaskUVAnimated: 0
+ - _EmissionReplace: 0
+ - _EmissionReplaceAnimated: 0
+ - _EmissionScrollingCurve1Animated: 0
+ - _EmissionScrollingCurveAnimated: 0
+ - _EmissionScrollingOffset: 0
+ - _EmissionScrollingOffset1: 0
+ - _EmissionScrollingOffset1Animated: 0
+ - _EmissionScrollingOffsetAnimated: 0
+ - _EmissionScrollingUseCurve: 0
+ - _EmissionScrollingUseCurve1: 0
+ - _EmissionScrollingUseCurve1Animated: 0
+ - _EmissionScrollingUseCurveAnimated: 0
+ - _EmissionScrollingVertexColor: 0
+ - _EmissionScrollingVertexColor1: 0
+ - _EmissionScrollingVertexColor1Animated: 0
+ - _EmissionScrollingVertexColorAnimated: 0
+ - _EmissionStrength: 0
+ - _EmissionStrength1: 0
+ - _EmissionStrength1Animated: 0
+ - _EmissionStrengthAnimated: 0
+ - _EmissiveBlink_Max: 1
+ - _EmissiveBlink_Max1: 1
+ - _EmissiveBlink_Max1Animated: 0
+ - _EmissiveBlink_MaxAnimated: 0
+ - _EmissiveBlink_Min: 0
+ - _EmissiveBlink_Min1: 0
+ - _EmissiveBlink_Min1Animated: 0
+ - _EmissiveBlink_MinAnimated: 0
+ - _EmissiveBlink_Velocity: 4
+ - _EmissiveBlink_Velocity1: 4
+ - _EmissiveBlink_Velocity1Animated: 0
+ - _EmissiveBlink_VelocityAnimated: 0
+ - _EmissiveScroll_Direction1Animated: 0
+ - _EmissiveScroll_DirectionAnimated: 0
+ - _EmissiveScroll_Interval: 20
+ - _EmissiveScroll_Interval1: 20
+ - _EmissiveScroll_Interval1Animated: 0
+ - _EmissiveScroll_IntervalAnimated: 0
+ - _EmissiveScroll_Velocity: 10
+ - _EmissiveScroll_Velocity1: 10
+ - _EmissiveScroll_Velocity1Animated: 0
+ - _EmissiveScroll_VelocityAnimated: 0
+ - _EmissiveScroll_Width: 10
+ - _EmissiveScroll_Width1: 10
+ - _EmissiveScroll_Width1Animated: 0
+ - _EmissiveScroll_WidthAnimated: 0
+ - _EnableBlurAnimated: 0
+ - _EnableBulgeAnimated: 0
+ - _EnableClearCoat: 0
+ - _EnableClearCoatAnimated: 0
+ - _EnableDissolve: 0
+ - _EnableDissolveAnimated: 0
+ - _EnableDistortion: 0
+ - _EnableDistortionAnimated: 0
+ - _EnableEmission: 0
+ - _EnableEmission1: 0
+ - _EnableEmission1Animated: 0
+ - _EnableEmissionAnimated: 0
+ - _EnableEnvironmentalRim: 0
+ - _EnableEnvironmentalRimAnimated: 0
+ - _EnableFlipbook: 0
+ - _EnableFlipbookAnimated: 0
+ - _EnableGITDEmission: 0
+ - _EnableGITDEmission1: 0
+ - _EnableGITDEmission1Animated: 0
+ - _EnableGITDEmissionAnimated: 0
+ - _EnableHoloAnimated: 0
+ - _EnableIridescenceAnimated: 0
+ - _EnableLighting: 1
+ - _EnableLightingAnimated: 0
+ - _EnableMetallic: 0
+ - _EnableMetallicAnimated: 0
+ - _EnableMirrorOptions: 0
+ - _EnableMirrorOptionsAnimated: 0
+ - _EnableMirrorTexture: 0
+ - _EnableMirrorTextureAnimated: 0
+ - _EnableRandom: 0
+ - _EnableRandomAnimated: 0
+ - _EnableRimLighting: 0
+ - _EnableRimLightingAnimated: 0
+ - _EnableSSS: 0
+ - _EnableSSSAnimated: 0
+ - _EnableScifiSpawnInAnimated: 0
+ - _EnableSpecular: 0
+ - _EnableSpecular1: 0
+ - _EnableSpecular1Animated: 0
+ - _EnableSpecularAnimated: 0
+ - _EnableTouchGlowAnimated: 0
+ - _EnableVertexGlitchAnimated: 0
+ - _EnableVideoAnimated: 0
+ - _EnableVoronoiAnimated: 0
+ - _FadeLengthAnimated: 0
+ - _FlipbookAdd: 0
+ - _FlipbookAddAnimated: 0
+ - _FlipbookAlphaControlsFinalAlpha: 0
+ - _FlipbookAlphaControlsFinalAlphaAnimated: 0
+ - _FlipbookColorAnimated: 0
+ - _FlipbookColorReplaces: 0
+ - _FlipbookColorReplacesAnimated: 0
+ - _FlipbookCurrentFrame: -1
+ - _FlipbookCurrentFrameAnimated: 0
+ - _FlipbookEmissionStrength: 0
+ - _FlipbookEmissionStrengthAnimated: 0
+ - _FlipbookFPS: 30
+ - _FlipbookFPSAnimated: 0
+ - _FlipbookIntensityControlsAlpha: 0
+ - _FlipbookIntensityControlsAlphaAnimated: 0
+ - _FlipbookMaskAnimated: 0
+ - _FlipbookMaskPanAnimated: 0
+ - _FlipbookMaskUV: 0
+ - _FlipbookMaskUVAnimated: 0
+ - _FlipbookMultiply: 0
+ - _FlipbookMultiplyAnimated: 0
+ - _FlipbookReplace: 1
+ - _FlipbookReplaceAnimated: 0
+ - _FlipbookRotation: 0
+ - _FlipbookRotationAnimated: 0
+ - _FlipbookRotationSpeed: 0
+ - _FlipbookRotationSpeedAnimated: 0
+ - _FlipbookScaleOffsetAnimated: 0
+ - _FlipbookTexArrayAnimated: 0
+ - _FlipbookTexArrayPanAnimated: 0
+ - _FlipbookTexArrayUV: 0
+ - _FlipbookTexArrayUVAnimated: 0
+ - _FlipbookTiled: 0
+ - _FlipbookTiledAnimated: 0
+ - _FlipbookTotalFrames: 1
+ - _FlipbookTotalFramesAnimated: 0
+ - _ForceOpaque: 0
+ - _ForceOpaqueAnimated: 0
+ - _ForgotToLockMaterial: 1
+ - _GIEmissionMultiplier: 1
+ - _GITDEMaxEmissionMultiplier: 0
+ - _GITDEMaxEmissionMultiplier1: 0
+ - _GITDEMaxEmissionMultiplier1Animated: 0
+ - _GITDEMaxEmissionMultiplierAnimated: 0
+ - _GITDEMaxLight: 1
+ - _GITDEMaxLight1: 1
+ - _GITDEMaxLight1Animated: 0
+ - _GITDEMaxLightAnimated: 0
+ - _GITDEMinEmissionMultiplier: 1
+ - _GITDEMinEmissionMultiplier1: 1
+ - _GITDEMinEmissionMultiplier1Animated: 0
+ - _GITDEMinEmissionMultiplierAnimated: 0
+ - _GITDEMinLight: 0
+ - _GITDEMinLight1: 0
+ - _GITDEMinLight1Animated: 0
+ - _GITDEMinLightAnimated: 0
+ - _GITDEWorldOrMesh: 0
+ - _GITDEWorldOrMesh1: 0
+ - _GITDEWorldOrMesh1Animated: 0
+ - _GITDEWorldOrMeshAnimated: 0
+ - _GlitterAngleRange: 90
+ - _GlitterAngleRangeAnimated: 0
+ - _GlitterBias: 0.8
+ - _GlitterBiasAnimated: 0
+ - _GlitterBlendType: 0
+ - _GlitterBlendTypeAnimated: 0
+ - _GlitterBrightness: 3
+ - _GlitterBrightnessAnimated: 0
+ - _GlitterCenterSize: 0.08
+ - _GlitterCenterSizeAnimated: 0
+ - _GlitterColorAnimated: 0
+ - _GlitterColorMapAnimated: 0
+ - _GlitterColorMapPanAnimated: 0
+ - _GlitterColorMapUV: 0
+ - _GlitterColorMapUVAnimated: 0
+ - _GlitterContrast: 300
+ - _GlitterContrastAnimated: 0
+ - _GlitterEnable: 0
+ - _GlitterEnableAnimated: 0
+ - _GlitterFrequency: 300
+ - _GlitterFrequencyAnimated: 0
+ - _GlitterJaggyFix: 0
+ - _GlitterJaggyFixAnimated: 0
+ - _GlitterJitter: 1
+ - _GlitterJitterAnimated: 0
+ - _GlitterMaskAnimated: 0
+ - _GlitterMaskPanAnimated: 0
+ - _GlitterMaskUV: 0
+ - _GlitterMaskUVAnimated: 0
+ - _GlitterMinBrightness: 0
+ - _GlitterMinBrightnessAnimated: 0
+ - _GlitterMinMaxBrightnessAnimated: 0
+ - _GlitterMinMaxSaturationAnimated: 0
+ - _GlitterMinMaxSizeAnimated: 0
+ - _GlitterMode: 0
+ - _GlitterModeAnimated: 0
+ - _GlitterPanAnimated: 0
+ - _GlitterRandomColors: 0
+ - _GlitterRandomColorsAnimated: 0
+ - _GlitterRandomRotation: 0
+ - _GlitterRandomRotationAnimated: 0
+ - _GlitterRandomSize: 0
+ - _GlitterRandomSizeAnimated: 0
+ - _GlitterShape: 0
+ - _GlitterShapeAnimated: 0
+ - _GlitterSize: 0.3
+ - _GlitterSizeAnimated: 0
+ - _GlitterSpeed: 10
+ - _GlitterSpeedAnimated: 0
+ - _GlitterTextureAnimated: 0
+ - _GlitterTexturePanAnimated: 0
+ - _GlitterTextureRotation: 0
+ - _GlitterTextureRotationAnimated: 0
+ - _GlitterUseSurfaceColor: 0
+ - _GlitterUseSurfaceColorAnimated: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0
+ - _GlossyReflections: 1
+ - _GrabBlurDirectionsAnimated: 0
+ - _GrabBlurDistanceAnimated: 0
+ - _GrabBlurQualityAnimated: 0
+ - _GrabDstBlendAnimated: 0
+ - _GrabPassBlendFactorAnimated: 0
+ - _GrabPassUseAlphaAnimated: 0
+ - _GrabSrcBlendAnimated: 0
+ - _GreenColorAnimated: 0
+ - _GreenTextureAnimated: 0
+ - _HelpBoxHideLocking: 0
+ - _HelpBoxLocking: 0
+ - _HoloAlphaMapAnimated: 0
+ - _HoloCoordinateSpaceAnimated: 0
+ - _HoloDirectionAnimated: 0
+ - _HoloFresnelAlphaAnimated: 0
+ - _HoloLineDensityAnimated: 0
+ - _HoloRimSharpnessAnimated: 0
+ - _HoloRimWidthAnimated: 0
+ - _HoloScrollSpeedAnimated: 0
+ - _IgnoreFog: 0
+ - _IgnoreFogAnimated: 0
+ - _InvertSmoothness: 0
+ - _InvertSmoothnessAnimated: 0
+ - _IridescenceAddBlendAnimated: 0
+ - _IridescenceEmissionStrengthAnimated: 0
+ - _IridescenceIntensityAnimated: 0
+ - _IridescenceMaskAnimated: 0
+ - _IridescenceMaskUVAnimated: 0
+ - _IridescenceMultiplyBlendAnimated: 0
+ - _IridescenceNormalIntensityAnimated: 0
+ - _IridescenceNormalMapAnimated: 0
+ - _IridescenceNormalSelectionAnimated: 0
+ - _IridescenceNormalToggleAnimated: 0
+ - _IridescenceNormalUVAnimated: 0
+ - _IridescenceRampAnimated: 0
+ - _IridescenceReplaceBlendAnimated: 0
+ - _IridescenceTimeAnimated: 0
+ - _LightingAOTexAnimated: 0
+ - _LightingAOTexPanAnimated: 0
+ - _LightingAOTexUV: 0
+ - _LightingAOTexUVAnimated: 0
+ - _LightingAdditiveDetailStrength: 1
+ - _LightingAdditiveDetailStrengthAnimated: 0
+ - _LightingAdditiveGradientEnd: 0.5
+ - _LightingAdditiveGradientEndAnimated: 0
+ - _LightingAdditiveGradientStart: 0
+ - _LightingAdditiveGradientStartAnimated: 0
+ - _LightingAdditiveLimitIntensity: 0
+ - _LightingAdditiveLimitIntensityAnimated: 0
+ - _LightingAdditiveMaxIntensity: 1
+ - _LightingAdditiveMaxIntensityAnimated: 0
+ - _LightingAdditivePassthrough: 0.5
+ - _LightingAdditivePassthroughAnimated: 0
+ - _LightingAdditiveType: 1
+ - _LightingAdditiveTypeAnimated: 0
+ - _LightingDetailShadowsAnimated: 0
+ - _LightingDetailShadowsEnabled: 0
+ - _LightingDetailShadowsEnabledAnimated: 0
+ - _LightingDetailShadowsPanAnimated: 0
+ - _LightingDetailShadowsUV: 0
+ - _LightingDetailShadowsUVAnimated: 0
+ - _LightingDetailStrength: 1
+ - _LightingDetailStrengthAnimated: 0
+ - _LightingDirectColorMode: 0
+ - _LightingDirectColorModeAnimated: 0
+ - _LightingEnableAO: 0
+ - _LightingEnableAOAnimated: 0
+ - _LightingEnableHSL: 0
+ - _LightingEnableHSLAnimated: 0
+ - _LightingGradientEnd: 0.5
+ - _LightingGradientEndAnimated: 0
+ - _LightingGradientStart: 0
+ - _LightingGradientStartAnimated: 0
+ - _LightingHSLIntensity: 1
+ - _LightingHSLIntensityAnimated: 0
+ - _LightingIgnoreAmbientColor: 0
+ - _LightingIgnoreAmbientColorAnimated: 0
+ - _LightingIndirectColorMode: 0
+ - _LightingIndirectColorModeAnimated: 0
+ - _LightingMinLightBrightness: 0
+ - _LightingMinLightBrightnessAnimated: 0
+ - _LightingMinShadowBrightnessRatio: 0
+ - _LightingMinShadowBrightnessRatioAnimated: 0
+ - _LightingMode: 0
+ - _LightingModeAnimated: 0
+ - _LightingMonochromatic: 0
+ - _LightingMonochromaticAnimated: 0
+ - _LightingOnlyUnityShadows: 0
+ - _LightingOnlyUnityShadowsAnimated: 0
+ - _LightingRampType: 0
+ - _LightingRampTypeAnimated: 0
+ - _LightingShadingEnabled: 0
+ - _LightingShadingEnabledAnimated: 0
+ - _LightingShadowColorAnimated: 0
+ - _LightingShadowHue: 0.5
+ - _LightingShadowHueAnimated: 0
+ - _LightingShadowLightness: 0.5
+ - _LightingShadowLightnessAnimated: 0
+ - _LightingShadowMaskAnimated: 0
+ - _LightingShadowMaskPanAnimated: 0
+ - _LightingShadowMaskUV: 0
+ - _LightingShadowMaskUVAnimated: 0
+ - _LightingShadowSaturation: 0.5
+ - _LightingShadowSaturationAnimated: 0
+ - _LightingShadowTextureAnimated: 0
+ - _LightingShadowTexturePanAnimated: 0
+ - _LightingShadowTextureUV: 0
+ - _LightingShadowTextureUVAnimated: 0
+ - _LightingStandardSmoothness: 0
+ - _LightingStandardSmoothnessAnimated: 0
+ - _LightingUncapped: 0
+ - _LightingUncappedAnimated: 0
+ - _LineColorAnimated: 0
+ - _LineWidth: 0
+ - _LineWidthAnimated: 0
+ - _LockTooltip: 0
+ - _MainAlphaToCoverage: 0
+ - _MainAlphaToCoverageAnimated: 0
+ - _MainDistanceFadeAnimated: 0
+ - _MainEmissionStrength: 0
+ - _MainEmissionStrengthAnimated: 0
+ - _MainFadeTextureAnimated: 0
+ - _MainFadeTexturePanAnimated: 0
+ - _MainFadeTextureUV: 0
+ - _MainFadeTextureUVAnimated: 0
+ - _MainHueShift: 0
+ - _MainHueShiftAnimated: 0
+ - _MainHueShiftMaskAnimated: 0
+ - _MainHueShiftMaskPanAnimated: 0
+ - _MainHueShiftMaskUV: 0
+ - _MainHueShiftMaskUVAnimated: 0
+ - _MainHueShiftReplace: 1
+ - _MainHueShiftReplaceAnimated: 0
+ - _MainHueShiftSpeed: 0
+ - _MainHueShiftSpeedAnimated: 0
+ - _MainHueShiftToggle: 0
+ - _MainHueShiftToggleAnimated: 0
+ - _MainMinAlpha: 0
+ - _MainMinAlphaAnimated: 0
+ - _MainMipScale: 0.25
+ - _MainMipScaleAnimated: 0
+ - _MainShadowClipMod: 0
+ - _MainShadowClipModAnimated: 0
+ - _MainTexAnimated: 0
+ - _MainTexPanAnimated: 0
+ - _MainTex_STAnimated: 0
+ - _MainTextureUV: 0
+ - _MainTextureUVAnimated: 0
+ - _MainUseVertexColorAlpha: 0
+ - _MainUseVertexColorAlphaAnimated: 0
+ - _MainVertexColoring: 0
+ - _MainVertexColoringAnimated: 0
+ - _Matcap2Add: 0
+ - _Matcap2AddAnimated: 0
+ - _Matcap2Animated: 0
+ - _Matcap2Border: 0.43
+ - _Matcap2BorderAnimated: 0
+ - _Matcap2ColorAnimated: 0
+ - _Matcap2EmissionStrength: 0
+ - _Matcap2EmissionStrengthAnimated: 0
+ - _Matcap2Enable: 0
+ - _Matcap2EnableAnimated: 0
+ - _Matcap2Intensity: 1
+ - _Matcap2IntensityAnimated: 0
+ - _Matcap2LightMask: 0
+ - _Matcap2LightMaskAnimated: 0
+ - _Matcap2MaskAnimated: 0
+ - _Matcap2MaskInvert: 0
+ - _Matcap2MaskInvertAnimated: 0
+ - _Matcap2MaskPanAnimated: 0
+ - _Matcap2MaskUV: 0
+ - _Matcap2MaskUVAnimated: 0
+ - _Matcap2Multiply: 0
+ - _Matcap2MultiplyAnimated: 0
+ - _Matcap2Normal: 1
+ - _Matcap2NormalAnimated: 0
+ - _Matcap2Replace: 0
+ - _Matcap2ReplaceAnimated: 0
+ - _MatcapAdd: 0
+ - _MatcapAddAnimated: 0
+ - _MatcapAnimated: 0
+ - _MatcapBorder: 0.43
+ - _MatcapBorderAnimated: 0
+ - _MatcapColorAnimated: 0
+ - _MatcapEmissionStrength: 0
+ - _MatcapEmissionStrengthAnimated: 0
+ - _MatcapEnable: 0
+ - _MatcapEnableAnimated: 0
+ - _MatcapIntensity: 1
+ - _MatcapIntensityAnimated: 0
+ - _MatcapLightMask: 0
+ - _MatcapLightMaskAnimated: 0
+ - _MatcapMaskAnimated: 0
+ - _MatcapMaskInvert: 0
+ - _MatcapMaskInvertAnimated: 0
+ - _MatcapMaskPanAnimated: 0
+ - _MatcapMaskUV: 0
+ - _MatcapMaskUVAnimated: 0
+ - _MatcapMultiply: 0
+ - _MatcapMultiplyAnimated: 0
+ - _MatcapNormal: 1
+ - _MatcapNormalAnimated: 0
+ - _MatcapReplace: 1
+ - _MatcapReplaceAnimated: 0
+ - _MetalReflectionTintAnimated: 0
+ - _Metallic: 0
+ - _MetallicAnimated: 0
+ - _MetallicMaskAnimated: 0
+ - _MetallicMaskPanAnimated: 0
+ - _MetallicMaskUV: 0
+ - _MetallicMaskUVAnimated: 0
+ - _MetallicTintMapAnimated: 0
+ - _MetallicTintMapPanAnimated: 0
+ - _MetallicTintMapUV: 0
+ - _MetallicTintMapUVAnimated: 0
+ - _Mirror: 0
+ - _MirrorAnimated: 0
+ - _MirrorTextureAnimated: 0
+ - _MirrorTexturePanAnimated: 0
+ - _MirrorTextureUV: 0
+ - _MirrorTextureUVAnimated: 0
+ - _Mode: 0
+ - _ModelAngleMax: 90
+ - _ModelAngleMaxAnimated: 0
+ - _ModelAngleMin: 45
+ - _ModelAngleMinAnimated: 0
+ - _OcclusionStrength: 1
+ - _OffsetFactor: 0
+ - _OffsetFactorAnimated: 0
+ - _OffsetUnits: 0
+ - _OffsetUnitsAnimated: 0
+ - _OutlineCull: 1
+ - _OutlineCullAnimated: 0
+ - _OutlineDropShadowOffsetAnimated: 0
+ - _OutlineEmission: 0
+ - _OutlineEmissionAnimated: 0
+ - _OutlineFadeDistanceAnimated: 0
+ - _OutlineFixedSize: 0
+ - _OutlineFixedSizeAnimated: 0
+ - _OutlineLit: 1
+ - _OutlineLitAnimated: 0
+ - _OutlineMaskAnimated: 0
+ - _OutlineMaskUV: 0
+ - _OutlineMode: 0
+ - _OutlineModeAnimated: 0
+ - _OutlineOffsetFactor: 0
+ - _OutlineOffsetUnits: 0
+ - _OutlinePersonaDirectionAnimated: 0
+ - _OutlineRimLightBlend: 0
+ - _OutlineRimLightBlendAnimated: 0
+ - _OutlineShadowStrength: 1
+ - _OutlineShadowStrengthAnimated: 0
+ - _OutlineStencilCompareFunction: 8
+ - _OutlineStencilCompareFunctionAnimated: 0
+ - _OutlineStencilFailOp: 0
+ - _OutlineStencilFailOpAnimated: 0
+ - _OutlineStencilPassOp: 0
+ - _OutlineStencilPassOpAnimated: 0
+ - _OutlineStencilReadMask: 255
+ - _OutlineStencilReadMaskAnimated: 0
+ - _OutlineStencilRef: 0
+ - _OutlineStencilRefAnimated: 0
+ - _OutlineStencilWriteMask: 255
+ - _OutlineStencilWriteMaskAnimated: 0
+ - _OutlineStencilZFailOp: 0
+ - _OutlineStencilZFailOpAnimated: 0
+ - _OutlineTextureAnimated: 0
+ - _OutlineTexturePanAnimated: 0
+ - _OutlineTextureUV: 0
+ - _OutlineTintMix: 0
+ - _OutlineTintMixAnimated: 0
+ - _OutlineUseVertexColors: 0
+ - _OutlineUseVertexColorsAnimated: 0
+ - _PanoBlend: 0
+ - _PanoBlendAnimated: 0
+ - _PanoCubeMapAnimated: 0
+ - _PanoCubeMapToggle: 0
+ - _PanoCubeMapToggleAnimated: 0
+ - _PanoEmission: 0
+ - _PanoEmissionAnimated: 0
+ - _PanoInfiniteStereoToggle: 0
+ - _PanoInfiniteStereoToggleAnimated: 0
+ - _PanoMaskAnimated: 0
+ - _PanoMaskPanAnimated: 0
+ - _PanoMaskUV: 0
+ - _PanoMaskUVAnimated: 0
+ - _PanoToggle: 0
+ - _PanoToggleAnimated: 0
+ - _PanosphereColorAnimated: 0
+ - _PanospherePanAnimated: 0
+ - _PanosphereTextureAnimated: 0
+ - _Parallax: 0.02
+ - _ParallaxBias: 0.42
+ - _ParallaxBiasAnimated: 0
+ - _ParallaxHeightMapAnimated: 0
+ - _ParallaxHeightMapEnabled: 0
+ - _ParallaxHeightMapEnabledAnimated: 0
+ - _ParallaxHeightMapMaskAnimated: 0
+ - _ParallaxHeightMapMaskPanAnimated: 0
+ - _ParallaxHeightMapMaskUV: 0
+ - _ParallaxHeightMapMaskUVAnimated: 0
+ - _ParallaxHeightMapPanAnimated: 0
+ - _ParallaxInternalHeightFromAlpha: 0
+ - _ParallaxInternalHeightFromAlphaAnimated: 0
+ - _ParallaxInternalHeightmapMode: 0
+ - _ParallaxInternalHeightmapModeAnimated: 0
+ - _ParallaxInternalIterations: 1
+ - _ParallaxInternalIterationsAnimated: 0
+ - _ParallaxInternalMapAnimated: 0
+ - _ParallaxInternalMapEnabled: 0
+ - _ParallaxInternalMapEnabledAnimated: 0
+ - _ParallaxInternalMapMaskAnimated: 0
+ - _ParallaxInternalMapMaskPanAnimated: 0
+ - _ParallaxInternalMapMaskUV: 0
+ - _ParallaxInternalMapMaskUVAnimated: 0
+ - _ParallaxInternalMaxColorAnimated: 0
+ - _ParallaxInternalMaxDepth: 1
+ - _ParallaxInternalMaxDepthAnimated: 0
+ - _ParallaxInternalMaxFade: 1
+ - _ParallaxInternalMaxFadeAnimated: 0
+ - _ParallaxInternalMinColorAnimated: 0
+ - _ParallaxInternalMinDepth: 0
+ - _ParallaxInternalMinDepthAnimated: 0
+ - _ParallaxInternalMinFade: 0
+ - _ParallaxInternalMinFadeAnimated: 0
+ - _ParallaxInternalPanDepthSpeedAnimated: 0
+ - _ParallaxInternalPanSpeedAnimated: 0
+ - _ParallaxMap: 0
+ - _ParallaxMapAnimated: 0
+ - _ParallaxStrength: 0
+ - _ParallaxStrengthAnimated: 0
+ - _ParallaxUV: 0
+ - _ParallaxUVAnimated: 0
+ - _RGBBlendMultiplicative: 0
+ - _RGBBlendMultiplicativeAnimated: 0
+ - _RGBBluePanningAnimated: 0
+ - _RGBBlue_UV: 0
+ - _RGBBlue_UVAnimated: 0
+ - _RGBGreenPanningAnimated: 0
+ - _RGBGreen_UV: 0
+ - _RGBGreen_UVAnimated: 0
+ - _RGBMaskAnimated: 0
+ - _RGBMaskEnabled: 0
+ - _RGBMaskEnabledAnimated: 0
+ - _RGBMaskPanningAnimated: 0
+ - _RGBMaskUV: 0
+ - _RGBMaskUVAnimated: 0
+ - _RGBNormalBlend: 0
+ - _RGBNormalBlendAnimated: 0
+ - _RGBRedPanningAnimated: 0
+ - _RGBRed_UV: 0
+ - _RGBRed_UVAnimated: 0
+ - _RGBUseVertexColors: 0
+ - _RGBUseVertexColorsAnimated: 0
+ - _RedColorAnimated: 0
+ - _RedTexureAnimated: 0
+ - _RefractionChromaticAberattionAnimated: 0
+ - _RefractionEnabledAnimated: 0
+ - _RefractionIndexAnimated: 0
+ - _RgbNormalBScale: 0
+ - _RgbNormalBUV: 0
+ - _RgbNormalGScale: 0
+ - _RgbNormalGUV: 0
+ - _RgbNormalRScale: 0
+ - _RgbNormalRUV: 0
+ - _RgbNormalsEnabled: 0
+ - _RimBrighten: 0
+ - _RimBrightenAnimated: 0
+ - _RimEnviroBlur: 0.7
+ - _RimEnviroBlurAnimated: 0
+ - _RimEnviroIntensity: 1
+ - _RimEnviroIntensityAnimated: 0
+ - _RimEnviroMaskAnimated: 0
+ - _RimEnviroMaskPanAnimated: 0
+ - _RimEnviroMaskUV: 0
+ - _RimEnviroMaskUVAnimated: 0
+ - _RimEnviroMinBrightness: 0
+ - _RimEnviroMinBrightnessAnimated: 0
+ - _RimEnviroSharpness: 0
+ - _RimEnviroSharpnessAnimated: 0
+ - _RimEnviroWidth: 0.45
+ - _RimEnviroWidthAnimated: 0
+ - _RimLightColorAnimated: 0
+ - _RimLightColorBias: 0
+ - _RimLightColorBiasAnimated: 0
+ - _RimLightNormal: 1
+ - _RimLightNormalAnimated: 0
+ - _RimLightingInvert: 0
+ - _RimLightingInvertAnimated: 0
+ - _RimMaskAnimated: 0
+ - _RimMaskPanAnimated: 0
+ - _RimMaskUV: 0
+ - _RimMaskUVAnimated: 0
+ - _RimSharpness: 0.25
+ - _RimSharpnessAnimated: 0
+ - _RimStrength: 0
+ - _RimStrengthAnimated: 0
+ - _RimTexAnimated: 0
+ - _RimTexPanAnimated: 0
+ - _RimTexUV: 0
+ - _RimTexUVAnimated: 0
+ - _RimWidth: 0.8
+ - _RimWidthAnimated: 0
+ - _RimWidthNoiseStrength: 0.1
+ - _RimWidthNoiseStrengthAnimated: 0
+ - _RimWidthNoiseTextureAnimated: 0
+ - _RimWidthNoiseTexturePanAnimated: 0
+ - _RimWidthNoiseTextureUV: 0
+ - _RimWidthNoiseTextureUVAnimated: 0
+ - _SSSColorAnimated: 0
+ - _SSSDistortion: 1
+ - _SSSDistortionAnimated: 0
+ - _SSSPower: 5
+ - _SSSPowerAnimated: 0
+ - _SSSSCale: 0.25
+ - _SSSSCaleAnimated: 0
+ - _SSSThicknessMapAnimated: 0
+ - _SSSThicknessMapPanAnimated: 0
+ - _SSSThicknessMapUV: 0
+ - _SSSThicknessMapUVAnimated: 0
+ - _SSSThicknessMod: 0
+ - _SSSThicknessModAnimated: 0
+ - _SampleWorld: 0
+ - _SampleWorldAnimated: 0
+ - _Saturation: 0
+ - _SaturationAnimated: 0
+ - _ScrollingEmission: 0
+ - _ScrollingEmission1: 0
+ - _ScrollingEmission1Animated: 0
+ - _ScrollingEmissionAnimated: 0
+ - _ShaderOptimizerEnabled: 1
+ - _ShadowMix: 0
+ - _ShadowMixAnimated: 0
+ - _ShadowMixThreshold: 0.5
+ - _ShadowMixThresholdAnimated: 0
+ - _ShadowMixWidthMod: 0.5
+ - _ShadowMixWidthModAnimated: 0
+ - _ShadowOffset: 0
+ - _ShadowOffsetAnimated: 0
+ - _ShadowStrength: 1
+ - _ShadowStrengthAnimated: 0
+ - _Smoothness: 0
+ - _SmoothnessAnimated: 0
+ - _SmoothnessFrom: 1
+ - _SmoothnessFrom1: 1
+ - _SmoothnessFrom1Animated: 0
+ - _SmoothnessFromAnimated: 0
+ - _SmoothnessMaskAnimated: 0
+ - _SmoothnessMaskPanAnimated: 0
+ - _SmoothnessMaskUV: 0
+ - _SmoothnessMaskUVAnimated: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpawnInAlphaAnimated: 0
+ - _SpawnInEmissionColorAnimated: 0
+ - _SpawnInEmissionOffsetAnimated: 0
+ - _SpawnInGradientFinishAnimated: 0
+ - _SpawnInGradientStartAnimated: 0
+ - _SpawnInNoiseAnimated: 0
+ - _SpawnInNoiseIntensityAnimated: 0
+ - _SpawnInVertOffsetAnimated: 0
+ - _SpawnInVertOffsetOffsetAnimated: 0
+ - _Spec1Offset: 0
+ - _Spec1Offset1: 0
+ - _Spec1Offset1Animated: 0
+ - _Spec1OffsetAnimated: 0
+ - _Spec2Smoothness: 0
+ - _Spec2Smoothness1: 0
+ - _Spec2Smoothness1Animated: 0
+ - _Spec2SmoothnessAnimated: 0
+ - _SpecWhatTangent: 0
+ - _SpecWhatTangent1: 0
+ - _SpecWhatTangent1Animated: 0
+ - _SpecWhatTangentAnimated: 0
+ - _SpecularAnisoJitterMacro1Animated: 0
+ - _SpecularAnisoJitterMacro1PanAnimated: 0
+ - _SpecularAnisoJitterMacro1UV: 0
+ - _SpecularAnisoJitterMacro1UVAnimated: 0
+ - _SpecularAnisoJitterMacroAnimated: 0
+ - _SpecularAnisoJitterMacroMultiplier: 0
+ - _SpecularAnisoJitterMacroMultiplier1: 0
+ - _SpecularAnisoJitterMacroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMacroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMacroPanAnimated: 0
+ - _SpecularAnisoJitterMacroUV: 0
+ - _SpecularAnisoJitterMacroUVAnimated: 0
+ - _SpecularAnisoJitterMicro1Animated: 0
+ - _SpecularAnisoJitterMicro1PanAnimated: 0
+ - _SpecularAnisoJitterMicro1UV: 0
+ - _SpecularAnisoJitterMicro1UVAnimated: 0
+ - _SpecularAnisoJitterMicroAnimated: 0
+ - _SpecularAnisoJitterMicroMultiplier: 0
+ - _SpecularAnisoJitterMicroMultiplier1: 0
+ - _SpecularAnisoJitterMicroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMicroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMicroPanAnimated: 0
+ - _SpecularAnisoJitterMicroUV: 0
+ - _SpecularAnisoJitterMicroUVAnimated: 0
+ - _SpecularAnisoJitterMirrored: 0
+ - _SpecularAnisoJitterMirrored1: 0
+ - _SpecularAnisoJitterMirrored1Animated: 0
+ - _SpecularAnisoJitterMirroredAnimated: 0
+ - _SpecularHighlights: 1
+ - _SpecularInvertSmoothness: 0
+ - _SpecularInvertSmoothness1: 0
+ - _SpecularInvertSmoothness1Animated: 0
+ - _SpecularInvertSmoothnessAnimated: 0
+ - _SpecularMap1Animated: 0
+ - _SpecularMap1PanAnimated: 0
+ - _SpecularMap1UV: 0
+ - _SpecularMap1UVAnimated: 0
+ - _SpecularMapAnimated: 0
+ - _SpecularMapPanAnimated: 0
+ - _SpecularMapUV: 0
+ - _SpecularMapUVAnimated: 0
+ - _SpecularMask1Animated: 0
+ - _SpecularMask1PanAnimated: 0
+ - _SpecularMask1UV: 0
+ - _SpecularMask1UVAnimated: 0
+ - _SpecularMaskAnimated: 0
+ - _SpecularMaskPanAnimated: 0
+ - _SpecularMaskUV: 0
+ - _SpecularMaskUVAnimated: 0
+ - _SpecularMetallic: 0
+ - _SpecularMetallic1: 0
+ - _SpecularMetallic1Animated: 0
+ - _SpecularMetallicAnimated: 0
+ - _SpecularMetallicMap1UV: 0
+ - _SpecularMetallicMapUV: 0
+ - _SpecularNormal: 1
+ - _SpecularNormal1: 1
+ - _SpecularNormal1Animated: 0
+ - _SpecularNormalAnimated: 0
+ - _SpecularSmoothness: 1
+ - _SpecularSmoothness1: 0.75
+ - _SpecularSmoothness1Animated: 0
+ - _SpecularSmoothnessAnimated: 0
+ - _SpecularTint1Animated: 0
+ - _SpecularTintAnimated: 0
+ - _SpecularToonEnd: 1
+ - _SpecularToonEnd1: 1
+ - _SpecularToonEnd1Animated: 0
+ - _SpecularToonEndAnimated: 0
+ - _SpecularToonInnerOuter1Animated: 0
+ - _SpecularToonInnerOuterAnimated: 0
+ - _SpecularToonStart: 0.95
+ - _SpecularToonStart1: 0.95
+ - _SpecularToonStart1Animated: 0
+ - _SpecularToonStartAnimated: 0
+ - _SpecularType: 1
+ - _SpecularType1: 1
+ - _SpecularType1Animated: 0
+ - _SpecularTypeAnimated: 0
+ - _SrcBlend: 1
+ - _SrcBlendAnimated: 0
+ - _StencilCompareFunction: 8
+ - _StencilCompareFunctionAnimated: 0
+ - _StencilFailOp: 0
+ - _StencilFailOpAnimated: 0
+ - _StencilPassOp: 0
+ - _StencilPassOpAnimated: 0
+ - _StencilReadMask: 255
+ - _StencilReadMaskAnimated: 0
+ - _StencilRef: 0
+ - _StencilRefAnimated: 0
+ - _StencilWriteMask: 255
+ - _StencilWriteMaskAnimated: 0
+ - _StencilZFailOp: 0
+ - _StencilZFailOpAnimated: 0
+ - _TextEnabled: 0
+ - _TextEnabledAnimated: 0
+ - _TextFPSColorAnimated: 0
+ - _TextFPSEmissionStrength: 0
+ - _TextFPSEmissionStrengthAnimated: 0
+ - _TextFPSEnabled: 0
+ - _TextFPSEnabledAnimated: 0
+ - _TextFPSOffsetAnimated: 0
+ - _TextFPSPaddingAnimated: 0
+ - _TextFPSRotation: 0
+ - _TextFPSRotationAnimated: 0
+ - _TextFPSScaleAnimated: 0
+ - _TextFPSUV: 0
+ - _TextFPSUVAnimated: 0
+ - _TextGlyphsAnimated: 0
+ - _TextPixelRange: 4
+ - _TextPixelRangeAnimated: 0
+ - _TextPositionColorAnimated: 0
+ - _TextPositionEmissionStrength: 0
+ - _TextPositionEmissionStrengthAnimated: 0
+ - _TextPositionEnabled: 0
+ - _TextPositionEnabledAnimated: 0
+ - _TextPositionOffsetAnimated: 0
+ - _TextPositionPaddingAnimated: 0
+ - _TextPositionRotation: 0
+ - _TextPositionRotationAnimated: 0
+ - _TextPositionScaleAnimated: 0
+ - _TextPositionUV: 0
+ - _TextPositionUVAnimated: 0
+ - _TextTimeColorAnimated: 0
+ - _TextTimeEmissionStrength: 0
+ - _TextTimeEmissionStrengthAnimated: 0
+ - _TextTimeEnabled: 0
+ - _TextTimeEnabledAnimated: 0
+ - _TextTimeOffsetAnimated: 0
+ - _TextTimePaddingAnimated: 0
+ - _TextTimeRotation: 0
+ - _TextTimeRotationAnimated: 0
+ - _TextTimeScaleAnimated: 0
+ - _TextTimeUV: 0
+ - _TextTimeUVAnimated: 0
+ - _ToonRampAnimated: 0
+ - _UVSec: 0
+ - _UseShadowTexture: 0
+ - _UseShadowTextureAnimated: 0
+ - _VertexGlitchFrequencyAnimated: 0
+ - _VertexGlitchStrengthAnimated: 0
+ - _VertexGlitchThresholdAnimated: 0
+ - _VertexManipulationHeight: 0
+ - _VertexManipulationHeightAnimated: 0
+ - _VertexManipulationHeightBias: 0
+ - _VertexManipulationHeightBiasAnimated: 0
+ - _VertexManipulationHeightMaskAnimated: 0
+ - _VertexManipulationHeightPanAnimated: 0
+ - _VertexManipulationHeightUV: 0
+ - _VertexManipulationHeightUVAnimated: 0
+ - _VertexManipulationLocalRotationAnimated: 0
+ - _VertexManipulationLocalScaleAnimated: 0
+ - _VertexManipulationLocalTranslationAnimated: 0
+ - _VertexManipulationWorldTranslationAnimated: 0
+ - _VertexManipulationsEnabled: 0
+ - _VertexRoundingDivision: 500
+ - _VertexRoundingDivisionAnimated: 0
+ - _VertexRoundingEnabled: 0
+ - _VertexRoundingEnabledAnimated: 0
+ - _VertexUnwrap: 0
+ - _VertexUnwrapAnimated: 0
+ - _VideoBacklightAnimated: 0
+ - _VideoCRTPixelEnergizedTimeAnimated: 0
+ - _VideoCRTRefreshRateAnimated: 0
+ - _VideoContrastAnimated: 0
+ - _VideoDebugTextureAnimated: 0
+ - _VideoEnableDebugAnimated: 0
+ - _VideoEnableVideoPlayerAnimated: 0
+ - _VideoGameboyRampAnimated: 0
+ - _VideoMaskPanningAnimated: 0
+ - _VideoMaskTextureAnimated: 0
+ - _VideoOffsetAnimated: 0
+ - _VideoPanningAnimated: 0
+ - _VideoPixelTextureAnimated: 0
+ - _VideoPixelateToResolutionAnimated: 0
+ - _VideoRepeatVideoTextureAnimated: 0
+ - _VideoResolutionAnimated: 0
+ - _VideoSaturationAnimated: 0
+ - _VideoTilingAnimated: 0
+ - _VideoTypeAnimated: 0
+ - _VideoUVNumberAnimated: 0
+ - _VoronoiBlendAnimated: 0
+ - _VoronoiColor0Animated: 0
+ - _VoronoiColor1Animated: 0
+ - _VoronoiEffectsMaterialAlphaAnimated: 0
+ - _VoronoiEmission0Animated: 0
+ - _VoronoiEmission1Animated: 0
+ - _VoronoiEnableRandomCellColorAnimated: 0
+ - _VoronoiGradientAnimated: 0
+ - _VoronoiMaskAnimated: 0
+ - _VoronoiMaskPanAnimated: 0
+ - _VoronoiMaskUVAnimated: 0
+ - _VoronoiNoiseAnimated: 0
+ - _VoronoiNoiseIntensityAnimated: 0
+ - _VoronoiNoisePanAnimated: 0
+ - _VoronoiNoiseUVAnimated: 0
+ - _VoronoiRandomMinMaxBrightnessAnimated: 0
+ - _VoronoiRandomMinMaxSaturationAnimated: 0
+ - _VoronoiScaleAnimated: 0
+ - _VoronoiSpaceAnimated: 0
+ - _VoronoiSpeedAnimated: 0
+ - _VoronoiTypeAnimated: 0
+ - _ZTest: 4
+ - _ZTestAnimated: 0
+ - _ZWrite: 1
+ - _ZWriteAnimated: 0
+ - _commentIfZero_EnableOutlinePass: 0
+ - _commentIfZero_LightingAdditiveEnable: 1
+ - _commentIfZero_LightingAdditiveEnableAnimated: 0
+ - _glitterFrequencyLinearEmissive: 20
+ - _glitterFrequencyLinearEmissiveAnimated: 0
+ - footer_discord: 0
+ - footer_github: 0
+ - footer_patreon: 0
+ - footer_twitter: 0
+ - footer_youtube: 0
+ - m_LockingInfo: 0
+ - m_ParallaxMap: 0
+ - m_Special_Effects: 0
+ - m_end_Alpha: 0
+ - m_end_BonusSliders: 0
+ - m_end_CenterOutEmission: 0
+ - m_end_CenterOutEmission1: 0
+ - m_end_DecalSection: 0
+ - m_end_DetailOptions: 0
+ - m_end_Lighting: 0
+ - m_end_MainHueShift: 0
+ - m_end_MainVertexColors: 0
+ - m_end_Matcap2: 0
+ - m_end_Metallic: 0
+ - m_end_OutlineStencil: 0
+ - m_end_RGBMask: 0
+ - m_end_ShadowMix: 0
+ - m_end_StencilPassOptions: 0
+ - m_end_Text: 0
+ - m_end_TextFPS: 0
+ - m_end_TextInstanceTime: 0
+ - m_end_TextPosition: 0
+ - m_end_ambientOcclusion: 0
+ - m_end_angularFade: 0
+ - m_end_backFace: 0
+ - m_end_bakedLighting: 0
+ - m_end_blending: 0
+ - m_end_blinkingEmissionOptions: 0
+ - m_end_blinkingEmissionOptions1: 0
+ - m_end_clearCoat: 0
+ - m_end_debugOptions: 0
+ - m_end_detailShadows: 0
+ - m_end_dissolve: 0
+ - m_end_dissolveMasking: 0
+ - m_end_distanceFade: 0
+ - m_end_distortionFlow: 0
+ - m_end_emission1Options: 0
+ - m_end_emissionOptions: 0
+ - m_end_flipBook: 0
+ - m_end_glitter: 0
+ - m_end_glitterRandom: 0
+ - m_end_glowInDarkEmissionOptions: 0
+ - m_end_glowInDarkEmissionOptions1: 0
+ - m_end_lightingAdvanced: 0
+ - m_end_lightingHSL: 0
+ - m_end_lightingModifiers: 0
+ - m_end_manualFlipbookControl: 0
+ - m_end_matcap: 0
+ - m_end_mirrorOptions: 0
+ - m_end_outlineAdvanced: 0
+ - m_end_panosphereOptions: 0
+ - m_end_parallaxAdvanced: 0
+ - m_end_parallaxHeightmap: 0
+ - m_end_parallaxInternal: 0
+ - m_end_pointToPoint: 0
+ - m_end_reflectionRim: 0
+ - m_end_rimLightOptions: 0
+ - m_end_rimWidthNoise: 0
+ - m_end_scrollingEmission1Options: 0
+ - m_end_scrollingEmissionOptions: 0
+ - m_end_shadowTexture: 0
+ - m_end_specular: 0
+ - m_end_specular1: 0
+ - m_end_subsurface: 0
+ - m_end_vertexManipulation: 0
+ - m_lightingOptions: 0
+ - m_mainOptions: 0
+ - m_outlineOptions: 0
+ - m_renderingOptions: 0
+ - m_start_Alpha: 0
+ - m_start_BonusSliders: 0
+ - m_start_CenterOutEmission: 0
+ - m_start_CenterOutEmission1: 0
+ - m_start_DecalSection: 0
+ - m_start_DetailOptions: 0
+ - m_start_Lighting: 0
+ - m_start_MainHueShift: 0
+ - m_start_MainVertexColors: 0
+ - m_start_Matcap2: 0
+ - m_start_Metallic: 0
+ - m_start_OutlineStencil: 0
+ - m_start_RGBMask: 0
+ - m_start_ShadowMix: 0
+ - m_start_StencilPassOptions: 0
+ - m_start_Text: 0
+ - m_start_TextFPS: 0
+ - m_start_TextInstanceTime: 0
+ - m_start_TextPosition: 0
+ - m_start_ambientOcclusion: 0
+ - m_start_angularFade: 0
+ - m_start_backFace: 0
+ - m_start_bakedLighting: 0
+ - m_start_blending: 0
+ - m_start_blinkingEmissionOptions: 0
+ - m_start_blinkingEmissionOptions1: 0
+ - m_start_clearCoat: 0
+ - m_start_debugOptions: 0
+ - m_start_detailShadows: 0
+ - m_start_dissolve: 0
+ - m_start_dissolveMasking: 0
+ - m_start_distanceFade: 0
+ - m_start_distortionFlow: 0
+ - m_start_emission1Options: 0
+ - m_start_emissionOptions: 0
+ - m_start_flipBook: 0
+ - m_start_glitter: 0
+ - m_start_glitterRandom: 0
+ - m_start_glowInDarkEmissionOptions: 0
+ - m_start_glowInDarkEmissionOptions1: 0
+ - m_start_lightingAdvanced: 0
+ - m_start_lightingHSL: 0
+ - m_start_lightingModifiers: 0
+ - m_start_manualFlipbookControl: 0
+ - m_start_matcap: 0
+ - m_start_mirrorOptions: 0
+ - m_start_outlineAdvanced: 0
+ - m_start_panosphereOptions: 0
+ - m_start_parallaxAdvanced: 0
+ - m_start_parallaxHeightmap: 0
+ - m_start_parallaxInternal: 0
+ - m_start_pointToPoint: 0
+ - m_start_reflectionRim: 0
+ - m_start_rimLightOptions: 0
+ - m_start_rimWidthNoise: 0
+ - m_start_scrollingEmissionOptions: 0
+ - m_start_scrollingEmissionOptions1: 0
+ - m_start_shadowTexture: 0
+ - m_start_specular: 0
+ - m_start_specular1: 0
+ - m_start_subsurface: 0
+ - m_start_vertexManipulation: 0
+ - shader_is_using_thry_editor: 0
+ - shader_master_label: 0
+ - shader_presets: 0
+ - shader_properties_label_file: 0
+ m_Colors:
+ - _AlphaMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _AngleForwardDirection: {r: 0, g: 0, b: 1, a: 0}
+ - _AnisoTangentMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _AnisoTangentMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _BackFaceColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BackFacePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _BlueColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BumpMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatSmoothnessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatTint: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DecalPosition: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DecalScale: {r: 1, g: 1, b: 0, a: 0}
+ - _DecalTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailNormalMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTint: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveDetailNoisePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveEdgeColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveEndPoint: {r: 0, g: 1, b: 0, a: 0}
+ - _DissolveMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveStartPoint: {r: 0, g: -1, b: 0, a: 0}
+ - _DissolveTextureColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveToTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionSpeed: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DistortionSpeed1: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionColor1: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissiveScroll_Direction: {r: 0, g: -10, b: 0, a: 0}
+ - _EmissiveScroll_Direction1: {r: 0, g: -10, b: 0, a: 0}
+ - _FlipbookColor: {r: 1, g: 1, b: 1, a: 1}
+ - _FlipbookMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _FlipbookScaleOffset: {r: 1, g: 1, b: 0, a: 0}
+ - _FlipbookTexArrayPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterColor: {r: 1, g: 1, b: 1, a: 1}
+ - _GlitterColorMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMinMaxBrightness: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSaturation: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSize: {r: 0.1, g: 0.5, b: 0, a: 1}
+ - _GlitterPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _GreenColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingAOTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingDetailShadowsPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingShadowMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _LineColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MainDistanceFade: {r: 0, g: 0, b: 0, a: 0}
+ - _MainFadeTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainHueShiftMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _Matcap2Color: {r: 1, g: 1, b: 1, a: 1}
+ - _Matcap2MaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MatcapColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MatcapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetalReflectionTint: {r: 1, g: 1, b: 1, a: 1}
+ - _MetallicMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetallicTintMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MirrorTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineDropShadowOffset: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineFadeDistance: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlinePersonaDirection: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanoMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanosphereColor: {r: 1, g: 1, b: 1, a: 1}
+ - _PanospherePan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMaxColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalMinColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalPanDepthSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalPanSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBBluePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBGreenPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBMaskPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBRedPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RedColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RgbNormalBPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalGPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalRPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimEnviroMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimLightColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RimMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimWidthNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _SSSColor: {r: 1, g: 0, b: 0, a: 1}
+ - _SSSThicknessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SmoothnessMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularTint: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularTint1: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularToonInnerOuter: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _SpecularToonInnerOuter1: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _TextFPSColor: {r: 1, g: 1, b: 1, a: 1}
+ - _TextFPSOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextPositionColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextPositionOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextTimeColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextTimeOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimePadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimeScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationHeightPan: {r: 0, g: 0, b: 0, a: 0}
+ - _VertexManipulationLocalRotation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationLocalScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationLocalTranslation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationWorldTranslation: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.mat.meta
new file mode 100644
index 00000000..f65c3b04
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: be784eaea5b39b644ae6c262179a70b5
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.png b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.png
new file mode 100644
index 00000000..5220366f
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.png
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.png.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.png.meta
new file mode 100644
index 00000000..9f792f90
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/R2Changyu01001Hair.png.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: 2d7abbdf239bc314ca1cff905d7570b1
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 1
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.mat
new file mode 100644
index 00000000..f5f2b8e7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.mat
@@ -0,0 +1,1855 @@
+%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: cheek_00
+ m_Shader: {fileID: 4800000, guid: c95307557f187fc479fe881e4061aa80, type: 3}
+ m_ShaderKeywords: VIGNETTE_MASKED _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap:
+ OptimizedShaderFolder: cheek_00-d55925e7
+ OriginalShader: ".poiyomi/\u2022 Poiyomi Toon \u2022"
+ RenderType: Opaque
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _AlphaMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BackFaceTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BlueTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatCubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatSmoothnessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _CubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalTexture:
+ 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}
+ - _DetailTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveDetailNoise:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveEdgeGradient:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveToTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionMask:
+ 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}
+ - _EmissionMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookTexArray:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterColorMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GreenTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingAOTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingDetailShadows:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainFadeTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainHueShiftMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: bde48f74661e08c4baa4b5e1a4c11865, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2Mask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MatcapMask:
+ 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}
+ - _MetallicMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicTintMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MirrorTexture:
+ 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}
+ - _OutlineMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OutlineTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoCubeMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanosphereTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMapMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMapMask:
+ 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}
+ - _RGBMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RedTexure:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalB:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalG:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalR:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimEnviroMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimWidthNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SSSThicknessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SmoothnessMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _TextGlyphs:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ToonRamp:
+ m_Texture: {fileID: 2800000, guid: 61bd594533da4fc42bd46ef93ba5a4f6, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _VertexManipulationHeightMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - DSGI: 0
+ - Instancing: 0
+ - LightmapFlags: 0
+ - _AOStrength: 1
+ - _AOStrengthAnimated: 0
+ - _AlphaMaskAnimated: 0
+ - _AlphaMaskPanAnimated: 0
+ - _AlphaMaskUV: 0
+ - _AlphaMaskUVAnimated: 0
+ - _AlphaMod: 0
+ - _AlphaModAnimated: 0
+ - _AlphaPremultiply: 0
+ - _AlphaPremultiplyAnimated: 0
+ - _AlphaToMask: 0
+ - _AlphaToMaskAnimated: 0
+ - _AngleCompareTo: 0
+ - _AngleCompareToAnimated: 0
+ - _AngleForwardDirectionAnimated: 0
+ - _AngleMinAlpha: 0
+ - _AngleMinAlphaAnimated: 0
+ - _AngleType: 0
+ - _AngleTypeAnimated: 0
+ - _AnisoSpec1Alpha: 1
+ - _AnisoSpec1Alpha1: 1
+ - _AnisoSpec1Alpha1Animated: 0
+ - _AnisoSpec1AlphaAnimated: 0
+ - _AnisoSpec2Alpha: 1
+ - _AnisoSpec2Alpha1: 1
+ - _AnisoSpec2Alpha1Animated: 0
+ - _AnisoSpec2AlphaAnimated: 0
+ - _AnisoTangentMap1Animated: 0
+ - _AnisoTangentMap1PanAnimated: 0
+ - _AnisoTangentMap1UV: 0
+ - _AnisoTangentMap1UVAnimated: 0
+ - _AnisoTangentMapAnimated: 0
+ - _AnisoTangentMapPanAnimated: 0
+ - _AnisoTangentMapUV: 0
+ - _AnisoTangentMapUVAnimated: 0
+ - _AnisoUseTangentMap: 0
+ - _AnisoUseTangentMap1: 0
+ - _AnisoUseTangentMap1Animated: 0
+ - _AnisoUseTangentMapAnimated: 0
+ - _AttenuationMultiplier: 0
+ - _AttenuationMultiplierAnimated: 0
+ - _BackFaceDetailIntensity: 1
+ - _BackFaceEmissionStrength: 0
+ - _BackFaceEnabled: 0
+ - _BackFaceHueShift: 0
+ - _BackFaceTextureUV: 0
+ - _BlackLightMaskClearCoatAnimated: 0
+ - _BlackLightMaskDebugAnimated: 0
+ - _BlackLightMaskDissolveAnimated: 0
+ - _BlackLightMaskEmission2Animated: 0
+ - _BlackLightMaskEmissionAnimated: 0
+ - _BlackLightMaskEnabledAnimated: 0
+ - _BlackLightMaskEndAnimated: 0
+ - _BlackLightMaskFlipbookAnimated: 0
+ - _BlackLightMaskGlitterAnimated: 0
+ - _BlackLightMaskIridescenceAnimated: 0
+ - _BlackLightMaskKeysAnimated: 0
+ - _BlackLightMaskMatcap2Animated: 0
+ - _BlackLightMaskMatcapAnimated: 0
+ - _BlackLightMaskMetallicAnimated: 0
+ - _BlackLightMaskPanosphereAnimated: 0
+ - _BlackLightMaskStartAnimated: 0
+ - _BlendOp: 0
+ - _BlendOpAlpha: 0
+ - _BlendOpAlphaAnimated: 0
+ - _BlendOpAnimated: 0
+ - _BlueColorAnimated: 0
+ - _BlueTextureAnimated: 0
+ - _BuldgeFadeLengthAnimated: 0
+ - _BuldgeHeightAnimated: 0
+ - _BulgeMaskAnimated: 0
+ - _BumpMapAnimated: 0
+ - _BumpMapPanAnimated: 0
+ - _BumpMapUV: 0
+ - _BumpMapUVAnimated: 0
+ - _BumpScale: 1
+ - _BumpScaleAnimated: 0
+ - _CameraAngleMax: 90
+ - _CameraAngleMaxAnimated: 0
+ - _CameraAngleMin: 45
+ - _CameraAngleMinAnimated: 0
+ - _ClearCoat: 1
+ - _ClearCoatAnimated: 0
+ - _ClearCoatCubeMapAnimated: 0
+ - _ClearCoatForceLighting: 0
+ - _ClearCoatForceLightingAnimated: 0
+ - _ClearCoatInvertSmoothness: 0
+ - _ClearCoatInvertSmoothnessAnimated: 0
+ - _ClearCoatMaskAnimated: 0
+ - _ClearCoatMaskPanAnimated: 0
+ - _ClearCoatMaskUV: 0
+ - _ClearCoatMaskUVAnimated: 0
+ - _ClearCoatNormalToUse: 0
+ - _ClearCoatNormalToUseAnimated: 0
+ - _ClearCoatSampleWorld: 0
+ - _ClearCoatSampleWorldAnimated: 0
+ - _ClearCoatSmoothness: 0
+ - _ClearCoatSmoothnessAnimated: 0
+ - _ClearCoatSmoothnessMapAnimated: 0
+ - _ClearCoatSmoothnessMapPanAnimated: 0
+ - _ClearCoatSmoothnessMapUV: 0
+ - _ClearCoatSmoothnessMapUVAnimated: 0
+ - _ClearCoatTintAnimated: 0
+ - _ColorAnimated: 0
+ - _ColorMask: 15
+ - _ColorMaskAnimated: 0
+ - _ContinuousDissolve: 0
+ - _ContinuousDissolveAnimated: 0
+ - _CubeMapAnimated: 0
+ - _Cull: 2
+ - _CullAnimated: 0
+ - _Cutoff: 0.5
+ - _CutoffAnimated: 0
+ - _DebugCameraData: 0
+ - _DebugCameraDataAnimated: 0
+ - _DebugEnabled: 0
+ - _DebugLightingData: 0
+ - _DebugLightingDataAnimated: 0
+ - _DebugMeshData: 0
+ - _DebugMeshDataAnimated: 0
+ - _DecalBlendAdd: 0
+ - _DecalBlendAddAnimated: 0
+ - _DecalBlendMultiply: 0
+ - _DecalBlendMultiplyAnimated: 0
+ - _DecalBlendReplace: 0
+ - _DecalBlendReplaceAnimated: 0
+ - _DecalColorAnimated: 0
+ - _DecalEmissionStrength: 0
+ - _DecalEmissionStrengthAnimated: 0
+ - _DecalEnabled: 0
+ - _DecalEnabledAnimated: 0
+ - _DecalMaskAnimated: 0
+ - _DecalMaskPanAnimated: 0
+ - _DecalMaskUV: 0
+ - _DecalMaskUVAnimated: 0
+ - _DecalPositionAnimated: 0
+ - _DecalRotation: 0
+ - _DecalRotationAnimated: 0
+ - _DecalRotationSpeed: 0
+ - _DecalRotationSpeedAnimated: 0
+ - _DecalScaleAnimated: 0
+ - _DecalTextureAnimated: 0
+ - _DecalTexturePanAnimated: 0
+ - _DecalTextureUV: 0
+ - _DecalTextureUVAnimated: 0
+ - _DecalTiled: 0
+ - _DecalTiledAnimated: 0
+ - _DepthAlphaMaxAnimated: 0
+ - _DepthAlphaMinAnimated: 0
+ - _DepthGlowColorAnimated: 0
+ - _DepthGlowEmissionAnimated: 0
+ - _DepthGradientAnimated: 0
+ - _DepthGradientBlendAnimated: 0
+ - _DepthGradientPanAnimated: 0
+ - _DepthGradientTextureUVAnimated: 0
+ - _DepthGradientUVAnimated: 0
+ - _DepthMaskAnimated: 0
+ - _DepthMaskPanAnimated: 0
+ - _DepthMaskUVAnimated: 0
+ - _DetailBrightness: 1
+ - _DetailBrightnessAnimated: 0
+ - _DetailEnabled: 0
+ - _DetailMaskAnimated: 0
+ - _DetailMaskPanAnimated: 0
+ - _DetailMaskUV: 0
+ - _DetailMaskUVAnimated: 0
+ - _DetailNormalMapAnimated: 0
+ - _DetailNormalMapPanAnimated: 0
+ - _DetailNormalMapScale: 1
+ - _DetailNormalMapScaleAnimated: 0
+ - _DetailNormalMapUV: 0
+ - _DetailNormalMapUVAnimated: 0
+ - _DetailTexAnimated: 0
+ - _DetailTexIntensity: 1
+ - _DetailTexIntensityAnimated: 0
+ - _DetailTexPanAnimated: 0
+ - _DetailTexUV: 0
+ - _DetailTexUVAnimated: 0
+ - _DetailTintAnimated: 0
+ - _DisableDirectionalInAdd: 1
+ - _DissolveAlpha: 0
+ - _DissolveAlpha0: 0
+ - _DissolveAlpha0Animated: 0
+ - _DissolveAlpha1: 0
+ - _DissolveAlpha1Animated: 0
+ - _DissolveAlpha2: 0
+ - _DissolveAlpha2Animated: 0
+ - _DissolveAlpha3: 0
+ - _DissolveAlpha3Animated: 0
+ - _DissolveAlpha4: 0
+ - _DissolveAlpha4Animated: 0
+ - _DissolveAlpha5: 0
+ - _DissolveAlpha5Animated: 0
+ - _DissolveAlpha6: 0
+ - _DissolveAlpha6Animated: 0
+ - _DissolveAlpha7: 0
+ - _DissolveAlpha7Animated: 0
+ - _DissolveAlpha8: 0
+ - _DissolveAlpha8Animated: 0
+ - _DissolveAlpha9: 0
+ - _DissolveAlpha9Animated: 0
+ - _DissolveAlphaAnimated: 0
+ - _DissolveDetailNoiseAnimated: 0
+ - _DissolveDetailNoisePanAnimated: 0
+ - _DissolveDetailNoiseUV: 0
+ - _DissolveDetailNoiseUVAnimated: 0
+ - _DissolveDetailStrength: 0.1
+ - _DissolveDetailStrengthAnimated: 0
+ - _DissolveEdgeColorAnimated: 0
+ - _DissolveEdgeEmission: 0
+ - _DissolveEdgeEmissionAnimated: 0
+ - _DissolveEdgeGradientAnimated: 0
+ - _DissolveEdgeHardness: 0.5
+ - _DissolveEdgeHardnessAnimated: 0
+ - _DissolveEdgeWidth: 0.025
+ - _DissolveEdgeWidthAnimated: 0
+ - _DissolveEmission1Side: 2
+ - _DissolveEmission1SideAnimated: 0
+ - _DissolveEmissionSide: 2
+ - _DissolveEmissionSideAnimated: 0
+ - _DissolveEndPointAnimated: 0
+ - _DissolveInvertDetailNoise: 0
+ - _DissolveInvertDetailNoiseAnimated: 0
+ - _DissolveInvertNoise: 0
+ - _DissolveInvertNoiseAnimated: 0
+ - _DissolveMaskAnimated: 0
+ - _DissolveMaskInvert: 0
+ - _DissolveMaskInvertAnimated: 0
+ - _DissolveMaskPanAnimated: 0
+ - _DissolveMaskUV: 0
+ - _DissolveMaskUVAnimated: 0
+ - _DissolveNoiseTextureAnimated: 0
+ - _DissolveNoiseTexturePanAnimated: 0
+ - _DissolveNoiseTextureUV: 0
+ - _DissolveNoiseTextureUVAnimated: 0
+ - _DissolveP2PEdgeLength: 0.1
+ - _DissolveP2PEdgeLengthAnimated: 0
+ - _DissolveP2PWorldLocal: 0
+ - _DissolveP2PWorldLocalAnimated: 0
+ - _DissolveStartPointAnimated: 0
+ - _DissolveTextureColorAnimated: 0
+ - _DissolveToEmissionStrength: 0
+ - _DissolveToEmissionStrengthAnimated: 0
+ - _DissolveToTextureAnimated: 0
+ - _DissolveToTexturePanAnimated: 0
+ - _DissolveToTextureUV: 0
+ - _DissolveToTextureUVAnimated: 0
+ - _DissolveType: 1
+ - _DissolveTypeAnimated: 0
+ - _DissolveUseVertexColors: 0
+ - _DissolveUseVertexColorsAnimated: 0
+ - _DistortionFlowTexture1Animated: 0
+ - _DistortionFlowTextureAnimated: 0
+ - _DistortionMaskAnimated: 0
+ - _DistortionMaskPanAnimated: 0
+ - _DistortionMaskUV: 0
+ - _DistortionMaskUVAnimated: 0
+ - _DistortionSpeed1Animated: 0
+ - _DistortionSpeedAnimated: 0
+ - _DistortionStrength: 0.5
+ - _DistortionStrength1: 0.5
+ - _DistortionStrength1Animated: 0
+ - _DistortionStrengthAnimated: 0
+ - _DitherGradient: 0.1
+ - _DitherGradientAnimated: 0
+ - _DitheringEnabled: 0
+ - _DitheringEnabledAnimated: 0
+ - _DstBlend: 0
+ - _DstBlendAnimated: 0
+ - _EmissionBaseColorAsMap: 0
+ - _EmissionBaseColorAsMap1: 0
+ - _EmissionBaseColorAsMap1Animated: 0
+ - _EmissionBaseColorAsMapAnimated: 0
+ - _EmissionBlinkingEnabled: 0
+ - _EmissionBlinkingEnabled1: 0
+ - _EmissionBlinkingEnabledAnimated: 0
+ - _EmissionBlinkingOffset: 0
+ - _EmissionBlinkingOffset1: 0
+ - _EmissionBlinkingOffset1Animated: 0
+ - _EmissionBlinkingOffsetAnimated: 0
+ - _EmissionCenterOutEnabled: 0
+ - _EmissionCenterOutEnabled1: 0
+ - _EmissionCenterOutEnabled1Animated: 0
+ - _EmissionCenterOutEnabledAnimated: 0
+ - _EmissionCenterOutSpeed: 5
+ - _EmissionCenterOutSpeed1: 5
+ - _EmissionCenterOutSpeed1Animated: 0
+ - _EmissionCenterOutSpeedAnimated: 0
+ - _EmissionColor1Animated: 0
+ - _EmissionColorAnimated: 0
+ - _EmissionHueShift: 0
+ - _EmissionHueShift1: 0
+ - _EmissionHueShift1Animated: 0
+ - _EmissionHueShiftAnimated: 0
+ - _EmissionHueShiftEnabled: 0
+ - _EmissionHueShiftEnabled1: 0
+ - _EmissionHueShiftEnabled1Animated: 0
+ - _EmissionHueShiftEnabledAnimated: 0
+ - _EmissionMap1Animated: 0
+ - _EmissionMap1PanAnimated: 0
+ - _EmissionMap1UV: 0
+ - _EmissionMap1UVAnimated: 0
+ - _EmissionMapAnimated: 0
+ - _EmissionMapPanAnimated: 0
+ - _EmissionMapUV: 0
+ - _EmissionMapUVAnimated: 0
+ - _EmissionMask1Animated: 0
+ - _EmissionMask1PanAnimated: 0
+ - _EmissionMask1UV: 0
+ - _EmissionMask1UVAnimated: 0
+ - _EmissionMaskAnimated: 0
+ - _EmissionMaskPanAnimated: 0
+ - _EmissionMaskUV: 0
+ - _EmissionMaskUVAnimated: 0
+ - _EmissionReplace: 0
+ - _EmissionReplaceAnimated: 0
+ - _EmissionScrollingCurve1Animated: 0
+ - _EmissionScrollingCurveAnimated: 0
+ - _EmissionScrollingOffset: 0
+ - _EmissionScrollingOffset1: 0
+ - _EmissionScrollingOffset1Animated: 0
+ - _EmissionScrollingOffsetAnimated: 0
+ - _EmissionScrollingUseCurve: 0
+ - _EmissionScrollingUseCurve1: 0
+ - _EmissionScrollingUseCurve1Animated: 0
+ - _EmissionScrollingUseCurveAnimated: 0
+ - _EmissionScrollingVertexColor: 0
+ - _EmissionScrollingVertexColor1: 0
+ - _EmissionScrollingVertexColor1Animated: 0
+ - _EmissionScrollingVertexColorAnimated: 0
+ - _EmissionStrength: 0
+ - _EmissionStrength1: 0
+ - _EmissionStrength1Animated: 0
+ - _EmissionStrengthAnimated: 0
+ - _EmissiveBlink_Max: 1
+ - _EmissiveBlink_Max1: 1
+ - _EmissiveBlink_Max1Animated: 0
+ - _EmissiveBlink_MaxAnimated: 0
+ - _EmissiveBlink_Min: 0
+ - _EmissiveBlink_Min1: 0
+ - _EmissiveBlink_Min1Animated: 0
+ - _EmissiveBlink_MinAnimated: 0
+ - _EmissiveBlink_Velocity: 4
+ - _EmissiveBlink_Velocity1: 4
+ - _EmissiveBlink_Velocity1Animated: 0
+ - _EmissiveBlink_VelocityAnimated: 0
+ - _EmissiveScroll_Direction1Animated: 0
+ - _EmissiveScroll_DirectionAnimated: 0
+ - _EmissiveScroll_Interval: 20
+ - _EmissiveScroll_Interval1: 20
+ - _EmissiveScroll_Interval1Animated: 0
+ - _EmissiveScroll_IntervalAnimated: 0
+ - _EmissiveScroll_Velocity: 10
+ - _EmissiveScroll_Velocity1: 10
+ - _EmissiveScroll_Velocity1Animated: 0
+ - _EmissiveScroll_VelocityAnimated: 0
+ - _EmissiveScroll_Width: 10
+ - _EmissiveScroll_Width1: 10
+ - _EmissiveScroll_Width1Animated: 0
+ - _EmissiveScroll_WidthAnimated: 0
+ - _EnableBlurAnimated: 0
+ - _EnableBulgeAnimated: 0
+ - _EnableClearCoat: 0
+ - _EnableClearCoatAnimated: 0
+ - _EnableDissolve: 0
+ - _EnableDissolveAnimated: 0
+ - _EnableDistortion: 0
+ - _EnableDistortionAnimated: 0
+ - _EnableEmission: 0
+ - _EnableEmission1: 0
+ - _EnableEmission1Animated: 0
+ - _EnableEmissionAnimated: 0
+ - _EnableEnvironmentalRim: 0
+ - _EnableEnvironmentalRimAnimated: 0
+ - _EnableFlipbook: 0
+ - _EnableFlipbookAnimated: 0
+ - _EnableGITDEmission: 0
+ - _EnableGITDEmission1: 0
+ - _EnableGITDEmission1Animated: 0
+ - _EnableGITDEmissionAnimated: 0
+ - _EnableHoloAnimated: 0
+ - _EnableIridescenceAnimated: 0
+ - _EnableLighting: 1
+ - _EnableLightingAnimated: 0
+ - _EnableMetallic: 0
+ - _EnableMetallicAnimated: 0
+ - _EnableMirrorOptions: 0
+ - _EnableMirrorOptionsAnimated: 0
+ - _EnableMirrorTexture: 0
+ - _EnableMirrorTextureAnimated: 0
+ - _EnableRandom: 0
+ - _EnableRandomAnimated: 0
+ - _EnableRimLighting: 0
+ - _EnableRimLightingAnimated: 0
+ - _EnableSSS: 0
+ - _EnableSSSAnimated: 0
+ - _EnableScifiSpawnInAnimated: 0
+ - _EnableSpecular: 0
+ - _EnableSpecular1: 0
+ - _EnableSpecular1Animated: 0
+ - _EnableSpecularAnimated: 0
+ - _EnableTouchGlowAnimated: 0
+ - _EnableVertexGlitchAnimated: 0
+ - _EnableVideoAnimated: 0
+ - _EnableVoronoiAnimated: 0
+ - _FadeLengthAnimated: 0
+ - _FlipbookAdd: 0
+ - _FlipbookAddAnimated: 0
+ - _FlipbookAlphaControlsFinalAlpha: 0
+ - _FlipbookAlphaControlsFinalAlphaAnimated: 0
+ - _FlipbookColorAnimated: 0
+ - _FlipbookColorReplaces: 0
+ - _FlipbookColorReplacesAnimated: 0
+ - _FlipbookCurrentFrame: -1
+ - _FlipbookCurrentFrameAnimated: 0
+ - _FlipbookEmissionStrength: 0
+ - _FlipbookEmissionStrengthAnimated: 0
+ - _FlipbookFPS: 30
+ - _FlipbookFPSAnimated: 0
+ - _FlipbookIntensityControlsAlpha: 0
+ - _FlipbookIntensityControlsAlphaAnimated: 0
+ - _FlipbookMaskAnimated: 0
+ - _FlipbookMaskPanAnimated: 0
+ - _FlipbookMaskUV: 0
+ - _FlipbookMaskUVAnimated: 0
+ - _FlipbookMultiply: 0
+ - _FlipbookMultiplyAnimated: 0
+ - _FlipbookReplace: 1
+ - _FlipbookReplaceAnimated: 0
+ - _FlipbookRotation: 0
+ - _FlipbookRotationAnimated: 0
+ - _FlipbookRotationSpeed: 0
+ - _FlipbookRotationSpeedAnimated: 0
+ - _FlipbookScaleOffsetAnimated: 0
+ - _FlipbookTexArrayAnimated: 0
+ - _FlipbookTexArrayPanAnimated: 0
+ - _FlipbookTexArrayUV: 0
+ - _FlipbookTexArrayUVAnimated: 0
+ - _FlipbookTiled: 0
+ - _FlipbookTiledAnimated: 0
+ - _FlipbookTotalFrames: 1
+ - _FlipbookTotalFramesAnimated: 0
+ - _ForceOpaque: 0
+ - _ForceOpaqueAnimated: 0
+ - _ForgotToLockMaterial: 1
+ - _GIEmissionMultiplier: 1
+ - _GITDEMaxEmissionMultiplier: 0
+ - _GITDEMaxEmissionMultiplier1: 0
+ - _GITDEMaxEmissionMultiplier1Animated: 0
+ - _GITDEMaxEmissionMultiplierAnimated: 0
+ - _GITDEMaxLight: 1
+ - _GITDEMaxLight1: 1
+ - _GITDEMaxLight1Animated: 0
+ - _GITDEMaxLightAnimated: 0
+ - _GITDEMinEmissionMultiplier: 1
+ - _GITDEMinEmissionMultiplier1: 1
+ - _GITDEMinEmissionMultiplier1Animated: 0
+ - _GITDEMinEmissionMultiplierAnimated: 0
+ - _GITDEMinLight: 0
+ - _GITDEMinLight1: 0
+ - _GITDEMinLight1Animated: 0
+ - _GITDEMinLightAnimated: 0
+ - _GITDEWorldOrMesh: 0
+ - _GITDEWorldOrMesh1: 0
+ - _GITDEWorldOrMesh1Animated: 0
+ - _GITDEWorldOrMeshAnimated: 0
+ - _GlitterAngleRange: 90
+ - _GlitterAngleRangeAnimated: 0
+ - _GlitterBias: 0.8
+ - _GlitterBiasAnimated: 0
+ - _GlitterBlendType: 0
+ - _GlitterBlendTypeAnimated: 0
+ - _GlitterBrightness: 3
+ - _GlitterBrightnessAnimated: 0
+ - _GlitterCenterSize: 0.08
+ - _GlitterCenterSizeAnimated: 0
+ - _GlitterColorAnimated: 0
+ - _GlitterColorMapAnimated: 0
+ - _GlitterColorMapPanAnimated: 0
+ - _GlitterColorMapUV: 0
+ - _GlitterColorMapUVAnimated: 0
+ - _GlitterContrast: 300
+ - _GlitterContrastAnimated: 0
+ - _GlitterEnable: 0
+ - _GlitterEnableAnimated: 0
+ - _GlitterFrequency: 300
+ - _GlitterFrequencyAnimated: 0
+ - _GlitterJaggyFix: 0
+ - _GlitterJaggyFixAnimated: 0
+ - _GlitterJitter: 1
+ - _GlitterJitterAnimated: 0
+ - _GlitterMaskAnimated: 0
+ - _GlitterMaskPanAnimated: 0
+ - _GlitterMaskUV: 0
+ - _GlitterMaskUVAnimated: 0
+ - _GlitterMinBrightness: 0
+ - _GlitterMinBrightnessAnimated: 0
+ - _GlitterMinMaxBrightnessAnimated: 0
+ - _GlitterMinMaxSaturationAnimated: 0
+ - _GlitterMinMaxSizeAnimated: 0
+ - _GlitterMode: 0
+ - _GlitterModeAnimated: 0
+ - _GlitterPanAnimated: 0
+ - _GlitterRandomColors: 0
+ - _GlitterRandomColorsAnimated: 0
+ - _GlitterRandomRotation: 0
+ - _GlitterRandomRotationAnimated: 0
+ - _GlitterRandomSize: 0
+ - _GlitterRandomSizeAnimated: 0
+ - _GlitterShape: 0
+ - _GlitterShapeAnimated: 0
+ - _GlitterSize: 0.3
+ - _GlitterSizeAnimated: 0
+ - _GlitterSpeed: 10
+ - _GlitterSpeedAnimated: 0
+ - _GlitterTextureAnimated: 0
+ - _GlitterTexturePanAnimated: 0
+ - _GlitterTextureRotation: 0
+ - _GlitterTextureRotationAnimated: 0
+ - _GlitterUseSurfaceColor: 0
+ - _GlitterUseSurfaceColorAnimated: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0
+ - _GlossyReflections: 1
+ - _GrabBlurDirectionsAnimated: 0
+ - _GrabBlurDistanceAnimated: 0
+ - _GrabBlurQualityAnimated: 0
+ - _GrabDstBlendAnimated: 0
+ - _GrabPassBlendFactorAnimated: 0
+ - _GrabPassUseAlphaAnimated: 0
+ - _GrabSrcBlendAnimated: 0
+ - _GreenColorAnimated: 0
+ - _GreenTextureAnimated: 0
+ - _HelpBoxHideLocking: 0
+ - _HelpBoxLocking: 0
+ - _HoloAlphaMapAnimated: 0
+ - _HoloCoordinateSpaceAnimated: 0
+ - _HoloDirectionAnimated: 0
+ - _HoloFresnelAlphaAnimated: 0
+ - _HoloLineDensityAnimated: 0
+ - _HoloRimSharpnessAnimated: 0
+ - _HoloRimWidthAnimated: 0
+ - _HoloScrollSpeedAnimated: 0
+ - _IgnoreFog: 0
+ - _IgnoreFogAnimated: 0
+ - _InvertSmoothness: 0
+ - _InvertSmoothnessAnimated: 0
+ - _IridescenceAddBlendAnimated: 0
+ - _IridescenceEmissionStrengthAnimated: 0
+ - _IridescenceIntensityAnimated: 0
+ - _IridescenceMaskAnimated: 0
+ - _IridescenceMaskUVAnimated: 0
+ - _IridescenceMultiplyBlendAnimated: 0
+ - _IridescenceNormalIntensityAnimated: 0
+ - _IridescenceNormalMapAnimated: 0
+ - _IridescenceNormalSelectionAnimated: 0
+ - _IridescenceNormalToggleAnimated: 0
+ - _IridescenceNormalUVAnimated: 0
+ - _IridescenceRampAnimated: 0
+ - _IridescenceReplaceBlendAnimated: 0
+ - _IridescenceTimeAnimated: 0
+ - _LightingAOTexAnimated: 0
+ - _LightingAOTexPanAnimated: 0
+ - _LightingAOTexUV: 0
+ - _LightingAOTexUVAnimated: 0
+ - _LightingAdditiveDetailStrength: 1
+ - _LightingAdditiveDetailStrengthAnimated: 0
+ - _LightingAdditiveGradientEnd: 0.5
+ - _LightingAdditiveGradientEndAnimated: 0
+ - _LightingAdditiveGradientStart: 0
+ - _LightingAdditiveGradientStartAnimated: 0
+ - _LightingAdditiveLimitIntensity: 0
+ - _LightingAdditiveLimitIntensityAnimated: 0
+ - _LightingAdditiveMaxIntensity: 1
+ - _LightingAdditiveMaxIntensityAnimated: 0
+ - _LightingAdditivePassthrough: 0.5
+ - _LightingAdditivePassthroughAnimated: 0
+ - _LightingAdditiveType: 1
+ - _LightingAdditiveTypeAnimated: 0
+ - _LightingDetailShadowsAnimated: 0
+ - _LightingDetailShadowsEnabled: 0
+ - _LightingDetailShadowsEnabledAnimated: 0
+ - _LightingDetailShadowsPanAnimated: 0
+ - _LightingDetailShadowsUV: 0
+ - _LightingDetailShadowsUVAnimated: 0
+ - _LightingDetailStrength: 1
+ - _LightingDetailStrengthAnimated: 0
+ - _LightingDirectColorMode: 0
+ - _LightingDirectColorModeAnimated: 0
+ - _LightingEnableAO: 0
+ - _LightingEnableAOAnimated: 0
+ - _LightingEnableHSL: 0
+ - _LightingEnableHSLAnimated: 0
+ - _LightingGradientEnd: 0.5
+ - _LightingGradientEndAnimated: 0
+ - _LightingGradientStart: 0
+ - _LightingGradientStartAnimated: 0
+ - _LightingHSLIntensity: 1
+ - _LightingHSLIntensityAnimated: 0
+ - _LightingIgnoreAmbientColor: 0
+ - _LightingIgnoreAmbientColorAnimated: 0
+ - _LightingIndirectColorMode: 0
+ - _LightingIndirectColorModeAnimated: 0
+ - _LightingMinLightBrightness: 0
+ - _LightingMinLightBrightnessAnimated: 0
+ - _LightingMinShadowBrightnessRatio: 0
+ - _LightingMinShadowBrightnessRatioAnimated: 0
+ - _LightingMode: 0
+ - _LightingModeAnimated: 0
+ - _LightingMonochromatic: 0
+ - _LightingMonochromaticAnimated: 0
+ - _LightingOnlyUnityShadows: 0
+ - _LightingOnlyUnityShadowsAnimated: 0
+ - _LightingRampType: 0
+ - _LightingRampTypeAnimated: 0
+ - _LightingShadingEnabled: 0
+ - _LightingShadingEnabledAnimated: 0
+ - _LightingShadowColorAnimated: 0
+ - _LightingShadowHue: 0.5
+ - _LightingShadowHueAnimated: 0
+ - _LightingShadowLightness: 0.5
+ - _LightingShadowLightnessAnimated: 0
+ - _LightingShadowMaskAnimated: 0
+ - _LightingShadowMaskPanAnimated: 0
+ - _LightingShadowMaskUV: 0
+ - _LightingShadowMaskUVAnimated: 0
+ - _LightingShadowSaturation: 0.5
+ - _LightingShadowSaturationAnimated: 0
+ - _LightingShadowTextureAnimated: 0
+ - _LightingShadowTexturePanAnimated: 0
+ - _LightingShadowTextureUV: 0
+ - _LightingShadowTextureUVAnimated: 0
+ - _LightingStandardSmoothness: 0
+ - _LightingStandardSmoothnessAnimated: 0
+ - _LightingUncapped: 0
+ - _LightingUncappedAnimated: 0
+ - _LineColorAnimated: 0
+ - _LineWidth: 0
+ - _LineWidthAnimated: 0
+ - _LockTooltip: 0
+ - _MainAlphaToCoverage: 0
+ - _MainAlphaToCoverageAnimated: 0
+ - _MainDistanceFadeAnimated: 0
+ - _MainEmissionStrength: 0
+ - _MainEmissionStrengthAnimated: 0
+ - _MainFadeTextureAnimated: 0
+ - _MainFadeTexturePanAnimated: 0
+ - _MainFadeTextureUV: 0
+ - _MainFadeTextureUVAnimated: 0
+ - _MainHueShift: 0
+ - _MainHueShiftAnimated: 0
+ - _MainHueShiftMaskAnimated: 0
+ - _MainHueShiftMaskPanAnimated: 0
+ - _MainHueShiftMaskUV: 0
+ - _MainHueShiftMaskUVAnimated: 0
+ - _MainHueShiftReplace: 1
+ - _MainHueShiftReplaceAnimated: 0
+ - _MainHueShiftSpeed: 0
+ - _MainHueShiftSpeedAnimated: 0
+ - _MainHueShiftToggle: 0
+ - _MainHueShiftToggleAnimated: 0
+ - _MainMinAlpha: 0
+ - _MainMinAlphaAnimated: 0
+ - _MainMipScale: 0.25
+ - _MainMipScaleAnimated: 0
+ - _MainShadowClipMod: 0
+ - _MainShadowClipModAnimated: 0
+ - _MainTexAnimated: 0
+ - _MainTexPanAnimated: 0
+ - _MainTex_STAnimated: 0
+ - _MainTextureUV: 0
+ - _MainTextureUVAnimated: 0
+ - _MainUseVertexColorAlpha: 0
+ - _MainUseVertexColorAlphaAnimated: 0
+ - _MainVertexColoring: 0
+ - _MainVertexColoringAnimated: 0
+ - _Matcap2Add: 0
+ - _Matcap2AddAnimated: 0
+ - _Matcap2Animated: 0
+ - _Matcap2Border: 0.43
+ - _Matcap2BorderAnimated: 0
+ - _Matcap2ColorAnimated: 0
+ - _Matcap2EmissionStrength: 0
+ - _Matcap2EmissionStrengthAnimated: 0
+ - _Matcap2Enable: 0
+ - _Matcap2EnableAnimated: 0
+ - _Matcap2Intensity: 1
+ - _Matcap2IntensityAnimated: 0
+ - _Matcap2LightMask: 0
+ - _Matcap2LightMaskAnimated: 0
+ - _Matcap2MaskAnimated: 0
+ - _Matcap2MaskInvert: 0
+ - _Matcap2MaskInvertAnimated: 0
+ - _Matcap2MaskPanAnimated: 0
+ - _Matcap2MaskUV: 0
+ - _Matcap2MaskUVAnimated: 0
+ - _Matcap2Multiply: 0
+ - _Matcap2MultiplyAnimated: 0
+ - _Matcap2Normal: 1
+ - _Matcap2NormalAnimated: 0
+ - _Matcap2Replace: 0
+ - _Matcap2ReplaceAnimated: 0
+ - _MatcapAdd: 0
+ - _MatcapAddAnimated: 0
+ - _MatcapAnimated: 0
+ - _MatcapBorder: 0.43
+ - _MatcapBorderAnimated: 0
+ - _MatcapColorAnimated: 0
+ - _MatcapEmissionStrength: 0
+ - _MatcapEmissionStrengthAnimated: 0
+ - _MatcapEnable: 0
+ - _MatcapEnableAnimated: 0
+ - _MatcapIntensity: 1
+ - _MatcapIntensityAnimated: 0
+ - _MatcapLightMask: 0
+ - _MatcapLightMaskAnimated: 0
+ - _MatcapMaskAnimated: 0
+ - _MatcapMaskInvert: 0
+ - _MatcapMaskInvertAnimated: 0
+ - _MatcapMaskPanAnimated: 0
+ - _MatcapMaskUV: 0
+ - _MatcapMaskUVAnimated: 0
+ - _MatcapMultiply: 0
+ - _MatcapMultiplyAnimated: 0
+ - _MatcapNormal: 1
+ - _MatcapNormalAnimated: 0
+ - _MatcapReplace: 1
+ - _MatcapReplaceAnimated: 0
+ - _MetalReflectionTintAnimated: 0
+ - _Metallic: 0
+ - _MetallicAnimated: 0
+ - _MetallicMaskAnimated: 0
+ - _MetallicMaskPanAnimated: 0
+ - _MetallicMaskUV: 0
+ - _MetallicMaskUVAnimated: 0
+ - _MetallicTintMapAnimated: 0
+ - _MetallicTintMapPanAnimated: 0
+ - _MetallicTintMapUV: 0
+ - _MetallicTintMapUVAnimated: 0
+ - _Mirror: 0
+ - _MirrorAnimated: 0
+ - _MirrorTextureAnimated: 0
+ - _MirrorTexturePanAnimated: 0
+ - _MirrorTextureUV: 0
+ - _MirrorTextureUVAnimated: 0
+ - _Mode: 0
+ - _ModelAngleMax: 90
+ - _ModelAngleMaxAnimated: 0
+ - _ModelAngleMin: 45
+ - _ModelAngleMinAnimated: 0
+ - _OcclusionStrength: 1
+ - _OffsetFactor: 0
+ - _OffsetFactorAnimated: 0
+ - _OffsetUnits: 0
+ - _OffsetUnitsAnimated: 0
+ - _OutlineCull: 1
+ - _OutlineCullAnimated: 0
+ - _OutlineDropShadowOffsetAnimated: 0
+ - _OutlineEmission: 0
+ - _OutlineEmissionAnimated: 0
+ - _OutlineFadeDistanceAnimated: 0
+ - _OutlineFixedSize: 0
+ - _OutlineFixedSizeAnimated: 0
+ - _OutlineLit: 1
+ - _OutlineLitAnimated: 0
+ - _OutlineMaskAnimated: 0
+ - _OutlineMaskUV: 0
+ - _OutlineMode: 0
+ - _OutlineModeAnimated: 0
+ - _OutlineOffsetFactor: 0
+ - _OutlineOffsetUnits: 0
+ - _OutlinePersonaDirectionAnimated: 0
+ - _OutlineRimLightBlend: 0
+ - _OutlineRimLightBlendAnimated: 0
+ - _OutlineShadowStrength: 1
+ - _OutlineShadowStrengthAnimated: 0
+ - _OutlineStencilCompareFunction: 8
+ - _OutlineStencilCompareFunctionAnimated: 0
+ - _OutlineStencilFailOp: 0
+ - _OutlineStencilFailOpAnimated: 0
+ - _OutlineStencilPassOp: 0
+ - _OutlineStencilPassOpAnimated: 0
+ - _OutlineStencilReadMask: 255
+ - _OutlineStencilReadMaskAnimated: 0
+ - _OutlineStencilRef: 0
+ - _OutlineStencilRefAnimated: 0
+ - _OutlineStencilWriteMask: 255
+ - _OutlineStencilWriteMaskAnimated: 0
+ - _OutlineStencilZFailOp: 0
+ - _OutlineStencilZFailOpAnimated: 0
+ - _OutlineTextureAnimated: 0
+ - _OutlineTexturePanAnimated: 0
+ - _OutlineTextureUV: 0
+ - _OutlineTintMix: 0
+ - _OutlineTintMixAnimated: 0
+ - _OutlineUseVertexColors: 0
+ - _OutlineUseVertexColorsAnimated: 0
+ - _PanoBlend: 0
+ - _PanoBlendAnimated: 0
+ - _PanoCubeMapAnimated: 0
+ - _PanoCubeMapToggle: 0
+ - _PanoCubeMapToggleAnimated: 0
+ - _PanoEmission: 0
+ - _PanoEmissionAnimated: 0
+ - _PanoInfiniteStereoToggle: 0
+ - _PanoInfiniteStereoToggleAnimated: 0
+ - _PanoMaskAnimated: 0
+ - _PanoMaskPanAnimated: 0
+ - _PanoMaskUV: 0
+ - _PanoMaskUVAnimated: 0
+ - _PanoToggle: 0
+ - _PanoToggleAnimated: 0
+ - _PanosphereColorAnimated: 0
+ - _PanospherePanAnimated: 0
+ - _PanosphereTextureAnimated: 0
+ - _Parallax: 0.02
+ - _ParallaxBias: 0.42
+ - _ParallaxBiasAnimated: 0
+ - _ParallaxHeightMapAnimated: 0
+ - _ParallaxHeightMapEnabled: 0
+ - _ParallaxHeightMapEnabledAnimated: 0
+ - _ParallaxHeightMapMaskAnimated: 0
+ - _ParallaxHeightMapMaskPanAnimated: 0
+ - _ParallaxHeightMapMaskUV: 0
+ - _ParallaxHeightMapMaskUVAnimated: 0
+ - _ParallaxHeightMapPanAnimated: 0
+ - _ParallaxInternalHeightFromAlpha: 0
+ - _ParallaxInternalHeightFromAlphaAnimated: 0
+ - _ParallaxInternalHeightmapMode: 0
+ - _ParallaxInternalHeightmapModeAnimated: 0
+ - _ParallaxInternalIterations: 1
+ - _ParallaxInternalIterationsAnimated: 0
+ - _ParallaxInternalMapAnimated: 0
+ - _ParallaxInternalMapEnabled: 0
+ - _ParallaxInternalMapEnabledAnimated: 0
+ - _ParallaxInternalMapMaskAnimated: 0
+ - _ParallaxInternalMapMaskPanAnimated: 0
+ - _ParallaxInternalMapMaskUV: 0
+ - _ParallaxInternalMapMaskUVAnimated: 0
+ - _ParallaxInternalMaxColorAnimated: 0
+ - _ParallaxInternalMaxDepth: 1
+ - _ParallaxInternalMaxDepthAnimated: 0
+ - _ParallaxInternalMaxFade: 1
+ - _ParallaxInternalMaxFadeAnimated: 0
+ - _ParallaxInternalMinColorAnimated: 0
+ - _ParallaxInternalMinDepth: 0
+ - _ParallaxInternalMinDepthAnimated: 0
+ - _ParallaxInternalMinFade: 0
+ - _ParallaxInternalMinFadeAnimated: 0
+ - _ParallaxInternalPanDepthSpeedAnimated: 0
+ - _ParallaxInternalPanSpeedAnimated: 0
+ - _ParallaxMap: 0
+ - _ParallaxMapAnimated: 0
+ - _ParallaxStrength: 0
+ - _ParallaxStrengthAnimated: 0
+ - _ParallaxUV: 0
+ - _ParallaxUVAnimated: 0
+ - _RGBBlendMultiplicative: 0
+ - _RGBBlendMultiplicativeAnimated: 0
+ - _RGBBluePanningAnimated: 0
+ - _RGBBlue_UV: 0
+ - _RGBBlue_UVAnimated: 0
+ - _RGBGreenPanningAnimated: 0
+ - _RGBGreen_UV: 0
+ - _RGBGreen_UVAnimated: 0
+ - _RGBMaskAnimated: 0
+ - _RGBMaskEnabled: 0
+ - _RGBMaskEnabledAnimated: 0
+ - _RGBMaskPanningAnimated: 0
+ - _RGBMaskUV: 0
+ - _RGBMaskUVAnimated: 0
+ - _RGBNormalBlend: 0
+ - _RGBNormalBlendAnimated: 0
+ - _RGBRedPanningAnimated: 0
+ - _RGBRed_UV: 0
+ - _RGBRed_UVAnimated: 0
+ - _RGBUseVertexColors: 0
+ - _RGBUseVertexColorsAnimated: 0
+ - _RedColorAnimated: 0
+ - _RedTexureAnimated: 0
+ - _RefractionChromaticAberattionAnimated: 0
+ - _RefractionEnabledAnimated: 0
+ - _RefractionIndexAnimated: 0
+ - _RgbNormalBScale: 0
+ - _RgbNormalBUV: 0
+ - _RgbNormalGScale: 0
+ - _RgbNormalGUV: 0
+ - _RgbNormalRScale: 0
+ - _RgbNormalRUV: 0
+ - _RgbNormalsEnabled: 0
+ - _RimBrighten: 0
+ - _RimBrightenAnimated: 0
+ - _RimEnviroBlur: 0.7
+ - _RimEnviroBlurAnimated: 0
+ - _RimEnviroIntensity: 1
+ - _RimEnviroIntensityAnimated: 0
+ - _RimEnviroMaskAnimated: 0
+ - _RimEnviroMaskPanAnimated: 0
+ - _RimEnviroMaskUV: 0
+ - _RimEnviroMaskUVAnimated: 0
+ - _RimEnviroMinBrightness: 0
+ - _RimEnviroMinBrightnessAnimated: 0
+ - _RimEnviroSharpness: 0
+ - _RimEnviroSharpnessAnimated: 0
+ - _RimEnviroWidth: 0.45
+ - _RimEnviroWidthAnimated: 0
+ - _RimLightColorAnimated: 0
+ - _RimLightColorBias: 0
+ - _RimLightColorBiasAnimated: 0
+ - _RimLightNormal: 1
+ - _RimLightNormalAnimated: 0
+ - _RimLightingInvert: 0
+ - _RimLightingInvertAnimated: 0
+ - _RimMaskAnimated: 0
+ - _RimMaskPanAnimated: 0
+ - _RimMaskUV: 0
+ - _RimMaskUVAnimated: 0
+ - _RimSharpness: 0.25
+ - _RimSharpnessAnimated: 0
+ - _RimStrength: 0
+ - _RimStrengthAnimated: 0
+ - _RimTexAnimated: 0
+ - _RimTexPanAnimated: 0
+ - _RimTexUV: 0
+ - _RimTexUVAnimated: 0
+ - _RimWidth: 0.8
+ - _RimWidthAnimated: 0
+ - _RimWidthNoiseStrength: 0.1
+ - _RimWidthNoiseStrengthAnimated: 0
+ - _RimWidthNoiseTextureAnimated: 0
+ - _RimWidthNoiseTexturePanAnimated: 0
+ - _RimWidthNoiseTextureUV: 0
+ - _RimWidthNoiseTextureUVAnimated: 0
+ - _SSSColorAnimated: 0
+ - _SSSDistortion: 1
+ - _SSSDistortionAnimated: 0
+ - _SSSPower: 5
+ - _SSSPowerAnimated: 0
+ - _SSSSCale: 0.25
+ - _SSSSCaleAnimated: 0
+ - _SSSThicknessMapAnimated: 0
+ - _SSSThicknessMapPanAnimated: 0
+ - _SSSThicknessMapUV: 0
+ - _SSSThicknessMapUVAnimated: 0
+ - _SSSThicknessMod: 0
+ - _SSSThicknessModAnimated: 0
+ - _SampleWorld: 0
+ - _SampleWorldAnimated: 0
+ - _Saturation: 0
+ - _SaturationAnimated: 0
+ - _ScrollingEmission: 0
+ - _ScrollingEmission1: 0
+ - _ScrollingEmission1Animated: 0
+ - _ScrollingEmissionAnimated: 0
+ - _ShaderOptimizerEnabled: 1
+ - _ShadowMix: 0
+ - _ShadowMixAnimated: 0
+ - _ShadowMixThreshold: 0.5
+ - _ShadowMixThresholdAnimated: 0
+ - _ShadowMixWidthMod: 0.5
+ - _ShadowMixWidthModAnimated: 0
+ - _ShadowOffset: 0
+ - _ShadowOffsetAnimated: 0
+ - _ShadowStrength: 1
+ - _ShadowStrengthAnimated: 0
+ - _Smoothness: 0
+ - _SmoothnessAnimated: 0
+ - _SmoothnessFrom: 1
+ - _SmoothnessFrom1: 1
+ - _SmoothnessFrom1Animated: 0
+ - _SmoothnessFromAnimated: 0
+ - _SmoothnessMaskAnimated: 0
+ - _SmoothnessMaskPanAnimated: 0
+ - _SmoothnessMaskUV: 0
+ - _SmoothnessMaskUVAnimated: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpawnInAlphaAnimated: 0
+ - _SpawnInEmissionColorAnimated: 0
+ - _SpawnInEmissionOffsetAnimated: 0
+ - _SpawnInGradientFinishAnimated: 0
+ - _SpawnInGradientStartAnimated: 0
+ - _SpawnInNoiseAnimated: 0
+ - _SpawnInNoiseIntensityAnimated: 0
+ - _SpawnInVertOffsetAnimated: 0
+ - _SpawnInVertOffsetOffsetAnimated: 0
+ - _Spec1Offset: 0
+ - _Spec1Offset1: 0
+ - _Spec1Offset1Animated: 0
+ - _Spec1OffsetAnimated: 0
+ - _Spec2Smoothness: 0
+ - _Spec2Smoothness1: 0
+ - _Spec2Smoothness1Animated: 0
+ - _Spec2SmoothnessAnimated: 0
+ - _SpecWhatTangent: 0
+ - _SpecWhatTangent1: 0
+ - _SpecWhatTangent1Animated: 0
+ - _SpecWhatTangentAnimated: 0
+ - _SpecularAnisoJitterMacro1Animated: 0
+ - _SpecularAnisoJitterMacro1PanAnimated: 0
+ - _SpecularAnisoJitterMacro1UV: 0
+ - _SpecularAnisoJitterMacro1UVAnimated: 0
+ - _SpecularAnisoJitterMacroAnimated: 0
+ - _SpecularAnisoJitterMacroMultiplier: 0
+ - _SpecularAnisoJitterMacroMultiplier1: 0
+ - _SpecularAnisoJitterMacroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMacroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMacroPanAnimated: 0
+ - _SpecularAnisoJitterMacroUV: 0
+ - _SpecularAnisoJitterMacroUVAnimated: 0
+ - _SpecularAnisoJitterMicro1Animated: 0
+ - _SpecularAnisoJitterMicro1PanAnimated: 0
+ - _SpecularAnisoJitterMicro1UV: 0
+ - _SpecularAnisoJitterMicro1UVAnimated: 0
+ - _SpecularAnisoJitterMicroAnimated: 0
+ - _SpecularAnisoJitterMicroMultiplier: 0
+ - _SpecularAnisoJitterMicroMultiplier1: 0
+ - _SpecularAnisoJitterMicroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMicroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMicroPanAnimated: 0
+ - _SpecularAnisoJitterMicroUV: 0
+ - _SpecularAnisoJitterMicroUVAnimated: 0
+ - _SpecularAnisoJitterMirrored: 0
+ - _SpecularAnisoJitterMirrored1: 0
+ - _SpecularAnisoJitterMirrored1Animated: 0
+ - _SpecularAnisoJitterMirroredAnimated: 0
+ - _SpecularHighlights: 1
+ - _SpecularInvertSmoothness: 0
+ - _SpecularInvertSmoothness1: 0
+ - _SpecularInvertSmoothness1Animated: 0
+ - _SpecularInvertSmoothnessAnimated: 0
+ - _SpecularMap1Animated: 0
+ - _SpecularMap1PanAnimated: 0
+ - _SpecularMap1UV: 0
+ - _SpecularMap1UVAnimated: 0
+ - _SpecularMapAnimated: 0
+ - _SpecularMapPanAnimated: 0
+ - _SpecularMapUV: 0
+ - _SpecularMapUVAnimated: 0
+ - _SpecularMask1Animated: 0
+ - _SpecularMask1PanAnimated: 0
+ - _SpecularMask1UV: 0
+ - _SpecularMask1UVAnimated: 0
+ - _SpecularMaskAnimated: 0
+ - _SpecularMaskPanAnimated: 0
+ - _SpecularMaskUV: 0
+ - _SpecularMaskUVAnimated: 0
+ - _SpecularMetallic: 0
+ - _SpecularMetallic1: 0
+ - _SpecularMetallic1Animated: 0
+ - _SpecularMetallicAnimated: 0
+ - _SpecularMetallicMap1UV: 0
+ - _SpecularMetallicMapUV: 0
+ - _SpecularNormal: 1
+ - _SpecularNormal1: 1
+ - _SpecularNormal1Animated: 0
+ - _SpecularNormalAnimated: 0
+ - _SpecularSmoothness: 1
+ - _SpecularSmoothness1: 0.75
+ - _SpecularSmoothness1Animated: 0
+ - _SpecularSmoothnessAnimated: 0
+ - _SpecularTint1Animated: 0
+ - _SpecularTintAnimated: 0
+ - _SpecularToonEnd: 1
+ - _SpecularToonEnd1: 1
+ - _SpecularToonEnd1Animated: 0
+ - _SpecularToonEndAnimated: 0
+ - _SpecularToonInnerOuter1Animated: 0
+ - _SpecularToonInnerOuterAnimated: 0
+ - _SpecularToonStart: 0.95
+ - _SpecularToonStart1: 0.95
+ - _SpecularToonStart1Animated: 0
+ - _SpecularToonStartAnimated: 0
+ - _SpecularType: 1
+ - _SpecularType1: 1
+ - _SpecularType1Animated: 0
+ - _SpecularTypeAnimated: 0
+ - _SrcBlend: 1
+ - _SrcBlendAnimated: 0
+ - _StencilCompareFunction: 8
+ - _StencilCompareFunctionAnimated: 0
+ - _StencilFailOp: 0
+ - _StencilFailOpAnimated: 0
+ - _StencilPassOp: 0
+ - _StencilPassOpAnimated: 0
+ - _StencilReadMask: 255
+ - _StencilReadMaskAnimated: 0
+ - _StencilRef: 0
+ - _StencilRefAnimated: 0
+ - _StencilWriteMask: 255
+ - _StencilWriteMaskAnimated: 0
+ - _StencilZFailOp: 0
+ - _StencilZFailOpAnimated: 0
+ - _TextEnabled: 0
+ - _TextEnabledAnimated: 0
+ - _TextFPSColorAnimated: 0
+ - _TextFPSEmissionStrength: 0
+ - _TextFPSEmissionStrengthAnimated: 0
+ - _TextFPSEnabled: 0
+ - _TextFPSEnabledAnimated: 0
+ - _TextFPSOffsetAnimated: 0
+ - _TextFPSPaddingAnimated: 0
+ - _TextFPSRotation: 0
+ - _TextFPSRotationAnimated: 0
+ - _TextFPSScaleAnimated: 0
+ - _TextFPSUV: 0
+ - _TextFPSUVAnimated: 0
+ - _TextGlyphsAnimated: 0
+ - _TextPixelRange: 4
+ - _TextPixelRangeAnimated: 0
+ - _TextPositionColorAnimated: 0
+ - _TextPositionEmissionStrength: 0
+ - _TextPositionEmissionStrengthAnimated: 0
+ - _TextPositionEnabled: 0
+ - _TextPositionEnabledAnimated: 0
+ - _TextPositionOffsetAnimated: 0
+ - _TextPositionPaddingAnimated: 0
+ - _TextPositionRotation: 0
+ - _TextPositionRotationAnimated: 0
+ - _TextPositionScaleAnimated: 0
+ - _TextPositionUV: 0
+ - _TextPositionUVAnimated: 0
+ - _TextTimeColorAnimated: 0
+ - _TextTimeEmissionStrength: 0
+ - _TextTimeEmissionStrengthAnimated: 0
+ - _TextTimeEnabled: 0
+ - _TextTimeEnabledAnimated: 0
+ - _TextTimeOffsetAnimated: 0
+ - _TextTimePaddingAnimated: 0
+ - _TextTimeRotation: 0
+ - _TextTimeRotationAnimated: 0
+ - _TextTimeScaleAnimated: 0
+ - _TextTimeUV: 0
+ - _TextTimeUVAnimated: 0
+ - _ToonRampAnimated: 0
+ - _UVSec: 0
+ - _UseShadowTexture: 0
+ - _UseShadowTextureAnimated: 0
+ - _VertexGlitchFrequencyAnimated: 0
+ - _VertexGlitchStrengthAnimated: 0
+ - _VertexGlitchThresholdAnimated: 0
+ - _VertexManipulationHeight: 0
+ - _VertexManipulationHeightAnimated: 0
+ - _VertexManipulationHeightBias: 0
+ - _VertexManipulationHeightBiasAnimated: 0
+ - _VertexManipulationHeightMaskAnimated: 0
+ - _VertexManipulationHeightPanAnimated: 0
+ - _VertexManipulationHeightUV: 0
+ - _VertexManipulationHeightUVAnimated: 0
+ - _VertexManipulationLocalRotationAnimated: 0
+ - _VertexManipulationLocalScaleAnimated: 0
+ - _VertexManipulationLocalTranslationAnimated: 0
+ - _VertexManipulationWorldTranslationAnimated: 0
+ - _VertexManipulationsEnabled: 0
+ - _VertexRoundingDivision: 500
+ - _VertexRoundingDivisionAnimated: 0
+ - _VertexRoundingEnabled: 0
+ - _VertexRoundingEnabledAnimated: 0
+ - _VertexUnwrap: 0
+ - _VertexUnwrapAnimated: 0
+ - _VideoBacklightAnimated: 0
+ - _VideoCRTPixelEnergizedTimeAnimated: 0
+ - _VideoCRTRefreshRateAnimated: 0
+ - _VideoContrastAnimated: 0
+ - _VideoDebugTextureAnimated: 0
+ - _VideoEnableDebugAnimated: 0
+ - _VideoEnableVideoPlayerAnimated: 0
+ - _VideoGameboyRampAnimated: 0
+ - _VideoMaskPanningAnimated: 0
+ - _VideoMaskTextureAnimated: 0
+ - _VideoOffsetAnimated: 0
+ - _VideoPanningAnimated: 0
+ - _VideoPixelTextureAnimated: 0
+ - _VideoPixelateToResolutionAnimated: 0
+ - _VideoRepeatVideoTextureAnimated: 0
+ - _VideoResolutionAnimated: 0
+ - _VideoSaturationAnimated: 0
+ - _VideoTilingAnimated: 0
+ - _VideoTypeAnimated: 0
+ - _VideoUVNumberAnimated: 0
+ - _VoronoiBlendAnimated: 0
+ - _VoronoiColor0Animated: 0
+ - _VoronoiColor1Animated: 0
+ - _VoronoiEffectsMaterialAlphaAnimated: 0
+ - _VoronoiEmission0Animated: 0
+ - _VoronoiEmission1Animated: 0
+ - _VoronoiEnableRandomCellColorAnimated: 0
+ - _VoronoiGradientAnimated: 0
+ - _VoronoiMaskAnimated: 0
+ - _VoronoiMaskPanAnimated: 0
+ - _VoronoiMaskUVAnimated: 0
+ - _VoronoiNoiseAnimated: 0
+ - _VoronoiNoiseIntensityAnimated: 0
+ - _VoronoiNoisePanAnimated: 0
+ - _VoronoiNoiseUVAnimated: 0
+ - _VoronoiRandomMinMaxBrightnessAnimated: 0
+ - _VoronoiRandomMinMaxSaturationAnimated: 0
+ - _VoronoiScaleAnimated: 0
+ - _VoronoiSpaceAnimated: 0
+ - _VoronoiSpeedAnimated: 0
+ - _VoronoiTypeAnimated: 0
+ - _ZTest: 4
+ - _ZTestAnimated: 0
+ - _ZWrite: 1
+ - _ZWriteAnimated: 0
+ - _commentIfZero_EnableOutlinePass: 0
+ - _commentIfZero_LightingAdditiveEnable: 1
+ - _commentIfZero_LightingAdditiveEnableAnimated: 0
+ - _glitterFrequencyLinearEmissive: 20
+ - _glitterFrequencyLinearEmissiveAnimated: 0
+ - footer_discord: 0
+ - footer_github: 0
+ - footer_patreon: 0
+ - footer_twitter: 0
+ - footer_youtube: 0
+ - m_LockingInfo: 0
+ - m_ParallaxMap: 0
+ - m_Special_Effects: 0
+ - m_end_Alpha: 0
+ - m_end_BonusSliders: 0
+ - m_end_CenterOutEmission: 0
+ - m_end_CenterOutEmission1: 0
+ - m_end_DecalSection: 0
+ - m_end_DetailOptions: 0
+ - m_end_Lighting: 0
+ - m_end_MainHueShift: 0
+ - m_end_MainVertexColors: 0
+ - m_end_Matcap2: 0
+ - m_end_Metallic: 0
+ - m_end_OutlineStencil: 0
+ - m_end_RGBMask: 0
+ - m_end_ShadowMix: 0
+ - m_end_StencilPassOptions: 0
+ - m_end_Text: 0
+ - m_end_TextFPS: 0
+ - m_end_TextInstanceTime: 0
+ - m_end_TextPosition: 0
+ - m_end_ambientOcclusion: 0
+ - m_end_angularFade: 0
+ - m_end_backFace: 0
+ - m_end_bakedLighting: 0
+ - m_end_blending: 0
+ - m_end_blinkingEmissionOptions: 0
+ - m_end_blinkingEmissionOptions1: 0
+ - m_end_clearCoat: 0
+ - m_end_debugOptions: 0
+ - m_end_detailShadows: 0
+ - m_end_dissolve: 0
+ - m_end_dissolveMasking: 0
+ - m_end_distanceFade: 0
+ - m_end_distortionFlow: 0
+ - m_end_emission1Options: 0
+ - m_end_emissionOptions: 0
+ - m_end_flipBook: 0
+ - m_end_glitter: 0
+ - m_end_glitterRandom: 0
+ - m_end_glowInDarkEmissionOptions: 0
+ - m_end_glowInDarkEmissionOptions1: 0
+ - m_end_lightingAdvanced: 0
+ - m_end_lightingHSL: 0
+ - m_end_lightingModifiers: 0
+ - m_end_manualFlipbookControl: 0
+ - m_end_matcap: 0
+ - m_end_mirrorOptions: 0
+ - m_end_outlineAdvanced: 0
+ - m_end_panosphereOptions: 0
+ - m_end_parallaxAdvanced: 0
+ - m_end_parallaxHeightmap: 0
+ - m_end_parallaxInternal: 0
+ - m_end_pointToPoint: 0
+ - m_end_reflectionRim: 0
+ - m_end_rimLightOptions: 0
+ - m_end_rimWidthNoise: 0
+ - m_end_scrollingEmission1Options: 0
+ - m_end_scrollingEmissionOptions: 0
+ - m_end_shadowTexture: 0
+ - m_end_specular: 0
+ - m_end_specular1: 0
+ - m_end_subsurface: 0
+ - m_end_vertexManipulation: 0
+ - m_lightingOptions: 0
+ - m_mainOptions: 0
+ - m_outlineOptions: 0
+ - m_renderingOptions: 0
+ - m_start_Alpha: 0
+ - m_start_BonusSliders: 0
+ - m_start_CenterOutEmission: 0
+ - m_start_CenterOutEmission1: 0
+ - m_start_DecalSection: 0
+ - m_start_DetailOptions: 0
+ - m_start_Lighting: 0
+ - m_start_MainHueShift: 0
+ - m_start_MainVertexColors: 0
+ - m_start_Matcap2: 0
+ - m_start_Metallic: 0
+ - m_start_OutlineStencil: 0
+ - m_start_RGBMask: 0
+ - m_start_ShadowMix: 0
+ - m_start_StencilPassOptions: 0
+ - m_start_Text: 0
+ - m_start_TextFPS: 0
+ - m_start_TextInstanceTime: 0
+ - m_start_TextPosition: 0
+ - m_start_ambientOcclusion: 0
+ - m_start_angularFade: 0
+ - m_start_backFace: 0
+ - m_start_bakedLighting: 0
+ - m_start_blending: 0
+ - m_start_blinkingEmissionOptions: 0
+ - m_start_blinkingEmissionOptions1: 0
+ - m_start_clearCoat: 0
+ - m_start_debugOptions: 0
+ - m_start_detailShadows: 0
+ - m_start_dissolve: 0
+ - m_start_dissolveMasking: 0
+ - m_start_distanceFade: 0
+ - m_start_distortionFlow: 0
+ - m_start_emission1Options: 0
+ - m_start_emissionOptions: 0
+ - m_start_flipBook: 0
+ - m_start_glitter: 0
+ - m_start_glitterRandom: 0
+ - m_start_glowInDarkEmissionOptions: 0
+ - m_start_glowInDarkEmissionOptions1: 0
+ - m_start_lightingAdvanced: 0
+ - m_start_lightingHSL: 0
+ - m_start_lightingModifiers: 0
+ - m_start_manualFlipbookControl: 0
+ - m_start_matcap: 0
+ - m_start_mirrorOptions: 0
+ - m_start_outlineAdvanced: 0
+ - m_start_panosphereOptions: 0
+ - m_start_parallaxAdvanced: 0
+ - m_start_parallaxHeightmap: 0
+ - m_start_parallaxInternal: 0
+ - m_start_pointToPoint: 0
+ - m_start_reflectionRim: 0
+ - m_start_rimLightOptions: 0
+ - m_start_rimWidthNoise: 0
+ - m_start_scrollingEmissionOptions: 0
+ - m_start_scrollingEmissionOptions1: 0
+ - m_start_shadowTexture: 0
+ - m_start_specular: 0
+ - m_start_specular1: 0
+ - m_start_subsurface: 0
+ - m_start_vertexManipulation: 0
+ - shader_is_using_thry_editor: 0
+ - shader_master_label: 0
+ - shader_presets: 0
+ - shader_properties_label_file: 0
+ m_Colors:
+ - _AlphaMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _AngleForwardDirection: {r: 0, g: 0, b: 1, a: 0}
+ - _AnisoTangentMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _AnisoTangentMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _BackFaceColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BackFacePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _BlueColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BumpMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatSmoothnessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatTint: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DecalPosition: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DecalScale: {r: 1, g: 1, b: 0, a: 0}
+ - _DecalTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailNormalMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTint: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveDetailNoisePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveEdgeColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveEndPoint: {r: 0, g: 1, b: 0, a: 0}
+ - _DissolveMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveStartPoint: {r: 0, g: -1, b: 0, a: 0}
+ - _DissolveTextureColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveToTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionSpeed: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DistortionSpeed1: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionColor1: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissiveScroll_Direction: {r: 0, g: -10, b: 0, a: 0}
+ - _EmissiveScroll_Direction1: {r: 0, g: -10, b: 0, a: 0}
+ - _FlipbookColor: {r: 1, g: 1, b: 1, a: 1}
+ - _FlipbookMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _FlipbookScaleOffset: {r: 1, g: 1, b: 0, a: 0}
+ - _FlipbookTexArrayPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterColor: {r: 1, g: 1, b: 1, a: 1}
+ - _GlitterColorMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMinMaxBrightness: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSaturation: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSize: {r: 0.1, g: 0.5, b: 0, a: 1}
+ - _GlitterPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _GreenColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingAOTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingDetailShadowsPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingShadowMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _LineColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MainDistanceFade: {r: 0, g: 0, b: 0, a: 0}
+ - _MainFadeTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainHueShiftMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _Matcap2Color: {r: 1, g: 1, b: 1, a: 1}
+ - _Matcap2MaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MatcapColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MatcapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetalReflectionTint: {r: 1, g: 1, b: 1, a: 1}
+ - _MetallicMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetallicTintMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MirrorTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineDropShadowOffset: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineFadeDistance: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlinePersonaDirection: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanoMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanosphereColor: {r: 1, g: 1, b: 1, a: 1}
+ - _PanospherePan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMaxColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalMinColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalPanDepthSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalPanSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBBluePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBGreenPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBMaskPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBRedPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RedColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RgbNormalBPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalGPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalRPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimEnviroMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimLightColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RimMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimWidthNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _SSSColor: {r: 1, g: 0, b: 0, a: 1}
+ - _SSSThicknessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SmoothnessMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularTint: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularTint1: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularToonInnerOuter: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _SpecularToonInnerOuter1: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _TextFPSColor: {r: 1, g: 1, b: 1, a: 1}
+ - _TextFPSOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextPositionColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextPositionOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextTimeColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextTimeOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimePadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimeScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationHeightPan: {r: 0, g: 0, b: 0, a: 0}
+ - _VertexManipulationLocalRotation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationLocalScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationLocalTranslation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationWorldTranslation: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.mat.meta
new file mode 100644
index 00000000..a183d93c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: db195731d333c5140a455a905a438854
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.png b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.png
new file mode 100644
index 00000000..5af60f16
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.png
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.png.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.png.meta
new file mode 100644
index 00000000..3dedcfd0
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/cheek_00.png.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: bde48f74661e08c4baa4b5e1a4c11865
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 1
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.mat
new file mode 100644
index 00000000..684d794a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.mat
@@ -0,0 +1,1855 @@
+%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: "heartby1010\u6D63"
+ m_Shader: {fileID: 4800000, guid: c7c0d8c663a95b34cb8d3a4f6200dfbf, type: 3}
+ m_ShaderKeywords: VIGNETTE_MASKED _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap:
+ OptimizedShaderFolder: "heartby1010\u6D63-10b0e5a7"
+ OriginalShader: ".poiyomi/\u2022 Poiyomi Toon \u2022"
+ RenderType: Opaque
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _AlphaMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BackFaceTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BlueTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatCubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatSmoothnessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _CubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalTexture:
+ 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}
+ - _DetailTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveDetailNoise:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveEdgeGradient:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveToTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionMask:
+ 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}
+ - _EmissionMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookTexArray:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterColorMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GreenTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingAOTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingDetailShadows:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainFadeTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainHueShiftMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: 54298d4226ebb394198c62a6fb72d24a, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2Mask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MatcapMask:
+ 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}
+ - _MetallicMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicTintMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MirrorTexture:
+ 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}
+ - _OutlineMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OutlineTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoCubeMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanosphereTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMapMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMapMask:
+ 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}
+ - _RGBMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RedTexure:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalB:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalG:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalR:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimEnviroMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimWidthNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SSSThicknessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SmoothnessMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _TextGlyphs:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ToonRamp:
+ m_Texture: {fileID: 2800000, guid: 61bd594533da4fc42bd46ef93ba5a4f6, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _VertexManipulationHeightMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - DSGI: 0
+ - Instancing: 0
+ - LightmapFlags: 0
+ - _AOStrength: 1
+ - _AOStrengthAnimated: 0
+ - _AlphaMaskAnimated: 0
+ - _AlphaMaskPanAnimated: 0
+ - _AlphaMaskUV: 0
+ - _AlphaMaskUVAnimated: 0
+ - _AlphaMod: 0
+ - _AlphaModAnimated: 0
+ - _AlphaPremultiply: 0
+ - _AlphaPremultiplyAnimated: 0
+ - _AlphaToMask: 0
+ - _AlphaToMaskAnimated: 0
+ - _AngleCompareTo: 0
+ - _AngleCompareToAnimated: 0
+ - _AngleForwardDirectionAnimated: 0
+ - _AngleMinAlpha: 0
+ - _AngleMinAlphaAnimated: 0
+ - _AngleType: 0
+ - _AngleTypeAnimated: 0
+ - _AnisoSpec1Alpha: 1
+ - _AnisoSpec1Alpha1: 1
+ - _AnisoSpec1Alpha1Animated: 0
+ - _AnisoSpec1AlphaAnimated: 0
+ - _AnisoSpec2Alpha: 1
+ - _AnisoSpec2Alpha1: 1
+ - _AnisoSpec2Alpha1Animated: 0
+ - _AnisoSpec2AlphaAnimated: 0
+ - _AnisoTangentMap1Animated: 0
+ - _AnisoTangentMap1PanAnimated: 0
+ - _AnisoTangentMap1UV: 0
+ - _AnisoTangentMap1UVAnimated: 0
+ - _AnisoTangentMapAnimated: 0
+ - _AnisoTangentMapPanAnimated: 0
+ - _AnisoTangentMapUV: 0
+ - _AnisoTangentMapUVAnimated: 0
+ - _AnisoUseTangentMap: 0
+ - _AnisoUseTangentMap1: 0
+ - _AnisoUseTangentMap1Animated: 0
+ - _AnisoUseTangentMapAnimated: 0
+ - _AttenuationMultiplier: 0
+ - _AttenuationMultiplierAnimated: 0
+ - _BackFaceDetailIntensity: 1
+ - _BackFaceEmissionStrength: 0
+ - _BackFaceEnabled: 0
+ - _BackFaceHueShift: 0
+ - _BackFaceTextureUV: 0
+ - _BlackLightMaskClearCoatAnimated: 0
+ - _BlackLightMaskDebugAnimated: 0
+ - _BlackLightMaskDissolveAnimated: 0
+ - _BlackLightMaskEmission2Animated: 0
+ - _BlackLightMaskEmissionAnimated: 0
+ - _BlackLightMaskEnabledAnimated: 0
+ - _BlackLightMaskEndAnimated: 0
+ - _BlackLightMaskFlipbookAnimated: 0
+ - _BlackLightMaskGlitterAnimated: 0
+ - _BlackLightMaskIridescenceAnimated: 0
+ - _BlackLightMaskKeysAnimated: 0
+ - _BlackLightMaskMatcap2Animated: 0
+ - _BlackLightMaskMatcapAnimated: 0
+ - _BlackLightMaskMetallicAnimated: 0
+ - _BlackLightMaskPanosphereAnimated: 0
+ - _BlackLightMaskStartAnimated: 0
+ - _BlendOp: 0
+ - _BlendOpAlpha: 0
+ - _BlendOpAlphaAnimated: 0
+ - _BlendOpAnimated: 0
+ - _BlueColorAnimated: 0
+ - _BlueTextureAnimated: 0
+ - _BuldgeFadeLengthAnimated: 0
+ - _BuldgeHeightAnimated: 0
+ - _BulgeMaskAnimated: 0
+ - _BumpMapAnimated: 0
+ - _BumpMapPanAnimated: 0
+ - _BumpMapUV: 0
+ - _BumpMapUVAnimated: 0
+ - _BumpScale: 1
+ - _BumpScaleAnimated: 0
+ - _CameraAngleMax: 90
+ - _CameraAngleMaxAnimated: 0
+ - _CameraAngleMin: 45
+ - _CameraAngleMinAnimated: 0
+ - _ClearCoat: 1
+ - _ClearCoatAnimated: 0
+ - _ClearCoatCubeMapAnimated: 0
+ - _ClearCoatForceLighting: 0
+ - _ClearCoatForceLightingAnimated: 0
+ - _ClearCoatInvertSmoothness: 0
+ - _ClearCoatInvertSmoothnessAnimated: 0
+ - _ClearCoatMaskAnimated: 0
+ - _ClearCoatMaskPanAnimated: 0
+ - _ClearCoatMaskUV: 0
+ - _ClearCoatMaskUVAnimated: 0
+ - _ClearCoatNormalToUse: 0
+ - _ClearCoatNormalToUseAnimated: 0
+ - _ClearCoatSampleWorld: 0
+ - _ClearCoatSampleWorldAnimated: 0
+ - _ClearCoatSmoothness: 0
+ - _ClearCoatSmoothnessAnimated: 0
+ - _ClearCoatSmoothnessMapAnimated: 0
+ - _ClearCoatSmoothnessMapPanAnimated: 0
+ - _ClearCoatSmoothnessMapUV: 0
+ - _ClearCoatSmoothnessMapUVAnimated: 0
+ - _ClearCoatTintAnimated: 0
+ - _ColorAnimated: 0
+ - _ColorMask: 15
+ - _ColorMaskAnimated: 0
+ - _ContinuousDissolve: 0
+ - _ContinuousDissolveAnimated: 0
+ - _CubeMapAnimated: 0
+ - _Cull: 2
+ - _CullAnimated: 0
+ - _Cutoff: 0.5
+ - _CutoffAnimated: 0
+ - _DebugCameraData: 0
+ - _DebugCameraDataAnimated: 0
+ - _DebugEnabled: 0
+ - _DebugLightingData: 0
+ - _DebugLightingDataAnimated: 0
+ - _DebugMeshData: 0
+ - _DebugMeshDataAnimated: 0
+ - _DecalBlendAdd: 0
+ - _DecalBlendAddAnimated: 0
+ - _DecalBlendMultiply: 0
+ - _DecalBlendMultiplyAnimated: 0
+ - _DecalBlendReplace: 0
+ - _DecalBlendReplaceAnimated: 0
+ - _DecalColorAnimated: 0
+ - _DecalEmissionStrength: 0
+ - _DecalEmissionStrengthAnimated: 0
+ - _DecalEnabled: 0
+ - _DecalEnabledAnimated: 0
+ - _DecalMaskAnimated: 0
+ - _DecalMaskPanAnimated: 0
+ - _DecalMaskUV: 0
+ - _DecalMaskUVAnimated: 0
+ - _DecalPositionAnimated: 0
+ - _DecalRotation: 0
+ - _DecalRotationAnimated: 0
+ - _DecalRotationSpeed: 0
+ - _DecalRotationSpeedAnimated: 0
+ - _DecalScaleAnimated: 0
+ - _DecalTextureAnimated: 0
+ - _DecalTexturePanAnimated: 0
+ - _DecalTextureUV: 0
+ - _DecalTextureUVAnimated: 0
+ - _DecalTiled: 0
+ - _DecalTiledAnimated: 0
+ - _DepthAlphaMaxAnimated: 0
+ - _DepthAlphaMinAnimated: 0
+ - _DepthGlowColorAnimated: 0
+ - _DepthGlowEmissionAnimated: 0
+ - _DepthGradientAnimated: 0
+ - _DepthGradientBlendAnimated: 0
+ - _DepthGradientPanAnimated: 0
+ - _DepthGradientTextureUVAnimated: 0
+ - _DepthGradientUVAnimated: 0
+ - _DepthMaskAnimated: 0
+ - _DepthMaskPanAnimated: 0
+ - _DepthMaskUVAnimated: 0
+ - _DetailBrightness: 1
+ - _DetailBrightnessAnimated: 0
+ - _DetailEnabled: 0
+ - _DetailMaskAnimated: 0
+ - _DetailMaskPanAnimated: 0
+ - _DetailMaskUV: 0
+ - _DetailMaskUVAnimated: 0
+ - _DetailNormalMapAnimated: 0
+ - _DetailNormalMapPanAnimated: 0
+ - _DetailNormalMapScale: 1
+ - _DetailNormalMapScaleAnimated: 0
+ - _DetailNormalMapUV: 0
+ - _DetailNormalMapUVAnimated: 0
+ - _DetailTexAnimated: 0
+ - _DetailTexIntensity: 1
+ - _DetailTexIntensityAnimated: 0
+ - _DetailTexPanAnimated: 0
+ - _DetailTexUV: 0
+ - _DetailTexUVAnimated: 0
+ - _DetailTintAnimated: 0
+ - _DisableDirectionalInAdd: 1
+ - _DissolveAlpha: 0
+ - _DissolveAlpha0: 0
+ - _DissolveAlpha0Animated: 0
+ - _DissolveAlpha1: 0
+ - _DissolveAlpha1Animated: 0
+ - _DissolveAlpha2: 0
+ - _DissolveAlpha2Animated: 0
+ - _DissolveAlpha3: 0
+ - _DissolveAlpha3Animated: 0
+ - _DissolveAlpha4: 0
+ - _DissolveAlpha4Animated: 0
+ - _DissolveAlpha5: 0
+ - _DissolveAlpha5Animated: 0
+ - _DissolveAlpha6: 0
+ - _DissolveAlpha6Animated: 0
+ - _DissolveAlpha7: 0
+ - _DissolveAlpha7Animated: 0
+ - _DissolveAlpha8: 0
+ - _DissolveAlpha8Animated: 0
+ - _DissolveAlpha9: 0
+ - _DissolveAlpha9Animated: 0
+ - _DissolveAlphaAnimated: 0
+ - _DissolveDetailNoiseAnimated: 0
+ - _DissolveDetailNoisePanAnimated: 0
+ - _DissolveDetailNoiseUV: 0
+ - _DissolveDetailNoiseUVAnimated: 0
+ - _DissolveDetailStrength: 0.1
+ - _DissolveDetailStrengthAnimated: 0
+ - _DissolveEdgeColorAnimated: 0
+ - _DissolveEdgeEmission: 0
+ - _DissolveEdgeEmissionAnimated: 0
+ - _DissolveEdgeGradientAnimated: 0
+ - _DissolveEdgeHardness: 0.5
+ - _DissolveEdgeHardnessAnimated: 0
+ - _DissolveEdgeWidth: 0.025
+ - _DissolveEdgeWidthAnimated: 0
+ - _DissolveEmission1Side: 2
+ - _DissolveEmission1SideAnimated: 0
+ - _DissolveEmissionSide: 2
+ - _DissolveEmissionSideAnimated: 0
+ - _DissolveEndPointAnimated: 0
+ - _DissolveInvertDetailNoise: 0
+ - _DissolveInvertDetailNoiseAnimated: 0
+ - _DissolveInvertNoise: 0
+ - _DissolveInvertNoiseAnimated: 0
+ - _DissolveMaskAnimated: 0
+ - _DissolveMaskInvert: 0
+ - _DissolveMaskInvertAnimated: 0
+ - _DissolveMaskPanAnimated: 0
+ - _DissolveMaskUV: 0
+ - _DissolveMaskUVAnimated: 0
+ - _DissolveNoiseTextureAnimated: 0
+ - _DissolveNoiseTexturePanAnimated: 0
+ - _DissolveNoiseTextureUV: 0
+ - _DissolveNoiseTextureUVAnimated: 0
+ - _DissolveP2PEdgeLength: 0.1
+ - _DissolveP2PEdgeLengthAnimated: 0
+ - _DissolveP2PWorldLocal: 0
+ - _DissolveP2PWorldLocalAnimated: 0
+ - _DissolveStartPointAnimated: 0
+ - _DissolveTextureColorAnimated: 0
+ - _DissolveToEmissionStrength: 0
+ - _DissolveToEmissionStrengthAnimated: 0
+ - _DissolveToTextureAnimated: 0
+ - _DissolveToTexturePanAnimated: 0
+ - _DissolveToTextureUV: 0
+ - _DissolveToTextureUVAnimated: 0
+ - _DissolveType: 1
+ - _DissolveTypeAnimated: 0
+ - _DissolveUseVertexColors: 0
+ - _DissolveUseVertexColorsAnimated: 0
+ - _DistortionFlowTexture1Animated: 0
+ - _DistortionFlowTextureAnimated: 0
+ - _DistortionMaskAnimated: 0
+ - _DistortionMaskPanAnimated: 0
+ - _DistortionMaskUV: 0
+ - _DistortionMaskUVAnimated: 0
+ - _DistortionSpeed1Animated: 0
+ - _DistortionSpeedAnimated: 0
+ - _DistortionStrength: 0.5
+ - _DistortionStrength1: 0.5
+ - _DistortionStrength1Animated: 0
+ - _DistortionStrengthAnimated: 0
+ - _DitherGradient: 0.1
+ - _DitherGradientAnimated: 0
+ - _DitheringEnabled: 0
+ - _DitheringEnabledAnimated: 0
+ - _DstBlend: 0
+ - _DstBlendAnimated: 0
+ - _EmissionBaseColorAsMap: 0
+ - _EmissionBaseColorAsMap1: 0
+ - _EmissionBaseColorAsMap1Animated: 0
+ - _EmissionBaseColorAsMapAnimated: 0
+ - _EmissionBlinkingEnabled: 0
+ - _EmissionBlinkingEnabled1: 0
+ - _EmissionBlinkingEnabledAnimated: 0
+ - _EmissionBlinkingOffset: 0
+ - _EmissionBlinkingOffset1: 0
+ - _EmissionBlinkingOffset1Animated: 0
+ - _EmissionBlinkingOffsetAnimated: 0
+ - _EmissionCenterOutEnabled: 0
+ - _EmissionCenterOutEnabled1: 0
+ - _EmissionCenterOutEnabled1Animated: 0
+ - _EmissionCenterOutEnabledAnimated: 0
+ - _EmissionCenterOutSpeed: 5
+ - _EmissionCenterOutSpeed1: 5
+ - _EmissionCenterOutSpeed1Animated: 0
+ - _EmissionCenterOutSpeedAnimated: 0
+ - _EmissionColor1Animated: 0
+ - _EmissionColorAnimated: 0
+ - _EmissionHueShift: 0
+ - _EmissionHueShift1: 0
+ - _EmissionHueShift1Animated: 0
+ - _EmissionHueShiftAnimated: 0
+ - _EmissionHueShiftEnabled: 0
+ - _EmissionHueShiftEnabled1: 0
+ - _EmissionHueShiftEnabled1Animated: 0
+ - _EmissionHueShiftEnabledAnimated: 0
+ - _EmissionMap1Animated: 0
+ - _EmissionMap1PanAnimated: 0
+ - _EmissionMap1UV: 0
+ - _EmissionMap1UVAnimated: 0
+ - _EmissionMapAnimated: 0
+ - _EmissionMapPanAnimated: 0
+ - _EmissionMapUV: 0
+ - _EmissionMapUVAnimated: 0
+ - _EmissionMask1Animated: 0
+ - _EmissionMask1PanAnimated: 0
+ - _EmissionMask1UV: 0
+ - _EmissionMask1UVAnimated: 0
+ - _EmissionMaskAnimated: 0
+ - _EmissionMaskPanAnimated: 0
+ - _EmissionMaskUV: 0
+ - _EmissionMaskUVAnimated: 0
+ - _EmissionReplace: 0
+ - _EmissionReplaceAnimated: 0
+ - _EmissionScrollingCurve1Animated: 0
+ - _EmissionScrollingCurveAnimated: 0
+ - _EmissionScrollingOffset: 0
+ - _EmissionScrollingOffset1: 0
+ - _EmissionScrollingOffset1Animated: 0
+ - _EmissionScrollingOffsetAnimated: 0
+ - _EmissionScrollingUseCurve: 0
+ - _EmissionScrollingUseCurve1: 0
+ - _EmissionScrollingUseCurve1Animated: 0
+ - _EmissionScrollingUseCurveAnimated: 0
+ - _EmissionScrollingVertexColor: 0
+ - _EmissionScrollingVertexColor1: 0
+ - _EmissionScrollingVertexColor1Animated: 0
+ - _EmissionScrollingVertexColorAnimated: 0
+ - _EmissionStrength: 0
+ - _EmissionStrength1: 0
+ - _EmissionStrength1Animated: 0
+ - _EmissionStrengthAnimated: 0
+ - _EmissiveBlink_Max: 1
+ - _EmissiveBlink_Max1: 1
+ - _EmissiveBlink_Max1Animated: 0
+ - _EmissiveBlink_MaxAnimated: 0
+ - _EmissiveBlink_Min: 0
+ - _EmissiveBlink_Min1: 0
+ - _EmissiveBlink_Min1Animated: 0
+ - _EmissiveBlink_MinAnimated: 0
+ - _EmissiveBlink_Velocity: 4
+ - _EmissiveBlink_Velocity1: 4
+ - _EmissiveBlink_Velocity1Animated: 0
+ - _EmissiveBlink_VelocityAnimated: 0
+ - _EmissiveScroll_Direction1Animated: 0
+ - _EmissiveScroll_DirectionAnimated: 0
+ - _EmissiveScroll_Interval: 20
+ - _EmissiveScroll_Interval1: 20
+ - _EmissiveScroll_Interval1Animated: 0
+ - _EmissiveScroll_IntervalAnimated: 0
+ - _EmissiveScroll_Velocity: 10
+ - _EmissiveScroll_Velocity1: 10
+ - _EmissiveScroll_Velocity1Animated: 0
+ - _EmissiveScroll_VelocityAnimated: 0
+ - _EmissiveScroll_Width: 10
+ - _EmissiveScroll_Width1: 10
+ - _EmissiveScroll_Width1Animated: 0
+ - _EmissiveScroll_WidthAnimated: 0
+ - _EnableBlurAnimated: 0
+ - _EnableBulgeAnimated: 0
+ - _EnableClearCoat: 0
+ - _EnableClearCoatAnimated: 0
+ - _EnableDissolve: 0
+ - _EnableDissolveAnimated: 0
+ - _EnableDistortion: 0
+ - _EnableDistortionAnimated: 0
+ - _EnableEmission: 0
+ - _EnableEmission1: 0
+ - _EnableEmission1Animated: 0
+ - _EnableEmissionAnimated: 0
+ - _EnableEnvironmentalRim: 0
+ - _EnableEnvironmentalRimAnimated: 0
+ - _EnableFlipbook: 0
+ - _EnableFlipbookAnimated: 0
+ - _EnableGITDEmission: 0
+ - _EnableGITDEmission1: 0
+ - _EnableGITDEmission1Animated: 0
+ - _EnableGITDEmissionAnimated: 0
+ - _EnableHoloAnimated: 0
+ - _EnableIridescenceAnimated: 0
+ - _EnableLighting: 1
+ - _EnableLightingAnimated: 0
+ - _EnableMetallic: 0
+ - _EnableMetallicAnimated: 0
+ - _EnableMirrorOptions: 0
+ - _EnableMirrorOptionsAnimated: 0
+ - _EnableMirrorTexture: 0
+ - _EnableMirrorTextureAnimated: 0
+ - _EnableRandom: 0
+ - _EnableRandomAnimated: 0
+ - _EnableRimLighting: 0
+ - _EnableRimLightingAnimated: 0
+ - _EnableSSS: 0
+ - _EnableSSSAnimated: 0
+ - _EnableScifiSpawnInAnimated: 0
+ - _EnableSpecular: 0
+ - _EnableSpecular1: 0
+ - _EnableSpecular1Animated: 0
+ - _EnableSpecularAnimated: 0
+ - _EnableTouchGlowAnimated: 0
+ - _EnableVertexGlitchAnimated: 0
+ - _EnableVideoAnimated: 0
+ - _EnableVoronoiAnimated: 0
+ - _FadeLengthAnimated: 0
+ - _FlipbookAdd: 0
+ - _FlipbookAddAnimated: 0
+ - _FlipbookAlphaControlsFinalAlpha: 0
+ - _FlipbookAlphaControlsFinalAlphaAnimated: 0
+ - _FlipbookColorAnimated: 0
+ - _FlipbookColorReplaces: 0
+ - _FlipbookColorReplacesAnimated: 0
+ - _FlipbookCurrentFrame: -1
+ - _FlipbookCurrentFrameAnimated: 0
+ - _FlipbookEmissionStrength: 0
+ - _FlipbookEmissionStrengthAnimated: 0
+ - _FlipbookFPS: 30
+ - _FlipbookFPSAnimated: 0
+ - _FlipbookIntensityControlsAlpha: 0
+ - _FlipbookIntensityControlsAlphaAnimated: 0
+ - _FlipbookMaskAnimated: 0
+ - _FlipbookMaskPanAnimated: 0
+ - _FlipbookMaskUV: 0
+ - _FlipbookMaskUVAnimated: 0
+ - _FlipbookMultiply: 0
+ - _FlipbookMultiplyAnimated: 0
+ - _FlipbookReplace: 1
+ - _FlipbookReplaceAnimated: 0
+ - _FlipbookRotation: 0
+ - _FlipbookRotationAnimated: 0
+ - _FlipbookRotationSpeed: 0
+ - _FlipbookRotationSpeedAnimated: 0
+ - _FlipbookScaleOffsetAnimated: 0
+ - _FlipbookTexArrayAnimated: 0
+ - _FlipbookTexArrayPanAnimated: 0
+ - _FlipbookTexArrayUV: 0
+ - _FlipbookTexArrayUVAnimated: 0
+ - _FlipbookTiled: 0
+ - _FlipbookTiledAnimated: 0
+ - _FlipbookTotalFrames: 1
+ - _FlipbookTotalFramesAnimated: 0
+ - _ForceOpaque: 0
+ - _ForceOpaqueAnimated: 0
+ - _ForgotToLockMaterial: 1
+ - _GIEmissionMultiplier: 1
+ - _GITDEMaxEmissionMultiplier: 0
+ - _GITDEMaxEmissionMultiplier1: 0
+ - _GITDEMaxEmissionMultiplier1Animated: 0
+ - _GITDEMaxEmissionMultiplierAnimated: 0
+ - _GITDEMaxLight: 1
+ - _GITDEMaxLight1: 1
+ - _GITDEMaxLight1Animated: 0
+ - _GITDEMaxLightAnimated: 0
+ - _GITDEMinEmissionMultiplier: 1
+ - _GITDEMinEmissionMultiplier1: 1
+ - _GITDEMinEmissionMultiplier1Animated: 0
+ - _GITDEMinEmissionMultiplierAnimated: 0
+ - _GITDEMinLight: 0
+ - _GITDEMinLight1: 0
+ - _GITDEMinLight1Animated: 0
+ - _GITDEMinLightAnimated: 0
+ - _GITDEWorldOrMesh: 0
+ - _GITDEWorldOrMesh1: 0
+ - _GITDEWorldOrMesh1Animated: 0
+ - _GITDEWorldOrMeshAnimated: 0
+ - _GlitterAngleRange: 90
+ - _GlitterAngleRangeAnimated: 0
+ - _GlitterBias: 0.8
+ - _GlitterBiasAnimated: 0
+ - _GlitterBlendType: 0
+ - _GlitterBlendTypeAnimated: 0
+ - _GlitterBrightness: 3
+ - _GlitterBrightnessAnimated: 0
+ - _GlitterCenterSize: 0.08
+ - _GlitterCenterSizeAnimated: 0
+ - _GlitterColorAnimated: 0
+ - _GlitterColorMapAnimated: 0
+ - _GlitterColorMapPanAnimated: 0
+ - _GlitterColorMapUV: 0
+ - _GlitterColorMapUVAnimated: 0
+ - _GlitterContrast: 300
+ - _GlitterContrastAnimated: 0
+ - _GlitterEnable: 0
+ - _GlitterEnableAnimated: 0
+ - _GlitterFrequency: 300
+ - _GlitterFrequencyAnimated: 0
+ - _GlitterJaggyFix: 0
+ - _GlitterJaggyFixAnimated: 0
+ - _GlitterJitter: 1
+ - _GlitterJitterAnimated: 0
+ - _GlitterMaskAnimated: 0
+ - _GlitterMaskPanAnimated: 0
+ - _GlitterMaskUV: 0
+ - _GlitterMaskUVAnimated: 0
+ - _GlitterMinBrightness: 0
+ - _GlitterMinBrightnessAnimated: 0
+ - _GlitterMinMaxBrightnessAnimated: 0
+ - _GlitterMinMaxSaturationAnimated: 0
+ - _GlitterMinMaxSizeAnimated: 0
+ - _GlitterMode: 0
+ - _GlitterModeAnimated: 0
+ - _GlitterPanAnimated: 0
+ - _GlitterRandomColors: 0
+ - _GlitterRandomColorsAnimated: 0
+ - _GlitterRandomRotation: 0
+ - _GlitterRandomRotationAnimated: 0
+ - _GlitterRandomSize: 0
+ - _GlitterRandomSizeAnimated: 0
+ - _GlitterShape: 0
+ - _GlitterShapeAnimated: 0
+ - _GlitterSize: 0.3
+ - _GlitterSizeAnimated: 0
+ - _GlitterSpeed: 10
+ - _GlitterSpeedAnimated: 0
+ - _GlitterTextureAnimated: 0
+ - _GlitterTexturePanAnimated: 0
+ - _GlitterTextureRotation: 0
+ - _GlitterTextureRotationAnimated: 0
+ - _GlitterUseSurfaceColor: 0
+ - _GlitterUseSurfaceColorAnimated: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0
+ - _GlossyReflections: 1
+ - _GrabBlurDirectionsAnimated: 0
+ - _GrabBlurDistanceAnimated: 0
+ - _GrabBlurQualityAnimated: 0
+ - _GrabDstBlendAnimated: 0
+ - _GrabPassBlendFactorAnimated: 0
+ - _GrabPassUseAlphaAnimated: 0
+ - _GrabSrcBlendAnimated: 0
+ - _GreenColorAnimated: 0
+ - _GreenTextureAnimated: 0
+ - _HelpBoxHideLocking: 0
+ - _HelpBoxLocking: 0
+ - _HoloAlphaMapAnimated: 0
+ - _HoloCoordinateSpaceAnimated: 0
+ - _HoloDirectionAnimated: 0
+ - _HoloFresnelAlphaAnimated: 0
+ - _HoloLineDensityAnimated: 0
+ - _HoloRimSharpnessAnimated: 0
+ - _HoloRimWidthAnimated: 0
+ - _HoloScrollSpeedAnimated: 0
+ - _IgnoreFog: 0
+ - _IgnoreFogAnimated: 0
+ - _InvertSmoothness: 0
+ - _InvertSmoothnessAnimated: 0
+ - _IridescenceAddBlendAnimated: 0
+ - _IridescenceEmissionStrengthAnimated: 0
+ - _IridescenceIntensityAnimated: 0
+ - _IridescenceMaskAnimated: 0
+ - _IridescenceMaskUVAnimated: 0
+ - _IridescenceMultiplyBlendAnimated: 0
+ - _IridescenceNormalIntensityAnimated: 0
+ - _IridescenceNormalMapAnimated: 0
+ - _IridescenceNormalSelectionAnimated: 0
+ - _IridescenceNormalToggleAnimated: 0
+ - _IridescenceNormalUVAnimated: 0
+ - _IridescenceRampAnimated: 0
+ - _IridescenceReplaceBlendAnimated: 0
+ - _IridescenceTimeAnimated: 0
+ - _LightingAOTexAnimated: 0
+ - _LightingAOTexPanAnimated: 0
+ - _LightingAOTexUV: 0
+ - _LightingAOTexUVAnimated: 0
+ - _LightingAdditiveDetailStrength: 1
+ - _LightingAdditiveDetailStrengthAnimated: 0
+ - _LightingAdditiveGradientEnd: 0.5
+ - _LightingAdditiveGradientEndAnimated: 0
+ - _LightingAdditiveGradientStart: 0
+ - _LightingAdditiveGradientStartAnimated: 0
+ - _LightingAdditiveLimitIntensity: 0
+ - _LightingAdditiveLimitIntensityAnimated: 0
+ - _LightingAdditiveMaxIntensity: 1
+ - _LightingAdditiveMaxIntensityAnimated: 0
+ - _LightingAdditivePassthrough: 0.5
+ - _LightingAdditivePassthroughAnimated: 0
+ - _LightingAdditiveType: 1
+ - _LightingAdditiveTypeAnimated: 0
+ - _LightingDetailShadowsAnimated: 0
+ - _LightingDetailShadowsEnabled: 0
+ - _LightingDetailShadowsEnabledAnimated: 0
+ - _LightingDetailShadowsPanAnimated: 0
+ - _LightingDetailShadowsUV: 0
+ - _LightingDetailShadowsUVAnimated: 0
+ - _LightingDetailStrength: 1
+ - _LightingDetailStrengthAnimated: 0
+ - _LightingDirectColorMode: 0
+ - _LightingDirectColorModeAnimated: 0
+ - _LightingEnableAO: 0
+ - _LightingEnableAOAnimated: 0
+ - _LightingEnableHSL: 0
+ - _LightingEnableHSLAnimated: 0
+ - _LightingGradientEnd: 0.5
+ - _LightingGradientEndAnimated: 0
+ - _LightingGradientStart: 0
+ - _LightingGradientStartAnimated: 0
+ - _LightingHSLIntensity: 1
+ - _LightingHSLIntensityAnimated: 0
+ - _LightingIgnoreAmbientColor: 0
+ - _LightingIgnoreAmbientColorAnimated: 0
+ - _LightingIndirectColorMode: 0
+ - _LightingIndirectColorModeAnimated: 0
+ - _LightingMinLightBrightness: 0
+ - _LightingMinLightBrightnessAnimated: 0
+ - _LightingMinShadowBrightnessRatio: 0
+ - _LightingMinShadowBrightnessRatioAnimated: 0
+ - _LightingMode: 0
+ - _LightingModeAnimated: 0
+ - _LightingMonochromatic: 0
+ - _LightingMonochromaticAnimated: 0
+ - _LightingOnlyUnityShadows: 0
+ - _LightingOnlyUnityShadowsAnimated: 0
+ - _LightingRampType: 0
+ - _LightingRampTypeAnimated: 0
+ - _LightingShadingEnabled: 0
+ - _LightingShadingEnabledAnimated: 0
+ - _LightingShadowColorAnimated: 0
+ - _LightingShadowHue: 0.5
+ - _LightingShadowHueAnimated: 0
+ - _LightingShadowLightness: 0.5
+ - _LightingShadowLightnessAnimated: 0
+ - _LightingShadowMaskAnimated: 0
+ - _LightingShadowMaskPanAnimated: 0
+ - _LightingShadowMaskUV: 0
+ - _LightingShadowMaskUVAnimated: 0
+ - _LightingShadowSaturation: 0.5
+ - _LightingShadowSaturationAnimated: 0
+ - _LightingShadowTextureAnimated: 0
+ - _LightingShadowTexturePanAnimated: 0
+ - _LightingShadowTextureUV: 0
+ - _LightingShadowTextureUVAnimated: 0
+ - _LightingStandardSmoothness: 0
+ - _LightingStandardSmoothnessAnimated: 0
+ - _LightingUncapped: 0
+ - _LightingUncappedAnimated: 0
+ - _LineColorAnimated: 0
+ - _LineWidth: 0
+ - _LineWidthAnimated: 0
+ - _LockTooltip: 0
+ - _MainAlphaToCoverage: 0
+ - _MainAlphaToCoverageAnimated: 0
+ - _MainDistanceFadeAnimated: 0
+ - _MainEmissionStrength: 0
+ - _MainEmissionStrengthAnimated: 0
+ - _MainFadeTextureAnimated: 0
+ - _MainFadeTexturePanAnimated: 0
+ - _MainFadeTextureUV: 0
+ - _MainFadeTextureUVAnimated: 0
+ - _MainHueShift: 0
+ - _MainHueShiftAnimated: 0
+ - _MainHueShiftMaskAnimated: 0
+ - _MainHueShiftMaskPanAnimated: 0
+ - _MainHueShiftMaskUV: 0
+ - _MainHueShiftMaskUVAnimated: 0
+ - _MainHueShiftReplace: 1
+ - _MainHueShiftReplaceAnimated: 0
+ - _MainHueShiftSpeed: 0
+ - _MainHueShiftSpeedAnimated: 0
+ - _MainHueShiftToggle: 0
+ - _MainHueShiftToggleAnimated: 0
+ - _MainMinAlpha: 0
+ - _MainMinAlphaAnimated: 0
+ - _MainMipScale: 0.25
+ - _MainMipScaleAnimated: 0
+ - _MainShadowClipMod: 0
+ - _MainShadowClipModAnimated: 0
+ - _MainTexAnimated: 0
+ - _MainTexPanAnimated: 0
+ - _MainTex_STAnimated: 0
+ - _MainTextureUV: 0
+ - _MainTextureUVAnimated: 0
+ - _MainUseVertexColorAlpha: 0
+ - _MainUseVertexColorAlphaAnimated: 0
+ - _MainVertexColoring: 0
+ - _MainVertexColoringAnimated: 0
+ - _Matcap2Add: 0
+ - _Matcap2AddAnimated: 0
+ - _Matcap2Animated: 0
+ - _Matcap2Border: 0.43
+ - _Matcap2BorderAnimated: 0
+ - _Matcap2ColorAnimated: 0
+ - _Matcap2EmissionStrength: 0
+ - _Matcap2EmissionStrengthAnimated: 0
+ - _Matcap2Enable: 0
+ - _Matcap2EnableAnimated: 0
+ - _Matcap2Intensity: 1
+ - _Matcap2IntensityAnimated: 0
+ - _Matcap2LightMask: 0
+ - _Matcap2LightMaskAnimated: 0
+ - _Matcap2MaskAnimated: 0
+ - _Matcap2MaskInvert: 0
+ - _Matcap2MaskInvertAnimated: 0
+ - _Matcap2MaskPanAnimated: 0
+ - _Matcap2MaskUV: 0
+ - _Matcap2MaskUVAnimated: 0
+ - _Matcap2Multiply: 0
+ - _Matcap2MultiplyAnimated: 0
+ - _Matcap2Normal: 1
+ - _Matcap2NormalAnimated: 0
+ - _Matcap2Replace: 0
+ - _Matcap2ReplaceAnimated: 0
+ - _MatcapAdd: 0
+ - _MatcapAddAnimated: 0
+ - _MatcapAnimated: 0
+ - _MatcapBorder: 0.43
+ - _MatcapBorderAnimated: 0
+ - _MatcapColorAnimated: 0
+ - _MatcapEmissionStrength: 0
+ - _MatcapEmissionStrengthAnimated: 0
+ - _MatcapEnable: 0
+ - _MatcapEnableAnimated: 0
+ - _MatcapIntensity: 1
+ - _MatcapIntensityAnimated: 0
+ - _MatcapLightMask: 0
+ - _MatcapLightMaskAnimated: 0
+ - _MatcapMaskAnimated: 0
+ - _MatcapMaskInvert: 0
+ - _MatcapMaskInvertAnimated: 0
+ - _MatcapMaskPanAnimated: 0
+ - _MatcapMaskUV: 0
+ - _MatcapMaskUVAnimated: 0
+ - _MatcapMultiply: 0
+ - _MatcapMultiplyAnimated: 0
+ - _MatcapNormal: 1
+ - _MatcapNormalAnimated: 0
+ - _MatcapReplace: 1
+ - _MatcapReplaceAnimated: 0
+ - _MetalReflectionTintAnimated: 0
+ - _Metallic: 0
+ - _MetallicAnimated: 0
+ - _MetallicMaskAnimated: 0
+ - _MetallicMaskPanAnimated: 0
+ - _MetallicMaskUV: 0
+ - _MetallicMaskUVAnimated: 0
+ - _MetallicTintMapAnimated: 0
+ - _MetallicTintMapPanAnimated: 0
+ - _MetallicTintMapUV: 0
+ - _MetallicTintMapUVAnimated: 0
+ - _Mirror: 0
+ - _MirrorAnimated: 0
+ - _MirrorTextureAnimated: 0
+ - _MirrorTexturePanAnimated: 0
+ - _MirrorTextureUV: 0
+ - _MirrorTextureUVAnimated: 0
+ - _Mode: 0
+ - _ModelAngleMax: 90
+ - _ModelAngleMaxAnimated: 0
+ - _ModelAngleMin: 45
+ - _ModelAngleMinAnimated: 0
+ - _OcclusionStrength: 1
+ - _OffsetFactor: 0
+ - _OffsetFactorAnimated: 0
+ - _OffsetUnits: 0
+ - _OffsetUnitsAnimated: 0
+ - _OutlineCull: 1
+ - _OutlineCullAnimated: 0
+ - _OutlineDropShadowOffsetAnimated: 0
+ - _OutlineEmission: 0
+ - _OutlineEmissionAnimated: 0
+ - _OutlineFadeDistanceAnimated: 0
+ - _OutlineFixedSize: 0
+ - _OutlineFixedSizeAnimated: 0
+ - _OutlineLit: 1
+ - _OutlineLitAnimated: 0
+ - _OutlineMaskAnimated: 0
+ - _OutlineMaskUV: 0
+ - _OutlineMode: 0
+ - _OutlineModeAnimated: 0
+ - _OutlineOffsetFactor: 0
+ - _OutlineOffsetUnits: 0
+ - _OutlinePersonaDirectionAnimated: 0
+ - _OutlineRimLightBlend: 0
+ - _OutlineRimLightBlendAnimated: 0
+ - _OutlineShadowStrength: 1
+ - _OutlineShadowStrengthAnimated: 0
+ - _OutlineStencilCompareFunction: 8
+ - _OutlineStencilCompareFunctionAnimated: 0
+ - _OutlineStencilFailOp: 0
+ - _OutlineStencilFailOpAnimated: 0
+ - _OutlineStencilPassOp: 0
+ - _OutlineStencilPassOpAnimated: 0
+ - _OutlineStencilReadMask: 255
+ - _OutlineStencilReadMaskAnimated: 0
+ - _OutlineStencilRef: 0
+ - _OutlineStencilRefAnimated: 0
+ - _OutlineStencilWriteMask: 255
+ - _OutlineStencilWriteMaskAnimated: 0
+ - _OutlineStencilZFailOp: 0
+ - _OutlineStencilZFailOpAnimated: 0
+ - _OutlineTextureAnimated: 0
+ - _OutlineTexturePanAnimated: 0
+ - _OutlineTextureUV: 0
+ - _OutlineTintMix: 0
+ - _OutlineTintMixAnimated: 0
+ - _OutlineUseVertexColors: 0
+ - _OutlineUseVertexColorsAnimated: 0
+ - _PanoBlend: 0
+ - _PanoBlendAnimated: 0
+ - _PanoCubeMapAnimated: 0
+ - _PanoCubeMapToggle: 0
+ - _PanoCubeMapToggleAnimated: 0
+ - _PanoEmission: 0
+ - _PanoEmissionAnimated: 0
+ - _PanoInfiniteStereoToggle: 0
+ - _PanoInfiniteStereoToggleAnimated: 0
+ - _PanoMaskAnimated: 0
+ - _PanoMaskPanAnimated: 0
+ - _PanoMaskUV: 0
+ - _PanoMaskUVAnimated: 0
+ - _PanoToggle: 0
+ - _PanoToggleAnimated: 0
+ - _PanosphereColorAnimated: 0
+ - _PanospherePanAnimated: 0
+ - _PanosphereTextureAnimated: 0
+ - _Parallax: 0.02
+ - _ParallaxBias: 0.42
+ - _ParallaxBiasAnimated: 0
+ - _ParallaxHeightMapAnimated: 0
+ - _ParallaxHeightMapEnabled: 0
+ - _ParallaxHeightMapEnabledAnimated: 0
+ - _ParallaxHeightMapMaskAnimated: 0
+ - _ParallaxHeightMapMaskPanAnimated: 0
+ - _ParallaxHeightMapMaskUV: 0
+ - _ParallaxHeightMapMaskUVAnimated: 0
+ - _ParallaxHeightMapPanAnimated: 0
+ - _ParallaxInternalHeightFromAlpha: 0
+ - _ParallaxInternalHeightFromAlphaAnimated: 0
+ - _ParallaxInternalHeightmapMode: 0
+ - _ParallaxInternalHeightmapModeAnimated: 0
+ - _ParallaxInternalIterations: 1
+ - _ParallaxInternalIterationsAnimated: 0
+ - _ParallaxInternalMapAnimated: 0
+ - _ParallaxInternalMapEnabled: 0
+ - _ParallaxInternalMapEnabledAnimated: 0
+ - _ParallaxInternalMapMaskAnimated: 0
+ - _ParallaxInternalMapMaskPanAnimated: 0
+ - _ParallaxInternalMapMaskUV: 0
+ - _ParallaxInternalMapMaskUVAnimated: 0
+ - _ParallaxInternalMaxColorAnimated: 0
+ - _ParallaxInternalMaxDepth: 1
+ - _ParallaxInternalMaxDepthAnimated: 0
+ - _ParallaxInternalMaxFade: 1
+ - _ParallaxInternalMaxFadeAnimated: 0
+ - _ParallaxInternalMinColorAnimated: 0
+ - _ParallaxInternalMinDepth: 0
+ - _ParallaxInternalMinDepthAnimated: 0
+ - _ParallaxInternalMinFade: 0
+ - _ParallaxInternalMinFadeAnimated: 0
+ - _ParallaxInternalPanDepthSpeedAnimated: 0
+ - _ParallaxInternalPanSpeedAnimated: 0
+ - _ParallaxMap: 0
+ - _ParallaxMapAnimated: 0
+ - _ParallaxStrength: 0
+ - _ParallaxStrengthAnimated: 0
+ - _ParallaxUV: 0
+ - _ParallaxUVAnimated: 0
+ - _RGBBlendMultiplicative: 0
+ - _RGBBlendMultiplicativeAnimated: 0
+ - _RGBBluePanningAnimated: 0
+ - _RGBBlue_UV: 0
+ - _RGBBlue_UVAnimated: 0
+ - _RGBGreenPanningAnimated: 0
+ - _RGBGreen_UV: 0
+ - _RGBGreen_UVAnimated: 0
+ - _RGBMaskAnimated: 0
+ - _RGBMaskEnabled: 0
+ - _RGBMaskEnabledAnimated: 0
+ - _RGBMaskPanningAnimated: 0
+ - _RGBMaskUV: 0
+ - _RGBMaskUVAnimated: 0
+ - _RGBNormalBlend: 0
+ - _RGBNormalBlendAnimated: 0
+ - _RGBRedPanningAnimated: 0
+ - _RGBRed_UV: 0
+ - _RGBRed_UVAnimated: 0
+ - _RGBUseVertexColors: 0
+ - _RGBUseVertexColorsAnimated: 0
+ - _RedColorAnimated: 0
+ - _RedTexureAnimated: 0
+ - _RefractionChromaticAberattionAnimated: 0
+ - _RefractionEnabledAnimated: 0
+ - _RefractionIndexAnimated: 0
+ - _RgbNormalBScale: 0
+ - _RgbNormalBUV: 0
+ - _RgbNormalGScale: 0
+ - _RgbNormalGUV: 0
+ - _RgbNormalRScale: 0
+ - _RgbNormalRUV: 0
+ - _RgbNormalsEnabled: 0
+ - _RimBrighten: 0
+ - _RimBrightenAnimated: 0
+ - _RimEnviroBlur: 0.7
+ - _RimEnviroBlurAnimated: 0
+ - _RimEnviroIntensity: 1
+ - _RimEnviroIntensityAnimated: 0
+ - _RimEnviroMaskAnimated: 0
+ - _RimEnviroMaskPanAnimated: 0
+ - _RimEnviroMaskUV: 0
+ - _RimEnviroMaskUVAnimated: 0
+ - _RimEnviroMinBrightness: 0
+ - _RimEnviroMinBrightnessAnimated: 0
+ - _RimEnviroSharpness: 0
+ - _RimEnviroSharpnessAnimated: 0
+ - _RimEnviroWidth: 0.45
+ - _RimEnviroWidthAnimated: 0
+ - _RimLightColorAnimated: 0
+ - _RimLightColorBias: 0
+ - _RimLightColorBiasAnimated: 0
+ - _RimLightNormal: 1
+ - _RimLightNormalAnimated: 0
+ - _RimLightingInvert: 0
+ - _RimLightingInvertAnimated: 0
+ - _RimMaskAnimated: 0
+ - _RimMaskPanAnimated: 0
+ - _RimMaskUV: 0
+ - _RimMaskUVAnimated: 0
+ - _RimSharpness: 0.25
+ - _RimSharpnessAnimated: 0
+ - _RimStrength: 0
+ - _RimStrengthAnimated: 0
+ - _RimTexAnimated: 0
+ - _RimTexPanAnimated: 0
+ - _RimTexUV: 0
+ - _RimTexUVAnimated: 0
+ - _RimWidth: 0.8
+ - _RimWidthAnimated: 0
+ - _RimWidthNoiseStrength: 0.1
+ - _RimWidthNoiseStrengthAnimated: 0
+ - _RimWidthNoiseTextureAnimated: 0
+ - _RimWidthNoiseTexturePanAnimated: 0
+ - _RimWidthNoiseTextureUV: 0
+ - _RimWidthNoiseTextureUVAnimated: 0
+ - _SSSColorAnimated: 0
+ - _SSSDistortion: 1
+ - _SSSDistortionAnimated: 0
+ - _SSSPower: 5
+ - _SSSPowerAnimated: 0
+ - _SSSSCale: 0.25
+ - _SSSSCaleAnimated: 0
+ - _SSSThicknessMapAnimated: 0
+ - _SSSThicknessMapPanAnimated: 0
+ - _SSSThicknessMapUV: 0
+ - _SSSThicknessMapUVAnimated: 0
+ - _SSSThicknessMod: 0
+ - _SSSThicknessModAnimated: 0
+ - _SampleWorld: 0
+ - _SampleWorldAnimated: 0
+ - _Saturation: 0
+ - _SaturationAnimated: 0
+ - _ScrollingEmission: 0
+ - _ScrollingEmission1: 0
+ - _ScrollingEmission1Animated: 0
+ - _ScrollingEmissionAnimated: 0
+ - _ShaderOptimizerEnabled: 1
+ - _ShadowMix: 0
+ - _ShadowMixAnimated: 0
+ - _ShadowMixThreshold: 0.5
+ - _ShadowMixThresholdAnimated: 0
+ - _ShadowMixWidthMod: 0.5
+ - _ShadowMixWidthModAnimated: 0
+ - _ShadowOffset: 0
+ - _ShadowOffsetAnimated: 0
+ - _ShadowStrength: 1
+ - _ShadowStrengthAnimated: 0
+ - _Smoothness: 0
+ - _SmoothnessAnimated: 0
+ - _SmoothnessFrom: 1
+ - _SmoothnessFrom1: 1
+ - _SmoothnessFrom1Animated: 0
+ - _SmoothnessFromAnimated: 0
+ - _SmoothnessMaskAnimated: 0
+ - _SmoothnessMaskPanAnimated: 0
+ - _SmoothnessMaskUV: 0
+ - _SmoothnessMaskUVAnimated: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpawnInAlphaAnimated: 0
+ - _SpawnInEmissionColorAnimated: 0
+ - _SpawnInEmissionOffsetAnimated: 0
+ - _SpawnInGradientFinishAnimated: 0
+ - _SpawnInGradientStartAnimated: 0
+ - _SpawnInNoiseAnimated: 0
+ - _SpawnInNoiseIntensityAnimated: 0
+ - _SpawnInVertOffsetAnimated: 0
+ - _SpawnInVertOffsetOffsetAnimated: 0
+ - _Spec1Offset: 0
+ - _Spec1Offset1: 0
+ - _Spec1Offset1Animated: 0
+ - _Spec1OffsetAnimated: 0
+ - _Spec2Smoothness: 0
+ - _Spec2Smoothness1: 0
+ - _Spec2Smoothness1Animated: 0
+ - _Spec2SmoothnessAnimated: 0
+ - _SpecWhatTangent: 0
+ - _SpecWhatTangent1: 0
+ - _SpecWhatTangent1Animated: 0
+ - _SpecWhatTangentAnimated: 0
+ - _SpecularAnisoJitterMacro1Animated: 0
+ - _SpecularAnisoJitterMacro1PanAnimated: 0
+ - _SpecularAnisoJitterMacro1UV: 0
+ - _SpecularAnisoJitterMacro1UVAnimated: 0
+ - _SpecularAnisoJitterMacroAnimated: 0
+ - _SpecularAnisoJitterMacroMultiplier: 0
+ - _SpecularAnisoJitterMacroMultiplier1: 0
+ - _SpecularAnisoJitterMacroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMacroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMacroPanAnimated: 0
+ - _SpecularAnisoJitterMacroUV: 0
+ - _SpecularAnisoJitterMacroUVAnimated: 0
+ - _SpecularAnisoJitterMicro1Animated: 0
+ - _SpecularAnisoJitterMicro1PanAnimated: 0
+ - _SpecularAnisoJitterMicro1UV: 0
+ - _SpecularAnisoJitterMicro1UVAnimated: 0
+ - _SpecularAnisoJitterMicroAnimated: 0
+ - _SpecularAnisoJitterMicroMultiplier: 0
+ - _SpecularAnisoJitterMicroMultiplier1: 0
+ - _SpecularAnisoJitterMicroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMicroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMicroPanAnimated: 0
+ - _SpecularAnisoJitterMicroUV: 0
+ - _SpecularAnisoJitterMicroUVAnimated: 0
+ - _SpecularAnisoJitterMirrored: 0
+ - _SpecularAnisoJitterMirrored1: 0
+ - _SpecularAnisoJitterMirrored1Animated: 0
+ - _SpecularAnisoJitterMirroredAnimated: 0
+ - _SpecularHighlights: 1
+ - _SpecularInvertSmoothness: 0
+ - _SpecularInvertSmoothness1: 0
+ - _SpecularInvertSmoothness1Animated: 0
+ - _SpecularInvertSmoothnessAnimated: 0
+ - _SpecularMap1Animated: 0
+ - _SpecularMap1PanAnimated: 0
+ - _SpecularMap1UV: 0
+ - _SpecularMap1UVAnimated: 0
+ - _SpecularMapAnimated: 0
+ - _SpecularMapPanAnimated: 0
+ - _SpecularMapUV: 0
+ - _SpecularMapUVAnimated: 0
+ - _SpecularMask1Animated: 0
+ - _SpecularMask1PanAnimated: 0
+ - _SpecularMask1UV: 0
+ - _SpecularMask1UVAnimated: 0
+ - _SpecularMaskAnimated: 0
+ - _SpecularMaskPanAnimated: 0
+ - _SpecularMaskUV: 0
+ - _SpecularMaskUVAnimated: 0
+ - _SpecularMetallic: 0
+ - _SpecularMetallic1: 0
+ - _SpecularMetallic1Animated: 0
+ - _SpecularMetallicAnimated: 0
+ - _SpecularMetallicMap1UV: 0
+ - _SpecularMetallicMapUV: 0
+ - _SpecularNormal: 1
+ - _SpecularNormal1: 1
+ - _SpecularNormal1Animated: 0
+ - _SpecularNormalAnimated: 0
+ - _SpecularSmoothness: 1
+ - _SpecularSmoothness1: 0.75
+ - _SpecularSmoothness1Animated: 0
+ - _SpecularSmoothnessAnimated: 0
+ - _SpecularTint1Animated: 0
+ - _SpecularTintAnimated: 0
+ - _SpecularToonEnd: 1
+ - _SpecularToonEnd1: 1
+ - _SpecularToonEnd1Animated: 0
+ - _SpecularToonEndAnimated: 0
+ - _SpecularToonInnerOuter1Animated: 0
+ - _SpecularToonInnerOuterAnimated: 0
+ - _SpecularToonStart: 0.95
+ - _SpecularToonStart1: 0.95
+ - _SpecularToonStart1Animated: 0
+ - _SpecularToonStartAnimated: 0
+ - _SpecularType: 1
+ - _SpecularType1: 1
+ - _SpecularType1Animated: 0
+ - _SpecularTypeAnimated: 0
+ - _SrcBlend: 1
+ - _SrcBlendAnimated: 0
+ - _StencilCompareFunction: 8
+ - _StencilCompareFunctionAnimated: 0
+ - _StencilFailOp: 0
+ - _StencilFailOpAnimated: 0
+ - _StencilPassOp: 0
+ - _StencilPassOpAnimated: 0
+ - _StencilReadMask: 255
+ - _StencilReadMaskAnimated: 0
+ - _StencilRef: 0
+ - _StencilRefAnimated: 0
+ - _StencilWriteMask: 255
+ - _StencilWriteMaskAnimated: 0
+ - _StencilZFailOp: 0
+ - _StencilZFailOpAnimated: 0
+ - _TextEnabled: 0
+ - _TextEnabledAnimated: 0
+ - _TextFPSColorAnimated: 0
+ - _TextFPSEmissionStrength: 0
+ - _TextFPSEmissionStrengthAnimated: 0
+ - _TextFPSEnabled: 0
+ - _TextFPSEnabledAnimated: 0
+ - _TextFPSOffsetAnimated: 0
+ - _TextFPSPaddingAnimated: 0
+ - _TextFPSRotation: 0
+ - _TextFPSRotationAnimated: 0
+ - _TextFPSScaleAnimated: 0
+ - _TextFPSUV: 0
+ - _TextFPSUVAnimated: 0
+ - _TextGlyphsAnimated: 0
+ - _TextPixelRange: 4
+ - _TextPixelRangeAnimated: 0
+ - _TextPositionColorAnimated: 0
+ - _TextPositionEmissionStrength: 0
+ - _TextPositionEmissionStrengthAnimated: 0
+ - _TextPositionEnabled: 0
+ - _TextPositionEnabledAnimated: 0
+ - _TextPositionOffsetAnimated: 0
+ - _TextPositionPaddingAnimated: 0
+ - _TextPositionRotation: 0
+ - _TextPositionRotationAnimated: 0
+ - _TextPositionScaleAnimated: 0
+ - _TextPositionUV: 0
+ - _TextPositionUVAnimated: 0
+ - _TextTimeColorAnimated: 0
+ - _TextTimeEmissionStrength: 0
+ - _TextTimeEmissionStrengthAnimated: 0
+ - _TextTimeEnabled: 0
+ - _TextTimeEnabledAnimated: 0
+ - _TextTimeOffsetAnimated: 0
+ - _TextTimePaddingAnimated: 0
+ - _TextTimeRotation: 0
+ - _TextTimeRotationAnimated: 0
+ - _TextTimeScaleAnimated: 0
+ - _TextTimeUV: 0
+ - _TextTimeUVAnimated: 0
+ - _ToonRampAnimated: 0
+ - _UVSec: 0
+ - _UseShadowTexture: 0
+ - _UseShadowTextureAnimated: 0
+ - _VertexGlitchFrequencyAnimated: 0
+ - _VertexGlitchStrengthAnimated: 0
+ - _VertexGlitchThresholdAnimated: 0
+ - _VertexManipulationHeight: 0
+ - _VertexManipulationHeightAnimated: 0
+ - _VertexManipulationHeightBias: 0
+ - _VertexManipulationHeightBiasAnimated: 0
+ - _VertexManipulationHeightMaskAnimated: 0
+ - _VertexManipulationHeightPanAnimated: 0
+ - _VertexManipulationHeightUV: 0
+ - _VertexManipulationHeightUVAnimated: 0
+ - _VertexManipulationLocalRotationAnimated: 0
+ - _VertexManipulationLocalScaleAnimated: 0
+ - _VertexManipulationLocalTranslationAnimated: 0
+ - _VertexManipulationWorldTranslationAnimated: 0
+ - _VertexManipulationsEnabled: 0
+ - _VertexRoundingDivision: 500
+ - _VertexRoundingDivisionAnimated: 0
+ - _VertexRoundingEnabled: 0
+ - _VertexRoundingEnabledAnimated: 0
+ - _VertexUnwrap: 0
+ - _VertexUnwrapAnimated: 0
+ - _VideoBacklightAnimated: 0
+ - _VideoCRTPixelEnergizedTimeAnimated: 0
+ - _VideoCRTRefreshRateAnimated: 0
+ - _VideoContrastAnimated: 0
+ - _VideoDebugTextureAnimated: 0
+ - _VideoEnableDebugAnimated: 0
+ - _VideoEnableVideoPlayerAnimated: 0
+ - _VideoGameboyRampAnimated: 0
+ - _VideoMaskPanningAnimated: 0
+ - _VideoMaskTextureAnimated: 0
+ - _VideoOffsetAnimated: 0
+ - _VideoPanningAnimated: 0
+ - _VideoPixelTextureAnimated: 0
+ - _VideoPixelateToResolutionAnimated: 0
+ - _VideoRepeatVideoTextureAnimated: 0
+ - _VideoResolutionAnimated: 0
+ - _VideoSaturationAnimated: 0
+ - _VideoTilingAnimated: 0
+ - _VideoTypeAnimated: 0
+ - _VideoUVNumberAnimated: 0
+ - _VoronoiBlendAnimated: 0
+ - _VoronoiColor0Animated: 0
+ - _VoronoiColor1Animated: 0
+ - _VoronoiEffectsMaterialAlphaAnimated: 0
+ - _VoronoiEmission0Animated: 0
+ - _VoronoiEmission1Animated: 0
+ - _VoronoiEnableRandomCellColorAnimated: 0
+ - _VoronoiGradientAnimated: 0
+ - _VoronoiMaskAnimated: 0
+ - _VoronoiMaskPanAnimated: 0
+ - _VoronoiMaskUVAnimated: 0
+ - _VoronoiNoiseAnimated: 0
+ - _VoronoiNoiseIntensityAnimated: 0
+ - _VoronoiNoisePanAnimated: 0
+ - _VoronoiNoiseUVAnimated: 0
+ - _VoronoiRandomMinMaxBrightnessAnimated: 0
+ - _VoronoiRandomMinMaxSaturationAnimated: 0
+ - _VoronoiScaleAnimated: 0
+ - _VoronoiSpaceAnimated: 0
+ - _VoronoiSpeedAnimated: 0
+ - _VoronoiTypeAnimated: 0
+ - _ZTest: 4
+ - _ZTestAnimated: 0
+ - _ZWrite: 1
+ - _ZWriteAnimated: 0
+ - _commentIfZero_EnableOutlinePass: 0
+ - _commentIfZero_LightingAdditiveEnable: 1
+ - _commentIfZero_LightingAdditiveEnableAnimated: 0
+ - _glitterFrequencyLinearEmissive: 20
+ - _glitterFrequencyLinearEmissiveAnimated: 0
+ - footer_discord: 0
+ - footer_github: 0
+ - footer_patreon: 0
+ - footer_twitter: 0
+ - footer_youtube: 0
+ - m_LockingInfo: 0
+ - m_ParallaxMap: 0
+ - m_Special_Effects: 0
+ - m_end_Alpha: 0
+ - m_end_BonusSliders: 0
+ - m_end_CenterOutEmission: 0
+ - m_end_CenterOutEmission1: 0
+ - m_end_DecalSection: 0
+ - m_end_DetailOptions: 0
+ - m_end_Lighting: 0
+ - m_end_MainHueShift: 0
+ - m_end_MainVertexColors: 0
+ - m_end_Matcap2: 0
+ - m_end_Metallic: 0
+ - m_end_OutlineStencil: 0
+ - m_end_RGBMask: 0
+ - m_end_ShadowMix: 0
+ - m_end_StencilPassOptions: 0
+ - m_end_Text: 0
+ - m_end_TextFPS: 0
+ - m_end_TextInstanceTime: 0
+ - m_end_TextPosition: 0
+ - m_end_ambientOcclusion: 0
+ - m_end_angularFade: 0
+ - m_end_backFace: 0
+ - m_end_bakedLighting: 0
+ - m_end_blending: 0
+ - m_end_blinkingEmissionOptions: 0
+ - m_end_blinkingEmissionOptions1: 0
+ - m_end_clearCoat: 0
+ - m_end_debugOptions: 0
+ - m_end_detailShadows: 0
+ - m_end_dissolve: 0
+ - m_end_dissolveMasking: 0
+ - m_end_distanceFade: 0
+ - m_end_distortionFlow: 0
+ - m_end_emission1Options: 0
+ - m_end_emissionOptions: 0
+ - m_end_flipBook: 0
+ - m_end_glitter: 0
+ - m_end_glitterRandom: 0
+ - m_end_glowInDarkEmissionOptions: 0
+ - m_end_glowInDarkEmissionOptions1: 0
+ - m_end_lightingAdvanced: 0
+ - m_end_lightingHSL: 0
+ - m_end_lightingModifiers: 0
+ - m_end_manualFlipbookControl: 0
+ - m_end_matcap: 0
+ - m_end_mirrorOptions: 0
+ - m_end_outlineAdvanced: 0
+ - m_end_panosphereOptions: 0
+ - m_end_parallaxAdvanced: 0
+ - m_end_parallaxHeightmap: 0
+ - m_end_parallaxInternal: 0
+ - m_end_pointToPoint: 0
+ - m_end_reflectionRim: 0
+ - m_end_rimLightOptions: 0
+ - m_end_rimWidthNoise: 0
+ - m_end_scrollingEmission1Options: 0
+ - m_end_scrollingEmissionOptions: 0
+ - m_end_shadowTexture: 0
+ - m_end_specular: 0
+ - m_end_specular1: 0
+ - m_end_subsurface: 0
+ - m_end_vertexManipulation: 0
+ - m_lightingOptions: 0
+ - m_mainOptions: 0
+ - m_outlineOptions: 0
+ - m_renderingOptions: 0
+ - m_start_Alpha: 0
+ - m_start_BonusSliders: 0
+ - m_start_CenterOutEmission: 0
+ - m_start_CenterOutEmission1: 0
+ - m_start_DecalSection: 0
+ - m_start_DetailOptions: 0
+ - m_start_Lighting: 0
+ - m_start_MainHueShift: 0
+ - m_start_MainVertexColors: 0
+ - m_start_Matcap2: 0
+ - m_start_Metallic: 0
+ - m_start_OutlineStencil: 0
+ - m_start_RGBMask: 0
+ - m_start_ShadowMix: 0
+ - m_start_StencilPassOptions: 0
+ - m_start_Text: 0
+ - m_start_TextFPS: 0
+ - m_start_TextInstanceTime: 0
+ - m_start_TextPosition: 0
+ - m_start_ambientOcclusion: 0
+ - m_start_angularFade: 0
+ - m_start_backFace: 0
+ - m_start_bakedLighting: 0
+ - m_start_blending: 0
+ - m_start_blinkingEmissionOptions: 0
+ - m_start_blinkingEmissionOptions1: 0
+ - m_start_clearCoat: 0
+ - m_start_debugOptions: 0
+ - m_start_detailShadows: 0
+ - m_start_dissolve: 0
+ - m_start_dissolveMasking: 0
+ - m_start_distanceFade: 0
+ - m_start_distortionFlow: 0
+ - m_start_emission1Options: 0
+ - m_start_emissionOptions: 0
+ - m_start_flipBook: 0
+ - m_start_glitter: 0
+ - m_start_glitterRandom: 0
+ - m_start_glowInDarkEmissionOptions: 0
+ - m_start_glowInDarkEmissionOptions1: 0
+ - m_start_lightingAdvanced: 0
+ - m_start_lightingHSL: 0
+ - m_start_lightingModifiers: 0
+ - m_start_manualFlipbookControl: 0
+ - m_start_matcap: 0
+ - m_start_mirrorOptions: 0
+ - m_start_outlineAdvanced: 0
+ - m_start_panosphereOptions: 0
+ - m_start_parallaxAdvanced: 0
+ - m_start_parallaxHeightmap: 0
+ - m_start_parallaxInternal: 0
+ - m_start_pointToPoint: 0
+ - m_start_reflectionRim: 0
+ - m_start_rimLightOptions: 0
+ - m_start_rimWidthNoise: 0
+ - m_start_scrollingEmissionOptions: 0
+ - m_start_scrollingEmissionOptions1: 0
+ - m_start_shadowTexture: 0
+ - m_start_specular: 0
+ - m_start_specular1: 0
+ - m_start_subsurface: 0
+ - m_start_vertexManipulation: 0
+ - shader_is_using_thry_editor: 69
+ - shader_master_label: 0
+ - shader_presets: 0
+ - shader_properties_label_file: 0
+ m_Colors:
+ - _AlphaMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _AngleForwardDirection: {r: 0, g: 0, b: 1, a: 0}
+ - _AnisoTangentMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _AnisoTangentMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _BackFaceColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BackFacePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _BlueColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BumpMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatSmoothnessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatTint: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DecalPosition: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DecalScale: {r: 1, g: 1, b: 0, a: 0}
+ - _DecalTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailNormalMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTint: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveDetailNoisePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveEdgeColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveEndPoint: {r: 0, g: 1, b: 0, a: 0}
+ - _DissolveMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveStartPoint: {r: 0, g: -1, b: 0, a: 0}
+ - _DissolveTextureColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveToTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionSpeed: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DistortionSpeed1: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionColor1: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissiveScroll_Direction: {r: 0, g: -10, b: 0, a: 0}
+ - _EmissiveScroll_Direction1: {r: 0, g: -10, b: 0, a: 0}
+ - _FlipbookColor: {r: 1, g: 1, b: 1, a: 1}
+ - _FlipbookMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _FlipbookScaleOffset: {r: 1, g: 1, b: 0, a: 0}
+ - _FlipbookTexArrayPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterColor: {r: 1, g: 1, b: 1, a: 1}
+ - _GlitterColorMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMinMaxBrightness: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSaturation: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSize: {r: 0.1, g: 0.5, b: 0, a: 1}
+ - _GlitterPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _GreenColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingAOTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingDetailShadowsPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingShadowMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _LineColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MainDistanceFade: {r: 0, g: 0, b: 0, a: 0}
+ - _MainFadeTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainHueShiftMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _Matcap2Color: {r: 1, g: 1, b: 1, a: 1}
+ - _Matcap2MaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MatcapColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MatcapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetalReflectionTint: {r: 1, g: 1, b: 1, a: 1}
+ - _MetallicMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetallicTintMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MirrorTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineDropShadowOffset: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineFadeDistance: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlinePersonaDirection: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanoMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanosphereColor: {r: 1, g: 1, b: 1, a: 1}
+ - _PanospherePan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMaxColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalMinColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalPanDepthSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalPanSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBBluePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBGreenPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBMaskPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBRedPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RedColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RgbNormalBPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalGPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalRPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimEnviroMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimLightColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RimMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimWidthNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _SSSColor: {r: 1, g: 0, b: 0, a: 1}
+ - _SSSThicknessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SmoothnessMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularTint: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularTint1: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularToonInnerOuter: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _SpecularToonInnerOuter1: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _TextFPSColor: {r: 1, g: 1, b: 1, a: 1}
+ - _TextFPSOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextPositionColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextPositionOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextTimeColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextTimeOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimePadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimeScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationHeightPan: {r: 0, g: 0, b: 0, a: 0}
+ - _VertexManipulationLocalRotation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationLocalScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationLocalTranslation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationWorldTranslation: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.mat.meta
new file mode 100644
index 00000000..4536e615
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5958f1f10f790e040bcfc7af19973adc
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.png b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.png
new file mode 100644
index 00000000..1f2de3a6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.png
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.png.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.png.meta
new file mode 100644
index 00000000..7211a498
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/heartby1010浣.png.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: 54298d4226ebb394198c62a6fb72d24a
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 1
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/image0.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/image0.mat
new file mode 100644
index 00000000..2f983197
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/image0.mat
@@ -0,0 +1,77 @@
+%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: image0
+ m_Shader: {fileID: 4800000, guid: affc81f3d164d734d8f13053effb1c5c, 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: 2800000, guid: 423f965cab96aab42a4415f1afa74ce3, type: 3}
+ 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
+ - _Parallax: 0.02
+ - _SmoothnessTextureChannel: 0
+ - _SpecularHighlights: 1
+ - _SrcBlend: 1
+ - _UVSec: 0
+ - _ZWrite: 1
+ m_Colors:
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/image0.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/image0.mat.meta
new file mode 100644
index 00000000..06dc2846
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/image0.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b5d7f43c6e0c3444986fc1c7ad8eb904
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.mat
new file mode 100644
index 00000000..55a2be5c
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.mat
@@ -0,0 +1,1855 @@
+%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: "starby1010\u6D63"
+ m_Shader: {fileID: 4800000, guid: 26d22f0bd35b9744c9d8e0aa2d875ff2, type: 3}
+ m_ShaderKeywords: VIGNETTE_MASKED _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap:
+ OptimizedShaderFolder: "starby1010\u6D63-21162e8a"
+ OriginalShader: ".poiyomi/\u2022 Poiyomi Toon \u2022"
+ RenderType: Opaque
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _AlphaMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BackFaceTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BlueTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatCubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatSmoothnessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _CubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalTexture:
+ 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}
+ - _DetailTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveDetailNoise:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveEdgeGradient:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveToTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionMask:
+ 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}
+ - _EmissionMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookTexArray:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterColorMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GreenTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingAOTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingDetailShadows:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainFadeTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainHueShiftMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: 38966a5e12e2728468005ee73677b31a, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2Mask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MatcapMask:
+ 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}
+ - _MetallicMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicTintMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MirrorTexture:
+ 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}
+ - _OutlineMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OutlineTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoCubeMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanosphereTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMapMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMapMask:
+ 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}
+ - _RGBMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RedTexure:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalB:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalG:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalR:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimEnviroMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimWidthNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SSSThicknessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SmoothnessMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _TextGlyphs:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ToonRamp:
+ m_Texture: {fileID: 2800000, guid: 61bd594533da4fc42bd46ef93ba5a4f6, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _VertexManipulationHeightMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - DSGI: 0
+ - Instancing: 0
+ - LightmapFlags: 0
+ - _AOStrength: 1
+ - _AOStrengthAnimated: 0
+ - _AlphaMaskAnimated: 0
+ - _AlphaMaskPanAnimated: 0
+ - _AlphaMaskUV: 0
+ - _AlphaMaskUVAnimated: 0
+ - _AlphaMod: 0
+ - _AlphaModAnimated: 0
+ - _AlphaPremultiply: 0
+ - _AlphaPremultiplyAnimated: 0
+ - _AlphaToMask: 0
+ - _AlphaToMaskAnimated: 0
+ - _AngleCompareTo: 0
+ - _AngleCompareToAnimated: 0
+ - _AngleForwardDirectionAnimated: 0
+ - _AngleMinAlpha: 0
+ - _AngleMinAlphaAnimated: 0
+ - _AngleType: 0
+ - _AngleTypeAnimated: 0
+ - _AnisoSpec1Alpha: 1
+ - _AnisoSpec1Alpha1: 1
+ - _AnisoSpec1Alpha1Animated: 0
+ - _AnisoSpec1AlphaAnimated: 0
+ - _AnisoSpec2Alpha: 1
+ - _AnisoSpec2Alpha1: 1
+ - _AnisoSpec2Alpha1Animated: 0
+ - _AnisoSpec2AlphaAnimated: 0
+ - _AnisoTangentMap1Animated: 0
+ - _AnisoTangentMap1PanAnimated: 0
+ - _AnisoTangentMap1UV: 0
+ - _AnisoTangentMap1UVAnimated: 0
+ - _AnisoTangentMapAnimated: 0
+ - _AnisoTangentMapPanAnimated: 0
+ - _AnisoTangentMapUV: 0
+ - _AnisoTangentMapUVAnimated: 0
+ - _AnisoUseTangentMap: 0
+ - _AnisoUseTangentMap1: 0
+ - _AnisoUseTangentMap1Animated: 0
+ - _AnisoUseTangentMapAnimated: 0
+ - _AttenuationMultiplier: 0
+ - _AttenuationMultiplierAnimated: 0
+ - _BackFaceDetailIntensity: 1
+ - _BackFaceEmissionStrength: 0
+ - _BackFaceEnabled: 0
+ - _BackFaceHueShift: 0
+ - _BackFaceTextureUV: 0
+ - _BlackLightMaskClearCoatAnimated: 0
+ - _BlackLightMaskDebugAnimated: 0
+ - _BlackLightMaskDissolveAnimated: 0
+ - _BlackLightMaskEmission2Animated: 0
+ - _BlackLightMaskEmissionAnimated: 0
+ - _BlackLightMaskEnabledAnimated: 0
+ - _BlackLightMaskEndAnimated: 0
+ - _BlackLightMaskFlipbookAnimated: 0
+ - _BlackLightMaskGlitterAnimated: 0
+ - _BlackLightMaskIridescenceAnimated: 0
+ - _BlackLightMaskKeysAnimated: 0
+ - _BlackLightMaskMatcap2Animated: 0
+ - _BlackLightMaskMatcapAnimated: 0
+ - _BlackLightMaskMetallicAnimated: 0
+ - _BlackLightMaskPanosphereAnimated: 0
+ - _BlackLightMaskStartAnimated: 0
+ - _BlendOp: 0
+ - _BlendOpAlpha: 0
+ - _BlendOpAlphaAnimated: 0
+ - _BlendOpAnimated: 0
+ - _BlueColorAnimated: 0
+ - _BlueTextureAnimated: 0
+ - _BuldgeFadeLengthAnimated: 0
+ - _BuldgeHeightAnimated: 0
+ - _BulgeMaskAnimated: 0
+ - _BumpMapAnimated: 0
+ - _BumpMapPanAnimated: 0
+ - _BumpMapUV: 0
+ - _BumpMapUVAnimated: 0
+ - _BumpScale: 1
+ - _BumpScaleAnimated: 0
+ - _CameraAngleMax: 90
+ - _CameraAngleMaxAnimated: 0
+ - _CameraAngleMin: 45
+ - _CameraAngleMinAnimated: 0
+ - _ClearCoat: 1
+ - _ClearCoatAnimated: 0
+ - _ClearCoatCubeMapAnimated: 0
+ - _ClearCoatForceLighting: 0
+ - _ClearCoatForceLightingAnimated: 0
+ - _ClearCoatInvertSmoothness: 0
+ - _ClearCoatInvertSmoothnessAnimated: 0
+ - _ClearCoatMaskAnimated: 0
+ - _ClearCoatMaskPanAnimated: 0
+ - _ClearCoatMaskUV: 0
+ - _ClearCoatMaskUVAnimated: 0
+ - _ClearCoatNormalToUse: 0
+ - _ClearCoatNormalToUseAnimated: 0
+ - _ClearCoatSampleWorld: 0
+ - _ClearCoatSampleWorldAnimated: 0
+ - _ClearCoatSmoothness: 0
+ - _ClearCoatSmoothnessAnimated: 0
+ - _ClearCoatSmoothnessMapAnimated: 0
+ - _ClearCoatSmoothnessMapPanAnimated: 0
+ - _ClearCoatSmoothnessMapUV: 0
+ - _ClearCoatSmoothnessMapUVAnimated: 0
+ - _ClearCoatTintAnimated: 0
+ - _ColorAnimated: 0
+ - _ColorMask: 15
+ - _ColorMaskAnimated: 0
+ - _ContinuousDissolve: 0
+ - _ContinuousDissolveAnimated: 0
+ - _CubeMapAnimated: 0
+ - _Cull: 2
+ - _CullAnimated: 0
+ - _Cutoff: 0.5
+ - _CutoffAnimated: 0
+ - _DebugCameraData: 0
+ - _DebugCameraDataAnimated: 0
+ - _DebugEnabled: 0
+ - _DebugLightingData: 0
+ - _DebugLightingDataAnimated: 0
+ - _DebugMeshData: 0
+ - _DebugMeshDataAnimated: 0
+ - _DecalBlendAdd: 0
+ - _DecalBlendAddAnimated: 0
+ - _DecalBlendMultiply: 0
+ - _DecalBlendMultiplyAnimated: 0
+ - _DecalBlendReplace: 0
+ - _DecalBlendReplaceAnimated: 0
+ - _DecalColorAnimated: 0
+ - _DecalEmissionStrength: 0
+ - _DecalEmissionStrengthAnimated: 0
+ - _DecalEnabled: 0
+ - _DecalEnabledAnimated: 0
+ - _DecalMaskAnimated: 0
+ - _DecalMaskPanAnimated: 0
+ - _DecalMaskUV: 0
+ - _DecalMaskUVAnimated: 0
+ - _DecalPositionAnimated: 0
+ - _DecalRotation: 0
+ - _DecalRotationAnimated: 0
+ - _DecalRotationSpeed: 0
+ - _DecalRotationSpeedAnimated: 0
+ - _DecalScaleAnimated: 0
+ - _DecalTextureAnimated: 0
+ - _DecalTexturePanAnimated: 0
+ - _DecalTextureUV: 0
+ - _DecalTextureUVAnimated: 0
+ - _DecalTiled: 0
+ - _DecalTiledAnimated: 0
+ - _DepthAlphaMaxAnimated: 0
+ - _DepthAlphaMinAnimated: 0
+ - _DepthGlowColorAnimated: 0
+ - _DepthGlowEmissionAnimated: 0
+ - _DepthGradientAnimated: 0
+ - _DepthGradientBlendAnimated: 0
+ - _DepthGradientPanAnimated: 0
+ - _DepthGradientTextureUVAnimated: 0
+ - _DepthGradientUVAnimated: 0
+ - _DepthMaskAnimated: 0
+ - _DepthMaskPanAnimated: 0
+ - _DepthMaskUVAnimated: 0
+ - _DetailBrightness: 1
+ - _DetailBrightnessAnimated: 0
+ - _DetailEnabled: 0
+ - _DetailMaskAnimated: 0
+ - _DetailMaskPanAnimated: 0
+ - _DetailMaskUV: 0
+ - _DetailMaskUVAnimated: 0
+ - _DetailNormalMapAnimated: 0
+ - _DetailNormalMapPanAnimated: 0
+ - _DetailNormalMapScale: 1
+ - _DetailNormalMapScaleAnimated: 0
+ - _DetailNormalMapUV: 0
+ - _DetailNormalMapUVAnimated: 0
+ - _DetailTexAnimated: 0
+ - _DetailTexIntensity: 1
+ - _DetailTexIntensityAnimated: 0
+ - _DetailTexPanAnimated: 0
+ - _DetailTexUV: 0
+ - _DetailTexUVAnimated: 0
+ - _DetailTintAnimated: 0
+ - _DisableDirectionalInAdd: 1
+ - _DissolveAlpha: 0
+ - _DissolveAlpha0: 0
+ - _DissolveAlpha0Animated: 0
+ - _DissolveAlpha1: 0
+ - _DissolveAlpha1Animated: 0
+ - _DissolveAlpha2: 0
+ - _DissolveAlpha2Animated: 0
+ - _DissolveAlpha3: 0
+ - _DissolveAlpha3Animated: 0
+ - _DissolveAlpha4: 0
+ - _DissolveAlpha4Animated: 0
+ - _DissolveAlpha5: 0
+ - _DissolveAlpha5Animated: 0
+ - _DissolveAlpha6: 0
+ - _DissolveAlpha6Animated: 0
+ - _DissolveAlpha7: 0
+ - _DissolveAlpha7Animated: 0
+ - _DissolveAlpha8: 0
+ - _DissolveAlpha8Animated: 0
+ - _DissolveAlpha9: 0
+ - _DissolveAlpha9Animated: 0
+ - _DissolveAlphaAnimated: 0
+ - _DissolveDetailNoiseAnimated: 0
+ - _DissolveDetailNoisePanAnimated: 0
+ - _DissolveDetailNoiseUV: 0
+ - _DissolveDetailNoiseUVAnimated: 0
+ - _DissolveDetailStrength: 0.1
+ - _DissolveDetailStrengthAnimated: 0
+ - _DissolveEdgeColorAnimated: 0
+ - _DissolveEdgeEmission: 0
+ - _DissolveEdgeEmissionAnimated: 0
+ - _DissolveEdgeGradientAnimated: 0
+ - _DissolveEdgeHardness: 0.5
+ - _DissolveEdgeHardnessAnimated: 0
+ - _DissolveEdgeWidth: 0.025
+ - _DissolveEdgeWidthAnimated: 0
+ - _DissolveEmission1Side: 2
+ - _DissolveEmission1SideAnimated: 0
+ - _DissolveEmissionSide: 2
+ - _DissolveEmissionSideAnimated: 0
+ - _DissolveEndPointAnimated: 0
+ - _DissolveInvertDetailNoise: 0
+ - _DissolveInvertDetailNoiseAnimated: 0
+ - _DissolveInvertNoise: 0
+ - _DissolveInvertNoiseAnimated: 0
+ - _DissolveMaskAnimated: 0
+ - _DissolveMaskInvert: 0
+ - _DissolveMaskInvertAnimated: 0
+ - _DissolveMaskPanAnimated: 0
+ - _DissolveMaskUV: 0
+ - _DissolveMaskUVAnimated: 0
+ - _DissolveNoiseTextureAnimated: 0
+ - _DissolveNoiseTexturePanAnimated: 0
+ - _DissolveNoiseTextureUV: 0
+ - _DissolveNoiseTextureUVAnimated: 0
+ - _DissolveP2PEdgeLength: 0.1
+ - _DissolveP2PEdgeLengthAnimated: 0
+ - _DissolveP2PWorldLocal: 0
+ - _DissolveP2PWorldLocalAnimated: 0
+ - _DissolveStartPointAnimated: 0
+ - _DissolveTextureColorAnimated: 0
+ - _DissolveToEmissionStrength: 0
+ - _DissolveToEmissionStrengthAnimated: 0
+ - _DissolveToTextureAnimated: 0
+ - _DissolveToTexturePanAnimated: 0
+ - _DissolveToTextureUV: 0
+ - _DissolveToTextureUVAnimated: 0
+ - _DissolveType: 1
+ - _DissolveTypeAnimated: 0
+ - _DissolveUseVertexColors: 0
+ - _DissolveUseVertexColorsAnimated: 0
+ - _DistortionFlowTexture1Animated: 0
+ - _DistortionFlowTextureAnimated: 0
+ - _DistortionMaskAnimated: 0
+ - _DistortionMaskPanAnimated: 0
+ - _DistortionMaskUV: 0
+ - _DistortionMaskUVAnimated: 0
+ - _DistortionSpeed1Animated: 0
+ - _DistortionSpeedAnimated: 0
+ - _DistortionStrength: 0.5
+ - _DistortionStrength1: 0.5
+ - _DistortionStrength1Animated: 0
+ - _DistortionStrengthAnimated: 0
+ - _DitherGradient: 0.1
+ - _DitherGradientAnimated: 0
+ - _DitheringEnabled: 0
+ - _DitheringEnabledAnimated: 0
+ - _DstBlend: 0
+ - _DstBlendAnimated: 0
+ - _EmissionBaseColorAsMap: 0
+ - _EmissionBaseColorAsMap1: 0
+ - _EmissionBaseColorAsMap1Animated: 0
+ - _EmissionBaseColorAsMapAnimated: 0
+ - _EmissionBlinkingEnabled: 0
+ - _EmissionBlinkingEnabled1: 0
+ - _EmissionBlinkingEnabledAnimated: 0
+ - _EmissionBlinkingOffset: 0
+ - _EmissionBlinkingOffset1: 0
+ - _EmissionBlinkingOffset1Animated: 0
+ - _EmissionBlinkingOffsetAnimated: 0
+ - _EmissionCenterOutEnabled: 0
+ - _EmissionCenterOutEnabled1: 0
+ - _EmissionCenterOutEnabled1Animated: 0
+ - _EmissionCenterOutEnabledAnimated: 0
+ - _EmissionCenterOutSpeed: 5
+ - _EmissionCenterOutSpeed1: 5
+ - _EmissionCenterOutSpeed1Animated: 0
+ - _EmissionCenterOutSpeedAnimated: 0
+ - _EmissionColor1Animated: 0
+ - _EmissionColorAnimated: 0
+ - _EmissionHueShift: 0
+ - _EmissionHueShift1: 0
+ - _EmissionHueShift1Animated: 0
+ - _EmissionHueShiftAnimated: 0
+ - _EmissionHueShiftEnabled: 0
+ - _EmissionHueShiftEnabled1: 0
+ - _EmissionHueShiftEnabled1Animated: 0
+ - _EmissionHueShiftEnabledAnimated: 0
+ - _EmissionMap1Animated: 0
+ - _EmissionMap1PanAnimated: 0
+ - _EmissionMap1UV: 0
+ - _EmissionMap1UVAnimated: 0
+ - _EmissionMapAnimated: 0
+ - _EmissionMapPanAnimated: 0
+ - _EmissionMapUV: 0
+ - _EmissionMapUVAnimated: 0
+ - _EmissionMask1Animated: 0
+ - _EmissionMask1PanAnimated: 0
+ - _EmissionMask1UV: 0
+ - _EmissionMask1UVAnimated: 0
+ - _EmissionMaskAnimated: 0
+ - _EmissionMaskPanAnimated: 0
+ - _EmissionMaskUV: 0
+ - _EmissionMaskUVAnimated: 0
+ - _EmissionReplace: 0
+ - _EmissionReplaceAnimated: 0
+ - _EmissionScrollingCurve1Animated: 0
+ - _EmissionScrollingCurveAnimated: 0
+ - _EmissionScrollingOffset: 0
+ - _EmissionScrollingOffset1: 0
+ - _EmissionScrollingOffset1Animated: 0
+ - _EmissionScrollingOffsetAnimated: 0
+ - _EmissionScrollingUseCurve: 0
+ - _EmissionScrollingUseCurve1: 0
+ - _EmissionScrollingUseCurve1Animated: 0
+ - _EmissionScrollingUseCurveAnimated: 0
+ - _EmissionScrollingVertexColor: 0
+ - _EmissionScrollingVertexColor1: 0
+ - _EmissionScrollingVertexColor1Animated: 0
+ - _EmissionScrollingVertexColorAnimated: 0
+ - _EmissionStrength: 0
+ - _EmissionStrength1: 0
+ - _EmissionStrength1Animated: 0
+ - _EmissionStrengthAnimated: 0
+ - _EmissiveBlink_Max: 1
+ - _EmissiveBlink_Max1: 1
+ - _EmissiveBlink_Max1Animated: 0
+ - _EmissiveBlink_MaxAnimated: 0
+ - _EmissiveBlink_Min: 0
+ - _EmissiveBlink_Min1: 0
+ - _EmissiveBlink_Min1Animated: 0
+ - _EmissiveBlink_MinAnimated: 0
+ - _EmissiveBlink_Velocity: 4
+ - _EmissiveBlink_Velocity1: 4
+ - _EmissiveBlink_Velocity1Animated: 0
+ - _EmissiveBlink_VelocityAnimated: 0
+ - _EmissiveScroll_Direction1Animated: 0
+ - _EmissiveScroll_DirectionAnimated: 0
+ - _EmissiveScroll_Interval: 20
+ - _EmissiveScroll_Interval1: 20
+ - _EmissiveScroll_Interval1Animated: 0
+ - _EmissiveScroll_IntervalAnimated: 0
+ - _EmissiveScroll_Velocity: 10
+ - _EmissiveScroll_Velocity1: 10
+ - _EmissiveScroll_Velocity1Animated: 0
+ - _EmissiveScroll_VelocityAnimated: 0
+ - _EmissiveScroll_Width: 10
+ - _EmissiveScroll_Width1: 10
+ - _EmissiveScroll_Width1Animated: 0
+ - _EmissiveScroll_WidthAnimated: 0
+ - _EnableBlurAnimated: 0
+ - _EnableBulgeAnimated: 0
+ - _EnableClearCoat: 0
+ - _EnableClearCoatAnimated: 0
+ - _EnableDissolve: 0
+ - _EnableDissolveAnimated: 0
+ - _EnableDistortion: 0
+ - _EnableDistortionAnimated: 0
+ - _EnableEmission: 0
+ - _EnableEmission1: 0
+ - _EnableEmission1Animated: 0
+ - _EnableEmissionAnimated: 0
+ - _EnableEnvironmentalRim: 0
+ - _EnableEnvironmentalRimAnimated: 0
+ - _EnableFlipbook: 0
+ - _EnableFlipbookAnimated: 0
+ - _EnableGITDEmission: 0
+ - _EnableGITDEmission1: 0
+ - _EnableGITDEmission1Animated: 0
+ - _EnableGITDEmissionAnimated: 0
+ - _EnableHoloAnimated: 0
+ - _EnableIridescenceAnimated: 0
+ - _EnableLighting: 1
+ - _EnableLightingAnimated: 0
+ - _EnableMetallic: 0
+ - _EnableMetallicAnimated: 0
+ - _EnableMirrorOptions: 0
+ - _EnableMirrorOptionsAnimated: 0
+ - _EnableMirrorTexture: 0
+ - _EnableMirrorTextureAnimated: 0
+ - _EnableRandom: 0
+ - _EnableRandomAnimated: 0
+ - _EnableRimLighting: 0
+ - _EnableRimLightingAnimated: 0
+ - _EnableSSS: 0
+ - _EnableSSSAnimated: 0
+ - _EnableScifiSpawnInAnimated: 0
+ - _EnableSpecular: 0
+ - _EnableSpecular1: 0
+ - _EnableSpecular1Animated: 0
+ - _EnableSpecularAnimated: 0
+ - _EnableTouchGlowAnimated: 0
+ - _EnableVertexGlitchAnimated: 0
+ - _EnableVideoAnimated: 0
+ - _EnableVoronoiAnimated: 0
+ - _FadeLengthAnimated: 0
+ - _FlipbookAdd: 0
+ - _FlipbookAddAnimated: 0
+ - _FlipbookAlphaControlsFinalAlpha: 0
+ - _FlipbookAlphaControlsFinalAlphaAnimated: 0
+ - _FlipbookColorAnimated: 0
+ - _FlipbookColorReplaces: 0
+ - _FlipbookColorReplacesAnimated: 0
+ - _FlipbookCurrentFrame: -1
+ - _FlipbookCurrentFrameAnimated: 0
+ - _FlipbookEmissionStrength: 0
+ - _FlipbookEmissionStrengthAnimated: 0
+ - _FlipbookFPS: 30
+ - _FlipbookFPSAnimated: 0
+ - _FlipbookIntensityControlsAlpha: 0
+ - _FlipbookIntensityControlsAlphaAnimated: 0
+ - _FlipbookMaskAnimated: 0
+ - _FlipbookMaskPanAnimated: 0
+ - _FlipbookMaskUV: 0
+ - _FlipbookMaskUVAnimated: 0
+ - _FlipbookMultiply: 0
+ - _FlipbookMultiplyAnimated: 0
+ - _FlipbookReplace: 1
+ - _FlipbookReplaceAnimated: 0
+ - _FlipbookRotation: 0
+ - _FlipbookRotationAnimated: 0
+ - _FlipbookRotationSpeed: 0
+ - _FlipbookRotationSpeedAnimated: 0
+ - _FlipbookScaleOffsetAnimated: 0
+ - _FlipbookTexArrayAnimated: 0
+ - _FlipbookTexArrayPanAnimated: 0
+ - _FlipbookTexArrayUV: 0
+ - _FlipbookTexArrayUVAnimated: 0
+ - _FlipbookTiled: 0
+ - _FlipbookTiledAnimated: 0
+ - _FlipbookTotalFrames: 1
+ - _FlipbookTotalFramesAnimated: 0
+ - _ForceOpaque: 0
+ - _ForceOpaqueAnimated: 0
+ - _ForgotToLockMaterial: 1
+ - _GIEmissionMultiplier: 1
+ - _GITDEMaxEmissionMultiplier: 0
+ - _GITDEMaxEmissionMultiplier1: 0
+ - _GITDEMaxEmissionMultiplier1Animated: 0
+ - _GITDEMaxEmissionMultiplierAnimated: 0
+ - _GITDEMaxLight: 1
+ - _GITDEMaxLight1: 1
+ - _GITDEMaxLight1Animated: 0
+ - _GITDEMaxLightAnimated: 0
+ - _GITDEMinEmissionMultiplier: 1
+ - _GITDEMinEmissionMultiplier1: 1
+ - _GITDEMinEmissionMultiplier1Animated: 0
+ - _GITDEMinEmissionMultiplierAnimated: 0
+ - _GITDEMinLight: 0
+ - _GITDEMinLight1: 0
+ - _GITDEMinLight1Animated: 0
+ - _GITDEMinLightAnimated: 0
+ - _GITDEWorldOrMesh: 0
+ - _GITDEWorldOrMesh1: 0
+ - _GITDEWorldOrMesh1Animated: 0
+ - _GITDEWorldOrMeshAnimated: 0
+ - _GlitterAngleRange: 90
+ - _GlitterAngleRangeAnimated: 0
+ - _GlitterBias: 0.8
+ - _GlitterBiasAnimated: 0
+ - _GlitterBlendType: 0
+ - _GlitterBlendTypeAnimated: 0
+ - _GlitterBrightness: 3
+ - _GlitterBrightnessAnimated: 0
+ - _GlitterCenterSize: 0.08
+ - _GlitterCenterSizeAnimated: 0
+ - _GlitterColorAnimated: 0
+ - _GlitterColorMapAnimated: 0
+ - _GlitterColorMapPanAnimated: 0
+ - _GlitterColorMapUV: 0
+ - _GlitterColorMapUVAnimated: 0
+ - _GlitterContrast: 300
+ - _GlitterContrastAnimated: 0
+ - _GlitterEnable: 0
+ - _GlitterEnableAnimated: 0
+ - _GlitterFrequency: 300
+ - _GlitterFrequencyAnimated: 0
+ - _GlitterJaggyFix: 0
+ - _GlitterJaggyFixAnimated: 0
+ - _GlitterJitter: 1
+ - _GlitterJitterAnimated: 0
+ - _GlitterMaskAnimated: 0
+ - _GlitterMaskPanAnimated: 0
+ - _GlitterMaskUV: 0
+ - _GlitterMaskUVAnimated: 0
+ - _GlitterMinBrightness: 0
+ - _GlitterMinBrightnessAnimated: 0
+ - _GlitterMinMaxBrightnessAnimated: 0
+ - _GlitterMinMaxSaturationAnimated: 0
+ - _GlitterMinMaxSizeAnimated: 0
+ - _GlitterMode: 0
+ - _GlitterModeAnimated: 0
+ - _GlitterPanAnimated: 0
+ - _GlitterRandomColors: 0
+ - _GlitterRandomColorsAnimated: 0
+ - _GlitterRandomRotation: 0
+ - _GlitterRandomRotationAnimated: 0
+ - _GlitterRandomSize: 0
+ - _GlitterRandomSizeAnimated: 0
+ - _GlitterShape: 0
+ - _GlitterShapeAnimated: 0
+ - _GlitterSize: 0.3
+ - _GlitterSizeAnimated: 0
+ - _GlitterSpeed: 10
+ - _GlitterSpeedAnimated: 0
+ - _GlitterTextureAnimated: 0
+ - _GlitterTexturePanAnimated: 0
+ - _GlitterTextureRotation: 0
+ - _GlitterTextureRotationAnimated: 0
+ - _GlitterUseSurfaceColor: 0
+ - _GlitterUseSurfaceColorAnimated: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0
+ - _GlossyReflections: 1
+ - _GrabBlurDirectionsAnimated: 0
+ - _GrabBlurDistanceAnimated: 0
+ - _GrabBlurQualityAnimated: 0
+ - _GrabDstBlendAnimated: 0
+ - _GrabPassBlendFactorAnimated: 0
+ - _GrabPassUseAlphaAnimated: 0
+ - _GrabSrcBlendAnimated: 0
+ - _GreenColorAnimated: 0
+ - _GreenTextureAnimated: 0
+ - _HelpBoxHideLocking: 0
+ - _HelpBoxLocking: 0
+ - _HoloAlphaMapAnimated: 0
+ - _HoloCoordinateSpaceAnimated: 0
+ - _HoloDirectionAnimated: 0
+ - _HoloFresnelAlphaAnimated: 0
+ - _HoloLineDensityAnimated: 0
+ - _HoloRimSharpnessAnimated: 0
+ - _HoloRimWidthAnimated: 0
+ - _HoloScrollSpeedAnimated: 0
+ - _IgnoreFog: 0
+ - _IgnoreFogAnimated: 0
+ - _InvertSmoothness: 0
+ - _InvertSmoothnessAnimated: 0
+ - _IridescenceAddBlendAnimated: 0
+ - _IridescenceEmissionStrengthAnimated: 0
+ - _IridescenceIntensityAnimated: 0
+ - _IridescenceMaskAnimated: 0
+ - _IridescenceMaskUVAnimated: 0
+ - _IridescenceMultiplyBlendAnimated: 0
+ - _IridescenceNormalIntensityAnimated: 0
+ - _IridescenceNormalMapAnimated: 0
+ - _IridescenceNormalSelectionAnimated: 0
+ - _IridescenceNormalToggleAnimated: 0
+ - _IridescenceNormalUVAnimated: 0
+ - _IridescenceRampAnimated: 0
+ - _IridescenceReplaceBlendAnimated: 0
+ - _IridescenceTimeAnimated: 0
+ - _LightingAOTexAnimated: 0
+ - _LightingAOTexPanAnimated: 0
+ - _LightingAOTexUV: 0
+ - _LightingAOTexUVAnimated: 0
+ - _LightingAdditiveDetailStrength: 1
+ - _LightingAdditiveDetailStrengthAnimated: 0
+ - _LightingAdditiveGradientEnd: 0.5
+ - _LightingAdditiveGradientEndAnimated: 0
+ - _LightingAdditiveGradientStart: 0
+ - _LightingAdditiveGradientStartAnimated: 0
+ - _LightingAdditiveLimitIntensity: 0
+ - _LightingAdditiveLimitIntensityAnimated: 0
+ - _LightingAdditiveMaxIntensity: 1
+ - _LightingAdditiveMaxIntensityAnimated: 0
+ - _LightingAdditivePassthrough: 0.5
+ - _LightingAdditivePassthroughAnimated: 0
+ - _LightingAdditiveType: 1
+ - _LightingAdditiveTypeAnimated: 0
+ - _LightingDetailShadowsAnimated: 0
+ - _LightingDetailShadowsEnabled: 0
+ - _LightingDetailShadowsEnabledAnimated: 0
+ - _LightingDetailShadowsPanAnimated: 0
+ - _LightingDetailShadowsUV: 0
+ - _LightingDetailShadowsUVAnimated: 0
+ - _LightingDetailStrength: 1
+ - _LightingDetailStrengthAnimated: 0
+ - _LightingDirectColorMode: 0
+ - _LightingDirectColorModeAnimated: 0
+ - _LightingEnableAO: 0
+ - _LightingEnableAOAnimated: 0
+ - _LightingEnableHSL: 0
+ - _LightingEnableHSLAnimated: 0
+ - _LightingGradientEnd: 0.5
+ - _LightingGradientEndAnimated: 0
+ - _LightingGradientStart: 0
+ - _LightingGradientStartAnimated: 0
+ - _LightingHSLIntensity: 1
+ - _LightingHSLIntensityAnimated: 0
+ - _LightingIgnoreAmbientColor: 0
+ - _LightingIgnoreAmbientColorAnimated: 0
+ - _LightingIndirectColorMode: 0
+ - _LightingIndirectColorModeAnimated: 0
+ - _LightingMinLightBrightness: 0
+ - _LightingMinLightBrightnessAnimated: 0
+ - _LightingMinShadowBrightnessRatio: 0
+ - _LightingMinShadowBrightnessRatioAnimated: 0
+ - _LightingMode: 0
+ - _LightingModeAnimated: 0
+ - _LightingMonochromatic: 0
+ - _LightingMonochromaticAnimated: 0
+ - _LightingOnlyUnityShadows: 0
+ - _LightingOnlyUnityShadowsAnimated: 0
+ - _LightingRampType: 0
+ - _LightingRampTypeAnimated: 0
+ - _LightingShadingEnabled: 0
+ - _LightingShadingEnabledAnimated: 0
+ - _LightingShadowColorAnimated: 0
+ - _LightingShadowHue: 0.5
+ - _LightingShadowHueAnimated: 0
+ - _LightingShadowLightness: 0.5
+ - _LightingShadowLightnessAnimated: 0
+ - _LightingShadowMaskAnimated: 0
+ - _LightingShadowMaskPanAnimated: 0
+ - _LightingShadowMaskUV: 0
+ - _LightingShadowMaskUVAnimated: 0
+ - _LightingShadowSaturation: 0.5
+ - _LightingShadowSaturationAnimated: 0
+ - _LightingShadowTextureAnimated: 0
+ - _LightingShadowTexturePanAnimated: 0
+ - _LightingShadowTextureUV: 0
+ - _LightingShadowTextureUVAnimated: 0
+ - _LightingStandardSmoothness: 0
+ - _LightingStandardSmoothnessAnimated: 0
+ - _LightingUncapped: 0
+ - _LightingUncappedAnimated: 0
+ - _LineColorAnimated: 0
+ - _LineWidth: 0
+ - _LineWidthAnimated: 0
+ - _LockTooltip: 0
+ - _MainAlphaToCoverage: 0
+ - _MainAlphaToCoverageAnimated: 0
+ - _MainDistanceFadeAnimated: 0
+ - _MainEmissionStrength: 0
+ - _MainEmissionStrengthAnimated: 0
+ - _MainFadeTextureAnimated: 0
+ - _MainFadeTexturePanAnimated: 0
+ - _MainFadeTextureUV: 0
+ - _MainFadeTextureUVAnimated: 0
+ - _MainHueShift: 0
+ - _MainHueShiftAnimated: 0
+ - _MainHueShiftMaskAnimated: 0
+ - _MainHueShiftMaskPanAnimated: 0
+ - _MainHueShiftMaskUV: 0
+ - _MainHueShiftMaskUVAnimated: 0
+ - _MainHueShiftReplace: 1
+ - _MainHueShiftReplaceAnimated: 0
+ - _MainHueShiftSpeed: 0
+ - _MainHueShiftSpeedAnimated: 0
+ - _MainHueShiftToggle: 0
+ - _MainHueShiftToggleAnimated: 0
+ - _MainMinAlpha: 0
+ - _MainMinAlphaAnimated: 0
+ - _MainMipScale: 0.25
+ - _MainMipScaleAnimated: 0
+ - _MainShadowClipMod: 0
+ - _MainShadowClipModAnimated: 0
+ - _MainTexAnimated: 0
+ - _MainTexPanAnimated: 0
+ - _MainTex_STAnimated: 0
+ - _MainTextureUV: 0
+ - _MainTextureUVAnimated: 0
+ - _MainUseVertexColorAlpha: 0
+ - _MainUseVertexColorAlphaAnimated: 0
+ - _MainVertexColoring: 0
+ - _MainVertexColoringAnimated: 0
+ - _Matcap2Add: 0
+ - _Matcap2AddAnimated: 0
+ - _Matcap2Animated: 0
+ - _Matcap2Border: 0.43
+ - _Matcap2BorderAnimated: 0
+ - _Matcap2ColorAnimated: 0
+ - _Matcap2EmissionStrength: 0
+ - _Matcap2EmissionStrengthAnimated: 0
+ - _Matcap2Enable: 0
+ - _Matcap2EnableAnimated: 0
+ - _Matcap2Intensity: 1
+ - _Matcap2IntensityAnimated: 0
+ - _Matcap2LightMask: 0
+ - _Matcap2LightMaskAnimated: 0
+ - _Matcap2MaskAnimated: 0
+ - _Matcap2MaskInvert: 0
+ - _Matcap2MaskInvertAnimated: 0
+ - _Matcap2MaskPanAnimated: 0
+ - _Matcap2MaskUV: 0
+ - _Matcap2MaskUVAnimated: 0
+ - _Matcap2Multiply: 0
+ - _Matcap2MultiplyAnimated: 0
+ - _Matcap2Normal: 1
+ - _Matcap2NormalAnimated: 0
+ - _Matcap2Replace: 0
+ - _Matcap2ReplaceAnimated: 0
+ - _MatcapAdd: 0
+ - _MatcapAddAnimated: 0
+ - _MatcapAnimated: 0
+ - _MatcapBorder: 0.43
+ - _MatcapBorderAnimated: 0
+ - _MatcapColorAnimated: 0
+ - _MatcapEmissionStrength: 0
+ - _MatcapEmissionStrengthAnimated: 0
+ - _MatcapEnable: 0
+ - _MatcapEnableAnimated: 0
+ - _MatcapIntensity: 1
+ - _MatcapIntensityAnimated: 0
+ - _MatcapLightMask: 0
+ - _MatcapLightMaskAnimated: 0
+ - _MatcapMaskAnimated: 0
+ - _MatcapMaskInvert: 0
+ - _MatcapMaskInvertAnimated: 0
+ - _MatcapMaskPanAnimated: 0
+ - _MatcapMaskUV: 0
+ - _MatcapMaskUVAnimated: 0
+ - _MatcapMultiply: 0
+ - _MatcapMultiplyAnimated: 0
+ - _MatcapNormal: 1
+ - _MatcapNormalAnimated: 0
+ - _MatcapReplace: 1
+ - _MatcapReplaceAnimated: 0
+ - _MetalReflectionTintAnimated: 0
+ - _Metallic: 0
+ - _MetallicAnimated: 0
+ - _MetallicMaskAnimated: 0
+ - _MetallicMaskPanAnimated: 0
+ - _MetallicMaskUV: 0
+ - _MetallicMaskUVAnimated: 0
+ - _MetallicTintMapAnimated: 0
+ - _MetallicTintMapPanAnimated: 0
+ - _MetallicTintMapUV: 0
+ - _MetallicTintMapUVAnimated: 0
+ - _Mirror: 0
+ - _MirrorAnimated: 0
+ - _MirrorTextureAnimated: 0
+ - _MirrorTexturePanAnimated: 0
+ - _MirrorTextureUV: 0
+ - _MirrorTextureUVAnimated: 0
+ - _Mode: 0
+ - _ModelAngleMax: 90
+ - _ModelAngleMaxAnimated: 0
+ - _ModelAngleMin: 45
+ - _ModelAngleMinAnimated: 0
+ - _OcclusionStrength: 1
+ - _OffsetFactor: 0
+ - _OffsetFactorAnimated: 0
+ - _OffsetUnits: 0
+ - _OffsetUnitsAnimated: 0
+ - _OutlineCull: 1
+ - _OutlineCullAnimated: 0
+ - _OutlineDropShadowOffsetAnimated: 0
+ - _OutlineEmission: 0
+ - _OutlineEmissionAnimated: 0
+ - _OutlineFadeDistanceAnimated: 0
+ - _OutlineFixedSize: 0
+ - _OutlineFixedSizeAnimated: 0
+ - _OutlineLit: 1
+ - _OutlineLitAnimated: 0
+ - _OutlineMaskAnimated: 0
+ - _OutlineMaskUV: 0
+ - _OutlineMode: 0
+ - _OutlineModeAnimated: 0
+ - _OutlineOffsetFactor: 0
+ - _OutlineOffsetUnits: 0
+ - _OutlinePersonaDirectionAnimated: 0
+ - _OutlineRimLightBlend: 0
+ - _OutlineRimLightBlendAnimated: 0
+ - _OutlineShadowStrength: 1
+ - _OutlineShadowStrengthAnimated: 0
+ - _OutlineStencilCompareFunction: 8
+ - _OutlineStencilCompareFunctionAnimated: 0
+ - _OutlineStencilFailOp: 0
+ - _OutlineStencilFailOpAnimated: 0
+ - _OutlineStencilPassOp: 0
+ - _OutlineStencilPassOpAnimated: 0
+ - _OutlineStencilReadMask: 255
+ - _OutlineStencilReadMaskAnimated: 0
+ - _OutlineStencilRef: 0
+ - _OutlineStencilRefAnimated: 0
+ - _OutlineStencilWriteMask: 255
+ - _OutlineStencilWriteMaskAnimated: 0
+ - _OutlineStencilZFailOp: 0
+ - _OutlineStencilZFailOpAnimated: 0
+ - _OutlineTextureAnimated: 0
+ - _OutlineTexturePanAnimated: 0
+ - _OutlineTextureUV: 0
+ - _OutlineTintMix: 0
+ - _OutlineTintMixAnimated: 0
+ - _OutlineUseVertexColors: 0
+ - _OutlineUseVertexColorsAnimated: 0
+ - _PanoBlend: 0
+ - _PanoBlendAnimated: 0
+ - _PanoCubeMapAnimated: 0
+ - _PanoCubeMapToggle: 0
+ - _PanoCubeMapToggleAnimated: 0
+ - _PanoEmission: 0
+ - _PanoEmissionAnimated: 0
+ - _PanoInfiniteStereoToggle: 0
+ - _PanoInfiniteStereoToggleAnimated: 0
+ - _PanoMaskAnimated: 0
+ - _PanoMaskPanAnimated: 0
+ - _PanoMaskUV: 0
+ - _PanoMaskUVAnimated: 0
+ - _PanoToggle: 0
+ - _PanoToggleAnimated: 0
+ - _PanosphereColorAnimated: 0
+ - _PanospherePanAnimated: 0
+ - _PanosphereTextureAnimated: 0
+ - _Parallax: 0.02
+ - _ParallaxBias: 0.42
+ - _ParallaxBiasAnimated: 0
+ - _ParallaxHeightMapAnimated: 0
+ - _ParallaxHeightMapEnabled: 0
+ - _ParallaxHeightMapEnabledAnimated: 0
+ - _ParallaxHeightMapMaskAnimated: 0
+ - _ParallaxHeightMapMaskPanAnimated: 0
+ - _ParallaxHeightMapMaskUV: 0
+ - _ParallaxHeightMapMaskUVAnimated: 0
+ - _ParallaxHeightMapPanAnimated: 0
+ - _ParallaxInternalHeightFromAlpha: 0
+ - _ParallaxInternalHeightFromAlphaAnimated: 0
+ - _ParallaxInternalHeightmapMode: 0
+ - _ParallaxInternalHeightmapModeAnimated: 0
+ - _ParallaxInternalIterations: 1
+ - _ParallaxInternalIterationsAnimated: 0
+ - _ParallaxInternalMapAnimated: 0
+ - _ParallaxInternalMapEnabled: 0
+ - _ParallaxInternalMapEnabledAnimated: 0
+ - _ParallaxInternalMapMaskAnimated: 0
+ - _ParallaxInternalMapMaskPanAnimated: 0
+ - _ParallaxInternalMapMaskUV: 0
+ - _ParallaxInternalMapMaskUVAnimated: 0
+ - _ParallaxInternalMaxColorAnimated: 0
+ - _ParallaxInternalMaxDepth: 1
+ - _ParallaxInternalMaxDepthAnimated: 0
+ - _ParallaxInternalMaxFade: 1
+ - _ParallaxInternalMaxFadeAnimated: 0
+ - _ParallaxInternalMinColorAnimated: 0
+ - _ParallaxInternalMinDepth: 0
+ - _ParallaxInternalMinDepthAnimated: 0
+ - _ParallaxInternalMinFade: 0
+ - _ParallaxInternalMinFadeAnimated: 0
+ - _ParallaxInternalPanDepthSpeedAnimated: 0
+ - _ParallaxInternalPanSpeedAnimated: 0
+ - _ParallaxMap: 0
+ - _ParallaxMapAnimated: 0
+ - _ParallaxStrength: 0
+ - _ParallaxStrengthAnimated: 0
+ - _ParallaxUV: 0
+ - _ParallaxUVAnimated: 0
+ - _RGBBlendMultiplicative: 0
+ - _RGBBlendMultiplicativeAnimated: 0
+ - _RGBBluePanningAnimated: 0
+ - _RGBBlue_UV: 0
+ - _RGBBlue_UVAnimated: 0
+ - _RGBGreenPanningAnimated: 0
+ - _RGBGreen_UV: 0
+ - _RGBGreen_UVAnimated: 0
+ - _RGBMaskAnimated: 0
+ - _RGBMaskEnabled: 0
+ - _RGBMaskEnabledAnimated: 0
+ - _RGBMaskPanningAnimated: 0
+ - _RGBMaskUV: 0
+ - _RGBMaskUVAnimated: 0
+ - _RGBNormalBlend: 0
+ - _RGBNormalBlendAnimated: 0
+ - _RGBRedPanningAnimated: 0
+ - _RGBRed_UV: 0
+ - _RGBRed_UVAnimated: 0
+ - _RGBUseVertexColors: 0
+ - _RGBUseVertexColorsAnimated: 0
+ - _RedColorAnimated: 0
+ - _RedTexureAnimated: 0
+ - _RefractionChromaticAberattionAnimated: 0
+ - _RefractionEnabledAnimated: 0
+ - _RefractionIndexAnimated: 0
+ - _RgbNormalBScale: 0
+ - _RgbNormalBUV: 0
+ - _RgbNormalGScale: 0
+ - _RgbNormalGUV: 0
+ - _RgbNormalRScale: 0
+ - _RgbNormalRUV: 0
+ - _RgbNormalsEnabled: 0
+ - _RimBrighten: 0
+ - _RimBrightenAnimated: 0
+ - _RimEnviroBlur: 0.7
+ - _RimEnviroBlurAnimated: 0
+ - _RimEnviroIntensity: 1
+ - _RimEnviroIntensityAnimated: 0
+ - _RimEnviroMaskAnimated: 0
+ - _RimEnviroMaskPanAnimated: 0
+ - _RimEnviroMaskUV: 0
+ - _RimEnviroMaskUVAnimated: 0
+ - _RimEnviroMinBrightness: 0
+ - _RimEnviroMinBrightnessAnimated: 0
+ - _RimEnviroSharpness: 0
+ - _RimEnviroSharpnessAnimated: 0
+ - _RimEnviroWidth: 0.45
+ - _RimEnviroWidthAnimated: 0
+ - _RimLightColorAnimated: 0
+ - _RimLightColorBias: 0
+ - _RimLightColorBiasAnimated: 0
+ - _RimLightNormal: 1
+ - _RimLightNormalAnimated: 0
+ - _RimLightingInvert: 0
+ - _RimLightingInvertAnimated: 0
+ - _RimMaskAnimated: 0
+ - _RimMaskPanAnimated: 0
+ - _RimMaskUV: 0
+ - _RimMaskUVAnimated: 0
+ - _RimSharpness: 0.25
+ - _RimSharpnessAnimated: 0
+ - _RimStrength: 0
+ - _RimStrengthAnimated: 0
+ - _RimTexAnimated: 0
+ - _RimTexPanAnimated: 0
+ - _RimTexUV: 0
+ - _RimTexUVAnimated: 0
+ - _RimWidth: 0.8
+ - _RimWidthAnimated: 0
+ - _RimWidthNoiseStrength: 0.1
+ - _RimWidthNoiseStrengthAnimated: 0
+ - _RimWidthNoiseTextureAnimated: 0
+ - _RimWidthNoiseTexturePanAnimated: 0
+ - _RimWidthNoiseTextureUV: 0
+ - _RimWidthNoiseTextureUVAnimated: 0
+ - _SSSColorAnimated: 0
+ - _SSSDistortion: 1
+ - _SSSDistortionAnimated: 0
+ - _SSSPower: 5
+ - _SSSPowerAnimated: 0
+ - _SSSSCale: 0.25
+ - _SSSSCaleAnimated: 0
+ - _SSSThicknessMapAnimated: 0
+ - _SSSThicknessMapPanAnimated: 0
+ - _SSSThicknessMapUV: 0
+ - _SSSThicknessMapUVAnimated: 0
+ - _SSSThicknessMod: 0
+ - _SSSThicknessModAnimated: 0
+ - _SampleWorld: 0
+ - _SampleWorldAnimated: 0
+ - _Saturation: 0
+ - _SaturationAnimated: 0
+ - _ScrollingEmission: 0
+ - _ScrollingEmission1: 0
+ - _ScrollingEmission1Animated: 0
+ - _ScrollingEmissionAnimated: 0
+ - _ShaderOptimizerEnabled: 1
+ - _ShadowMix: 0
+ - _ShadowMixAnimated: 0
+ - _ShadowMixThreshold: 0.5
+ - _ShadowMixThresholdAnimated: 0
+ - _ShadowMixWidthMod: 0.5
+ - _ShadowMixWidthModAnimated: 0
+ - _ShadowOffset: 0
+ - _ShadowOffsetAnimated: 0
+ - _ShadowStrength: 1
+ - _ShadowStrengthAnimated: 0
+ - _Smoothness: 0
+ - _SmoothnessAnimated: 0
+ - _SmoothnessFrom: 1
+ - _SmoothnessFrom1: 1
+ - _SmoothnessFrom1Animated: 0
+ - _SmoothnessFromAnimated: 0
+ - _SmoothnessMaskAnimated: 0
+ - _SmoothnessMaskPanAnimated: 0
+ - _SmoothnessMaskUV: 0
+ - _SmoothnessMaskUVAnimated: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpawnInAlphaAnimated: 0
+ - _SpawnInEmissionColorAnimated: 0
+ - _SpawnInEmissionOffsetAnimated: 0
+ - _SpawnInGradientFinishAnimated: 0
+ - _SpawnInGradientStartAnimated: 0
+ - _SpawnInNoiseAnimated: 0
+ - _SpawnInNoiseIntensityAnimated: 0
+ - _SpawnInVertOffsetAnimated: 0
+ - _SpawnInVertOffsetOffsetAnimated: 0
+ - _Spec1Offset: 0
+ - _Spec1Offset1: 0
+ - _Spec1Offset1Animated: 0
+ - _Spec1OffsetAnimated: 0
+ - _Spec2Smoothness: 0
+ - _Spec2Smoothness1: 0
+ - _Spec2Smoothness1Animated: 0
+ - _Spec2SmoothnessAnimated: 0
+ - _SpecWhatTangent: 0
+ - _SpecWhatTangent1: 0
+ - _SpecWhatTangent1Animated: 0
+ - _SpecWhatTangentAnimated: 0
+ - _SpecularAnisoJitterMacro1Animated: 0
+ - _SpecularAnisoJitterMacro1PanAnimated: 0
+ - _SpecularAnisoJitterMacro1UV: 0
+ - _SpecularAnisoJitterMacro1UVAnimated: 0
+ - _SpecularAnisoJitterMacroAnimated: 0
+ - _SpecularAnisoJitterMacroMultiplier: 0
+ - _SpecularAnisoJitterMacroMultiplier1: 0
+ - _SpecularAnisoJitterMacroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMacroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMacroPanAnimated: 0
+ - _SpecularAnisoJitterMacroUV: 0
+ - _SpecularAnisoJitterMacroUVAnimated: 0
+ - _SpecularAnisoJitterMicro1Animated: 0
+ - _SpecularAnisoJitterMicro1PanAnimated: 0
+ - _SpecularAnisoJitterMicro1UV: 0
+ - _SpecularAnisoJitterMicro1UVAnimated: 0
+ - _SpecularAnisoJitterMicroAnimated: 0
+ - _SpecularAnisoJitterMicroMultiplier: 0
+ - _SpecularAnisoJitterMicroMultiplier1: 0
+ - _SpecularAnisoJitterMicroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMicroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMicroPanAnimated: 0
+ - _SpecularAnisoJitterMicroUV: 0
+ - _SpecularAnisoJitterMicroUVAnimated: 0
+ - _SpecularAnisoJitterMirrored: 0
+ - _SpecularAnisoJitterMirrored1: 0
+ - _SpecularAnisoJitterMirrored1Animated: 0
+ - _SpecularAnisoJitterMirroredAnimated: 0
+ - _SpecularHighlights: 1
+ - _SpecularInvertSmoothness: 0
+ - _SpecularInvertSmoothness1: 0
+ - _SpecularInvertSmoothness1Animated: 0
+ - _SpecularInvertSmoothnessAnimated: 0
+ - _SpecularMap1Animated: 0
+ - _SpecularMap1PanAnimated: 0
+ - _SpecularMap1UV: 0
+ - _SpecularMap1UVAnimated: 0
+ - _SpecularMapAnimated: 0
+ - _SpecularMapPanAnimated: 0
+ - _SpecularMapUV: 0
+ - _SpecularMapUVAnimated: 0
+ - _SpecularMask1Animated: 0
+ - _SpecularMask1PanAnimated: 0
+ - _SpecularMask1UV: 0
+ - _SpecularMask1UVAnimated: 0
+ - _SpecularMaskAnimated: 0
+ - _SpecularMaskPanAnimated: 0
+ - _SpecularMaskUV: 0
+ - _SpecularMaskUVAnimated: 0
+ - _SpecularMetallic: 0
+ - _SpecularMetallic1: 0
+ - _SpecularMetallic1Animated: 0
+ - _SpecularMetallicAnimated: 0
+ - _SpecularMetallicMap1UV: 0
+ - _SpecularMetallicMapUV: 0
+ - _SpecularNormal: 1
+ - _SpecularNormal1: 1
+ - _SpecularNormal1Animated: 0
+ - _SpecularNormalAnimated: 0
+ - _SpecularSmoothness: 1
+ - _SpecularSmoothness1: 0.75
+ - _SpecularSmoothness1Animated: 0
+ - _SpecularSmoothnessAnimated: 0
+ - _SpecularTint1Animated: 0
+ - _SpecularTintAnimated: 0
+ - _SpecularToonEnd: 1
+ - _SpecularToonEnd1: 1
+ - _SpecularToonEnd1Animated: 0
+ - _SpecularToonEndAnimated: 0
+ - _SpecularToonInnerOuter1Animated: 0
+ - _SpecularToonInnerOuterAnimated: 0
+ - _SpecularToonStart: 0.95
+ - _SpecularToonStart1: 0.95
+ - _SpecularToonStart1Animated: 0
+ - _SpecularToonStartAnimated: 0
+ - _SpecularType: 1
+ - _SpecularType1: 1
+ - _SpecularType1Animated: 0
+ - _SpecularTypeAnimated: 0
+ - _SrcBlend: 1
+ - _SrcBlendAnimated: 0
+ - _StencilCompareFunction: 8
+ - _StencilCompareFunctionAnimated: 0
+ - _StencilFailOp: 0
+ - _StencilFailOpAnimated: 0
+ - _StencilPassOp: 0
+ - _StencilPassOpAnimated: 0
+ - _StencilReadMask: 255
+ - _StencilReadMaskAnimated: 0
+ - _StencilRef: 0
+ - _StencilRefAnimated: 0
+ - _StencilWriteMask: 255
+ - _StencilWriteMaskAnimated: 0
+ - _StencilZFailOp: 0
+ - _StencilZFailOpAnimated: 0
+ - _TextEnabled: 0
+ - _TextEnabledAnimated: 0
+ - _TextFPSColorAnimated: 0
+ - _TextFPSEmissionStrength: 0
+ - _TextFPSEmissionStrengthAnimated: 0
+ - _TextFPSEnabled: 0
+ - _TextFPSEnabledAnimated: 0
+ - _TextFPSOffsetAnimated: 0
+ - _TextFPSPaddingAnimated: 0
+ - _TextFPSRotation: 0
+ - _TextFPSRotationAnimated: 0
+ - _TextFPSScaleAnimated: 0
+ - _TextFPSUV: 0
+ - _TextFPSUVAnimated: 0
+ - _TextGlyphsAnimated: 0
+ - _TextPixelRange: 4
+ - _TextPixelRangeAnimated: 0
+ - _TextPositionColorAnimated: 0
+ - _TextPositionEmissionStrength: 0
+ - _TextPositionEmissionStrengthAnimated: 0
+ - _TextPositionEnabled: 0
+ - _TextPositionEnabledAnimated: 0
+ - _TextPositionOffsetAnimated: 0
+ - _TextPositionPaddingAnimated: 0
+ - _TextPositionRotation: 0
+ - _TextPositionRotationAnimated: 0
+ - _TextPositionScaleAnimated: 0
+ - _TextPositionUV: 0
+ - _TextPositionUVAnimated: 0
+ - _TextTimeColorAnimated: 0
+ - _TextTimeEmissionStrength: 0
+ - _TextTimeEmissionStrengthAnimated: 0
+ - _TextTimeEnabled: 0
+ - _TextTimeEnabledAnimated: 0
+ - _TextTimeOffsetAnimated: 0
+ - _TextTimePaddingAnimated: 0
+ - _TextTimeRotation: 0
+ - _TextTimeRotationAnimated: 0
+ - _TextTimeScaleAnimated: 0
+ - _TextTimeUV: 0
+ - _TextTimeUVAnimated: 0
+ - _ToonRampAnimated: 0
+ - _UVSec: 0
+ - _UseShadowTexture: 0
+ - _UseShadowTextureAnimated: 0
+ - _VertexGlitchFrequencyAnimated: 0
+ - _VertexGlitchStrengthAnimated: 0
+ - _VertexGlitchThresholdAnimated: 0
+ - _VertexManipulationHeight: 0
+ - _VertexManipulationHeightAnimated: 0
+ - _VertexManipulationHeightBias: 0
+ - _VertexManipulationHeightBiasAnimated: 0
+ - _VertexManipulationHeightMaskAnimated: 0
+ - _VertexManipulationHeightPanAnimated: 0
+ - _VertexManipulationHeightUV: 0
+ - _VertexManipulationHeightUVAnimated: 0
+ - _VertexManipulationLocalRotationAnimated: 0
+ - _VertexManipulationLocalScaleAnimated: 0
+ - _VertexManipulationLocalTranslationAnimated: 0
+ - _VertexManipulationWorldTranslationAnimated: 0
+ - _VertexManipulationsEnabled: 0
+ - _VertexRoundingDivision: 500
+ - _VertexRoundingDivisionAnimated: 0
+ - _VertexRoundingEnabled: 0
+ - _VertexRoundingEnabledAnimated: 0
+ - _VertexUnwrap: 0
+ - _VertexUnwrapAnimated: 0
+ - _VideoBacklightAnimated: 0
+ - _VideoCRTPixelEnergizedTimeAnimated: 0
+ - _VideoCRTRefreshRateAnimated: 0
+ - _VideoContrastAnimated: 0
+ - _VideoDebugTextureAnimated: 0
+ - _VideoEnableDebugAnimated: 0
+ - _VideoEnableVideoPlayerAnimated: 0
+ - _VideoGameboyRampAnimated: 0
+ - _VideoMaskPanningAnimated: 0
+ - _VideoMaskTextureAnimated: 0
+ - _VideoOffsetAnimated: 0
+ - _VideoPanningAnimated: 0
+ - _VideoPixelTextureAnimated: 0
+ - _VideoPixelateToResolutionAnimated: 0
+ - _VideoRepeatVideoTextureAnimated: 0
+ - _VideoResolutionAnimated: 0
+ - _VideoSaturationAnimated: 0
+ - _VideoTilingAnimated: 0
+ - _VideoTypeAnimated: 0
+ - _VideoUVNumberAnimated: 0
+ - _VoronoiBlendAnimated: 0
+ - _VoronoiColor0Animated: 0
+ - _VoronoiColor1Animated: 0
+ - _VoronoiEffectsMaterialAlphaAnimated: 0
+ - _VoronoiEmission0Animated: 0
+ - _VoronoiEmission1Animated: 0
+ - _VoronoiEnableRandomCellColorAnimated: 0
+ - _VoronoiGradientAnimated: 0
+ - _VoronoiMaskAnimated: 0
+ - _VoronoiMaskPanAnimated: 0
+ - _VoronoiMaskUVAnimated: 0
+ - _VoronoiNoiseAnimated: 0
+ - _VoronoiNoiseIntensityAnimated: 0
+ - _VoronoiNoisePanAnimated: 0
+ - _VoronoiNoiseUVAnimated: 0
+ - _VoronoiRandomMinMaxBrightnessAnimated: 0
+ - _VoronoiRandomMinMaxSaturationAnimated: 0
+ - _VoronoiScaleAnimated: 0
+ - _VoronoiSpaceAnimated: 0
+ - _VoronoiSpeedAnimated: 0
+ - _VoronoiTypeAnimated: 0
+ - _ZTest: 4
+ - _ZTestAnimated: 0
+ - _ZWrite: 1
+ - _ZWriteAnimated: 0
+ - _commentIfZero_EnableOutlinePass: 0
+ - _commentIfZero_LightingAdditiveEnable: 1
+ - _commentIfZero_LightingAdditiveEnableAnimated: 0
+ - _glitterFrequencyLinearEmissive: 20
+ - _glitterFrequencyLinearEmissiveAnimated: 0
+ - footer_discord: 0
+ - footer_github: 0
+ - footer_patreon: 0
+ - footer_twitter: 0
+ - footer_youtube: 0
+ - m_LockingInfo: 0
+ - m_ParallaxMap: 0
+ - m_Special_Effects: 0
+ - m_end_Alpha: 0
+ - m_end_BonusSliders: 0
+ - m_end_CenterOutEmission: 0
+ - m_end_CenterOutEmission1: 0
+ - m_end_DecalSection: 0
+ - m_end_DetailOptions: 0
+ - m_end_Lighting: 0
+ - m_end_MainHueShift: 0
+ - m_end_MainVertexColors: 0
+ - m_end_Matcap2: 0
+ - m_end_Metallic: 0
+ - m_end_OutlineStencil: 0
+ - m_end_RGBMask: 0
+ - m_end_ShadowMix: 0
+ - m_end_StencilPassOptions: 0
+ - m_end_Text: 0
+ - m_end_TextFPS: 0
+ - m_end_TextInstanceTime: 0
+ - m_end_TextPosition: 0
+ - m_end_ambientOcclusion: 0
+ - m_end_angularFade: 0
+ - m_end_backFace: 0
+ - m_end_bakedLighting: 0
+ - m_end_blending: 0
+ - m_end_blinkingEmissionOptions: 0
+ - m_end_blinkingEmissionOptions1: 0
+ - m_end_clearCoat: 0
+ - m_end_debugOptions: 0
+ - m_end_detailShadows: 0
+ - m_end_dissolve: 0
+ - m_end_dissolveMasking: 0
+ - m_end_distanceFade: 0
+ - m_end_distortionFlow: 0
+ - m_end_emission1Options: 0
+ - m_end_emissionOptions: 0
+ - m_end_flipBook: 0
+ - m_end_glitter: 0
+ - m_end_glitterRandom: 0
+ - m_end_glowInDarkEmissionOptions: 0
+ - m_end_glowInDarkEmissionOptions1: 0
+ - m_end_lightingAdvanced: 0
+ - m_end_lightingHSL: 0
+ - m_end_lightingModifiers: 0
+ - m_end_manualFlipbookControl: 0
+ - m_end_matcap: 0
+ - m_end_mirrorOptions: 0
+ - m_end_outlineAdvanced: 0
+ - m_end_panosphereOptions: 0
+ - m_end_parallaxAdvanced: 0
+ - m_end_parallaxHeightmap: 0
+ - m_end_parallaxInternal: 0
+ - m_end_pointToPoint: 0
+ - m_end_reflectionRim: 0
+ - m_end_rimLightOptions: 0
+ - m_end_rimWidthNoise: 0
+ - m_end_scrollingEmission1Options: 0
+ - m_end_scrollingEmissionOptions: 0
+ - m_end_shadowTexture: 0
+ - m_end_specular: 0
+ - m_end_specular1: 0
+ - m_end_subsurface: 0
+ - m_end_vertexManipulation: 0
+ - m_lightingOptions: 0
+ - m_mainOptions: 0
+ - m_outlineOptions: 0
+ - m_renderingOptions: 0
+ - m_start_Alpha: 0
+ - m_start_BonusSliders: 0
+ - m_start_CenterOutEmission: 0
+ - m_start_CenterOutEmission1: 0
+ - m_start_DecalSection: 0
+ - m_start_DetailOptions: 0
+ - m_start_Lighting: 0
+ - m_start_MainHueShift: 0
+ - m_start_MainVertexColors: 0
+ - m_start_Matcap2: 0
+ - m_start_Metallic: 0
+ - m_start_OutlineStencil: 0
+ - m_start_RGBMask: 0
+ - m_start_ShadowMix: 0
+ - m_start_StencilPassOptions: 0
+ - m_start_Text: 0
+ - m_start_TextFPS: 0
+ - m_start_TextInstanceTime: 0
+ - m_start_TextPosition: 0
+ - m_start_ambientOcclusion: 0
+ - m_start_angularFade: 0
+ - m_start_backFace: 0
+ - m_start_bakedLighting: 0
+ - m_start_blending: 0
+ - m_start_blinkingEmissionOptions: 0
+ - m_start_blinkingEmissionOptions1: 0
+ - m_start_clearCoat: 0
+ - m_start_debugOptions: 0
+ - m_start_detailShadows: 0
+ - m_start_dissolve: 0
+ - m_start_dissolveMasking: 0
+ - m_start_distanceFade: 0
+ - m_start_distortionFlow: 0
+ - m_start_emission1Options: 0
+ - m_start_emissionOptions: 0
+ - m_start_flipBook: 0
+ - m_start_glitter: 0
+ - m_start_glitterRandom: 0
+ - m_start_glowInDarkEmissionOptions: 0
+ - m_start_glowInDarkEmissionOptions1: 0
+ - m_start_lightingAdvanced: 0
+ - m_start_lightingHSL: 0
+ - m_start_lightingModifiers: 0
+ - m_start_manualFlipbookControl: 0
+ - m_start_matcap: 0
+ - m_start_mirrorOptions: 0
+ - m_start_outlineAdvanced: 0
+ - m_start_panosphereOptions: 0
+ - m_start_parallaxAdvanced: 0
+ - m_start_parallaxHeightmap: 0
+ - m_start_parallaxInternal: 0
+ - m_start_pointToPoint: 0
+ - m_start_reflectionRim: 0
+ - m_start_rimLightOptions: 0
+ - m_start_rimWidthNoise: 0
+ - m_start_scrollingEmissionOptions: 0
+ - m_start_scrollingEmissionOptions1: 0
+ - m_start_shadowTexture: 0
+ - m_start_specular: 0
+ - m_start_specular1: 0
+ - m_start_subsurface: 0
+ - m_start_vertexManipulation: 0
+ - shader_is_using_thry_editor: 69
+ - shader_master_label: 0
+ - shader_presets: 0
+ - shader_properties_label_file: 0
+ m_Colors:
+ - _AlphaMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _AngleForwardDirection: {r: 0, g: 0, b: 1, a: 0}
+ - _AnisoTangentMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _AnisoTangentMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _BackFaceColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BackFacePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _BlueColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BumpMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatSmoothnessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatTint: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DecalPosition: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DecalScale: {r: 1, g: 1, b: 0, a: 0}
+ - _DecalTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailNormalMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTint: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveDetailNoisePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveEdgeColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveEndPoint: {r: 0, g: 1, b: 0, a: 0}
+ - _DissolveMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveStartPoint: {r: 0, g: -1, b: 0, a: 0}
+ - _DissolveTextureColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveToTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionSpeed: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DistortionSpeed1: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionColor1: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissiveScroll_Direction: {r: 0, g: -10, b: 0, a: 0}
+ - _EmissiveScroll_Direction1: {r: 0, g: -10, b: 0, a: 0}
+ - _FlipbookColor: {r: 1, g: 1, b: 1, a: 1}
+ - _FlipbookMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _FlipbookScaleOffset: {r: 1, g: 1, b: 0, a: 0}
+ - _FlipbookTexArrayPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterColor: {r: 1, g: 1, b: 1, a: 1}
+ - _GlitterColorMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMinMaxBrightness: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSaturation: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSize: {r: 0.1, g: 0.5, b: 0, a: 1}
+ - _GlitterPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _GreenColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingAOTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingDetailShadowsPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingShadowMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _LineColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MainDistanceFade: {r: 0, g: 0, b: 0, a: 0}
+ - _MainFadeTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainHueShiftMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _Matcap2Color: {r: 1, g: 1, b: 1, a: 1}
+ - _Matcap2MaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MatcapColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MatcapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetalReflectionTint: {r: 1, g: 1, b: 1, a: 1}
+ - _MetallicMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetallicTintMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MirrorTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineDropShadowOffset: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineFadeDistance: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlinePersonaDirection: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanoMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanosphereColor: {r: 1, g: 1, b: 1, a: 1}
+ - _PanospherePan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMaxColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalMinColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalPanDepthSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalPanSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBBluePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBGreenPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBMaskPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBRedPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RedColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RgbNormalBPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalGPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalRPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimEnviroMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimLightColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RimMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimWidthNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _SSSColor: {r: 1, g: 0, b: 0, a: 1}
+ - _SSSThicknessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SmoothnessMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularTint: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularTint1: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularToonInnerOuter: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _SpecularToonInnerOuter1: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _TextFPSColor: {r: 1, g: 1, b: 1, a: 1}
+ - _TextFPSOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextPositionColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextPositionOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextTimeColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextTimeOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimePadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimeScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationHeightPan: {r: 0, g: 0, b: 0, a: 0}
+ - _VertexManipulationLocalRotation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationLocalScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationLocalTranslation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationWorldTranslation: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.mat.meta
new file mode 100644
index 00000000..b446231d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7efb4258a61885848b4389535ee94dde
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.png b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.png
new file mode 100644
index 00000000..ed4be89a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.png
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.png.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.png.meta
new file mode 100644
index 00000000..e7ec3e2b
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/starby1010浣.png.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: 38966a5e12e2728468005ee73677b31a
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 1
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.mat b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.mat
new file mode 100644
index 00000000..d79eabbd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.mat
@@ -0,0 +1,1855 @@
+%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: yan
+ m_Shader: {fileID: 4800000, guid: 17e18eb91a88b91489c023fca3426042, type: 3}
+ m_ShaderKeywords: VIGNETTE_MASKED _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap:
+ OptimizedShaderFolder: yan-b188a58c
+ OriginalShader: ".poiyomi/\u2022 Poiyomi Toon \u2022"
+ RenderType: Opaque
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _AlphaMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _AnisoTangentMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BackFaceTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BlueTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatCubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ClearCoatSmoothnessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _CubeMap:
+ m_Texture: {fileID: 8900000, guid: 1f79f71b84fc2844bb81e9ae4f5bc384, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DecalTexture:
+ 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}
+ - _DetailTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveDetailNoise:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveEdgeGradient:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DissolveToTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionFlowTexture1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DistortionMask:
+ 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}
+ - _EmissionMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionScrollingCurve1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _FlipbookTexArray:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterColorMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GlitterTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _GreenTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingAOTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingDetailShadows:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _LightingShadowTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainFadeTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainHueShiftMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: f1de42565511cc24e87855920723ceca, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _Matcap2Mask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MatcapMask:
+ 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}
+ - _MetallicMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicTintMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MirrorTexture:
+ 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}
+ - _OutlineMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OutlineTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoCubeMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanoMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _PanosphereTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxHeightMapMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxInternalMapMask:
+ 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}
+ - _RGBMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RedTexure:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalB:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalG:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RgbNormalR:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimEnviroMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimTex:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _RimWidthNoiseTexture:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SSSThicknessMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SmoothnessMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMacro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularAnisoJitterMicro1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMask1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecularMetallicMap1:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _TextGlyphs:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ToonRamp:
+ m_Texture: {fileID: 2800000, guid: 61bd594533da4fc42bd46ef93ba5a4f6, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _VertexManipulationHeightMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - DSGI: 0
+ - Instancing: 0
+ - LightmapFlags: 0
+ - _AOStrength: 1
+ - _AOStrengthAnimated: 0
+ - _AlphaMaskAnimated: 0
+ - _AlphaMaskPanAnimated: 0
+ - _AlphaMaskUV: 0
+ - _AlphaMaskUVAnimated: 0
+ - _AlphaMod: 0
+ - _AlphaModAnimated: 0
+ - _AlphaPremultiply: 0
+ - _AlphaPremultiplyAnimated: 0
+ - _AlphaToMask: 0
+ - _AlphaToMaskAnimated: 0
+ - _AngleCompareTo: 0
+ - _AngleCompareToAnimated: 0
+ - _AngleForwardDirectionAnimated: 0
+ - _AngleMinAlpha: 0
+ - _AngleMinAlphaAnimated: 0
+ - _AngleType: 0
+ - _AngleTypeAnimated: 0
+ - _AnisoSpec1Alpha: 1
+ - _AnisoSpec1Alpha1: 1
+ - _AnisoSpec1Alpha1Animated: 0
+ - _AnisoSpec1AlphaAnimated: 0
+ - _AnisoSpec2Alpha: 1
+ - _AnisoSpec2Alpha1: 1
+ - _AnisoSpec2Alpha1Animated: 0
+ - _AnisoSpec2AlphaAnimated: 0
+ - _AnisoTangentMap1Animated: 0
+ - _AnisoTangentMap1PanAnimated: 0
+ - _AnisoTangentMap1UV: 0
+ - _AnisoTangentMap1UVAnimated: 0
+ - _AnisoTangentMapAnimated: 0
+ - _AnisoTangentMapPanAnimated: 0
+ - _AnisoTangentMapUV: 0
+ - _AnisoTangentMapUVAnimated: 0
+ - _AnisoUseTangentMap: 0
+ - _AnisoUseTangentMap1: 0
+ - _AnisoUseTangentMap1Animated: 0
+ - _AnisoUseTangentMapAnimated: 0
+ - _AttenuationMultiplier: 0
+ - _AttenuationMultiplierAnimated: 0
+ - _BackFaceDetailIntensity: 1
+ - _BackFaceEmissionStrength: 0
+ - _BackFaceEnabled: 0
+ - _BackFaceHueShift: 0
+ - _BackFaceTextureUV: 0
+ - _BlackLightMaskClearCoatAnimated: 0
+ - _BlackLightMaskDebugAnimated: 0
+ - _BlackLightMaskDissolveAnimated: 0
+ - _BlackLightMaskEmission2Animated: 0
+ - _BlackLightMaskEmissionAnimated: 0
+ - _BlackLightMaskEnabledAnimated: 0
+ - _BlackLightMaskEndAnimated: 0
+ - _BlackLightMaskFlipbookAnimated: 0
+ - _BlackLightMaskGlitterAnimated: 0
+ - _BlackLightMaskIridescenceAnimated: 0
+ - _BlackLightMaskKeysAnimated: 0
+ - _BlackLightMaskMatcap2Animated: 0
+ - _BlackLightMaskMatcapAnimated: 0
+ - _BlackLightMaskMetallicAnimated: 0
+ - _BlackLightMaskPanosphereAnimated: 0
+ - _BlackLightMaskStartAnimated: 0
+ - _BlendOp: 0
+ - _BlendOpAlpha: 0
+ - _BlendOpAlphaAnimated: 0
+ - _BlendOpAnimated: 0
+ - _BlueColorAnimated: 0
+ - _BlueTextureAnimated: 0
+ - _BuldgeFadeLengthAnimated: 0
+ - _BuldgeHeightAnimated: 0
+ - _BulgeMaskAnimated: 0
+ - _BumpMapAnimated: 0
+ - _BumpMapPanAnimated: 0
+ - _BumpMapUV: 0
+ - _BumpMapUVAnimated: 0
+ - _BumpScale: 1
+ - _BumpScaleAnimated: 0
+ - _CameraAngleMax: 90
+ - _CameraAngleMaxAnimated: 0
+ - _CameraAngleMin: 45
+ - _CameraAngleMinAnimated: 0
+ - _ClearCoat: 1
+ - _ClearCoatAnimated: 0
+ - _ClearCoatCubeMapAnimated: 0
+ - _ClearCoatForceLighting: 0
+ - _ClearCoatForceLightingAnimated: 0
+ - _ClearCoatInvertSmoothness: 0
+ - _ClearCoatInvertSmoothnessAnimated: 0
+ - _ClearCoatMaskAnimated: 0
+ - _ClearCoatMaskPanAnimated: 0
+ - _ClearCoatMaskUV: 0
+ - _ClearCoatMaskUVAnimated: 0
+ - _ClearCoatNormalToUse: 0
+ - _ClearCoatNormalToUseAnimated: 0
+ - _ClearCoatSampleWorld: 0
+ - _ClearCoatSampleWorldAnimated: 0
+ - _ClearCoatSmoothness: 0
+ - _ClearCoatSmoothnessAnimated: 0
+ - _ClearCoatSmoothnessMapAnimated: 0
+ - _ClearCoatSmoothnessMapPanAnimated: 0
+ - _ClearCoatSmoothnessMapUV: 0
+ - _ClearCoatSmoothnessMapUVAnimated: 0
+ - _ClearCoatTintAnimated: 0
+ - _ColorAnimated: 0
+ - _ColorMask: 15
+ - _ColorMaskAnimated: 0
+ - _ContinuousDissolve: 0
+ - _ContinuousDissolveAnimated: 0
+ - _CubeMapAnimated: 0
+ - _Cull: 2
+ - _CullAnimated: 0
+ - _Cutoff: 0.5
+ - _CutoffAnimated: 0
+ - _DebugCameraData: 0
+ - _DebugCameraDataAnimated: 0
+ - _DebugEnabled: 0
+ - _DebugLightingData: 0
+ - _DebugLightingDataAnimated: 0
+ - _DebugMeshData: 0
+ - _DebugMeshDataAnimated: 0
+ - _DecalBlendAdd: 0
+ - _DecalBlendAddAnimated: 0
+ - _DecalBlendMultiply: 0
+ - _DecalBlendMultiplyAnimated: 0
+ - _DecalBlendReplace: 0
+ - _DecalBlendReplaceAnimated: 0
+ - _DecalColorAnimated: 0
+ - _DecalEmissionStrength: 0
+ - _DecalEmissionStrengthAnimated: 0
+ - _DecalEnabled: 0
+ - _DecalEnabledAnimated: 0
+ - _DecalMaskAnimated: 0
+ - _DecalMaskPanAnimated: 0
+ - _DecalMaskUV: 0
+ - _DecalMaskUVAnimated: 0
+ - _DecalPositionAnimated: 0
+ - _DecalRotation: 0
+ - _DecalRotationAnimated: 0
+ - _DecalRotationSpeed: 0
+ - _DecalRotationSpeedAnimated: 0
+ - _DecalScaleAnimated: 0
+ - _DecalTextureAnimated: 0
+ - _DecalTexturePanAnimated: 0
+ - _DecalTextureUV: 0
+ - _DecalTextureUVAnimated: 0
+ - _DecalTiled: 0
+ - _DecalTiledAnimated: 0
+ - _DepthAlphaMaxAnimated: 0
+ - _DepthAlphaMinAnimated: 0
+ - _DepthGlowColorAnimated: 0
+ - _DepthGlowEmissionAnimated: 0
+ - _DepthGradientAnimated: 0
+ - _DepthGradientBlendAnimated: 0
+ - _DepthGradientPanAnimated: 0
+ - _DepthGradientTextureUVAnimated: 0
+ - _DepthGradientUVAnimated: 0
+ - _DepthMaskAnimated: 0
+ - _DepthMaskPanAnimated: 0
+ - _DepthMaskUVAnimated: 0
+ - _DetailBrightness: 1
+ - _DetailBrightnessAnimated: 0
+ - _DetailEnabled: 0
+ - _DetailMaskAnimated: 0
+ - _DetailMaskPanAnimated: 0
+ - _DetailMaskUV: 0
+ - _DetailMaskUVAnimated: 0
+ - _DetailNormalMapAnimated: 0
+ - _DetailNormalMapPanAnimated: 0
+ - _DetailNormalMapScale: 1
+ - _DetailNormalMapScaleAnimated: 0
+ - _DetailNormalMapUV: 0
+ - _DetailNormalMapUVAnimated: 0
+ - _DetailTexAnimated: 0
+ - _DetailTexIntensity: 1
+ - _DetailTexIntensityAnimated: 0
+ - _DetailTexPanAnimated: 0
+ - _DetailTexUV: 0
+ - _DetailTexUVAnimated: 0
+ - _DetailTintAnimated: 0
+ - _DisableDirectionalInAdd: 1
+ - _DissolveAlpha: 0
+ - _DissolveAlpha0: 0
+ - _DissolveAlpha0Animated: 0
+ - _DissolveAlpha1: 0
+ - _DissolveAlpha1Animated: 0
+ - _DissolveAlpha2: 0
+ - _DissolveAlpha2Animated: 0
+ - _DissolveAlpha3: 0
+ - _DissolveAlpha3Animated: 0
+ - _DissolveAlpha4: 0
+ - _DissolveAlpha4Animated: 0
+ - _DissolveAlpha5: 0
+ - _DissolveAlpha5Animated: 0
+ - _DissolveAlpha6: 0
+ - _DissolveAlpha6Animated: 0
+ - _DissolveAlpha7: 0
+ - _DissolveAlpha7Animated: 0
+ - _DissolveAlpha8: 0
+ - _DissolveAlpha8Animated: 0
+ - _DissolveAlpha9: 0
+ - _DissolveAlpha9Animated: 0
+ - _DissolveAlphaAnimated: 0
+ - _DissolveDetailNoiseAnimated: 0
+ - _DissolveDetailNoisePanAnimated: 0
+ - _DissolveDetailNoiseUV: 0
+ - _DissolveDetailNoiseUVAnimated: 0
+ - _DissolveDetailStrength: 0.1
+ - _DissolveDetailStrengthAnimated: 0
+ - _DissolveEdgeColorAnimated: 0
+ - _DissolveEdgeEmission: 0
+ - _DissolveEdgeEmissionAnimated: 0
+ - _DissolveEdgeGradientAnimated: 0
+ - _DissolveEdgeHardness: 0.5
+ - _DissolveEdgeHardnessAnimated: 0
+ - _DissolveEdgeWidth: 0.025
+ - _DissolveEdgeWidthAnimated: 0
+ - _DissolveEmission1Side: 2
+ - _DissolveEmission1SideAnimated: 0
+ - _DissolveEmissionSide: 2
+ - _DissolveEmissionSideAnimated: 0
+ - _DissolveEndPointAnimated: 0
+ - _DissolveInvertDetailNoise: 0
+ - _DissolveInvertDetailNoiseAnimated: 0
+ - _DissolveInvertNoise: 0
+ - _DissolveInvertNoiseAnimated: 0
+ - _DissolveMaskAnimated: 0
+ - _DissolveMaskInvert: 0
+ - _DissolveMaskInvertAnimated: 0
+ - _DissolveMaskPanAnimated: 0
+ - _DissolveMaskUV: 0
+ - _DissolveMaskUVAnimated: 0
+ - _DissolveNoiseTextureAnimated: 0
+ - _DissolveNoiseTexturePanAnimated: 0
+ - _DissolveNoiseTextureUV: 0
+ - _DissolveNoiseTextureUVAnimated: 0
+ - _DissolveP2PEdgeLength: 0.1
+ - _DissolveP2PEdgeLengthAnimated: 0
+ - _DissolveP2PWorldLocal: 0
+ - _DissolveP2PWorldLocalAnimated: 0
+ - _DissolveStartPointAnimated: 0
+ - _DissolveTextureColorAnimated: 0
+ - _DissolveToEmissionStrength: 0
+ - _DissolveToEmissionStrengthAnimated: 0
+ - _DissolveToTextureAnimated: 0
+ - _DissolveToTexturePanAnimated: 0
+ - _DissolveToTextureUV: 0
+ - _DissolveToTextureUVAnimated: 0
+ - _DissolveType: 1
+ - _DissolveTypeAnimated: 0
+ - _DissolveUseVertexColors: 0
+ - _DissolveUseVertexColorsAnimated: 0
+ - _DistortionFlowTexture1Animated: 0
+ - _DistortionFlowTextureAnimated: 0
+ - _DistortionMaskAnimated: 0
+ - _DistortionMaskPanAnimated: 0
+ - _DistortionMaskUV: 0
+ - _DistortionMaskUVAnimated: 0
+ - _DistortionSpeed1Animated: 0
+ - _DistortionSpeedAnimated: 0
+ - _DistortionStrength: 0.5
+ - _DistortionStrength1: 0.5
+ - _DistortionStrength1Animated: 0
+ - _DistortionStrengthAnimated: 0
+ - _DitherGradient: 0.1
+ - _DitherGradientAnimated: 0
+ - _DitheringEnabled: 0
+ - _DitheringEnabledAnimated: 0
+ - _DstBlend: 0
+ - _DstBlendAnimated: 0
+ - _EmissionBaseColorAsMap: 0
+ - _EmissionBaseColorAsMap1: 0
+ - _EmissionBaseColorAsMap1Animated: 0
+ - _EmissionBaseColorAsMapAnimated: 0
+ - _EmissionBlinkingEnabled: 0
+ - _EmissionBlinkingEnabled1: 0
+ - _EmissionBlinkingEnabledAnimated: 0
+ - _EmissionBlinkingOffset: 0
+ - _EmissionBlinkingOffset1: 0
+ - _EmissionBlinkingOffset1Animated: 0
+ - _EmissionBlinkingOffsetAnimated: 0
+ - _EmissionCenterOutEnabled: 0
+ - _EmissionCenterOutEnabled1: 0
+ - _EmissionCenterOutEnabled1Animated: 0
+ - _EmissionCenterOutEnabledAnimated: 0
+ - _EmissionCenterOutSpeed: 5
+ - _EmissionCenterOutSpeed1: 5
+ - _EmissionCenterOutSpeed1Animated: 0
+ - _EmissionCenterOutSpeedAnimated: 0
+ - _EmissionColor1Animated: 0
+ - _EmissionColorAnimated: 0
+ - _EmissionHueShift: 0
+ - _EmissionHueShift1: 0
+ - _EmissionHueShift1Animated: 0
+ - _EmissionHueShiftAnimated: 0
+ - _EmissionHueShiftEnabled: 0
+ - _EmissionHueShiftEnabled1: 0
+ - _EmissionHueShiftEnabled1Animated: 0
+ - _EmissionHueShiftEnabledAnimated: 0
+ - _EmissionMap1Animated: 0
+ - _EmissionMap1PanAnimated: 0
+ - _EmissionMap1UV: 0
+ - _EmissionMap1UVAnimated: 0
+ - _EmissionMapAnimated: 0
+ - _EmissionMapPanAnimated: 0
+ - _EmissionMapUV: 0
+ - _EmissionMapUVAnimated: 0
+ - _EmissionMask1Animated: 0
+ - _EmissionMask1PanAnimated: 0
+ - _EmissionMask1UV: 0
+ - _EmissionMask1UVAnimated: 0
+ - _EmissionMaskAnimated: 0
+ - _EmissionMaskPanAnimated: 0
+ - _EmissionMaskUV: 0
+ - _EmissionMaskUVAnimated: 0
+ - _EmissionReplace: 0
+ - _EmissionReplaceAnimated: 0
+ - _EmissionScrollingCurve1Animated: 0
+ - _EmissionScrollingCurveAnimated: 0
+ - _EmissionScrollingOffset: 0
+ - _EmissionScrollingOffset1: 0
+ - _EmissionScrollingOffset1Animated: 0
+ - _EmissionScrollingOffsetAnimated: 0
+ - _EmissionScrollingUseCurve: 0
+ - _EmissionScrollingUseCurve1: 0
+ - _EmissionScrollingUseCurve1Animated: 0
+ - _EmissionScrollingUseCurveAnimated: 0
+ - _EmissionScrollingVertexColor: 0
+ - _EmissionScrollingVertexColor1: 0
+ - _EmissionScrollingVertexColor1Animated: 0
+ - _EmissionScrollingVertexColorAnimated: 0
+ - _EmissionStrength: 0
+ - _EmissionStrength1: 0
+ - _EmissionStrength1Animated: 0
+ - _EmissionStrengthAnimated: 0
+ - _EmissiveBlink_Max: 1
+ - _EmissiveBlink_Max1: 1
+ - _EmissiveBlink_Max1Animated: 0
+ - _EmissiveBlink_MaxAnimated: 0
+ - _EmissiveBlink_Min: 0
+ - _EmissiveBlink_Min1: 0
+ - _EmissiveBlink_Min1Animated: 0
+ - _EmissiveBlink_MinAnimated: 0
+ - _EmissiveBlink_Velocity: 4
+ - _EmissiveBlink_Velocity1: 4
+ - _EmissiveBlink_Velocity1Animated: 0
+ - _EmissiveBlink_VelocityAnimated: 0
+ - _EmissiveScroll_Direction1Animated: 0
+ - _EmissiveScroll_DirectionAnimated: 0
+ - _EmissiveScroll_Interval: 20
+ - _EmissiveScroll_Interval1: 20
+ - _EmissiveScroll_Interval1Animated: 0
+ - _EmissiveScroll_IntervalAnimated: 0
+ - _EmissiveScroll_Velocity: 10
+ - _EmissiveScroll_Velocity1: 10
+ - _EmissiveScroll_Velocity1Animated: 0
+ - _EmissiveScroll_VelocityAnimated: 0
+ - _EmissiveScroll_Width: 10
+ - _EmissiveScroll_Width1: 10
+ - _EmissiveScroll_Width1Animated: 0
+ - _EmissiveScroll_WidthAnimated: 0
+ - _EnableBlurAnimated: 0
+ - _EnableBulgeAnimated: 0
+ - _EnableClearCoat: 0
+ - _EnableClearCoatAnimated: 0
+ - _EnableDissolve: 0
+ - _EnableDissolveAnimated: 0
+ - _EnableDistortion: 0
+ - _EnableDistortionAnimated: 0
+ - _EnableEmission: 0
+ - _EnableEmission1: 0
+ - _EnableEmission1Animated: 0
+ - _EnableEmissionAnimated: 0
+ - _EnableEnvironmentalRim: 0
+ - _EnableEnvironmentalRimAnimated: 0
+ - _EnableFlipbook: 0
+ - _EnableFlipbookAnimated: 0
+ - _EnableGITDEmission: 0
+ - _EnableGITDEmission1: 0
+ - _EnableGITDEmission1Animated: 0
+ - _EnableGITDEmissionAnimated: 0
+ - _EnableHoloAnimated: 0
+ - _EnableIridescenceAnimated: 0
+ - _EnableLighting: 1
+ - _EnableLightingAnimated: 0
+ - _EnableMetallic: 0
+ - _EnableMetallicAnimated: 0
+ - _EnableMirrorOptions: 0
+ - _EnableMirrorOptionsAnimated: 0
+ - _EnableMirrorTexture: 0
+ - _EnableMirrorTextureAnimated: 0
+ - _EnableRandom: 0
+ - _EnableRandomAnimated: 0
+ - _EnableRimLighting: 0
+ - _EnableRimLightingAnimated: 0
+ - _EnableSSS: 0
+ - _EnableSSSAnimated: 0
+ - _EnableScifiSpawnInAnimated: 0
+ - _EnableSpecular: 0
+ - _EnableSpecular1: 0
+ - _EnableSpecular1Animated: 0
+ - _EnableSpecularAnimated: 0
+ - _EnableTouchGlowAnimated: 0
+ - _EnableVertexGlitchAnimated: 0
+ - _EnableVideoAnimated: 0
+ - _EnableVoronoiAnimated: 0
+ - _FadeLengthAnimated: 0
+ - _FlipbookAdd: 0
+ - _FlipbookAddAnimated: 0
+ - _FlipbookAlphaControlsFinalAlpha: 0
+ - _FlipbookAlphaControlsFinalAlphaAnimated: 0
+ - _FlipbookColorAnimated: 0
+ - _FlipbookColorReplaces: 0
+ - _FlipbookColorReplacesAnimated: 0
+ - _FlipbookCurrentFrame: -1
+ - _FlipbookCurrentFrameAnimated: 0
+ - _FlipbookEmissionStrength: 0
+ - _FlipbookEmissionStrengthAnimated: 0
+ - _FlipbookFPS: 30
+ - _FlipbookFPSAnimated: 0
+ - _FlipbookIntensityControlsAlpha: 0
+ - _FlipbookIntensityControlsAlphaAnimated: 0
+ - _FlipbookMaskAnimated: 0
+ - _FlipbookMaskPanAnimated: 0
+ - _FlipbookMaskUV: 0
+ - _FlipbookMaskUVAnimated: 0
+ - _FlipbookMultiply: 0
+ - _FlipbookMultiplyAnimated: 0
+ - _FlipbookReplace: 1
+ - _FlipbookReplaceAnimated: 0
+ - _FlipbookRotation: 0
+ - _FlipbookRotationAnimated: 0
+ - _FlipbookRotationSpeed: 0
+ - _FlipbookRotationSpeedAnimated: 0
+ - _FlipbookScaleOffsetAnimated: 0
+ - _FlipbookTexArrayAnimated: 0
+ - _FlipbookTexArrayPanAnimated: 0
+ - _FlipbookTexArrayUV: 0
+ - _FlipbookTexArrayUVAnimated: 0
+ - _FlipbookTiled: 0
+ - _FlipbookTiledAnimated: 0
+ - _FlipbookTotalFrames: 1
+ - _FlipbookTotalFramesAnimated: 0
+ - _ForceOpaque: 0
+ - _ForceOpaqueAnimated: 0
+ - _ForgotToLockMaterial: 1
+ - _GIEmissionMultiplier: 1
+ - _GITDEMaxEmissionMultiplier: 0
+ - _GITDEMaxEmissionMultiplier1: 0
+ - _GITDEMaxEmissionMultiplier1Animated: 0
+ - _GITDEMaxEmissionMultiplierAnimated: 0
+ - _GITDEMaxLight: 1
+ - _GITDEMaxLight1: 1
+ - _GITDEMaxLight1Animated: 0
+ - _GITDEMaxLightAnimated: 0
+ - _GITDEMinEmissionMultiplier: 1
+ - _GITDEMinEmissionMultiplier1: 1
+ - _GITDEMinEmissionMultiplier1Animated: 0
+ - _GITDEMinEmissionMultiplierAnimated: 0
+ - _GITDEMinLight: 0
+ - _GITDEMinLight1: 0
+ - _GITDEMinLight1Animated: 0
+ - _GITDEMinLightAnimated: 0
+ - _GITDEWorldOrMesh: 0
+ - _GITDEWorldOrMesh1: 0
+ - _GITDEWorldOrMesh1Animated: 0
+ - _GITDEWorldOrMeshAnimated: 0
+ - _GlitterAngleRange: 90
+ - _GlitterAngleRangeAnimated: 0
+ - _GlitterBias: 0.8
+ - _GlitterBiasAnimated: 0
+ - _GlitterBlendType: 0
+ - _GlitterBlendTypeAnimated: 0
+ - _GlitterBrightness: 3
+ - _GlitterBrightnessAnimated: 0
+ - _GlitterCenterSize: 0.08
+ - _GlitterCenterSizeAnimated: 0
+ - _GlitterColorAnimated: 0
+ - _GlitterColorMapAnimated: 0
+ - _GlitterColorMapPanAnimated: 0
+ - _GlitterColorMapUV: 0
+ - _GlitterColorMapUVAnimated: 0
+ - _GlitterContrast: 300
+ - _GlitterContrastAnimated: 0
+ - _GlitterEnable: 0
+ - _GlitterEnableAnimated: 0
+ - _GlitterFrequency: 300
+ - _GlitterFrequencyAnimated: 0
+ - _GlitterJaggyFix: 0
+ - _GlitterJaggyFixAnimated: 0
+ - _GlitterJitter: 1
+ - _GlitterJitterAnimated: 0
+ - _GlitterMaskAnimated: 0
+ - _GlitterMaskPanAnimated: 0
+ - _GlitterMaskUV: 0
+ - _GlitterMaskUVAnimated: 0
+ - _GlitterMinBrightness: 0
+ - _GlitterMinBrightnessAnimated: 0
+ - _GlitterMinMaxBrightnessAnimated: 0
+ - _GlitterMinMaxSaturationAnimated: 0
+ - _GlitterMinMaxSizeAnimated: 0
+ - _GlitterMode: 0
+ - _GlitterModeAnimated: 0
+ - _GlitterPanAnimated: 0
+ - _GlitterRandomColors: 0
+ - _GlitterRandomColorsAnimated: 0
+ - _GlitterRandomRotation: 0
+ - _GlitterRandomRotationAnimated: 0
+ - _GlitterRandomSize: 0
+ - _GlitterRandomSizeAnimated: 0
+ - _GlitterShape: 0
+ - _GlitterShapeAnimated: 0
+ - _GlitterSize: 0.3
+ - _GlitterSizeAnimated: 0
+ - _GlitterSpeed: 10
+ - _GlitterSpeedAnimated: 0
+ - _GlitterTextureAnimated: 0
+ - _GlitterTexturePanAnimated: 0
+ - _GlitterTextureRotation: 0
+ - _GlitterTextureRotationAnimated: 0
+ - _GlitterUseSurfaceColor: 0
+ - _GlitterUseSurfaceColorAnimated: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0
+ - _GlossyReflections: 1
+ - _GrabBlurDirectionsAnimated: 0
+ - _GrabBlurDistanceAnimated: 0
+ - _GrabBlurQualityAnimated: 0
+ - _GrabDstBlendAnimated: 0
+ - _GrabPassBlendFactorAnimated: 0
+ - _GrabPassUseAlphaAnimated: 0
+ - _GrabSrcBlendAnimated: 0
+ - _GreenColorAnimated: 0
+ - _GreenTextureAnimated: 0
+ - _HelpBoxHideLocking: 0
+ - _HelpBoxLocking: 0
+ - _HoloAlphaMapAnimated: 0
+ - _HoloCoordinateSpaceAnimated: 0
+ - _HoloDirectionAnimated: 0
+ - _HoloFresnelAlphaAnimated: 0
+ - _HoloLineDensityAnimated: 0
+ - _HoloRimSharpnessAnimated: 0
+ - _HoloRimWidthAnimated: 0
+ - _HoloScrollSpeedAnimated: 0
+ - _IgnoreFog: 0
+ - _IgnoreFogAnimated: 0
+ - _InvertSmoothness: 0
+ - _InvertSmoothnessAnimated: 0
+ - _IridescenceAddBlendAnimated: 0
+ - _IridescenceEmissionStrengthAnimated: 0
+ - _IridescenceIntensityAnimated: 0
+ - _IridescenceMaskAnimated: 0
+ - _IridescenceMaskUVAnimated: 0
+ - _IridescenceMultiplyBlendAnimated: 0
+ - _IridescenceNormalIntensityAnimated: 0
+ - _IridescenceNormalMapAnimated: 0
+ - _IridescenceNormalSelectionAnimated: 0
+ - _IridescenceNormalToggleAnimated: 0
+ - _IridescenceNormalUVAnimated: 0
+ - _IridescenceRampAnimated: 0
+ - _IridescenceReplaceBlendAnimated: 0
+ - _IridescenceTimeAnimated: 0
+ - _LightingAOTexAnimated: 0
+ - _LightingAOTexPanAnimated: 0
+ - _LightingAOTexUV: 0
+ - _LightingAOTexUVAnimated: 0
+ - _LightingAdditiveDetailStrength: 1
+ - _LightingAdditiveDetailStrengthAnimated: 0
+ - _LightingAdditiveGradientEnd: 0.5
+ - _LightingAdditiveGradientEndAnimated: 0
+ - _LightingAdditiveGradientStart: 0
+ - _LightingAdditiveGradientStartAnimated: 0
+ - _LightingAdditiveLimitIntensity: 0
+ - _LightingAdditiveLimitIntensityAnimated: 0
+ - _LightingAdditiveMaxIntensity: 1
+ - _LightingAdditiveMaxIntensityAnimated: 0
+ - _LightingAdditivePassthrough: 0.5
+ - _LightingAdditivePassthroughAnimated: 0
+ - _LightingAdditiveType: 1
+ - _LightingAdditiveTypeAnimated: 0
+ - _LightingDetailShadowsAnimated: 0
+ - _LightingDetailShadowsEnabled: 0
+ - _LightingDetailShadowsEnabledAnimated: 0
+ - _LightingDetailShadowsPanAnimated: 0
+ - _LightingDetailShadowsUV: 0
+ - _LightingDetailShadowsUVAnimated: 0
+ - _LightingDetailStrength: 1
+ - _LightingDetailStrengthAnimated: 0
+ - _LightingDirectColorMode: 0
+ - _LightingDirectColorModeAnimated: 0
+ - _LightingEnableAO: 0
+ - _LightingEnableAOAnimated: 0
+ - _LightingEnableHSL: 0
+ - _LightingEnableHSLAnimated: 0
+ - _LightingGradientEnd: 0.5
+ - _LightingGradientEndAnimated: 0
+ - _LightingGradientStart: 0
+ - _LightingGradientStartAnimated: 0
+ - _LightingHSLIntensity: 1
+ - _LightingHSLIntensityAnimated: 0
+ - _LightingIgnoreAmbientColor: 0
+ - _LightingIgnoreAmbientColorAnimated: 0
+ - _LightingIndirectColorMode: 0
+ - _LightingIndirectColorModeAnimated: 0
+ - _LightingMinLightBrightness: 0
+ - _LightingMinLightBrightnessAnimated: 0
+ - _LightingMinShadowBrightnessRatio: 0
+ - _LightingMinShadowBrightnessRatioAnimated: 0
+ - _LightingMode: 0
+ - _LightingModeAnimated: 0
+ - _LightingMonochromatic: 0
+ - _LightingMonochromaticAnimated: 0
+ - _LightingOnlyUnityShadows: 0
+ - _LightingOnlyUnityShadowsAnimated: 0
+ - _LightingRampType: 0
+ - _LightingRampTypeAnimated: 0
+ - _LightingShadingEnabled: 0
+ - _LightingShadingEnabledAnimated: 0
+ - _LightingShadowColorAnimated: 0
+ - _LightingShadowHue: 0.5
+ - _LightingShadowHueAnimated: 0
+ - _LightingShadowLightness: 0.5
+ - _LightingShadowLightnessAnimated: 0
+ - _LightingShadowMaskAnimated: 0
+ - _LightingShadowMaskPanAnimated: 0
+ - _LightingShadowMaskUV: 0
+ - _LightingShadowMaskUVAnimated: 0
+ - _LightingShadowSaturation: 0.5
+ - _LightingShadowSaturationAnimated: 0
+ - _LightingShadowTextureAnimated: 0
+ - _LightingShadowTexturePanAnimated: 0
+ - _LightingShadowTextureUV: 0
+ - _LightingShadowTextureUVAnimated: 0
+ - _LightingStandardSmoothness: 0
+ - _LightingStandardSmoothnessAnimated: 0
+ - _LightingUncapped: 0
+ - _LightingUncappedAnimated: 0
+ - _LineColorAnimated: 0
+ - _LineWidth: 0
+ - _LineWidthAnimated: 0
+ - _LockTooltip: 0
+ - _MainAlphaToCoverage: 0
+ - _MainAlphaToCoverageAnimated: 0
+ - _MainDistanceFadeAnimated: 0
+ - _MainEmissionStrength: 0
+ - _MainEmissionStrengthAnimated: 0
+ - _MainFadeTextureAnimated: 0
+ - _MainFadeTexturePanAnimated: 0
+ - _MainFadeTextureUV: 0
+ - _MainFadeTextureUVAnimated: 0
+ - _MainHueShift: 0
+ - _MainHueShiftAnimated: 0
+ - _MainHueShiftMaskAnimated: 0
+ - _MainHueShiftMaskPanAnimated: 0
+ - _MainHueShiftMaskUV: 0
+ - _MainHueShiftMaskUVAnimated: 0
+ - _MainHueShiftReplace: 1
+ - _MainHueShiftReplaceAnimated: 0
+ - _MainHueShiftSpeed: 0
+ - _MainHueShiftSpeedAnimated: 0
+ - _MainHueShiftToggle: 0
+ - _MainHueShiftToggleAnimated: 0
+ - _MainMinAlpha: 0
+ - _MainMinAlphaAnimated: 0
+ - _MainMipScale: 0.25
+ - _MainMipScaleAnimated: 0
+ - _MainShadowClipMod: 0
+ - _MainShadowClipModAnimated: 0
+ - _MainTexAnimated: 0
+ - _MainTexPanAnimated: 0
+ - _MainTex_STAnimated: 0
+ - _MainTextureUV: 0
+ - _MainTextureUVAnimated: 0
+ - _MainUseVertexColorAlpha: 0
+ - _MainUseVertexColorAlphaAnimated: 0
+ - _MainVertexColoring: 0
+ - _MainVertexColoringAnimated: 0
+ - _Matcap2Add: 0
+ - _Matcap2AddAnimated: 0
+ - _Matcap2Animated: 0
+ - _Matcap2Border: 0.43
+ - _Matcap2BorderAnimated: 0
+ - _Matcap2ColorAnimated: 0
+ - _Matcap2EmissionStrength: 0
+ - _Matcap2EmissionStrengthAnimated: 0
+ - _Matcap2Enable: 0
+ - _Matcap2EnableAnimated: 0
+ - _Matcap2Intensity: 1
+ - _Matcap2IntensityAnimated: 0
+ - _Matcap2LightMask: 0
+ - _Matcap2LightMaskAnimated: 0
+ - _Matcap2MaskAnimated: 0
+ - _Matcap2MaskInvert: 0
+ - _Matcap2MaskInvertAnimated: 0
+ - _Matcap2MaskPanAnimated: 0
+ - _Matcap2MaskUV: 0
+ - _Matcap2MaskUVAnimated: 0
+ - _Matcap2Multiply: 0
+ - _Matcap2MultiplyAnimated: 0
+ - _Matcap2Normal: 1
+ - _Matcap2NormalAnimated: 0
+ - _Matcap2Replace: 0
+ - _Matcap2ReplaceAnimated: 0
+ - _MatcapAdd: 0
+ - _MatcapAddAnimated: 0
+ - _MatcapAnimated: 0
+ - _MatcapBorder: 0.43
+ - _MatcapBorderAnimated: 0
+ - _MatcapColorAnimated: 0
+ - _MatcapEmissionStrength: 0
+ - _MatcapEmissionStrengthAnimated: 0
+ - _MatcapEnable: 0
+ - _MatcapEnableAnimated: 0
+ - _MatcapIntensity: 1
+ - _MatcapIntensityAnimated: 0
+ - _MatcapLightMask: 0
+ - _MatcapLightMaskAnimated: 0
+ - _MatcapMaskAnimated: 0
+ - _MatcapMaskInvert: 0
+ - _MatcapMaskInvertAnimated: 0
+ - _MatcapMaskPanAnimated: 0
+ - _MatcapMaskUV: 0
+ - _MatcapMaskUVAnimated: 0
+ - _MatcapMultiply: 0
+ - _MatcapMultiplyAnimated: 0
+ - _MatcapNormal: 1
+ - _MatcapNormalAnimated: 0
+ - _MatcapReplace: 1
+ - _MatcapReplaceAnimated: 0
+ - _MetalReflectionTintAnimated: 0
+ - _Metallic: 0
+ - _MetallicAnimated: 0
+ - _MetallicMaskAnimated: 0
+ - _MetallicMaskPanAnimated: 0
+ - _MetallicMaskUV: 0
+ - _MetallicMaskUVAnimated: 0
+ - _MetallicTintMapAnimated: 0
+ - _MetallicTintMapPanAnimated: 0
+ - _MetallicTintMapUV: 0
+ - _MetallicTintMapUVAnimated: 0
+ - _Mirror: 0
+ - _MirrorAnimated: 0
+ - _MirrorTextureAnimated: 0
+ - _MirrorTexturePanAnimated: 0
+ - _MirrorTextureUV: 0
+ - _MirrorTextureUVAnimated: 0
+ - _Mode: 0
+ - _ModelAngleMax: 90
+ - _ModelAngleMaxAnimated: 0
+ - _ModelAngleMin: 45
+ - _ModelAngleMinAnimated: 0
+ - _OcclusionStrength: 1
+ - _OffsetFactor: 0
+ - _OffsetFactorAnimated: 0
+ - _OffsetUnits: 0
+ - _OffsetUnitsAnimated: 0
+ - _OutlineCull: 1
+ - _OutlineCullAnimated: 0
+ - _OutlineDropShadowOffsetAnimated: 0
+ - _OutlineEmission: 0
+ - _OutlineEmissionAnimated: 0
+ - _OutlineFadeDistanceAnimated: 0
+ - _OutlineFixedSize: 0
+ - _OutlineFixedSizeAnimated: 0
+ - _OutlineLit: 1
+ - _OutlineLitAnimated: 0
+ - _OutlineMaskAnimated: 0
+ - _OutlineMaskUV: 0
+ - _OutlineMode: 0
+ - _OutlineModeAnimated: 0
+ - _OutlineOffsetFactor: 0
+ - _OutlineOffsetUnits: 0
+ - _OutlinePersonaDirectionAnimated: 0
+ - _OutlineRimLightBlend: 0
+ - _OutlineRimLightBlendAnimated: 0
+ - _OutlineShadowStrength: 1
+ - _OutlineShadowStrengthAnimated: 0
+ - _OutlineStencilCompareFunction: 8
+ - _OutlineStencilCompareFunctionAnimated: 0
+ - _OutlineStencilFailOp: 0
+ - _OutlineStencilFailOpAnimated: 0
+ - _OutlineStencilPassOp: 0
+ - _OutlineStencilPassOpAnimated: 0
+ - _OutlineStencilReadMask: 255
+ - _OutlineStencilReadMaskAnimated: 0
+ - _OutlineStencilRef: 0
+ - _OutlineStencilRefAnimated: 0
+ - _OutlineStencilWriteMask: 255
+ - _OutlineStencilWriteMaskAnimated: 0
+ - _OutlineStencilZFailOp: 0
+ - _OutlineStencilZFailOpAnimated: 0
+ - _OutlineTextureAnimated: 0
+ - _OutlineTexturePanAnimated: 0
+ - _OutlineTextureUV: 0
+ - _OutlineTintMix: 0
+ - _OutlineTintMixAnimated: 0
+ - _OutlineUseVertexColors: 0
+ - _OutlineUseVertexColorsAnimated: 0
+ - _PanoBlend: 0
+ - _PanoBlendAnimated: 0
+ - _PanoCubeMapAnimated: 0
+ - _PanoCubeMapToggle: 0
+ - _PanoCubeMapToggleAnimated: 0
+ - _PanoEmission: 0
+ - _PanoEmissionAnimated: 0
+ - _PanoInfiniteStereoToggle: 0
+ - _PanoInfiniteStereoToggleAnimated: 0
+ - _PanoMaskAnimated: 0
+ - _PanoMaskPanAnimated: 0
+ - _PanoMaskUV: 0
+ - _PanoMaskUVAnimated: 0
+ - _PanoToggle: 0
+ - _PanoToggleAnimated: 0
+ - _PanosphereColorAnimated: 0
+ - _PanospherePanAnimated: 0
+ - _PanosphereTextureAnimated: 0
+ - _Parallax: 0.02
+ - _ParallaxBias: 0.42
+ - _ParallaxBiasAnimated: 0
+ - _ParallaxHeightMapAnimated: 0
+ - _ParallaxHeightMapEnabled: 0
+ - _ParallaxHeightMapEnabledAnimated: 0
+ - _ParallaxHeightMapMaskAnimated: 0
+ - _ParallaxHeightMapMaskPanAnimated: 0
+ - _ParallaxHeightMapMaskUV: 0
+ - _ParallaxHeightMapMaskUVAnimated: 0
+ - _ParallaxHeightMapPanAnimated: 0
+ - _ParallaxInternalHeightFromAlpha: 0
+ - _ParallaxInternalHeightFromAlphaAnimated: 0
+ - _ParallaxInternalHeightmapMode: 0
+ - _ParallaxInternalHeightmapModeAnimated: 0
+ - _ParallaxInternalIterations: 1
+ - _ParallaxInternalIterationsAnimated: 0
+ - _ParallaxInternalMapAnimated: 0
+ - _ParallaxInternalMapEnabled: 0
+ - _ParallaxInternalMapEnabledAnimated: 0
+ - _ParallaxInternalMapMaskAnimated: 0
+ - _ParallaxInternalMapMaskPanAnimated: 0
+ - _ParallaxInternalMapMaskUV: 0
+ - _ParallaxInternalMapMaskUVAnimated: 0
+ - _ParallaxInternalMaxColorAnimated: 0
+ - _ParallaxInternalMaxDepth: 1
+ - _ParallaxInternalMaxDepthAnimated: 0
+ - _ParallaxInternalMaxFade: 1
+ - _ParallaxInternalMaxFadeAnimated: 0
+ - _ParallaxInternalMinColorAnimated: 0
+ - _ParallaxInternalMinDepth: 0
+ - _ParallaxInternalMinDepthAnimated: 0
+ - _ParallaxInternalMinFade: 0
+ - _ParallaxInternalMinFadeAnimated: 0
+ - _ParallaxInternalPanDepthSpeedAnimated: 0
+ - _ParallaxInternalPanSpeedAnimated: 0
+ - _ParallaxMap: 0
+ - _ParallaxMapAnimated: 0
+ - _ParallaxStrength: 0
+ - _ParallaxStrengthAnimated: 0
+ - _ParallaxUV: 0
+ - _ParallaxUVAnimated: 0
+ - _RGBBlendMultiplicative: 0
+ - _RGBBlendMultiplicativeAnimated: 0
+ - _RGBBluePanningAnimated: 0
+ - _RGBBlue_UV: 0
+ - _RGBBlue_UVAnimated: 0
+ - _RGBGreenPanningAnimated: 0
+ - _RGBGreen_UV: 0
+ - _RGBGreen_UVAnimated: 0
+ - _RGBMaskAnimated: 0
+ - _RGBMaskEnabled: 0
+ - _RGBMaskEnabledAnimated: 0
+ - _RGBMaskPanningAnimated: 0
+ - _RGBMaskUV: 0
+ - _RGBMaskUVAnimated: 0
+ - _RGBNormalBlend: 0
+ - _RGBNormalBlendAnimated: 0
+ - _RGBRedPanningAnimated: 0
+ - _RGBRed_UV: 0
+ - _RGBRed_UVAnimated: 0
+ - _RGBUseVertexColors: 0
+ - _RGBUseVertexColorsAnimated: 0
+ - _RedColorAnimated: 0
+ - _RedTexureAnimated: 0
+ - _RefractionChromaticAberattionAnimated: 0
+ - _RefractionEnabledAnimated: 0
+ - _RefractionIndexAnimated: 0
+ - _RgbNormalBScale: 0
+ - _RgbNormalBUV: 0
+ - _RgbNormalGScale: 0
+ - _RgbNormalGUV: 0
+ - _RgbNormalRScale: 0
+ - _RgbNormalRUV: 0
+ - _RgbNormalsEnabled: 0
+ - _RimBrighten: 0
+ - _RimBrightenAnimated: 0
+ - _RimEnviroBlur: 0.7
+ - _RimEnviroBlurAnimated: 0
+ - _RimEnviroIntensity: 1
+ - _RimEnviroIntensityAnimated: 0
+ - _RimEnviroMaskAnimated: 0
+ - _RimEnviroMaskPanAnimated: 0
+ - _RimEnviroMaskUV: 0
+ - _RimEnviroMaskUVAnimated: 0
+ - _RimEnviroMinBrightness: 0
+ - _RimEnviroMinBrightnessAnimated: 0
+ - _RimEnviroSharpness: 0
+ - _RimEnviroSharpnessAnimated: 0
+ - _RimEnviroWidth: 0.45
+ - _RimEnviroWidthAnimated: 0
+ - _RimLightColorAnimated: 0
+ - _RimLightColorBias: 0
+ - _RimLightColorBiasAnimated: 0
+ - _RimLightNormal: 1
+ - _RimLightNormalAnimated: 0
+ - _RimLightingInvert: 0
+ - _RimLightingInvertAnimated: 0
+ - _RimMaskAnimated: 0
+ - _RimMaskPanAnimated: 0
+ - _RimMaskUV: 0
+ - _RimMaskUVAnimated: 0
+ - _RimSharpness: 0.25
+ - _RimSharpnessAnimated: 0
+ - _RimStrength: 0
+ - _RimStrengthAnimated: 0
+ - _RimTexAnimated: 0
+ - _RimTexPanAnimated: 0
+ - _RimTexUV: 0
+ - _RimTexUVAnimated: 0
+ - _RimWidth: 0.8
+ - _RimWidthAnimated: 0
+ - _RimWidthNoiseStrength: 0.1
+ - _RimWidthNoiseStrengthAnimated: 0
+ - _RimWidthNoiseTextureAnimated: 0
+ - _RimWidthNoiseTexturePanAnimated: 0
+ - _RimWidthNoiseTextureUV: 0
+ - _RimWidthNoiseTextureUVAnimated: 0
+ - _SSSColorAnimated: 0
+ - _SSSDistortion: 1
+ - _SSSDistortionAnimated: 0
+ - _SSSPower: 5
+ - _SSSPowerAnimated: 0
+ - _SSSSCale: 0.25
+ - _SSSSCaleAnimated: 0
+ - _SSSThicknessMapAnimated: 0
+ - _SSSThicknessMapPanAnimated: 0
+ - _SSSThicknessMapUV: 0
+ - _SSSThicknessMapUVAnimated: 0
+ - _SSSThicknessMod: 0
+ - _SSSThicknessModAnimated: 0
+ - _SampleWorld: 0
+ - _SampleWorldAnimated: 0
+ - _Saturation: 0
+ - _SaturationAnimated: 0
+ - _ScrollingEmission: 0
+ - _ScrollingEmission1: 0
+ - _ScrollingEmission1Animated: 0
+ - _ScrollingEmissionAnimated: 0
+ - _ShaderOptimizerEnabled: 1
+ - _ShadowMix: 0
+ - _ShadowMixAnimated: 0
+ - _ShadowMixThreshold: 0.5
+ - _ShadowMixThresholdAnimated: 0
+ - _ShadowMixWidthMod: 0.5
+ - _ShadowMixWidthModAnimated: 0
+ - _ShadowOffset: 0
+ - _ShadowOffsetAnimated: 0
+ - _ShadowStrength: 1
+ - _ShadowStrengthAnimated: 0
+ - _Smoothness: 0
+ - _SmoothnessAnimated: 0
+ - _SmoothnessFrom: 1
+ - _SmoothnessFrom1: 1
+ - _SmoothnessFrom1Animated: 0
+ - _SmoothnessFromAnimated: 0
+ - _SmoothnessMaskAnimated: 0
+ - _SmoothnessMaskPanAnimated: 0
+ - _SmoothnessMaskUV: 0
+ - _SmoothnessMaskUVAnimated: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpawnInAlphaAnimated: 0
+ - _SpawnInEmissionColorAnimated: 0
+ - _SpawnInEmissionOffsetAnimated: 0
+ - _SpawnInGradientFinishAnimated: 0
+ - _SpawnInGradientStartAnimated: 0
+ - _SpawnInNoiseAnimated: 0
+ - _SpawnInNoiseIntensityAnimated: 0
+ - _SpawnInVertOffsetAnimated: 0
+ - _SpawnInVertOffsetOffsetAnimated: 0
+ - _Spec1Offset: 0
+ - _Spec1Offset1: 0
+ - _Spec1Offset1Animated: 0
+ - _Spec1OffsetAnimated: 0
+ - _Spec2Smoothness: 0
+ - _Spec2Smoothness1: 0
+ - _Spec2Smoothness1Animated: 0
+ - _Spec2SmoothnessAnimated: 0
+ - _SpecWhatTangent: 0
+ - _SpecWhatTangent1: 0
+ - _SpecWhatTangent1Animated: 0
+ - _SpecWhatTangentAnimated: 0
+ - _SpecularAnisoJitterMacro1Animated: 0
+ - _SpecularAnisoJitterMacro1PanAnimated: 0
+ - _SpecularAnisoJitterMacro1UV: 0
+ - _SpecularAnisoJitterMacro1UVAnimated: 0
+ - _SpecularAnisoJitterMacroAnimated: 0
+ - _SpecularAnisoJitterMacroMultiplier: 0
+ - _SpecularAnisoJitterMacroMultiplier1: 0
+ - _SpecularAnisoJitterMacroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMacroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMacroPanAnimated: 0
+ - _SpecularAnisoJitterMacroUV: 0
+ - _SpecularAnisoJitterMacroUVAnimated: 0
+ - _SpecularAnisoJitterMicro1Animated: 0
+ - _SpecularAnisoJitterMicro1PanAnimated: 0
+ - _SpecularAnisoJitterMicro1UV: 0
+ - _SpecularAnisoJitterMicro1UVAnimated: 0
+ - _SpecularAnisoJitterMicroAnimated: 0
+ - _SpecularAnisoJitterMicroMultiplier: 0
+ - _SpecularAnisoJitterMicroMultiplier1: 0
+ - _SpecularAnisoJitterMicroMultiplier1Animated: 0
+ - _SpecularAnisoJitterMicroMultiplierAnimated: 0
+ - _SpecularAnisoJitterMicroPanAnimated: 0
+ - _SpecularAnisoJitterMicroUV: 0
+ - _SpecularAnisoJitterMicroUVAnimated: 0
+ - _SpecularAnisoJitterMirrored: 0
+ - _SpecularAnisoJitterMirrored1: 0
+ - _SpecularAnisoJitterMirrored1Animated: 0
+ - _SpecularAnisoJitterMirroredAnimated: 0
+ - _SpecularHighlights: 1
+ - _SpecularInvertSmoothness: 0
+ - _SpecularInvertSmoothness1: 0
+ - _SpecularInvertSmoothness1Animated: 0
+ - _SpecularInvertSmoothnessAnimated: 0
+ - _SpecularMap1Animated: 0
+ - _SpecularMap1PanAnimated: 0
+ - _SpecularMap1UV: 0
+ - _SpecularMap1UVAnimated: 0
+ - _SpecularMapAnimated: 0
+ - _SpecularMapPanAnimated: 0
+ - _SpecularMapUV: 0
+ - _SpecularMapUVAnimated: 0
+ - _SpecularMask1Animated: 0
+ - _SpecularMask1PanAnimated: 0
+ - _SpecularMask1UV: 0
+ - _SpecularMask1UVAnimated: 0
+ - _SpecularMaskAnimated: 0
+ - _SpecularMaskPanAnimated: 0
+ - _SpecularMaskUV: 0
+ - _SpecularMaskUVAnimated: 0
+ - _SpecularMetallic: 0
+ - _SpecularMetallic1: 0
+ - _SpecularMetallic1Animated: 0
+ - _SpecularMetallicAnimated: 0
+ - _SpecularMetallicMap1UV: 0
+ - _SpecularMetallicMapUV: 0
+ - _SpecularNormal: 1
+ - _SpecularNormal1: 1
+ - _SpecularNormal1Animated: 0
+ - _SpecularNormalAnimated: 0
+ - _SpecularSmoothness: 1
+ - _SpecularSmoothness1: 0.75
+ - _SpecularSmoothness1Animated: 0
+ - _SpecularSmoothnessAnimated: 0
+ - _SpecularTint1Animated: 0
+ - _SpecularTintAnimated: 0
+ - _SpecularToonEnd: 1
+ - _SpecularToonEnd1: 1
+ - _SpecularToonEnd1Animated: 0
+ - _SpecularToonEndAnimated: 0
+ - _SpecularToonInnerOuter1Animated: 0
+ - _SpecularToonInnerOuterAnimated: 0
+ - _SpecularToonStart: 0.95
+ - _SpecularToonStart1: 0.95
+ - _SpecularToonStart1Animated: 0
+ - _SpecularToonStartAnimated: 0
+ - _SpecularType: 1
+ - _SpecularType1: 1
+ - _SpecularType1Animated: 0
+ - _SpecularTypeAnimated: 0
+ - _SrcBlend: 1
+ - _SrcBlendAnimated: 0
+ - _StencilCompareFunction: 8
+ - _StencilCompareFunctionAnimated: 0
+ - _StencilFailOp: 0
+ - _StencilFailOpAnimated: 0
+ - _StencilPassOp: 0
+ - _StencilPassOpAnimated: 0
+ - _StencilReadMask: 255
+ - _StencilReadMaskAnimated: 0
+ - _StencilRef: 0
+ - _StencilRefAnimated: 0
+ - _StencilWriteMask: 255
+ - _StencilWriteMaskAnimated: 0
+ - _StencilZFailOp: 0
+ - _StencilZFailOpAnimated: 0
+ - _TextEnabled: 0
+ - _TextEnabledAnimated: 0
+ - _TextFPSColorAnimated: 0
+ - _TextFPSEmissionStrength: 0
+ - _TextFPSEmissionStrengthAnimated: 0
+ - _TextFPSEnabled: 0
+ - _TextFPSEnabledAnimated: 0
+ - _TextFPSOffsetAnimated: 0
+ - _TextFPSPaddingAnimated: 0
+ - _TextFPSRotation: 0
+ - _TextFPSRotationAnimated: 0
+ - _TextFPSScaleAnimated: 0
+ - _TextFPSUV: 0
+ - _TextFPSUVAnimated: 0
+ - _TextGlyphsAnimated: 0
+ - _TextPixelRange: 4
+ - _TextPixelRangeAnimated: 0
+ - _TextPositionColorAnimated: 0
+ - _TextPositionEmissionStrength: 0
+ - _TextPositionEmissionStrengthAnimated: 0
+ - _TextPositionEnabled: 0
+ - _TextPositionEnabledAnimated: 0
+ - _TextPositionOffsetAnimated: 0
+ - _TextPositionPaddingAnimated: 0
+ - _TextPositionRotation: 0
+ - _TextPositionRotationAnimated: 0
+ - _TextPositionScaleAnimated: 0
+ - _TextPositionUV: 0
+ - _TextPositionUVAnimated: 0
+ - _TextTimeColorAnimated: 0
+ - _TextTimeEmissionStrength: 0
+ - _TextTimeEmissionStrengthAnimated: 0
+ - _TextTimeEnabled: 0
+ - _TextTimeEnabledAnimated: 0
+ - _TextTimeOffsetAnimated: 0
+ - _TextTimePaddingAnimated: 0
+ - _TextTimeRotation: 0
+ - _TextTimeRotationAnimated: 0
+ - _TextTimeScaleAnimated: 0
+ - _TextTimeUV: 0
+ - _TextTimeUVAnimated: 0
+ - _ToonRampAnimated: 0
+ - _UVSec: 0
+ - _UseShadowTexture: 0
+ - _UseShadowTextureAnimated: 0
+ - _VertexGlitchFrequencyAnimated: 0
+ - _VertexGlitchStrengthAnimated: 0
+ - _VertexGlitchThresholdAnimated: 0
+ - _VertexManipulationHeight: 0
+ - _VertexManipulationHeightAnimated: 0
+ - _VertexManipulationHeightBias: 0
+ - _VertexManipulationHeightBiasAnimated: 0
+ - _VertexManipulationHeightMaskAnimated: 0
+ - _VertexManipulationHeightPanAnimated: 0
+ - _VertexManipulationHeightUV: 0
+ - _VertexManipulationHeightUVAnimated: 0
+ - _VertexManipulationLocalRotationAnimated: 0
+ - _VertexManipulationLocalScaleAnimated: 0
+ - _VertexManipulationLocalTranslationAnimated: 0
+ - _VertexManipulationWorldTranslationAnimated: 0
+ - _VertexManipulationsEnabled: 0
+ - _VertexRoundingDivision: 500
+ - _VertexRoundingDivisionAnimated: 0
+ - _VertexRoundingEnabled: 0
+ - _VertexRoundingEnabledAnimated: 0
+ - _VertexUnwrap: 0
+ - _VertexUnwrapAnimated: 0
+ - _VideoBacklightAnimated: 0
+ - _VideoCRTPixelEnergizedTimeAnimated: 0
+ - _VideoCRTRefreshRateAnimated: 0
+ - _VideoContrastAnimated: 0
+ - _VideoDebugTextureAnimated: 0
+ - _VideoEnableDebugAnimated: 0
+ - _VideoEnableVideoPlayerAnimated: 0
+ - _VideoGameboyRampAnimated: 0
+ - _VideoMaskPanningAnimated: 0
+ - _VideoMaskTextureAnimated: 0
+ - _VideoOffsetAnimated: 0
+ - _VideoPanningAnimated: 0
+ - _VideoPixelTextureAnimated: 0
+ - _VideoPixelateToResolutionAnimated: 0
+ - _VideoRepeatVideoTextureAnimated: 0
+ - _VideoResolutionAnimated: 0
+ - _VideoSaturationAnimated: 0
+ - _VideoTilingAnimated: 0
+ - _VideoTypeAnimated: 0
+ - _VideoUVNumberAnimated: 0
+ - _VoronoiBlendAnimated: 0
+ - _VoronoiColor0Animated: 0
+ - _VoronoiColor1Animated: 0
+ - _VoronoiEffectsMaterialAlphaAnimated: 0
+ - _VoronoiEmission0Animated: 0
+ - _VoronoiEmission1Animated: 0
+ - _VoronoiEnableRandomCellColorAnimated: 0
+ - _VoronoiGradientAnimated: 0
+ - _VoronoiMaskAnimated: 0
+ - _VoronoiMaskPanAnimated: 0
+ - _VoronoiMaskUVAnimated: 0
+ - _VoronoiNoiseAnimated: 0
+ - _VoronoiNoiseIntensityAnimated: 0
+ - _VoronoiNoisePanAnimated: 0
+ - _VoronoiNoiseUVAnimated: 0
+ - _VoronoiRandomMinMaxBrightnessAnimated: 0
+ - _VoronoiRandomMinMaxSaturationAnimated: 0
+ - _VoronoiScaleAnimated: 0
+ - _VoronoiSpaceAnimated: 0
+ - _VoronoiSpeedAnimated: 0
+ - _VoronoiTypeAnimated: 0
+ - _ZTest: 4
+ - _ZTestAnimated: 0
+ - _ZWrite: 1
+ - _ZWriteAnimated: 0
+ - _commentIfZero_EnableOutlinePass: 0
+ - _commentIfZero_LightingAdditiveEnable: 1
+ - _commentIfZero_LightingAdditiveEnableAnimated: 0
+ - _glitterFrequencyLinearEmissive: 20
+ - _glitterFrequencyLinearEmissiveAnimated: 0
+ - footer_discord: 0
+ - footer_github: 0
+ - footer_patreon: 0
+ - footer_twitter: 0
+ - footer_youtube: 0
+ - m_LockingInfo: 0
+ - m_ParallaxMap: 0
+ - m_Special_Effects: 0
+ - m_end_Alpha: 0
+ - m_end_BonusSliders: 0
+ - m_end_CenterOutEmission: 0
+ - m_end_CenterOutEmission1: 0
+ - m_end_DecalSection: 0
+ - m_end_DetailOptions: 0
+ - m_end_Lighting: 0
+ - m_end_MainHueShift: 0
+ - m_end_MainVertexColors: 0
+ - m_end_Matcap2: 0
+ - m_end_Metallic: 0
+ - m_end_OutlineStencil: 0
+ - m_end_RGBMask: 0
+ - m_end_ShadowMix: 0
+ - m_end_StencilPassOptions: 0
+ - m_end_Text: 0
+ - m_end_TextFPS: 0
+ - m_end_TextInstanceTime: 0
+ - m_end_TextPosition: 0
+ - m_end_ambientOcclusion: 0
+ - m_end_angularFade: 0
+ - m_end_backFace: 0
+ - m_end_bakedLighting: 0
+ - m_end_blending: 0
+ - m_end_blinkingEmissionOptions: 0
+ - m_end_blinkingEmissionOptions1: 0
+ - m_end_clearCoat: 0
+ - m_end_debugOptions: 0
+ - m_end_detailShadows: 0
+ - m_end_dissolve: 0
+ - m_end_dissolveMasking: 0
+ - m_end_distanceFade: 0
+ - m_end_distortionFlow: 0
+ - m_end_emission1Options: 0
+ - m_end_emissionOptions: 0
+ - m_end_flipBook: 0
+ - m_end_glitter: 0
+ - m_end_glitterRandom: 0
+ - m_end_glowInDarkEmissionOptions: 0
+ - m_end_glowInDarkEmissionOptions1: 0
+ - m_end_lightingAdvanced: 0
+ - m_end_lightingHSL: 0
+ - m_end_lightingModifiers: 0
+ - m_end_manualFlipbookControl: 0
+ - m_end_matcap: 0
+ - m_end_mirrorOptions: 0
+ - m_end_outlineAdvanced: 0
+ - m_end_panosphereOptions: 0
+ - m_end_parallaxAdvanced: 0
+ - m_end_parallaxHeightmap: 0
+ - m_end_parallaxInternal: 0
+ - m_end_pointToPoint: 0
+ - m_end_reflectionRim: 0
+ - m_end_rimLightOptions: 0
+ - m_end_rimWidthNoise: 0
+ - m_end_scrollingEmission1Options: 0
+ - m_end_scrollingEmissionOptions: 0
+ - m_end_shadowTexture: 0
+ - m_end_specular: 0
+ - m_end_specular1: 0
+ - m_end_subsurface: 0
+ - m_end_vertexManipulation: 0
+ - m_lightingOptions: 0
+ - m_mainOptions: 0
+ - m_outlineOptions: 0
+ - m_renderingOptions: 0
+ - m_start_Alpha: 0
+ - m_start_BonusSliders: 0
+ - m_start_CenterOutEmission: 0
+ - m_start_CenterOutEmission1: 0
+ - m_start_DecalSection: 0
+ - m_start_DetailOptions: 0
+ - m_start_Lighting: 0
+ - m_start_MainHueShift: 0
+ - m_start_MainVertexColors: 0
+ - m_start_Matcap2: 0
+ - m_start_Metallic: 0
+ - m_start_OutlineStencil: 0
+ - m_start_RGBMask: 0
+ - m_start_ShadowMix: 0
+ - m_start_StencilPassOptions: 0
+ - m_start_Text: 0
+ - m_start_TextFPS: 0
+ - m_start_TextInstanceTime: 0
+ - m_start_TextPosition: 0
+ - m_start_ambientOcclusion: 0
+ - m_start_angularFade: 0
+ - m_start_backFace: 0
+ - m_start_bakedLighting: 0
+ - m_start_blending: 0
+ - m_start_blinkingEmissionOptions: 0
+ - m_start_blinkingEmissionOptions1: 0
+ - m_start_clearCoat: 0
+ - m_start_debugOptions: 0
+ - m_start_detailShadows: 0
+ - m_start_dissolve: 0
+ - m_start_dissolveMasking: 0
+ - m_start_distanceFade: 0
+ - m_start_distortionFlow: 0
+ - m_start_emission1Options: 0
+ - m_start_emissionOptions: 0
+ - m_start_flipBook: 0
+ - m_start_glitter: 0
+ - m_start_glitterRandom: 0
+ - m_start_glowInDarkEmissionOptions: 0
+ - m_start_glowInDarkEmissionOptions1: 0
+ - m_start_lightingAdvanced: 0
+ - m_start_lightingHSL: 0
+ - m_start_lightingModifiers: 0
+ - m_start_manualFlipbookControl: 0
+ - m_start_matcap: 0
+ - m_start_mirrorOptions: 0
+ - m_start_outlineAdvanced: 0
+ - m_start_panosphereOptions: 0
+ - m_start_parallaxAdvanced: 0
+ - m_start_parallaxHeightmap: 0
+ - m_start_parallaxInternal: 0
+ - m_start_pointToPoint: 0
+ - m_start_reflectionRim: 0
+ - m_start_rimLightOptions: 0
+ - m_start_rimWidthNoise: 0
+ - m_start_scrollingEmissionOptions: 0
+ - m_start_scrollingEmissionOptions1: 0
+ - m_start_shadowTexture: 0
+ - m_start_specular: 0
+ - m_start_specular1: 0
+ - m_start_subsurface: 0
+ - m_start_vertexManipulation: 0
+ - shader_is_using_thry_editor: 0
+ - shader_master_label: 0
+ - shader_presets: 0
+ - shader_properties_label_file: 0
+ m_Colors:
+ - _AlphaMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _AngleForwardDirection: {r: 0, g: 0, b: 1, a: 0}
+ - _AnisoTangentMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _AnisoTangentMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _BackFaceColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BackFacePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _BlueColor: {r: 1, g: 1, b: 1, a: 1}
+ - _BumpMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatSmoothnessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ClearCoatTint: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DecalMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DecalPosition: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DecalScale: {r: 1, g: 1, b: 0, a: 0}
+ - _DecalTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailNormalMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DetailTint: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveDetailNoisePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveEdgeColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveEndPoint: {r: 0, g: 1, b: 0, a: 0}
+ - _DissolveMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DissolveStartPoint: {r: 0, g: -1, b: 0, a: 0}
+ - _DissolveTextureColor: {r: 1, g: 1, b: 1, a: 1}
+ - _DissolveToTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _DistortionSpeed: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _DistortionSpeed1: {r: 0.5, g: 0.5, b: 0, a: 0}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionColor1: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissionMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _EmissiveScroll_Direction: {r: 0, g: -10, b: 0, a: 0}
+ - _EmissiveScroll_Direction1: {r: 0, g: -10, b: 0, a: 0}
+ - _FlipbookColor: {r: 1, g: 1, b: 1, a: 1}
+ - _FlipbookMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _FlipbookScaleOffset: {r: 1, g: 1, b: 0, a: 0}
+ - _FlipbookTexArrayPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterColor: {r: 1, g: 1, b: 1, a: 1}
+ - _GlitterColorMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterMinMaxBrightness: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSaturation: {r: 0.8, g: 1, b: 0, a: 1}
+ - _GlitterMinMaxSize: {r: 0.1, g: 0.5, b: 0, a: 1}
+ - _GlitterPan: {r: 0, g: 0, b: 0, a: 0}
+ - _GlitterTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _GreenColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingAOTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingDetailShadowsPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowColor: {r: 1, g: 1, b: 1, a: 1}
+ - _LightingShadowMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _LightingShadowTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _LineColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MainDistanceFade: {r: 0, g: 0, b: 0, a: 0}
+ - _MainFadeTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainHueShiftMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MainTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _Matcap2Color: {r: 1, g: 1, b: 1, a: 1}
+ - _Matcap2MaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MatcapColor: {r: 1, g: 1, b: 1, a: 1}
+ - _MatcapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetalReflectionTint: {r: 1, g: 1, b: 1, a: 1}
+ - _MetallicMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MetallicTintMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _MirrorTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineDropShadowOffset: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineFadeDistance: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlineMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _OutlinePersonaDirection: {r: 1, g: 0, b: 0, a: 0}
+ - _OutlineTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanoMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _PanosphereColor: {r: 1, g: 1, b: 1, a: 1}
+ - _PanospherePan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxHeightMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMapMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalMaxColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalMinColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ParallaxInternalPanDepthSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _ParallaxInternalPanSpeed: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBBluePanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBGreenPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBMaskPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RGBRedPanning: {r: 0, g: 0, b: 0, a: 0}
+ - _RedColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RgbNormalBPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalGPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RgbNormalRPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimEnviroMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimLightColor: {r: 1, g: 1, b: 1, a: 1}
+ - _RimMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimTexPan: {r: 0, g: 0, b: 0, a: 0}
+ - _RimWidthNoiseTexturePan: {r: 0, g: 0, b: 0, a: 0}
+ - _SSSColor: {r: 1, g: 0, b: 0, a: 1}
+ - _SSSThicknessMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SmoothnessMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMacroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicro1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularAnisoJitterMicroPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMask1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMaskPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMap1Pan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularMetallicMapPan: {r: 0, g: 0, b: 0, a: 0}
+ - _SpecularTint: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularTint1: {r: 1, g: 1, b: 1, a: 1}
+ - _SpecularToonInnerOuter: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _SpecularToonInnerOuter1: {r: 0.25, g: 0.3, b: 0, a: 1}
+ - _TextFPSColor: {r: 1, g: 1, b: 1, a: 1}
+ - _TextFPSOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextFPSScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextPositionColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextPositionOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionPadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextPositionScale: {r: 1, g: 1, b: 1, a: 1}
+ - _TextTimeColor: {r: 1, g: 0, b: 1, a: 1}
+ - _TextTimeOffset: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimePadding: {r: 0, g: 0, b: 0, a: 0}
+ - _TextTimeScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationHeightPan: {r: 0, g: 0, b: 0, a: 0}
+ - _VertexManipulationLocalRotation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationLocalScale: {r: 1, g: 1, b: 1, a: 1}
+ - _VertexManipulationLocalTranslation: {r: 0, g: 0, b: 0, a: 1}
+ - _VertexManipulationWorldTranslation: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.mat.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.mat.meta
new file mode 100644
index 00000000..fa2957c2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 37cc35601c8d9cd44a1adc3cb8885558
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.png b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.png
new file mode 100644
index 00000000..969f84de
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.png
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.png.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.png.meta
new file mode 100644
index 00000000..8f6ad5d1
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Materials/yan.png.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: f1de42565511cc24e87855920723ceca
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 1
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Menu.asset b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Menu.asset
new file mode 100644
index 00000000..f052defc
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Menu.asset
@@ -0,0 +1,45 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: -340790334, guid: 67cc4cb7839cd3741b63733d5adf0442, type: 3}
+ m_Name: Menu
+ m_EditorClassIdentifier:
+ controls:
+ - name: Emote
+ icon: {fileID: 2800000, guid: 9a20b3a6641e1af4e95e058f361790cb, type: 3}
+ type: 103
+ parameter:
+ name:
+ value: 1
+ style: 0
+ subMenu: {fileID: 11400000, guid: 7c48bf1ef52f085418c20a6e9e42e9cc, type: 2}
+ subParameters: []
+ labels: []
+ - name: Emote 2
+ icon: {fileID: 2800000, guid: 9a20b3a6641e1af4e95e058f361790cb, type: 3}
+ type: 103
+ parameter:
+ name:
+ value: 1
+ style: 0
+ subMenu: {fileID: 11400000, guid: 769fc7258a336cf47998263c665073e7, type: 2}
+ subParameters: []
+ labels: []
+ - name: NSFW
+ icon: {fileID: 2800000, guid: c7eb75c3f43db408e8ec892032db4937, type: 3}
+ type: 103
+ parameter:
+ name:
+ value: 1
+ style: 0
+ subMenu: {fileID: 11400000, guid: 2b88a1caa72b838428daa2646e670584, type: 2}
+ subParameters: []
+ labels: []
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Menu.asset.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Menu.asset.meta
new file mode 100644
index 00000000..7a5782e2
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Menu.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2f9f04f4058998f4981cb4f428f48eaa
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/NSFW 1.asset b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/NSFW 1.asset
new file mode 100644
index 00000000..880bfe13
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/NSFW 1.asset
@@ -0,0 +1,36 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: -340790334, guid: 67cc4cb7839cd3741b63733d5adf0442, type: 3}
+ m_Name: NSFW 1
+ m_EditorClassIdentifier:
+ controls:
+ - name: Toggle NSFW
+ icon: {fileID: 0}
+ type: 102
+ parameter:
+ name: Dick
+ value: 1
+ style: 0
+ subMenu: {fileID: 0}
+ subParameters: []
+ labels: []
+ - name: Dick Size
+ icon: {fileID: 0}
+ type: 203
+ parameter:
+ name:
+ value: 1
+ style: 0
+ subMenu: {fileID: 0}
+ subParameters:
+ - name: DickSize
+ labels: []
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/NSFW 1.asset.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/NSFW 1.asset.meta
new file mode 100644
index 00000000..04275bfa
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/NSFW 1.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2b88a1caa72b838428daa2646e670584
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Paramaters.asset b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Paramaters.asset
new file mode 100644
index 00000000..65a436b5
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Paramaters.asset
@@ -0,0 +1,35 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: -1506855854, guid: 67cc4cb7839cd3741b63733d5adf0442, type: 3}
+ m_Name: Paramaters
+ m_EditorClassIdentifier:
+ parameters:
+ - name: VRCEmote
+ valueType: 0
+ saved: 1
+ defaultValue: 0
+ - name: VRCFaceBlendH
+ valueType: 1
+ saved: 1
+ defaultValue: 0
+ - name: VRCFaceBlendV
+ valueType: 1
+ saved: 1
+ defaultValue: 0
+ - name: Dick
+ valueType: 2
+ saved: 0
+ defaultValue: 0
+ - name: DickSize
+ valueType: 1
+ saved: 0
+ defaultValue: 0
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Paramaters.asset.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Paramaters.asset.meta
new file mode 100644
index 00000000..01b73cbb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/Paramaters.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 095186deb7310864d8cb8c8594cb7917
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu (1) 1.controller b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu (1) 1.controller
new file mode 100644
index 00000000..9ee65d05
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu (1) 1.controller
@@ -0,0 +1,159 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!91 &9100000
+AnimatorController:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: changyu (1) 1
+ serializedVersion: 5
+ m_AnimatorParameters: []
+ m_AnimatorLayers:
+ - serializedVersion: 5
+ m_Name: Base Layer
+ m_StateMachine: {fileID: 1107627010733357906}
+ m_Mask: {fileID: 0}
+ m_Motions: []
+ m_Behaviours: []
+ m_BlendingMode: 0
+ m_SyncedLayerIndex: -1
+ m_DefaultWeight: 0
+ m_IKPass: 0
+ m_SyncedLayerAffectsTiming: 0
+ m_Controller: {fileID: 9100000}
+--- !u!1102 &1102029114577097560
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: no dick
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 79ac91e6065cbfe43a4d5e2241e9110f, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102222527588016622
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: dick
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 86793e96c24dec34abf97a4076e856df, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102702201449778082
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: dick normal
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 6bbe0f31a6828644eba32332a799363a, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1102 &1102910586760341410
+AnimatorState:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: dick big
+ m_Speed: 1
+ m_CycleOffset: 0
+ m_Transitions: []
+ m_StateMachineBehaviours: []
+ m_Position: {x: 50, y: 50, z: 0}
+ m_IKOnFeet: 0
+ m_WriteDefaultValues: 1
+ m_Mirror: 0
+ m_SpeedParameterActive: 0
+ m_MirrorParameterActive: 0
+ m_CycleOffsetParameterActive: 0
+ m_TimeParameterActive: 0
+ m_Motion: {fileID: 7400000, guid: 333ea48bbe327954ba27310a3258c065, type: 2}
+ m_Tag:
+ m_SpeedParameter:
+ m_MirrorParameter:
+ m_CycleOffsetParameter:
+ m_TimeParameter:
+--- !u!1107 &1107627010733357906
+AnimatorStateMachine:
+ serializedVersion: 5
+ m_ObjectHideFlags: 1
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Base Layer
+ m_ChildStates:
+ - serializedVersion: 1
+ m_State: {fileID: 1102222527588016622}
+ m_Position: {x: 200, y: 0, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102029114577097560}
+ m_Position: {x: 235, y: 65, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102702201449778082}
+ m_Position: {x: 270, y: 130, z: 0}
+ - serializedVersion: 1
+ m_State: {fileID: 1102910586760341410}
+ m_Position: {x: 305, y: 195, z: 0}
+ m_ChildStateMachines: []
+ m_AnyStateTransitions: []
+ m_EntryTransitions: []
+ m_StateMachineTransitions: {}
+ m_StateMachineBehaviours: []
+ m_AnyStatePosition: {x: 50, y: 20, z: 0}
+ m_EntryPosition: {x: 50, y: 120, z: 0}
+ m_ExitPosition: {x: 800, y: 120, z: 0}
+ m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
+ m_DefaultState: {fileID: 1102222527588016622}
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu (1) 1.controller.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu (1) 1.controller.meta
new file mode 100644
index 00000000..e35acacd
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu (1) 1.controller.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e319bb95df790a246ad4920c0727cfa9
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 9100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu.fbx b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu.fbx
new file mode 100644
index 00000000..5b03c5e7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu.fbx
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu.fbx.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu.fbx.meta
new file mode 100644
index 00000000..7ff8d4d6
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/changyu.fbx.meta
@@ -0,0 +1,1261 @@
+fileFormatVersion: 2
+guid: 80c52a61b5a76dc4abc4d6726fd7e2ed
+ModelImporter:
+ serializedVersion: 23
+ fileIDToRecycleName:
+ 100000: Armature
+ 100002: Body
+ 100004: Bone007
+ 100006: Bone008
+ 100008: Bone009
+ 100010: Bone010
+ 100012: Bone011
+ 100014: Bone012
+ 100016: Bone013
+ 100018: Bone014
+ 100020: Bone016
+ 100022: Bone017
+ 100024: Bone018
+ 100026: Bone036
+ 100028: Bone040
+ 100030: Bone044
+ 100032: Bone048
+ 100034: Bone054
+ 100036: Bone057
+ 100038: Bone058
+ 100040: Bone059
+ 100042: Bone060
+ 100044: Bone063
+ 100046: Bone067
+ 100048: //RootNode
+ 100050: Chest
+ 100052: Eye_L
+ 100054: Eye_R
+ 100056: Hair_0_1
+ 100058: Hair_1_1
+ 100060: Hair_2_1
+ 100062: Hair_3_1
+ 100064: Hair_4_1
+ 100066: Hair_5_1
+ 100068: Hair_6_1
+ 100070: Hair_7_1
+ 100072: Hair_8_1
+ 100074: Head
+ 100076: Hips
+ 100078: IndexFinger1_L
+ 100080: IndexFinger1_R
+ 100082: IndexFinger2_L
+ 100084: IndexFinger2_R
+ 100086: IndexFinger3_L
+ 100088: IndexFinger3_R
+ 100090: Left ankle
+ 100092: Left arm
+ 100094: Left elbow
+ 100096: Left knee
+ 100098: Left leg
+ 100100: Left shoulder
+ 100102: Left toe
+ 100104: Left wrist
+ 100106: LeftEye
+ 100108: LittleFinger1_L
+ 100110: LittleFinger1_R
+ 100112: LittleFinger2_L
+ 100114: LittleFinger2_R
+ 100116: LittleFinger3_L
+ 100118: LittleFinger3_R
+ 100120: MiddleFinger1_L
+ 100122: MiddleFinger1_R
+ 100124: MiddleFinger2_L
+ 100126: MiddleFinger2_R
+ 100128: MiddleFinger3_L
+ 100130: MiddleFinger3_R
+ 100132: Neck
+ 100134: Qian_0_1
+ 100136: Qian_1_1
+ 100138: Qian_2_1
+ 100140: Qian_3_1
+ 100142: Right ankle
+ 100144: Right arm
+ 100146: Right elbow
+ 100148: Right knee
+ 100150: Right leg
+ 100152: Right shoulder
+ 100154: Right toe
+ 100156: Right wrist
+ 100158: RightEye
+ 100160: RingFinger1_L
+ 100162: RingFinger1_R
+ 100164: RingFinger2_L
+ 100166: RingFinger2_R
+ 100168: RingFinger3_L
+ 100170: RingFinger3_R
+ 100172: She
+ 100174: Spine
+ 100176: Thumb0_L
+ 100178: Thumb0_R
+ 100180: Thumb1_L
+ 100182: Thumb1_R
+ 100184: Thumb2_L
+ 100186: Thumb2_R
+ 100188: zArmTwist_L
+ 100190: zArmTwist_R
+ 100192: zHandTwist_L
+ 100194: zHandTwist_R
+ 400000: Armature
+ 400002: Body
+ 400004: Bone007
+ 400006: Bone008
+ 400008: Bone009
+ 400010: Bone010
+ 400012: Bone011
+ 400014: Bone012
+ 400016: Bone013
+ 400018: Bone014
+ 400020: Bone016
+ 400022: Bone017
+ 400024: Bone018
+ 400026: Bone036
+ 400028: Bone040
+ 400030: Bone044
+ 400032: Bone048
+ 400034: Bone054
+ 400036: Bone057
+ 400038: Bone058
+ 400040: Bone059
+ 400042: Bone060
+ 400044: Bone063
+ 400046: Bone067
+ 400048: //RootNode
+ 400050: Chest
+ 400052: Eye_L
+ 400054: Eye_R
+ 400056: Hair_0_1
+ 400058: Hair_1_1
+ 400060: Hair_2_1
+ 400062: Hair_3_1
+ 400064: Hair_4_1
+ 400066: Hair_5_1
+ 400068: Hair_6_1
+ 400070: Hair_7_1
+ 400072: Hair_8_1
+ 400074: Head
+ 400076: Hips
+ 400078: IndexFinger1_L
+ 400080: IndexFinger1_R
+ 400082: IndexFinger2_L
+ 400084: IndexFinger2_R
+ 400086: IndexFinger3_L
+ 400088: IndexFinger3_R
+ 400090: Left ankle
+ 400092: Left arm
+ 400094: Left elbow
+ 400096: Left knee
+ 400098: Left leg
+ 400100: Left shoulder
+ 400102: Left toe
+ 400104: Left wrist
+ 400106: LeftEye
+ 400108: LittleFinger1_L
+ 400110: LittleFinger1_R
+ 400112: LittleFinger2_L
+ 400114: LittleFinger2_R
+ 400116: LittleFinger3_L
+ 400118: LittleFinger3_R
+ 400120: MiddleFinger1_L
+ 400122: MiddleFinger1_R
+ 400124: MiddleFinger2_L
+ 400126: MiddleFinger2_R
+ 400128: MiddleFinger3_L
+ 400130: MiddleFinger3_R
+ 400132: Neck
+ 400134: Qian_0_1
+ 400136: Qian_1_1
+ 400138: Qian_2_1
+ 400140: Qian_3_1
+ 400142: Right ankle
+ 400144: Right arm
+ 400146: Right elbow
+ 400148: Right knee
+ 400150: Right leg
+ 400152: Right shoulder
+ 400154: Right toe
+ 400156: Right wrist
+ 400158: RightEye
+ 400160: RingFinger1_L
+ 400162: RingFinger1_R
+ 400164: RingFinger2_L
+ 400166: RingFinger2_R
+ 400168: RingFinger3_L
+ 400170: RingFinger3_R
+ 400172: She
+ 400174: Spine
+ 400176: Thumb0_L
+ 400178: Thumb0_R
+ 400180: Thumb1_L
+ 400182: Thumb1_R
+ 400184: Thumb2_L
+ 400186: Thumb2_R
+ 400188: zArmTwist_L
+ 400190: zArmTwist_R
+ 400192: zHandTwist_L
+ 400194: zHandTwist_R
+ 2100000: ear
+ 2100002: cheek
+ 2100004: bizi
+ 2100006: bodyx2
+ 2100008: "\u8FAB\u5B50"
+ 2100010: AL niyuanx2
+ 2100012: "\u5708+"
+ 2100014: eye+
+ 2100016: eye++
+ 4300000: Body
+ 9500000: //RootNode
+ 13700000: Body
+ 2186277476908879412: ImportLogs
+ externalObjects:
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: AL niyuanx2
+ second: {fileID: 2100000, guid: bbf11a8ec5676d44bb7d71c38920ddfe, type: 2}
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: bizi
+ second: {fileID: 2100000, guid: 4e3d71837aaf50d42a3022b67e548d2d, type: 2}
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: bodyx2
+ second: {fileID: 2100000, guid: 6f0b4803ca1cad748af07853028a3cb4, type: 2}
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: cheek
+ second: {fileID: 2100000, guid: db195731d333c5140a455a905a438854, type: 2}
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: ear
+ second: {fileID: 2100000, guid: 4e3d71837aaf50d42a3022b67e548d2d, type: 2}
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: eye+
+ second: {fileID: 2100000, guid: 7efb4258a61885848b4389535ee94dde, type: 2}
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: eye++
+ second: {fileID: 2100000, guid: 5958f1f10f790e040bcfc7af19973adc, type: 2}
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: "\u5708+"
+ second: {fileID: 2100000, guid: 37cc35601c8d9cd44a1adc3cb8885558, type: 2}
+ - first:
+ type: UnityEngine:Material
+ assembly: UnityEngine.CoreModule
+ name: "\u8FAB\u5B50"
+ second: {fileID: 2100000, guid: be784eaea5b39b644ae6c262179a70b5, type: 2}
+ materials:
+ importMaterials: 1
+ materialName: 0
+ materialSearch: 1
+ materialLocation: 0
+ animations:
+ legacyGenerateAnimations: 4
+ bakeSimulation: 0
+ resampleCurves: 1
+ optimizeGameObjects: 0
+ motionNodeName:
+ rigImportErrors:
+ rigImportWarnings:
+ animationImportErrors:
+ animationImportWarnings:
+ animationRetargetingWarnings:
+ animationDoRetargetingWarnings: 0
+ importAnimatedCustomProperties: 0
+ importConstraints: 0
+ animationCompression: 3
+ animationRotationError: 0.5
+ animationPositionError: 0.5
+ animationScaleError: 0.5
+ animationWrapMode: 0
+ extraExposedTransformPaths: []
+ extraUserProperties: []
+ clipAnimations: []
+ isReadable: 1
+ meshes:
+ lODScreenPercentages: []
+ globalScale: 1
+ meshCompression: 0
+ addColliders: 0
+ useSRGBMaterialColor: 1
+ importVisibility: 1
+ importBlendShapes: 1
+ importCameras: 1
+ importLights: 1
+ swapUVChannels: 0
+ generateSecondaryUV: 0
+ useFileUnits: 1
+ optimizeMeshForGPU: 1
+ keepQuads: 0
+ weldVertices: 1
+ preserveHierarchy: 0
+ indexFormat: 0
+ secondaryUVAngleDistortion: 8
+ secondaryUVAreaDistortion: 15.000001
+ secondaryUVHardAngle: 88
+ secondaryUVPackMargin: 4
+ useFileScale: 1
+ previousCalculatedGlobalScale: 1
+ hasPreviousCalculatedGlobalScale: 1
+ tangentSpace:
+ normalSmoothAngle: 60
+ normalImportMode: 0
+ tangentImportMode: 3
+ normalCalculationMode: 4
+ legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 1
+ blendShapeNormalImportMode: 1
+ normalSmoothingSource: 0
+ importAnimation: 1
+ copyAvatar: 0
+ humanDescription:
+ serializedVersion: 2
+ human:
+ - boneName: Hips
+ humanName: Hips
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Left leg
+ humanName: LeftUpperLeg
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Right leg
+ humanName: RightUpperLeg
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Left knee
+ humanName: LeftLowerLeg
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Right knee
+ humanName: RightLowerLeg
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Left ankle
+ humanName: LeftFoot
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Right ankle
+ humanName: RightFoot
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Spine
+ humanName: Spine
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Neck
+ humanName: Neck
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Head
+ humanName: Head
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Left shoulder
+ humanName: LeftShoulder
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Right shoulder
+ humanName: RightShoulder
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Left arm
+ humanName: LeftUpperArm
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Right arm
+ humanName: RightUpperArm
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Left elbow
+ humanName: LeftLowerArm
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Right elbow
+ humanName: RightLowerArm
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Left wrist
+ humanName: LeftHand
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Right wrist
+ humanName: RightHand
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Left toe
+ humanName: LeftToes
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Right toe
+ humanName: RightToes
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: LeftEye
+ humanName: LeftEye
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: RightEye
+ humanName: RightEye
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Thumb0_L
+ humanName: Left Thumb Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Thumb1_L
+ humanName: Left Thumb Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Thumb2_L
+ humanName: Left Thumb Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: IndexFinger1_L
+ humanName: Left Index Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: IndexFinger2_L
+ humanName: Left Index Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: IndexFinger3_L
+ humanName: Left Index Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: MiddleFinger1_L
+ humanName: Left Middle Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: MiddleFinger2_L
+ humanName: Left Middle Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: MiddleFinger3_L
+ humanName: Left Middle Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: RingFinger1_L
+ humanName: Left Ring Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: RingFinger2_L
+ humanName: Left Ring Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: RingFinger3_L
+ humanName: Left Ring Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: LittleFinger1_L
+ humanName: Left Little Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: LittleFinger2_L
+ humanName: Left Little Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: LittleFinger3_L
+ humanName: Left Little Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Thumb0_R
+ humanName: Right Thumb Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Thumb1_R
+ humanName: Right Thumb Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Thumb2_R
+ humanName: Right Thumb Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: IndexFinger1_R
+ humanName: Right Index Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: IndexFinger2_R
+ humanName: Right Index Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: IndexFinger3_R
+ humanName: Right Index Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: MiddleFinger1_R
+ humanName: Right Middle Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: MiddleFinger2_R
+ humanName: Right Middle Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: MiddleFinger3_R
+ humanName: Right Middle Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: RingFinger1_R
+ humanName: Right Ring Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: RingFinger2_R
+ humanName: Right Ring Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: RingFinger3_R
+ humanName: Right Ring Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: LittleFinger1_R
+ humanName: Right Little Proximal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: LittleFinger2_R
+ humanName: Right Little Intermediate
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: LittleFinger3_R
+ humanName: Right Little Distal
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ - boneName: Chest
+ humanName: Chest
+ limit:
+ min: {x: 0, y: 0, z: 0}
+ max: {x: 0, y: 0, z: 0}
+ value: {x: 0, y: 0, z: 0}
+ length: 0
+ modified: 0
+ skeleton:
+ - name: changyu(Clone)
+ parentName:
+ position: {x: 0, y: 0, z: 0}
+ rotation: {x: 0, y: 0, z: 0, w: 1}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Armature
+ parentName: changyu(Clone)
+ position: {x: -0, y: 0, z: 0}
+ rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Hips
+ parentName: Armature
+ position: {x: -0, y: -0.29851508, z: 11.635553}
+ rotation: {x: 0.7071068, y: -0, z: -0, w: 0.7071068}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Right leg
+ parentName: Hips
+ position: {x: 0.87891126, y: -0.35103035, z: -0.18684536}
+ rotation: {x: 0.99974495, y: 0.0011090703, z: 0.0011004896, w: -0.022528708}
+ scale: {x: 0.9999997, y: 1.0000004, z: 0.9998304}
+ - name: Right knee
+ parentName: Right leg
+ position: {x: 0.00000000896398, y: 5.061362, z: 0.00000000547152}
+ rotation: {x: 0.012388298, y: -0.001183959, z: 0.0012668752, w: 0.99992174}
+ scale: {x: 1, y: 1.0000011, z: 1.000001}
+ - name: Right ankle
+ parentName: Right knee
+ position: {x: 0.000000006861228, y: 4.616957, z: -0.000000006373739}
+ rotation: {x: -0.42490396, y: 0.056415953, z: -0.06040215, w: 0.9014574}
+ scale: {x: 1, y: 0.9999967, z: 1.000005}
+ - name: Right toe
+ parentName: Right ankle
+ position: {x: -0.000000029802322, y: 1.9820238, z: -0.000000074505806}
+ rotation: {x: -0.0000039521983, y: 0.92555374, z: -0.36951858, w: 0.08250144}
+ scale: {x: 0.9999992, y: 1.000085, z: 0.9999189}
+ - name: Left leg
+ parentName: Hips
+ position: {x: -0.87891126, y: -0.35103035, z: -0.18684536}
+ rotation: {x: 0.99974495, y: -0.0011090703, z: -0.0011004896, w: -0.022528708}
+ scale: {x: 0.9999997, y: 1.0000004, z: 0.9998304}
+ - name: Left knee
+ parentName: Left leg
+ position: {x: -0.00000000896398, y: 5.061362, z: 0.00000000547152}
+ rotation: {x: 0.012388298, y: 0.001183959, z: -0.0012668752, w: 0.99992174}
+ scale: {x: 1, y: 1.0000011, z: 1.000001}
+ - name: Left ankle
+ parentName: Left knee
+ position: {x: -0.000000006861228, y: 4.616957, z: -0.000000006373739}
+ rotation: {x: -0.42490396, y: -0.056415953, z: 0.06040215, w: 0.9014574}
+ scale: {x: 1, y: 0.9999967, z: 1.000005}
+ - name: Left toe
+ parentName: Left ankle
+ position: {x: 0.000000029802322, y: 1.9820238, z: -0.000000074505806}
+ rotation: {x: 0.0000039521983, y: 0.92555374, z: -0.36951858, w: -0.08250144}
+ scale: {x: 0.9999992, y: 1.000085, z: 0.9999189}
+ - name: Spine
+ parentName: Hips
+ position: {x: -0.000001220181, y: 0.712697, z: -0.00024557114}
+ rotation: {x: 0.00000008940697, y: 0.0000006934002, z: 0.00000069340007, w: 1}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Chest
+ parentName: Spine
+ position: {x: 1.3193358e-10, y: 2.4654112, z: -0.00009274575}
+ rotation: {x: -0.14486168, y: 0.00000015928951, z: -0.000000041604444, w: 0.9894519}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Neck
+ parentName: Chest
+ position: {x: 1.1368684e-12, y: 1.7323555, z: -0.0000004321432}
+ rotation: {x: 0.19834319, y: 0.00000003605119, z: 0.00000039829467, w: 0.9801327}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Head
+ parentName: Neck
+ position: {x: 9.80549e-13, y: 0.7288441, z: -0.00000006707344}
+ rotation: {x: -0.05426745, y: -0.0000009712488, z: -0.0000009712484, w: 0.99852645}
+ scale: {x: 1, y: 1.0000001, z: 1.0000001}
+ - name: Bone017
+ parentName: Head
+ position: {x: -0.79341644, y: 0.501215, z: 0.11944655}
+ rotation: {x: 1, y: 0.00000028936114, z: 0.0000013560058, w: 0.00000058114364}
+ scale: {x: 1, y: 0.99999976, z: 0.99999994}
+ - name: Bone018
+ parentName: Bone017
+ position: {x: -0.000000027255908, y: 0.34188035, z: -2.046363e-12}
+ rotation: {x: 0.00003427366, y: -0.005859046, z: 0.005858987, w: 0.9999657}
+ scale: {x: 0.9999998, y: 0.99999994, z: 0.99999964}
+ - name: Bone036
+ parentName: Head
+ position: {x: -0.0000028265695, y: 1.5723705, z: 1.5010337}
+ rotation: {x: 0.999846, y: -0.00000028761377, z: -0.0000002834909, w: -0.017552461}
+ scale: {x: 1, y: 1.0000008, z: 0.99975395}
+ - name: Bone063
+ parentName: Head
+ position: {x: -0.7964586, y: 1.4582405, z: 0.9750388}
+ rotation: {x: 1, y: 4.6185278e-14, z: 0.000000043711264, w: -4.469591e-14}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Bone048
+ parentName: Head
+ position: {x: -0.2390613, y: 2.5760403, z: -0.2672317}
+ rotation: {x: 1, y: 4.6185278e-14, z: 0.000000043711264, w: -4.469591e-14}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Bone067
+ parentName: Head
+ position: {x: 0.1243114, y: 2.750761, z: 0.1255695}
+ rotation: {x: 1, y: -1.0658141e-14, z: -1.1368684e-13, w: 1.0842022e-19}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Bone058
+ parentName: Head
+ position: {x: 0.8823237, y: 1.1200104, z: 0.5693131}
+ rotation: {x: 1, y: 4.6185278e-14, z: 0.000000043711264, w: -4.469591e-14}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Bone059
+ parentName: Bone058
+ position: {x: -0.00000002026998, y: 0.55685997, z: -0.000000058756868}
+ rotation: {x: -4.4696018e-14, y: -0.000000043711378, z: 5.684342e-14, w: 1}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Bone060
+ parentName: Bone059
+ position: {x: 5.5890848e-12, y: 0.6270809, z: -0.00000002980271}
+ rotation: {x: -0, y: -0, z: -1.9537245e-21, w: 1}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Bone054
+ parentName: Head
+ position: {x: 0.1027247, y: 2.420782, z: 0.8955845}
+ rotation: {x: 1, y: 4.6185278e-14, z: 0.000000043711264, w: -4.469591e-14}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Bone057
+ parentName: Bone054
+ position: {x: 8.0351403e-10, y: 0.45995143, z: -0.000000027090898}
+ rotation: {x: -1, y: -7.1054274e-14, z: -0.00000007549788, w: -4.469591e-14}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Bone040
+ parentName: Head
+ position: {x: 0.7358748, y: 1.775032, z: 0.99676603}
+ rotation: {x: 1, y: 4.6185278e-14, z: 0.000000043711264, w: -4.469591e-14}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Bone044
+ parentName: Head
+ position: {x: 0.8084572, y: 2.2306404, z: 0.37410915}
+ rotation: {x: 1, y: 4.6185278e-14, z: 0.000000043711264, w: -4.469591e-14}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Hair_0_1
+ parentName: Head
+ position: {x: 0.000008903689, y: 0.15900232, z: -0.85651594}
+ rotation: {x: 0.9263979, y: -2.8421706e-14, z: 8.526512e-14, w: -0.376546}
+ scale: {x: 1, y: 1.0000001, z: 1.0000001}
+ - name: Hair_1_1
+ parentName: Hair_0_1
+ position: {x: 4.3368087e-19, y: 0.29027212, z: 0.00000035762787}
+ rotation: {x: -0.024854686, y: -1.3913103e-13, z: 2.6903203e-13, w: 0.9996911}
+ scale: {x: 1, y: 1.0000006, z: 1.0000006}
+ - name: Hair_2_1
+ parentName: Hair_1_1
+ position: {x: 5.8004315e-20, y: 0.29406852, z: -0.00000047683716}
+ rotation: {x: -0.030372377, y: 2.0423002e-13, z: -1.15485616e-14, w: 0.9995387}
+ scale: {x: 1, y: 1.0000004, z: 1.0000004}
+ - name: Hair_3_1
+ parentName: Hair_2_1
+ position: {x: 7.283093e-20, y: 0.2981851, z: 0.00000011920929}
+ rotation: {x: -0.03556067, y: -1.0210783e-13, z: -1.3162582e-13, w: 0.9993676}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Hair_4_1
+ parentName: Hair_3_1
+ position: {x: -4.895354e-20, y: 0.303232, z: 0.00000023841858}
+ rotation: {x: -0.04023204, y: -2.7331107e-14, z: 3.902473e-14, w: 0.99919045}
+ scale: {x: 1, y: 1.0000007, z: 1.0000007}
+ - name: Hair_5_1
+ parentName: Hair_4_1
+ position: {x: -1.5172265e-20, y: 0.30993283, z: -0.00000011920929}
+ rotation: {x: -0.044073164, y: -1.2401644e-13, z: -3.802896e-14, w: 0.9990283}
+ scale: {x: 1, y: 1.0000005, z: 1.0000002}
+ - name: Hair_6_1
+ parentName: Hair_5_1
+ position: {x: -7.20205e-20, y: 0.3190468, z: 0.00000011920929}
+ rotation: {x: -0.04680051, y: 1.0472692e-14, z: -3.707376e-14, w: 0.99890435}
+ scale: {x: 1, y: 1.000001, z: 1.0000011}
+ - name: Hair_7_1
+ parentName: Hair_6_1
+ position: {x: -4.0728225e-20, y: 0.33133394, z: 0.00000023841858}
+ rotation: {x: -0.048187118, y: 5.368068e-15, z: 1.2975433e-13, w: 0.9988383}
+ scale: {x: 1, y: 0.99999976, z: 0.99999976}
+ - name: Hair_8_1
+ parentName: Hair_7_1
+ position: {x: -3.714125e-20, y: 0.34749353, z: 0.00000023841858}
+ rotation: {x: -0.048162863, y: -1.2488427e-13, z: -9.434244e-14, w: 0.99883956}
+ scale: {x: 1, y: 1.0000008, z: 1.0000007}
+ - name: Eye_R
+ parentName: Head
+ position: {x: 0.3479888, y: 0.82266426, z: 0.64310235}
+ rotation: {x: 0.07963094, y: 0.70256656, z: 0.70256674, w: -0.08036896}
+ scale: {x: 1.0000005, y: 0.99999994, z: 1.0000002}
+ - name: Eye_L
+ parentName: Head
+ position: {x: -0.3479712, y: 0.82266426, z: 0.6431026}
+ rotation: {x: -0.0796306, y: 0.7025666, z: 0.70256674, w: 0.08036871}
+ scale: {x: 1.0000005, y: 1.0000002, z: 1.0000002}
+ - name: She
+ parentName: Head
+ position: {x: 0.000008903689, y: 0.12376211, z: 1.0018355}
+ rotation: {x: -0, y: 1.1368684e-13, z: -5.5422333e-13, w: 1}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: LeftEye
+ parentName: Head
+ position: {x: -0.36778638, y: 0.8256397, z: 0.6381914}
+ rotation: {x: -0, y: 1.1368684e-13, z: 1.4210855e-14, w: 1}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: RightEye
+ parentName: Head
+ position: {x: 0.36705026, y: 0.8256283, z: 0.6384291}
+ rotation: {x: -0, y: 1.1368684e-13, z: 1.4210855e-14, w: 1}
+ scale: {x: 1, y: 0.99999994, z: 0.99999994}
+ - name: Left shoulder
+ parentName: Chest
+ position: {x: -0.4053199, y: 1.3515273, z: -0.23737827}
+ rotation: {x: 0.49267322, y: -0.4338861, z: -0.5827234, w: -0.47900876}
+ scale: {x: 1.0000001, y: 0.9999997, z: 1.0000002}
+ - name: Left arm
+ parentName: Left shoulder
+ position: {x: 0.00000016391277, y: 1.212919, z: -0.0000009797513}
+ rotation: {x: 0.06369518, y: 0.29660589, z: -0.015476134, w: 0.9527478}
+ scale: {x: 1.0000001, y: 1, z: 1}
+ - name: zArmTwist_L
+ parentName: Left arm
+ position: {x: -0.005075276, y: 1.5847634, z: -0.0063013136}
+ rotation: {x: -0.001988396, y: 0.00026717782, z: 0.0016009808, w: 0.9999968}
+ scale: {x: 1.0000002, y: 1.0000012, z: 1.0000013}
+ - name: Left elbow
+ parentName: Left arm
+ position: {x: 0.00000032782555, y: 2.6415985, z: 0.0000004172325}
+ rotation: {x: -0.020263731, y: 0.0037540793, z: 0.014755674, w: 0.99967873}
+ scale: {x: 1.0000001, y: 1.0000008, z: 1.0000013}
+ - name: zHandTwist_L
+ parentName: Left elbow
+ position: {x: 0.0000014007092, y: 1.58176, z: 0.00000011920929}
+ rotation: {x: -0.00000020302829, y: 0.00000018626449, z: -0.00000022890887,
+ w: 1}
+ scale: {x: 0.99999994, y: 1.0000007, z: 1.0000005}
+ - name: Left wrist
+ parentName: Left elbow
+ position: {x: 0.0000014305115, y: 2.636266, z: -0.00000020861626}
+ rotation: {x: -0.036451682, y: 0.0796145, z: -0.077286445, w: 0.99315643}
+ scale: {x: 1, y: 1.000001, z: 1.0000013}
+ - name: Thumb0_L
+ parentName: Left wrist
+ position: {x: -0.05780448, y: 0.24100487, z: -0.3379342}
+ rotation: {x: -0.36386374, y: 0.25512034, z: 0.1240836, w: 0.8871979}
+ scale: {x: 1, y: 0.9999998, z: 1.0000002}
+ - name: Thumb1_L
+ parentName: Thumb0_L
+ position: {x: -0.0000000048894435, y: 0.2908542, z: 0.00000048289075}
+ rotation: {x: 0.039912988, y: -0.023957634, z: -0.001918606, w: 0.99891406}
+ scale: {x: 1.0000002, y: 1.0000002, z: 1.0000004}
+ - name: Thumb2_L
+ parentName: Thumb1_L
+ position: {x: 0.0000003874302, y: 0.290855, z: -0.000000029802322}
+ rotation: {x: -0.11152108, y: -0.00874803, z: 0.04029923, w: 0.9929061}
+ scale: {x: 0.99999994, y: 1.0000007, z: 1.000001}
+ - name: IndexFinger1_L
+ parentName: Left wrist
+ position: {x: -0.20629728, y: 0.7402564, z: -0.21011893}
+ rotation: {x: 0.011269995, y: -0.031988088, z: 0.03344202, w: 0.998865}
+ scale: {x: 1, y: 0.99999994, z: 0.9999999}
+ - name: IndexFinger2_L
+ parentName: IndexFinger1_L
+ position: {x: 0.00000021606684, y: 0.45383427, z: -0.000000834465}
+ rotation: {x: -0.01889636, y: 0.012314629, z: -0.0010317651, w: 0.99974513}
+ scale: {x: 1.0000001, y: 1.0000006, z: 0.99999976}
+ - name: IndexFinger3_L
+ parentName: IndexFinger2_L
+ position: {x: 0.00000024586916, y: 0.28043875, z: 0.00000022351742}
+ rotation: {x: 0.01995612, y: -0.0029657013, z: -0.011653789, w: 0.9997286}
+ scale: {x: 1.0000004, y: 1.0000004, z: 1.0000005}
+ - name: MiddleFinger1_L
+ parentName: Left wrist
+ position: {x: -0.12921089, y: 0.79153687, z: 0.004202068}
+ rotation: {x: 0.0137497615, y: -0.0033039595, z: -0.0012925327, w: 0.9998992}
+ scale: {x: 1.0000001, y: 1.0000002, z: 0.9999999}
+ - name: MiddleFinger2_L
+ parentName: MiddleFinger1_L
+ position: {x: -0.0000007301569, y: 0.4538477, z: 0.0000005364418}
+ rotation: {x: -0.0016035289, y: -0.02079849, z: 0.029051784, w: 0.99936026}
+ scale: {x: 0.9999998, y: 1.000001, z: 1.0000005}
+ - name: MiddleFinger3_L
+ parentName: MiddleFinger2_L
+ position: {x: -0.0000005364418, y: 0.3111041, z: -0.00000008940697}
+ rotation: {x: 0.00091812736, y: -0.00038010807, z: -0.0002156971, w: 0.9999995}
+ scale: {x: 0.99999994, y: 0.9999992, z: 0.9999999}
+ - name: RingFinger1_L
+ parentName: Left wrist
+ position: {x: 0.039199263, y: 0.7712236, z: 0.15269902}
+ rotation: {x: 0.026963398, y: -0.021239385, z: 0.008416506, w: 0.9993754}
+ scale: {x: 1.0000002, y: 1.0000008, z: 1.0000005}
+ - name: RingFinger2_L
+ parentName: RingFinger1_L
+ position: {x: -0.00000071525574, y: 0.4023064, z: 0.00000017881393}
+ rotation: {x: -0.019523138, y: 0.011595167, z: -0.00085363147, w: 0.9997418}
+ scale: {x: 0.9999998, y: 1.0000004, z: 1.0000006}
+ - name: RingFinger3_L
+ parentName: RingFinger2_L
+ position: {x: -0.0000010430813, y: 0.27955958, z: 0.00000017881393}
+ rotation: {x: 0.0037486977, y: -0.010714984, z: 0.011357125, w: 0.99987113}
+ scale: {x: 1.0000001, y: 1.0000001, z: 1.0000007}
+ - name: LittleFinger1_L
+ parentName: Left wrist
+ position: {x: 0.23300424, y: 0.71099496, z: 0.2591077}
+ rotation: {x: 0.06531037, y: -0.05551056, z: 0.025649639, w: 0.9959896}
+ scale: {x: 1, y: 1.0000002, z: 0.99999976}
+ - name: LittleFinger2_L
+ parentName: LittleFinger1_L
+ position: {x: 0.0000004172325, y: 0.34297717, z: 0.0000010728836}
+ rotation: {x: -0.02937657, y: 0.023708656, z: -0.009606088, w: 0.9992411}
+ scale: {x: 1.0000005, y: 1.0000014, z: 1.0000013}
+ - name: LittleFinger3_L
+ parentName: LittleFinger2_L
+ position: {x: 0.0000014305115, y: 0.26091143, z: -0.00000011920929}
+ rotation: {x: -0.027716655, y: 0.017362336, z: -0.0019655945, w: 0.99946314}
+ scale: {x: 1, y: 1.0000002, z: 1.0000008}
+ - name: Right shoulder
+ parentName: Chest
+ position: {x: 0.4053216, y: 1.3515279, z: -0.23737696}
+ rotation: {x: 0.4926716, y: 0.43388632, z: 0.5827248, w: -0.4790085}
+ scale: {x: 1.0000006, y: 1.0000005, z: 1.0000001}
+ - name: Right arm
+ parentName: Right shoulder
+ position: {x: 0.00000016391277, y: 1.2129196, z: -0.00000055134296}
+ rotation: {x: 0.06369344, y: -0.296606, z: 0.015477181, w: 0.9527478}
+ scale: {x: 1, y: 1.0000002, z: 1.0000001}
+ - name: zArmTwist_R
+ parentName: Right arm
+ position: {x: 0.0050545186, y: 1.5847633, z: -0.006274745}
+ rotation: {x: -0.0019802302, y: -0.00026616454, z: -0.0015938357, w: 0.9999968}
+ scale: {x: 1.0000002, y: 1.0000014, z: 1.0000013}
+ - name: Right elbow
+ parentName: Right arm
+ position: {x: 0.00000047683716, y: 2.641598, z: 0.00000011920929}
+ rotation: {x: -0.02026355, y: -0.003753602, z: -0.014756067, w: 0.99967873}
+ scale: {x: 1.0000004, y: 1.0000005, z: 1.0000006}
+ - name: zHandTwist_R
+ parentName: Right elbow
+ position: {x: 0.00000008940697, y: 1.5817584, z: -0.0000002682209}
+ rotation: {x: -0.00000004656613, y: -0.0000000030267984, z: 0.000000087340595,
+ w: 1}
+ scale: {x: 0.99999964, y: 0.99999905, z: 0.9999994}
+ - name: Right wrist
+ parentName: Right elbow
+ position: {x: -0.00000008940697, y: 2.6362634, z: -0.000000029802322}
+ rotation: {x: -0.036452666, y: -0.07961608, z: 0.07728777, w: 0.9931561}
+ scale: {x: 0.9999998, y: 1, z: 1}
+ - name: Thumb0_R
+ parentName: Right wrist
+ position: {x: 0.057804763, y: 0.2410074, z: -0.3379333}
+ rotation: {x: -0.3638624, y: -0.2551208, z: -0.12408405, w: 0.88719827}
+ scale: {x: 1, y: 1.0000008, z: 1.0000011}
+ - name: Thumb1_R
+ parentName: Thumb0_R
+ position: {x: -0.0000002430752, y: 0.29085436, z: 0.00000034971163}
+ rotation: {x: 0.03991306, y: 0.023958042, z: 0.0019192249, w: 0.9989141}
+ scale: {x: 1, y: 0.99999964, z: 1.0000005}
+ - name: Thumb2_R
+ parentName: Thumb1_R
+ position: {x: 0.0000004898757, y: 0.2908547, z: 0.00000025331974}
+ rotation: {x: -0.11152139, y: 0.00874701, z: -0.04029868, w: 0.9929061}
+ scale: {x: 1, y: 1.0000013, z: 1.0000007}
+ - name: IndexFinger1_R
+ parentName: Right wrist
+ position: {x: 0.20629811, y: 0.740258, z: -0.21011814}
+ rotation: {x: 0.011270573, y: 0.0319893, z: -0.033443075, w: 0.998865}
+ scale: {x: 1.0000002, y: 1.000001, z: 1.0000008}
+ - name: IndexFinger2_R
+ parentName: IndexFinger1_R
+ position: {x: -0.00000029057264, y: 0.45383343, z: 0.0000005364418}
+ rotation: {x: -0.018896148, y: -0.01231451, z: 0.0010314328, w: 0.9997451}
+ scale: {x: 1, y: 1.0000001, z: 1.0000002}
+ - name: IndexFinger3_R
+ parentName: IndexFinger2_R
+ position: {x: -0.00000008940697, y: 0.28043914, z: -0.00000016391277}
+ rotation: {x: 0.019955212, y: 0.002964269, z: 0.011655168, w: 0.99972856}
+ scale: {x: 1.0000002, y: 1.000001, z: 1.0000005}
+ - name: MiddleFinger1_R
+ parentName: Right wrist
+ position: {x: 0.12921038, y: 0.791537, z: 0.0042020082}
+ rotation: {x: 0.0137506835, y: 0.0033058089, z: 0.0012915767, w: 0.9998992}
+ scale: {x: 1.0000001, y: 0.9999995, z: 0.9999998}
+ - name: MiddleFinger2_R
+ parentName: MiddleFinger1_R
+ position: {x: -0.0000001937151, y: 0.4538494, z: 0.0000006854534}
+ rotation: {x: -0.0016048905, y: 0.020796511, z: -0.029049862, w: 0.9993604}
+ scale: {x: 1.0000002, y: 1.0000007, z: 1.0000008}
+ - name: MiddleFinger3_R
+ parentName: MiddleFinger2_R
+ position: {x: -0.0000006556511, y: 0.3111036, z: -0.00000017881393}
+ rotation: {x: 0.0009183326, y: 0.00038030915, z: 0.00021581427, w: 0.99999946}
+ scale: {x: 1.0000001, y: 1.0000004, z: 1.0000006}
+ - name: RingFinger1_R
+ parentName: Right wrist
+ position: {x: -0.03919843, y: 0.77122676, z: 0.15269965}
+ rotation: {x: 0.026963407, y: 0.021239314, z: -0.008416556, w: 0.99937534}
+ scale: {x: 1.0000002, y: 0.99999964, z: 0.9999995}
+ - name: RingFinger2_R
+ parentName: RingFinger1_R
+ position: {x: -0.00000062584877, y: 0.40230638, z: 0.0000007748604}
+ rotation: {x: -0.019523477, y: -0.011595427, z: 0.00085394556, w: 0.9997418}
+ scale: {x: 1, y: 1.0000006, z: 1.000001}
+ - name: RingFinger3_R
+ parentName: RingFinger2_R
+ position: {x: -0.0000004172325, y: 0.27956107, z: -0.00000017881393}
+ rotation: {x: 0.0037484579, y: 0.010714556, z: -0.011356696, w: 0.99987113}
+ scale: {x: 1.0000001, y: 1.0000008, z: 1.0000007}
+ - name: LittleFinger1_R
+ parentName: Right wrist
+ position: {x: -0.23300314, y: 0.71099687, z: 0.25910866}
+ rotation: {x: 0.065310866, y: 0.05551141, z: -0.025650581, w: 0.9959895}
+ scale: {x: 1.0000002, y: 1.0000002, z: 1.0000002}
+ - name: LittleFinger2_R
+ parentName: LittleFinger1_R
+ position: {x: 0.0000008940697, y: 0.3429752, z: -0.00000047683716}
+ rotation: {x: -0.029375028, y: -0.023706537, z: 0.009604049, w: 0.9992412}
+ scale: {x: 1.0000004, y: 1.0000018, z: 1.0000014}
+ - name: LittleFinger3_R
+ parentName: LittleFinger2_R
+ position: {x: 0.00000029802322, y: 0.2609131, z: -0.00000029802322}
+ rotation: {x: -0.027718637, y: -0.017365513, z: 0.0019683496, w: 0.999463}
+ scale: {x: 0.9999998, y: 0.9999995, z: 1}
+ - name: Qian_0_1
+ parentName: Chest
+ position: {x: 0.000005223784, y: 0.8842745, z: 0.72304547}
+ rotation: {x: 0.98945194, y: -0.0000007449294, z: 0.00000074493056, w: -0.1448617}
+ scale: {x: 1, y: 1.0000002, z: 0.9999997}
+ - name: Qian_1_1
+ parentName: Qian_0_1
+ position: {x: -6.505213e-19, y: 0.18488857, z: 0.0000000029592684}
+ rotation: {x: -0.00000008940697, y: 6.3948846e-13, z: -6.252776e-13, w: 1}
+ scale: {x: 1, y: 0.9999999, z: 0.99999994}
+ - name: Qian_2_1
+ parentName: Qian_1_1
+ position: {x: 5.7854175e-22, y: 0.1848887, z: 1.5417667e-12}
+ rotation: {x: -0, y: -0, z: 2.9646153e-21, w: 1}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Qian_3_1
+ parentName: Qian_2_1
+ position: {x: -3.0496732e-25, y: 0.18488966, z: 1.523337e-12}
+ rotation: {x: -0, y: -0, z: -0, w: 1}
+ scale: {x: 1, y: 1, z: 1}
+ - name: Bone016
+ parentName: Spine
+ position: {x: -0.0000003314999, y: 0.1287174, z: -0.9516747}
+ rotation: {x: 0.99663395, y: -0.00000010198474, z: 0.0000012801465, w: -0.08198103}
+ scale: {x: 1, y: 1.0000001, z: 0.9999891}
+ - name: Bone007
+ parentName: Bone016
+ position: {x: -5.1159077e-13, y: 0.19534165, z: 0.00000017881118}
+ rotation: {x: 0.3285285, y: -0.0000003077357, z: 0.0000007452484, w: 0.9444941}
+ scale: {x: 1, y: 1.0000012, z: 1.0000011}
+ - name: Bone008
+ parentName: Bone007
+ position: {x: 1.1368684e-13, y: 1.8716964, z: -0.00000035762775}
+ rotation: {x: -0.10900643, y: 0.00000012815703, z: -0.00000031471734, w: 0.994041}
+ scale: {x: 1, y: 0.9999971, z: 1.000002}
+ - name: Bone009
+ parentName: Bone008
+ position: {x: 3.410605e-13, y: 1.6745199, z: -0.0000004768377}
+ rotation: {x: -0.07569746, y: 0.00000007773051, z: -0.00000019679734, w: 0.9971308}
+ scale: {x: 1, y: 0.99999946, z: 1.0000021}
+ - name: Bone010
+ parentName: Bone009
+ position: {x: -2.2737368e-13, y: 2.1608973, z: -1.9007018e-13}
+ rotation: {x: 0.03449415, y: -0.000000042965492, z: 0.000000101883735, w: 0.99940497}
+ scale: {x: 1, y: 1.0000019, z: 1.0000007}
+ - name: Bone011
+ parentName: Bone010
+ position: {x: -4.1922021e-13, y: 2.0107584, z: 0.00000023841895}
+ rotation: {x: 0.08840104, y: -0.00000009626863, z: 0.00000023688057, w: 0.996085}
+ scale: {x: 1, y: 1.0000021, z: 0.9999994}
+ - name: Bone012
+ parentName: Bone011
+ position: {x: 8.526513e-14, y: 1.874881, z: 1.5187851e-13}
+ rotation: {x: 0.12083815, y: -0.00000014466562, z: 0.00000035226535, w: 0.99267226}
+ scale: {x: 1, y: 1.0000021, z: 0.99999845}
+ - name: Bone013
+ parentName: Bone012
+ position: {x: -0, y: 1.477421, z: -1.0746959e-13}
+ rotation: {x: -0.09276019, y: 0.00000008713349, z: -0.00000019559454, w: -0.99568856}
+ scale: {x: 1, y: 1.0000019, z: 0.99999917}
+ - name: Bone014
+ parentName: Bone013
+ position: {x: 9.663381e-13, y: 1.8682064, z: 1.9806379e-13}
+ rotation: {x: 0.071411416, y: -0.000000064673145, z: 0.00000013963368, w: -0.997447}
+ scale: {x: 1, y: 1.0000001, z: 1.0000024}
+ - name: Body
+ parentName: changyu(Clone)
+ position: {x: -0, y: 0, z: 0}
+ rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
+ scale: {x: 1, y: 1, z: 1}
+ armTwist: 0.5
+ foreArmTwist: 0.5
+ upperLegTwist: 0.5
+ legTwist: 0.5
+ armStretch: 0.05
+ legStretch: 0.05
+ feetSpacing: 0
+ rootMotionBoneName:
+ hasTranslationDoF: 0
+ hasExtraRoot: 1
+ skeletonHasParents: 1
+ lastHumanDescriptionAvatarSource: {instanceID: 0}
+ animationType: 3
+ humanoidOversampling: 1
+ additionalBone: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick big.anim b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick big.anim
new file mode 100644
index 00000000..21b63e4e
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick big.anim
@@ -0,0 +1,232 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!74 &7400000
+AnimationClip:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: dick big
+ serializedVersion: 6
+ m_Legacy: 0
+ m_Compressed: 0
+ m_UseHighQualityCurve: 1
+ m_RotationCurves: []
+ m_CompressedRotationCurves: []
+ m_EulerCurves: []
+ m_PositionCurves: []
+ m_ScaleCurves:
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: {x: 0.848936, y: 0.848936, z: 0.848936}
+ inSlope: {x: 0, y: 0, z: 0}
+ outSlope: {x: 0, y: 0, z: 0}
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
+ outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
+ - serializedVersion: 3
+ time: 0.016666668
+ value: {x: 0.848936, y: 0.848936, z: 0.848936}
+ inSlope: {x: 0, y: 0, z: 0}
+ outSlope: {x: 0, y: 0, z: 0}
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
+ outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ path: Armature/Hips/shlong
+ m_FloatCurves:
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_IsActive
+ path: Armature/Hips/shlong/Body
+ classID: 1
+ script: {fileID: 0}
+ m_PPtrCurves: []
+ m_SampleRate: 60
+ m_WrapMode: 0
+ m_Bounds:
+ m_Center: {x: 0, y: 0, z: 0}
+ m_Extent: {x: 0, y: 0, z: 0}
+ m_ClipBindingConstant:
+ genericBindings:
+ - serializedVersion: 2
+ path: 1458251775
+ attribute: 2086281974
+ script: {fileID: 0}
+ typeID: 1
+ customType: 0
+ isPPtrCurve: 0
+ - serializedVersion: 2
+ path: 1798308653
+ attribute: 3
+ script: {fileID: 0}
+ typeID: 4
+ customType: 0
+ isPPtrCurve: 0
+ pptrCurveMapping: []
+ m_AnimationClipSettings:
+ serializedVersion: 2
+ m_AdditiveReferencePoseClip: {fileID: 0}
+ m_AdditiveReferencePoseTime: 0
+ m_StartTime: 0
+ m_StopTime: 0.016666668
+ m_OrientationOffsetY: 0
+ m_Level: 0
+ m_CycleOffset: 0
+ m_HasAdditiveReferencePose: 0
+ m_LoopTime: 1
+ m_LoopBlend: 0
+ m_LoopBlendOrientation: 0
+ m_LoopBlendPositionY: 0
+ m_LoopBlendPositionXZ: 0
+ m_KeepOriginalOrientation: 0
+ m_KeepOriginalPositionY: 1
+ m_KeepOriginalPositionXZ: 0
+ m_HeightFromFeet: 0
+ m_Mirror: 0
+ m_EditorCurves:
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0.848936
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 0.848936
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_LocalScale.x
+ path: Armature/Hips/shlong
+ classID: 4
+ script: {fileID: 0}
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0.848936
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 0.848936
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_LocalScale.y
+ path: Armature/Hips/shlong
+ classID: 4
+ script: {fileID: 0}
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0.848936
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 0.848936
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_LocalScale.z
+ path: Armature/Hips/shlong
+ classID: 4
+ script: {fileID: 0}
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_IsActive
+ path: Armature/Hips/shlong/Body
+ classID: 1
+ script: {fileID: 0}
+ m_EulerEditorCurves: []
+ m_HasGenericRootTransform: 0
+ m_HasMotionFloatCurves: 0
+ m_Events: []
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick big.anim.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick big.anim.meta
new file mode 100644
index 00000000..6dfd4c17
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick big.anim.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 333ea48bbe327954ba27310a3258c065
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 7400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick normal.anim b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick normal.anim
new file mode 100644
index 00000000..d8140b0a
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick normal.anim
@@ -0,0 +1,232 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!74 &7400000
+AnimationClip:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: dick normal
+ serializedVersion: 6
+ m_Legacy: 0
+ m_Compressed: 0
+ m_UseHighQualityCurve: 1
+ m_RotationCurves: []
+ m_CompressedRotationCurves: []
+ m_EulerCurves: []
+ m_PositionCurves: []
+ m_ScaleCurves:
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: {x: 0.61052, y: 0.61052, z: 0.61052}
+ inSlope: {x: 0, y: 0, z: 0}
+ outSlope: {x: 0, y: 0, z: 0}
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
+ outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
+ - serializedVersion: 3
+ time: 0.016666668
+ value: {x: 0.61052, y: 0.61052, z: 0.61052}
+ inSlope: {x: 0, y: 0, z: 0}
+ outSlope: {x: 0, y: 0, z: 0}
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
+ outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ path: Armature/Hips/shlong
+ m_FloatCurves:
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_IsActive
+ path: Armature/Hips/shlong/Body
+ classID: 1
+ script: {fileID: 0}
+ m_PPtrCurves: []
+ m_SampleRate: 60
+ m_WrapMode: 0
+ m_Bounds:
+ m_Center: {x: 0, y: 0, z: 0}
+ m_Extent: {x: 0, y: 0, z: 0}
+ m_ClipBindingConstant:
+ genericBindings:
+ - serializedVersion: 2
+ path: 1458251775
+ attribute: 2086281974
+ script: {fileID: 0}
+ typeID: 1
+ customType: 0
+ isPPtrCurve: 0
+ - serializedVersion: 2
+ path: 1798308653
+ attribute: 3
+ script: {fileID: 0}
+ typeID: 4
+ customType: 0
+ isPPtrCurve: 0
+ pptrCurveMapping: []
+ m_AnimationClipSettings:
+ serializedVersion: 2
+ m_AdditiveReferencePoseClip: {fileID: 0}
+ m_AdditiveReferencePoseTime: 0
+ m_StartTime: 0
+ m_StopTime: 0.016666668
+ m_OrientationOffsetY: 0
+ m_Level: 0
+ m_CycleOffset: 0
+ m_HasAdditiveReferencePose: 0
+ m_LoopTime: 1
+ m_LoopBlend: 0
+ m_LoopBlendOrientation: 0
+ m_LoopBlendPositionY: 0
+ m_LoopBlendPositionXZ: 0
+ m_KeepOriginalOrientation: 0
+ m_KeepOriginalPositionY: 1
+ m_KeepOriginalPositionXZ: 0
+ m_HeightFromFeet: 0
+ m_Mirror: 0
+ m_EditorCurves:
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0.61052
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 0.61052
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_LocalScale.x
+ path: Armature/Hips/shlong
+ classID: 4
+ script: {fileID: 0}
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0.61052
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 0.61052
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_LocalScale.y
+ path: Armature/Hips/shlong
+ classID: 4
+ script: {fileID: 0}
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0.61052
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 0.61052
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 136
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_LocalScale.z
+ path: Armature/Hips/shlong
+ classID: 4
+ script: {fileID: 0}
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_IsActive
+ path: Armature/Hips/shlong/Body
+ classID: 1
+ script: {fileID: 0}
+ m_EulerEditorCurves: []
+ m_HasGenericRootTransform: 0
+ m_HasMotionFloatCurves: 0
+ m_Events: []
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick normal.anim.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick normal.anim.meta
new file mode 100644
index 00000000..1a95d55d
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick normal.anim.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 6bbe0f31a6828644eba32332a799363a
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 7400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick.anim b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick.anim
new file mode 100644
index 00000000..de9e7806
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick.anim
@@ -0,0 +1,116 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!74 &7400000
+AnimationClip:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: dick
+ serializedVersion: 6
+ m_Legacy: 0
+ m_Compressed: 0
+ m_UseHighQualityCurve: 1
+ m_RotationCurves: []
+ m_CompressedRotationCurves: []
+ m_EulerCurves: []
+ m_PositionCurves: []
+ m_ScaleCurves: []
+ m_FloatCurves:
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_IsActive
+ path: Armature/Hips/shlong
+ classID: 1
+ script: {fileID: 0}
+ m_PPtrCurves: []
+ m_SampleRate: 60
+ m_WrapMode: 0
+ m_Bounds:
+ m_Center: {x: 0, y: 0, z: 0}
+ m_Extent: {x: 0, y: 0, z: 0}
+ m_ClipBindingConstant:
+ genericBindings:
+ - serializedVersion: 2
+ path: 1798308653
+ attribute: 2086281974
+ script: {fileID: 0}
+ typeID: 1
+ customType: 0
+ isPPtrCurve: 0
+ pptrCurveMapping: []
+ m_AnimationClipSettings:
+ serializedVersion: 2
+ m_AdditiveReferencePoseClip: {fileID: 0}
+ m_AdditiveReferencePoseTime: 0
+ m_StartTime: 0
+ m_StopTime: 0.016666668
+ m_OrientationOffsetY: 0
+ m_Level: 0
+ m_CycleOffset: 0
+ m_HasAdditiveReferencePose: 0
+ m_LoopTime: 1
+ m_LoopBlend: 0
+ m_LoopBlendOrientation: 0
+ m_LoopBlendPositionY: 0
+ m_LoopBlendPositionXZ: 0
+ m_KeepOriginalOrientation: 0
+ m_KeepOriginalPositionY: 1
+ m_KeepOriginalPositionXZ: 0
+ m_HeightFromFeet: 0
+ m_Mirror: 0
+ m_EditorCurves:
+ - curve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 0.016666668
+ value: 1
+ inSlope: Infinity
+ outSlope: Infinity
+ tangentMode: 103
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ attribute: m_IsActive
+ path: Armature/Hips/shlong
+ classID: 1
+ script: {fileID: 0}
+ m_EulerEditorCurves: []
+ m_HasGenericRootTransform: 0
+ m_HasMotionFloatCurves: 0
+ m_Events: []
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick.anim.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick.anim.meta
new file mode 100644
index 00000000..e32e2bec
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/dick.anim.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 86793e96c24dec34abf97a4076e856df
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 7400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/image0.jpg b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/image0.jpg
new file mode 100644
index 00000000..893a5ae7
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/image0.jpg
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/image0.jpg.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/image0.jpg.meta
new file mode 100644
index 00000000..cd8245c3
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/image0.jpg.meta
@@ -0,0 +1,88 @@
+fileFormatVersion: 2
+guid: 423f965cab96aab42a4415f1afa74ce3
+TextureImporter:
+ fileIDToRecycleName: {}
+ externalObjects: {}
+ serializedVersion: 9
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 2
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/【Rabbit J】Dancing tonight feat. 夏铜子【パニシング -グレイレイヴン】Official Lyric Video.mp3 b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/【Rabbit J】Dancing tonight feat. 夏铜子【パニシング -グレイレイヴン】Official Lyric Video.mp3
new file mode 100644
index 00000000..7d6638fb
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/【Rabbit J】Dancing tonight feat. 夏铜子【パニシング -グレイレイヴン】Official Lyric Video.mp3
Binary files differ
diff --git a/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/【Rabbit J】Dancing tonight feat. 夏铜子【パニシング -グレイレイヴン】Official Lyric Video.mp3.meta b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/【Rabbit J】Dancing tonight feat. 夏铜子【パニシング -グレイレイヴン】Official Lyric Video.mp3.meta
new file mode 100644
index 00000000..dc116185
--- /dev/null
+++ b/VRCSDK3AvatarsQuestLegacy/Assets/Avatars/Changyu/【Rabbit J】Dancing tonight feat. 夏铜子【パニシング -グレイレイヴン】Official Lyric Video.mp3.meta
@@ -0,0 +1,22 @@
+fileFormatVersion: 2
+guid: 70afbb5f6f688fb4cb0205c8349c640b
+AudioImporter:
+ externalObjects: {}
+ serializedVersion: 6
+ defaultSettings:
+ loadType: 0
+ sampleRateSetting: 0
+ sampleRateOverride: 44100
+ compressionFormat: 1
+ quality: 1
+ conversionMode: 0
+ platformSettingOverrides: {}
+ forceToMono: 0
+ normalize: 1
+ preloadAudioData: 1
+ loadInBackground: 0
+ ambisonic: 0
+ 3D: 1
+ userData:
+ assetBundleName:
+ assetBundleVariant: