O-/𖣠⚪𔗢⚪ᗩ⚪𔗢⚪𖣠⚪𔗢⚪∣⚪𔗢⚪𖣠⚪𔗢⚪ᗝ⚪𔗢⚪𖣠⚪𔗢⚪∣⚪𔗢⚪𖣠⚪𔗢⚪Ẏ⚪𔗢⚪𖣠⚪𔗢⚪𖣓⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪🞋⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖣓⚪𔗢⚪𖣠⚪𔗢⚪Ẏ⚪𔗢⚪𖣠⚪𔗢⚪∣⚪𔗢⚪𖣠⚪𔗢⚪ᗝ⚪𔗢⚪𖣠⚪𔗢⚪∣⚪𔗢⚪𖣠⚪𔗢⚪ᗩ⚪𔗢⚪𖣠/𖣠⚪𔗢⚪✤⚪𔗢⚪𖣠⚪𔗢⚪ᴥ⚪𔗢⚪𖣠⚪𔗢⚪ᗩ⚪𔗢⚪𖣠⚪𔗢⚪𖣓⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪🞋⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖣓⚪𔗢⚪𖣠⚪𔗢⚪ᗩ⚪𔗢⚪𖣠⚪𔗢⚪ᴥ⚪𔗢⚪𖣠⚪𔗢⚪✤⚪𔗢⚪𖣠/𖣠⚪𔗢⚪ᗱᗴ⚪𔗢⚪𖣠⚪𔗢⚪ᴥ⚪𔗢⚪𖣠⚪𔗢⚪ᗩ⚪𔗢⚪𖣠⚪𔗢⚪ᗯ⚪𔗢⚪𖣠⚪𔗢⚪✤⚪𔗢⚪𖣠⚪𔗢⚪ꗳ⚪𔗢⚪𖣠⚪𔗢⚪Ⓞ⚪𔗢⚪𖣠⚪𔗢⚪ᔓᔕ⚪𔗢⚪𖣠⚪𔗢⚪𖣓⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪🞋⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖣓⚪𔗢⚪𖣠⚪𔗢⚪ᔓᔕ⚪𔗢⚪𖣠⚪𔗢⚪Ⓞ⚪𔗢⚪𖣠⚪𔗢⚪ꗳ⚪𔗢⚪𖣠⚪𔗢⚪✤⚪𔗢⚪𖣠⚪𔗢⚪ᗯ⚪𔗢⚪𖣠⚪𔗢⚪ᗩ⚪𔗢⚪𖣠⚪𔗢⚪ᴥ⚪𔗢⚪𖣠⚪𔗢⚪ᗱᗴ⚪𔗢⚪𖣠/𖣠⚪𔗢⚪ЭЄ⚪𔗢⚪𖣠⚪𔗢⚪ᗩ⚪𔗢⚪𖣠⚪𔗢⚪Н⚪𔗢⚪𖣠⚪𔗢⚪ߦ⚪𔗢⚪𖣠⚪𔗢⚪ᗱᗴ⚪𔗢⚪𖣠⚪𔗢⚪ᙏ⚪𔗢⚪𖣠⚪𔗢⚪ЭЄ⚪𔗢⚪𖣠⚪𔗢⚪Ⓞ⚪𔗢⚪𖣠⚪𔗢⚪ߦ⚪𔗢⚪𖣠⚪𔗢⚪✤⚪𔗢⚪𖣠⚪𔗢⚪𖣓⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪🞋⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖡼⚪𔗢⚪𖣠⚪𔗢⚪𖣓⚪𔗢⚪𖣠⚪𔗢⚪✤⚪𔗢⚪𖣠⚪𔗢⚪ߦ⚪𔗢⚪𖣠⚪𔗢⚪Ⓞ⚪𔗢⚪𖣠⚪𔗢⚪ЭЄ⚪𔗢⚪𖣠⚪𔗢⚪ᙏ⚪𔗢⚪𖣠⚪𔗢⚪ᗱᗴ⚪𔗢⚪𖣠⚪𔗢⚪ߦ⚪𔗢⚪𖣠⚪𔗢⚪Н⚪𔗢⚪𖣠⚪𔗢⚪ᗩ⚪𔗢⚪𖣠⚪𔗢⚪ЭЄ⚪𔗢⚪𖣠/⠀⠀⠀⠀ⵙ⠀ᔓᔕ⠀ⵙ⠀ᒍᒐ⠀ⵙ⠀◌⠀ⵙ⠀ИN⠀ⵙ⠀Ⓞ⠀ⵙ⠀ᕤᕦ⠀ⵙ⠀人⠀ⵙ⠀ᙁ⠀ⵙ⠀Ⓞ⠀ⵙ⠀ߦ⠀ⵙ⠀⠀⊚⠀⠀ⵙ⠀◌⠀ⵙ⠀⠀⊚⠀⠀ⵙ⠀◌⠀ⵙ⠀⠀⠀⠀⚪⠀⠀⠀⠀ⵙ⠀⠀⠀⠀◯⠀⠀⠀⠀ⵙ⠀⠀⠀⠀◯⠀⠀⠀⠀ⵙ⠀⠀⠀⠀⚪⠀⠀⠀⠀ⵙ⠀◌⠀ⵙ⠀⠀⊚⠀⠀ⵙ⠀◌⠀ⵙ⠀⠀⊚⠀⠀ⵙ⠀ߦ⠀ⵙ⠀Ⓞ⠀ⵙ⠀ᙁ⠀ⵙ⠀人⠀ⵙ⠀ᕤᕦ⠀ⵙ⠀Ⓞ⠀ⵙ⠀ИN⠀ⵙ⠀◌⠀ⵙ⠀ᒍᒐ⠀ⵙ⠀ᔓᔕ⠀ⵙ⠀⠀⠀⠀/TXT.⠀⠀⠀⠀ⵙⵘⵙ◯ⵙᔓᔕⵙᑎⵙИNⵙᗱᗴⵙᕤᕦⵙ⠀⠀⠀⠀⊚⠀⠀⠀⠀ⵙᔓᔕⵙᒍᒐⵙ◌ⵙИNⵙⓄⵙᕤᕦⵙ人ⵙᙁⵙⓄⵙߦⵙ⠀⊚⠀ⵙ◌ⵙ⠀⊚⠀ⵙ◌ⵙ⠀⊚⠀ⵙ◌ⵙ⠀⠀⠀⠀⚪⠀⠀⠀⠀ⵙ⠀⠀⠀⠀◯⠀⠀⠀⠀ⵙ⠀⠀⠀⠀◯⠀⠀⠀⠀ⵙ⠀⠀⠀⠀⚪⠀⠀⠀⠀ⵙ◌ⵙ⠀⊚⠀ⵙ◌ⵙ⠀⊚⠀ⵙ◌ⵙ⠀⊚⠀ⵙߦⵙⓄⵙᙁⵙ人ⵙᕤᕦⵙⓄⵙИNⵙ◌ⵙᒍᒐⵙᔓᔕⵙ⠀⠀⠀⠀⊚⠀⠀⠀⠀ⵙᕤᕦⵙᗱᗴⵙИNⵙᑎⵙᔓᔕⵙ◯ⵙⵘⵙ⠀⠀⠀⠀.TXT
2024-02-29 05:26:34 +00:00

1 line
124 KiB
Plaintext

{"properties":{"frame":0,"maxFrame":5824,"maxFrameLocked":false,"realtimeState":true,"mainCameraPath":"/O_YRTEMOEG_O_GEOMETRY_O/O_YRTEMOEG_O_GEOMETRY_O:sopGroup/O_AREMAC_WEIWERP_O_PREWIEW_CAMERA_O","versions":{"polygonjs":"1.4.7"}},"root":{"type":"root","nodes":{"O_ENECS_O_SCENE_O":{"type":"scene","params":{"autoUpdate":0,"backgroundMode":0,"bgColor":{"raw_input":[1,1,1],"overriden_options":{"conversion":"no conversion"}},"bgTexture":"../O_NOITISOPMOC_O_COMPOSITION_O/O_ROLOC_ETIHW_O_WHITE_COLOR_O","useFog":1,"fogType":0,"fogColor":{"raw_input":[0,0.958,0.487],"overriden_options":{"conversion":"sRGB -> linear"}},"fogNear":0,"fogFar":256,"fogDensity":0}},"O_YRTEMOEG_O_GEOMETRY_O":{"type":"geo","nodes":{"O_XOB_O_BOX_O":{"type":"box"},"O_EDIWIDBUS_O_SUBDIWIDE_O":{"type":"subdivide","params":{"subdivisions":4},"inputs":["O_XOB_O_BOX_O"]},"O_EREHPS_O_SPHERE_O":{"type":"sphere","params":{"radius":".5","resolution":[64,64]}},"O_YAR_O_RAY_O":{"type":"ray","params":{"mode":1,"direction":[1,1,1]},"inputs":["O_EDIWIDBUS_O_SUBDIWIDE_O","O_EREHPS_O_SPHERE_O"]},"O_SLAMRON_O_NORMALS_O":{"type":"normals","params":{"x":0.35},"inputs":["O_EGREM_YRTEMOEG_O_GEOMETRY_MERGE_O"]},"O_YLPA_LAIRETAM_O_MATERIAL_APLY_O":{"type":"material","params":{"material":"../O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O"},"inputs":["O_SLAMRON_O_NORMALS_O"]},"O_TEN_LAIRETAM_O_MATERIAL_NET_O":{"type":"materialsNetwork","nodes":{"O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O":{"type":"meshStandardBuilder","nodes":{"O_SLABOLG_O_GLOBALS_O":{"type":"globals"},"O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O":{"type":"normalize","params":{"in":{"type":"vector3","default_value":[0,0,0],"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"in","node":"O_ETAGEN_O_NEGATE_O","output":"val"}],"connection_points":{"in":[{"name":"in","type":"vec3"}],"out":[{"name":"normalized","type":"vec3"}]}},"O_TUPTUO_O_OUTPUT_O":{"type":"output","inputs":[null,null,{"index":2,"inputName":"color","node":"O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O","output":"vec3"}]},"O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O":{"type":"normalize","params":{"in":{"type":"vector3","default_value":[0,0,0],"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"in","node":"O_SLABOLG_O_GLOBALS_O","output":"normal"}],"connection_points":{"in":[{"name":"in","type":"vec3"}],"out":[{"name":"normalized","type":"vec3"}]}},"O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O":{"type":"dot","params":{"vec0":{"type":"vector3","default_value":[0,0,0],"options":{"spare":true,"editable":false}},"vec1":{"type":"vector3","default_value":[0,0,0],"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"vec0","node":"O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O","output":"normalized"},{"index":1,"inputName":"vec1","node":"O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O","output":"normalized"}],"connection_points":{"in":[{"name":"vec0","type":"vec3"},{"name":"vec1","type":"vec3"}],"out":[{"name":"val","type":"float"}]}},"O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O":{"type":"floatToVec3","params":{"x":{"overriden_options":{}},"y":{"overriden_options":{}},"z":{"overriden_options":{}}},"inputs":[{"index":0,"inputName":"x","node":"O_1_LUN_O_NUL_1_O","output":"val"},{"index":1,"inputName":"y","node":"O_1_LUN_O_NUL_1_O","output":"val"},{"index":2,"inputName":"z","node":"O_1_LUN_O_NUL_1_O","output":"val"}]},"O_1_LUN_O_NUL_1_O":{"type":"null","params":{"in":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"in","node":"O_1_0_OT_TIF_O_FIT_TO_0_1_O","output":"val"}],"connection_points":{"in":[{"name":"in","type":"float"}],"out":[{"name":"val","type":"float"}]}},"O_ETAGEN_O_NEGATE_O":{"type":"negate","params":{"in":{"type":"vector3","default_value":[0,0,0],"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"in","node":"O_SLABOLG_O_GLOBALS_O","output":"cameraPosition"}],"connection_points":{"in":[{"name":"in","type":"vec3"}],"out":[{"name":"val","type":"vec3"}]}},"O_1_0_OT_TIF_O_FIT_TO_0_1_O":{"type":"fitTo01","params":{"val":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"srcMin":{"type":"float","default_value":0,"options":{"spare":true,"editable":true},"raw_input":0.0333},"srcMax":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}}},"inputs":[{"index":0,"inputName":"val","node":"O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O","output":"val"}],"connection_points":{"in":[{"name":"val","type":"float"},{"name":"srcMin","type":"float"},{"name":"srcMax","type":"float"}],"out":[{"name":"val","type":"float"}]}},"O_LEWEL_MOTOB_O_BOTOM_LEWEL_O":{"type":"divide","params":{"div0":{"type":"float","default_value":1,"options":{"spare":true,"editable":true},"raw_input":168},"div1":{"type":"float","default_value":1,"options":{"spare":true,"editable":true},"raw_input":256}},"connection_points":{"in":[{"name":"div0","type":"float"},{"name":"div1","type":"float"}],"out":[{"name":"divide","type":"float"}]}},"O_TOOR_O_ROOT_O":{"type":"divide","params":{"div0":{"type":"float","default_value":1,"options":{"spare":true,"editable":false},"raw_input":4.69140625},"div1":{"type":"float","default_value":1,"options":{"spare":true,"editable":true},"raw_input":19.48046875}},"inputs":[{"index":0,"inputName":"div0","node":"O_LEWEL_REWOP_O_POWER_LEWEL_O","output":"divide"}],"connection_points":{"in":[{"name":"div0","type":"float"},{"name":"div1","type":"float"}],"out":[{"name":"divide","type":"float"}]}},"O_LEWEL_REWOP_O_POWER_LEWEL_O":{"type":"divide","params":{"div0":{"type":"float","default_value":1,"options":{"spare":true,"editable":true},"raw_input":1201},"div1":{"type":"float","default_value":1,"options":{"spare":true,"editable":true},"raw_input":256}},"connection_points":{"in":[{"name":"div0","type":"float"},{"name":"div1","type":"float"}],"out":[{"name":"divide","type":"float"}]}},"O_REWOP_O_POWER_O":{"type":"pow","params":{"x":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"y":{"type":"float","default_value":0,"options":{"spare":true,"editable":false},"raw_input":0.5}},"inputs":[{"index":0,"inputName":"x","node":"O_1_0_OT_TIF_O_FIT_TO_0_1_O","output":"val"},{"index":1,"inputName":"y","node":"O_TOOR_O_ROOT_O","output":"divide"}],"connection_points":{"in":[{"name":"x","type":"float"},{"name":"y","type":"float"}],"out":[{"name":"val","type":"float"}]}},"O_YLPITLUM_O_MULTIPLY_O":{"type":"mult","params":{"mult0":{"type":"float","default_value":1,"options":{"spare":true,"editable":false}},"mult1":{"type":"float","default_value":1,"options":{"spare":true,"editable":false}},"mult2":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"mult0","node":"O_REWOP_O_POWER_O","output":"val"},{"index":1,"inputName":"mult1","node":"O_LEWEL_MOTOB_O_BOTOM_LEWEL_O","output":"divide"}],"connection_points":{"in":[{"name":"mult0","type":"float"},{"name":"mult1","type":"float"},{"name":"mult2","type":"float"}],"out":[{"name":"product","type":"float"}]}},"O_DDA_O_ADD_O":{"type":"add","params":{"add0":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"add1":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"add2":{"type":"float","default_value":0,"options":{"spare":true,"editable":true}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"add0","node":"O_YLPITLUM_O_MULTIPLY_O","output":"product"},{"index":1,"inputName":"add1","node":"O_LEWEL_MOTOB_O_BOTOM_LEWEL_O","output":"divide"}],"connection_points":{"in":[{"name":"add0","type":"float"},{"name":"add1","type":"float"},{"name":"add2","type":"float"}],"out":[{"name":"sum","type":"float"}]}}},"params":{"emissive":{"raw_input":[1,1,1],"overriden_options":{"conversion":"no conversion"}},"emissiveIntensity":0,"roughness":0,"doubleSided":1,"shadowFront":0},"persisted_config":{"material":{"metadata":{"version":4.5,"type":"Material","generator":"Material.toJSON"},"uuid":"/O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O-main","type":"MeshStandardMaterial","name":"/O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O","color":16711422,"roughness":0,"metalness":0,"emissive":16711422,"envMapIntensity":1,"side":2,"depthFunc":3,"depthTest":true,"depthWrite":true,"colorWrite":true,"stencilWrite":false,"stencilWriteMask":255,"stencilFunc":519,"stencilRef":0,"stencilFuncMask":255,"stencilFail":7680,"stencilZFail":7680,"stencilZPass":7680,"fog":false},"onBeforeCompileDataJSONWithoutShaders":{"paramConfigs":[],"timeDependent":false,"resolutionDependent":false,"raymarchingLightsWorldCoordsDependent":false},"customMaterials":{"customDepthMaterial":{"material":{"metadata":{"version":4.5,"type":"Material","generator":"Material.toJSON"},"uuid":"/O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O-customDepthMaterial","type":"MeshDepthMaterial","name":"customDepthMaterial","side":2,"depthFunc":3,"depthTest":true,"depthWrite":true,"colorWrite":true,"stencilWrite":false,"stencilWriteMask":255,"stencilFunc":519,"stencilRef":0,"stencilFuncMask":255,"stencilFail":7680,"stencilZFail":7680,"stencilZPass":7680,"depthPacking":3201},"onBeforeCompileDataJSONWithoutShaders":{"paramConfigs":[],"timeDependent":false,"resolutionDependent":false,"raymarchingLightsWorldCoordsDependent":false}},"customDistanceMaterial":{"material":{"metadata":{"version":4.5,"type":"Material","generator":"Material.toJSON"},"uuid":"/O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O-customDistanceMaterial","type":"MeshDistanceMaterial","name":"customDistanceMaterial","side":2,"depthFunc":3,"depthTest":true,"depthWrite":true,"colorWrite":true,"stencilWrite":false,"stencilWriteMask":255,"stencilFunc":519,"stencilRef":0,"stencilFuncMask":255,"stencilFail":7680,"stencilZFail":7680,"stencilZPass":7680},"onBeforeCompileDataJSONWithoutShaders":{"paramConfigs":[],"timeDependent":false,"resolutionDependent":false,"raymarchingLightsWorldCoordsDependent":false}},"customDepthDOFMaterial":{"material":{"metadata":{"version":4.5,"type":"Material","generator":"Material.toJSON"},"uuid":"/O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O-customDepthDOFMaterial","type":"MeshDepthMaterial","name":"customDepthDOFMaterial","side":2,"depthFunc":3,"depthTest":true,"depthWrite":true,"colorWrite":true,"stencilWrite":false,"stencilWriteMask":255,"stencilFunc":519,"stencilRef":0,"stencilFuncMask":255,"stencilFail":7680,"stencilZFail":7680,"stencilZPass":7680,"depthPacking":3200},"onBeforeCompileDataJSONWithoutShaders":{"paramConfigs":[],"timeDependent":false,"resolutionDependent":false,"raymarchingLightsWorldCoordsDependent":false}}}}},"O_PACTAM_HSEM_O_MESH_MATCAP_O":{"type":"meshMatcap","params":{"useMatcapMap":1,"matcapMap":"../O_NOITISOPMOC_O_COMPOSITION_O/O_EGAMI_O_IMAGE_O","doubleSided":1}},"O_NOITISOPMOC_O_COMPOSITION_O":{"type":"copNetwork","nodes":{"O_ROLOC_ETIHW_O_WHITE_COLOR_O":{"type":"color"},"O_ROLOC_ETIHWNON_O_NONWHITE_COLOR_O":{"type":"color","params":{"color":[0,0,0],"alpha":0}},"O_OEDIW_O_WIDEO_O":{"type":"video","params":{"urlsCount":1,"url1":"https://tbpchan.cz/cute/src/1673734876465.mp4"}},"O_EGAMI_O_IMAGE_O":{"type":"image","params":{"url":"https://raw.githubusercontent.com/polygonjs/polygonjs-assets/master/textures/resources/artvee.com/Bouquet-of-Flowers-in-a-Blue-Porcelain-Vase-by-Anne-Vallayer-Coster.jpg","tencoding":1,"tminFilter":1,"tmagFilter":1,"tanisotropy":1,"useRendererMaxAnisotropy":1}}}},"O_EDOC_O_CODE_O":{"type":"code","params":{"vertex":"\nvarying vec3 vWorldPosition;\nprecision highp float;\nvarying vec3 fNormal;\nvarying vec3 fPosition;\nvoid main() {\n\n\tvec4 worldPosition = modelMatrix * vec4( position, 1.0 );\n\tvWorldPosition = worldPosition.xyz;\n\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n}","fragment":"precision highp float;\nprecision highp int;\n\nvarying vec3 fPosition;\nvarying vec3 fNormal;\n// https://madebyevan.com/shaders/grid/\nvarying vec3 vWorldPosition;\n\nvoid main() {\n\n\t// Pick a coordinate to visualize in a grid\n\tconst float pi = 4.*atan(1.);\n\tconst float scale = 10.0;\n\tvec2 coord = vec2(length(5.0 * vWorldPosition.xz), atan(5.0 * vWorldPosition.x, 5.0 * vWorldPosition.z) * scale / pi);\n\n\t// Handling the wrap-around is tricky in this case. The function atan()\n\t// is not continuous and jumps when it wraps from -pi to pi. The screen-\n\t// space partial derivative will be huge along that boundary. To avoid\n\t// this, compute another coordinate that places the jump at a different\n\t// place, then use the coordinate where the jump is farther away.\n\t//\n\t// When doing this, make sure to always evaluate both fwidth() calls even\n\t// though we only use one. All fragment shader threads in the thread group\n\t// actually share a single instruction pointer, so threads that diverge\n\t// down different conditional branches actually cause both branches to be\n\t// serialized one after the other. Calling fwidth() from a thread next to\n\t// an inactive thread ends up reading inactive registers with old values\n\t// in them and you get an undefined value.\n\t//\n\t// The conditional uses +/-scale/2 since coord.y has a range of +/-scale.\n\t// The jump is at +/-scale for coord and at 0 for wrapped.\n\tvec2 wrapped = vec2(coord.x, fract(coord.y / (2.0 * scale)) * (2.0 * scale));\n\tvec2 coordWidth = fwidth(coord);\n\tvec2 wrappedWidth = fwidth(wrapped);\n\tvec2 width = coord.y < -scale * 0.5 || coord.y > scale * 0.5 ? wrappedWidth : coordWidth;\n\n\t// Compute anti-aliased world-space grid lines\n\tvec2 grid = abs(fract(coord - 0.5) - 0.5) / width;\n\tfloat line = min(grid.x, grid.y);\n\n\t// Just visualize the grid lines directly\n\tfloat color = 1.0 - min(line, 1.0);\n\n\t// Apply gamma correction\n\tcolor = pow(color, 1. / 2.2);\n\tgl_FragColor = vec4(vec3(color), 1.0);\n}\n"}}}},"O_ENALP_O_PLANE_O":{"type":"plane","params":{"direction":[0,0,-1],"center":[0,0,".5"]}},"O_EGREM_O_MERGE_O":{"type":"merge","inputs":["O_ENALP_O_PLANE_O","O_YAR_O_RAY_O"]},"O_THGIL_TNEIBMA_O_AMBIENT_LIGHT_O":{"type":"ambientLight"},"O_SLORTNOC_AREMAC_O_CAMERA_CONTROLS_O":{"type":"cameraControls","nodes":{"O_SLORTNOC_TIBRO_AREMAC_O_CAMERA_ORBIT_CONTROLS_O":{"type":"cameraOrbitControls","params":{"tdamping":0,"damping":0,"maxDistance":256,"target":[-0.0251941228858123,0.2517028837030606,0.002800513513107784]}}},"params":{"node":"O_SLORTNOC_TIBRO_AREMAC_O_CAMERA_ORBIT_CONTROLS_O"},"inputs":["O_AREMAC_WEIWERP_O_PREWIEW_CAMERA_O"]},"O_ENECS_REDNER_AREMAC_O_CAMERA_RENDER_SCENE_O":{"type":"cameraRenderScene","params":{"node":"../../O_ENECS_O_SCENE_O"},"inputs":["O_SLORTNOC_AREMAC_O_CAMERA_CONTROLS_O"],"flags":{"bypass":true}},"O_EGREM_LA_O_AL_MERGE_O":{"type":"merge","params":{"inputsCount":3},"maxInputsCount":3,"inputs":["O_THGIL_TNEIBMA_O_AMBIENT_LIGHT_O","O_ENECS_REDNER_AREMAC_O_CAMERA_RENDER_SCENE_O","O_YLPA_LAIRETAM_O_MATERIAL_APLY_O"],"flags":{"display":true}},"O_AREMAC_WEIWERP_O_PREWIEW_CAMERA_O":{"type":"orthographicCamera","params":{"near":0,"far":256,"position":[0,0,-1]}},"O_SENKCIHT_O_THICKNES_O":{"type":"attribCreate","params":{"class":2,"value1":0.84},"inputs":["null1"]},"O_EZIS_O_SIZE_O":{"type":"attribCreate","params":{"value1":0.5},"inputs":["null1"]},"O_TESFO_PILC_O_CLIP_OFSET_O":{"type":"attribCreate","inputs":["null1"]},"O_SNOIDIWIDBUS_EREHPS_O_SPHERE_SUBDIWIDIONS_O":{"type":"attribCreate","params":{"value1":2},"inputs":["null1"]},"circle1":{"type":"circle","params":{"radius":"ch(\"../O_SENKCIHT_O_THICKNES_O/value1\")","segments":"pow(ch(\"../O_SNOIDIWIDBUS_EREHPS_O_SPHERE_SUBDIWIDIONS_O/value1\"),2)","connectLastPoint":0,"arcAngle":-180,"direction":[0,0,1]}},"null1":{"type":"null"},"transform1":{"type":"transform","params":{"t":["(sqrt(ch(\"../O_EZIS_O_SIZE_O/value1\")/2)*2)","ch(\"tx\")",0],"r":[0,0,-45]},"inputs":["circle1"]},"CADRevolution1":{"type":"CADRevolution","params":{"axis":[1,0,0],"closed":0},"inputs":["CADTransform1"]},"CADCircle1":{"type":"CADCircle","params":{"radius":"ch(\"../O_SENKCIHT_O_THICKNES_O/value1\")","axis":[0,0,1]}},"axesHelper1":{"type":"axesHelper"},"O_EGREM_YRTEMOEG_O_GEOMETRY_MERGE_O":{"type":"merge","inputs":["axesHelper1","transform1","CADTransform1","CADRevolution1"]},"CADTransform1":{"type":"CADTransform","params":{"t":["(sqrt(ch(\"../O_EZIS_O_SIZE_O/value1\")/2)*2)","ch(\"tx\")",0],"r":[0,0,-45]},"inputs":["CADCircle1"]}},"params":{"matrixAutoUpdate":1,"CADLinearTolerance":{"overriden_options":{"callback":"{}"}},"CADAngularTolerance":{"overriden_options":{"callback":"{}"}},"CADCurveAbscissa":{"overriden_options":{"callback":"{}"}},"CADCurveTolerance":{"overriden_options":{"callback":"{}"}},"CADDisplayEdges":{"overriden_options":{"callback":"{}"}},"CADEdgesColor":{"overriden_options":{"callback":"{}"}},"CADDisplayMeshes":{"overriden_options":{"callback":"{}"}},"CADMeshesColor":{"overriden_options":{"callback":"{}"}},"CADWireframe":{"overriden_options":{"callback":"{}"}},"CSGFacetAngle":{"overriden_options":{"callback":"{}"}},"CSGLinesColor":{"overriden_options":{"callback":"{}"}},"CSGMeshesColor":{"overriden_options":{"callback":"{}"}},"CSGWireframe":{"overriden_options":{"callback":"{}"}}},"flags":{"display":true}}},"params":{"bgColor":{"raw_input":[1,1,1],"overriden_options":{"conversion":"no conversion"}},"mainCameraPath":"/O_YRTEMOEG_O_GEOMETRY_O/O_YRTEMOEG_O_GEOMETRY_O:sopGroup/O_AREMAC_WEIWERP_O_PREWIEW_CAMERA_O","fogType":0}},"ui":{"nodes":{"O_ENECS_O_SCENE_O":{"pos":[-50,-150]},"O_YRTEMOEG_O_GEOMETRY_O":{"pos":[-50,-250],"nodes":{"O_XOB_O_BOX_O":{"pos":[0,-50]},"O_EDIWIDBUS_O_SUBDIWIDE_O":{"pos":[0,50]},"O_EREHPS_O_SPHERE_O":{"pos":[250,100]},"O_YAR_O_RAY_O":{"pos":[0,150]},"O_SLAMRON_O_NORMALS_O":{"pos":[0,350]},"O_YLPA_LAIRETAM_O_MATERIAL_APLY_O":{"pos":[0,450]},"O_TEN_LAIRETAM_O_MATERIAL_NET_O":{"pos":[0,600],"selection":["O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O"],"nodes":{"O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O":{"pos":[0,-350],"nodes":{"O_SLABOLG_O_GLOBALS_O":{"pos":[-150,-150]},"O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O":{"pos":[50,-450]},"O_TUPTUO_O_OUTPUT_O":{"pos":[850,-1600]},"O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O":{"pos":[-50,-350]},"O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O":{"pos":[150,-550]},"O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O":{"pos":[750,-1400]},"O_1_LUN_O_NUL_1_O":{"pos":[550,-900]},"O_ETAGEN_O_NEGATE_O":{"pos":[-50,-250]},"O_1_0_OT_TIF_O_FIT_TO_0_1_O":{"pos":[250,-650]},"O_LEWEL_MOTOB_O_BOTOM_LEWEL_O":{"pos":[350,-1000]},"O_TOOR_O_ROOT_O":{"pos":[250,-800]},"O_LEWEL_REWOP_O_POWER_LEWEL_O":{"pos":[150,-700]},"O_REWOP_O_POWER_O":{"pos":[350,-900]},"O_YLPITLUM_O_MULTIPLY_O":{"pos":[450,-1100]},"O_DDA_O_ADD_O":{"pos":[550,-1200]}}},"O_PACTAM_HSEM_O_MESH_MATCAP_O":{"pos":[0,-200]},"O_NOITISOPMOC_O_COMPOSITION_O":{"pos":[0,-450],"nodes":{"O_ROLOC_ETIHW_O_WHITE_COLOR_O":{"pos":[0,-100]},"O_ROLOC_ETIHWNON_O_NONWHITE_COLOR_O":{"pos":[0,0]},"O_OEDIW_O_WIDEO_O":{"pos":[0,-300]},"O_EGAMI_O_IMAGE_O":{"pos":[0,-200]}}},"O_EDOC_O_CODE_O":{"pos":[0,-550]}}},"O_ENALP_O_PLANE_O":{"pos":[-250,150]},"O_EGREM_O_MERGE_O":{"pos":[0,250]},"O_THGIL_TNEIBMA_O_AMBIENT_LIGHT_O":{"pos":[-700,550]},"O_SLORTNOC_AREMAC_O_CAMERA_CONTROLS_O":{"pos":[-500,350],"selection":["O_SLORTNOC_TIBRO_AREMAC_O_CAMERA_ORBIT_CONTROLS_O"],"nodes":{"O_SLORTNOC_TIBRO_AREMAC_O_CAMERA_ORBIT_CONTROLS_O":{"pos":[0,0]}}},"O_ENECS_REDNER_AREMAC_O_CAMERA_RENDER_SCENE_O":{"pos":[-500,450]},"O_EGREM_LA_O_AL_MERGE_O":{"pos":[-250,700]},"O_AREMAC_WEIWERP_O_PREWIEW_CAMERA_O":{"pos":[-500,250]},"O_SENKCIHT_O_THICKNES_O":{"pos":[650,550]},"O_EZIS_O_SIZE_O":{"pos":[650,450]},"O_TESFO_PILC_O_CLIP_OFSET_O":{"pos":[650,350]},"O_SNOIDIWIDBUS_EREHPS_O_SPHERE_SUBDIWIDIONS_O":{"pos":[650,250]},"circle1":{"pos":[550,200]},"null1":{"pos":[650,150]},"transform1":{"pos":[550,300]},"CADRevolution1":{"pos":[250,350]},"CADCircle1":{"pos":[450,150]},"axesHelper1":{"pos":[400,600]},"O_EGREM_YRTEMOEG_O_GEOMETRY_MERGE_O":{"pos":[350,450]},"CADTransform1":{"pos":[250,250]}}}}},"shaders":{"/O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O":{"vertex":"#define STANDARD\nvarying vec3 vViewPosition;\n#ifdef USE_TRANSMISSION\n\tvarying vec3 vWorldPosition;\n#endif\n#include <common>\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_normal;\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\n\n\n\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <normal_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\n\n\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\n\tv_POLY_O_SLABOLG_O_GLOBALS_O_normal = vec3(normal);\n\tv_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition = vec3(cameraPosition);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_TUPTUO_O_OUTPUT_O\n\tvec3 transformed = position;\n\tvec3 objectNormal = normal;\n\t#ifdef USE_TANGENT\n\t\tvec3 objectTangent = vec3( tangent.xyz );\n\t#endif\n\n\n\n\t#include <morphcolor_vertex>\n// removed:\n//\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n// removed:\n//\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n#ifdef USE_TRANSMISSION\n\tvWorldPosition = worldPosition.xyz;\n#endif\n}","fragment":"#define STANDARD\n#ifdef PHYSICAL\n\t#define IOR\n\t#define SPECULAR\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef IOR\n\tuniform float ior;\n#endif\n#ifdef SPECULAR\n\tuniform float specularIntensity;\n\tuniform vec3 specularColor;\n\t#ifdef USE_SPECULARINTENSITYMAP\n\t\tuniform sampler2D specularIntensityMap;\n\t#endif\n\t#ifdef USE_SPECULARCOLORMAP\n\t\tuniform sampler2D specularColorMap;\n\t#endif\n#endif\n#ifdef USE_CLEARCOAT\n\tuniform float clearcoat;\n\tuniform float clearcoatRoughness;\n#endif\n#ifdef USE_IRIDESCENCE\n\tuniform float iridescence;\n\tuniform float iridescenceIOR;\n\tuniform float iridescenceThicknessMinimum;\n\tuniform float iridescenceThicknessMaximum;\n#endif\n#ifdef USE_SHEEN\n\tuniform vec3 sheenColor;\n\tuniform float sheenRoughness;\n\t#ifdef USE_SHEENCOLORMAP\n\t\tuniform sampler2D sheenColorMap;\n\t#endif\n\t#ifdef USE_SHEENROUGHNESSMAP\n\t\tuniform sampler2D sheenRoughnessMap;\n\t#endif\n#endif\nvarying vec3 vViewPosition;\n#include <common>\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_0_OT_TIF_O_FIT_TO_0_1_O\n//\n//\n// FIT\n//\n//\nfloat fit(float val, float srcMin, float srcMax, float destMin, float destMax){\n\tfloat src_range = srcMax - srcMin;\n\tfloat dest_range = destMax - destMin;\n\n\tfloat r = (val - srcMin) / src_range;\n\treturn (r * dest_range) + destMin;\n}\nvec2 fit(vec2 val, vec2 srcMin, vec2 srcMax, vec2 destMin, vec2 destMax){\n\treturn vec2(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y)\n\t);\n}\nvec3 fit(vec3 val, vec3 srcMin, vec3 srcMax, vec3 destMin, vec3 destMax){\n\treturn vec3(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\n\t\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z)\n\t);\n}\nvec4 fit(vec4 val, vec4 srcMin, vec4 srcMax, vec4 destMin, vec4 destMax){\n\treturn vec4(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\n\t\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z),\n\t\tfit(val.w, srcMin.w, srcMax.w, destMin.w, destMax.w)\n\t);\n}\n\n//\n//\n// FIT TO 01\n// fits the range [srcMin, srcMax] to [0, 1]\n//\nfloat fitTo01(float val, float srcMin, float srcMax){\n\tfloat size = srcMax - srcMin;\n\treturn (val - srcMin) / size;\n}\nvec2 fitTo01(vec2 val, vec2 srcMin, vec2 srcMax){\n\treturn vec2(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y)\n\t);\n}\nvec3 fitTo01(vec3 val, vec3 srcMin, vec3 srcMax){\n\treturn vec3(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y),\n\t\tfitTo01(val.z, srcMin.z, srcMax.z)\n\t);\n}\nvec4 fitTo01(vec4 val, vec4 srcMin, vec4 srcMax){\n\treturn vec4(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y),\n\t\tfitTo01(val.z, srcMin.z, srcMax.z),\n\t\tfitTo01(val.w, srcMin.w, srcMax.w)\n\t);\n}\n\n//\n//\n// FIT FROM 01\n// fits the range [0, 1] to [destMin, destMax]\n//\nfloat fitFrom01(float val, float destMin, float destMax){\n\treturn fit(val, 0.0, 1.0, destMin, destMax);\n}\nvec2 fitFrom01(vec2 val, vec2 srcMin, vec2 srcMax){\n\treturn vec2(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y)\n\t);\n}\nvec3 fitFrom01(vec3 val, vec3 srcMin, vec3 srcMax){\n\treturn vec3(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y),\n\t\tfitFrom01(val.z, srcMin.z, srcMax.z)\n\t);\n}\nvec4 fitFrom01(vec4 val, vec4 srcMin, vec4 srcMax){\n\treturn vec4(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y),\n\t\tfitFrom01(val.z, srcMin.z, srcMax.z),\n\t\tfitFrom01(val.w, srcMin.w, srcMax.w)\n\t);\n}\n\n//\n//\n// FIT FROM 01 TO VARIANCE\n// fits the range [0, 1] to [center - variance, center + variance]\n//\nfloat fitFrom01ToVariance(float val, float center, float variance){\n\treturn fitFrom01(val, center - variance, center + variance);\n}\nvec2 fitFrom01ToVariance(vec2 val, vec2 center, vec2 variance){\n\treturn vec2(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y)\n\t);\n}\nvec3 fitFrom01ToVariance(vec3 val, vec3 center, vec3 variance){\n\treturn vec3(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y),\n\t\tfitFrom01ToVariance(val.z, center.z, variance.z)\n\t);\n}\nvec4 fitFrom01ToVariance(vec4 val, vec4 center, vec4 variance){\n\treturn vec4(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y),\n\t\tfitFrom01ToVariance(val.z, center.z, variance.z),\n\t\tfitFrom01ToVariance(val.w, center.w, variance.w)\n\t);\n}\n\n\n\n\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_normal;\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\n\n\n\n#include <packing>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <bsdfs>\n#include <iridescence_fragment>\n#include <cube_uv_reflection_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_physical_pars_fragment>\n#include <fog_pars_fragment>\n#include <lights_pars_begin>\n#include <normal_pars_fragment>\n#include <lights_physical_pars_fragment>\n#include <transmission_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <clearcoat_pars_fragment>\n#include <iridescence_pars_fragment>\n#include <roughnessmap_pars_fragment>\n#include <metalnessmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nstruct SSSModel {\n\tbool isActive;\n\tvec3 color;\n\tfloat thickness;\n\tfloat power;\n\tfloat scale;\n\tfloat distortion;\n\tfloat ambient;\n\tfloat attenuation;\n};\n\nvoid RE_Direct_Scattering(\n\tconst in IncidentLight directLight,\n\tconst in GeometricContext geometry,\n\tconst in SSSModel sssModel,\n\tinout ReflectedLight reflectedLight\n\t){\n\tvec3 scatteringHalf = normalize(directLight.direction + (geometry.normal * sssModel.distortion));\n\tfloat scatteringDot = pow(saturate(dot(geometry.viewDir, -scatteringHalf)), sssModel.power) * sssModel.scale;\n\tvec3 scatteringIllu = (scatteringDot + sssModel.ambient) * (sssModel.color * (1.0-sssModel.thickness));\n\treflectedLight.directDiffuse += scatteringIllu * sssModel.attenuation * directLight.color;\n}\n\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\n\n\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O\n\tvec3 v_POLY_O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O_normalized = normalize(v_POLY_O_SLABOLG_O_GLOBALS_O_normal);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_ETAGEN_O_NEGATE_O\n\tvec3 v_POLY_O_ETAGEN_O_NEGATE_O_val = -1.0 * v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O\n\tvec3 v_POLY_O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O_normalized = normalize(v_POLY_O_ETAGEN_O_NEGATE_O_val);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O\n\tfloat v_POLY_O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O_val = dot(v_POLY_O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O_normalized, v_POLY_O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O_normalized);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_0_OT_TIF_O_FIT_TO_0_1_O\n\tfloat v_POLY_O_1_0_OT_TIF_O_FIT_TO_0_1_O_val = fitTo01(v_POLY_O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O_val, 0.0333, 1.0);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_LUN_O_NUL_1_O\n\tfloat v_POLY_O_1_LUN_O_NUL_1_O_val = v_POLY_O_1_0_OT_TIF_O_FIT_TO_0_1_O_val;\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O\n\tvec3 v_POLY_O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O_vec3 = vec3(v_POLY_O_1_LUN_O_NUL_1_O_val, v_POLY_O_1_LUN_O_NUL_1_O_val, v_POLY_O_1_LUN_O_NUL_1_O_val);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_TUPTUO_O_OUTPUT_O\n\tdiffuseColor.xyz = v_POLY_O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O_vec3;\n\tfloat POLY_metalness = 1.0;\n\tfloat POLY_roughness = 1.0;\n\tvec3 POLY_emissive = vec3(1.0, 1.0, 1.0);\n\tSSSModel POLY_SSSModel = SSSModel(/*isActive*/false,/*color*/vec3(1.0, 1.0, 1.0), /*thickness*/0.1, /*power*/2.0, /*scale*/16.0, /*distortion*/0.1,/*ambient*/0.4,/*attenuation*/0.8 );\n\n\n\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive * POLY_emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\tfloat roughnessFactor = roughness * POLY_roughness;\n\n#ifdef USE_ROUGHNESSMAP\n\n\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\n\n\t// reads channel G, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\n\troughnessFactor *= texelRoughness.g;\n\n#endif\n\n\tfloat metalnessFactor = metalness * POLY_metalness;\n\n#ifdef USE_METALNESSMAP\n\n\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\n\n\t// reads channel B, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\n\tmetalnessFactor *= texelMetalness.b;\n\n#endif\n\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <clearcoat_normal_fragment_begin>\n\t#include <clearcoat_normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_physical_fragment>\n\t#include <lights_fragment_begin>\nif(POLY_SSSModel.isActive){\n\tRE_Direct_Scattering(directLight, geometry, POLY_SSSModel, reflectedLight);\n}\n\n\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\n\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\n\t#include <transmission_fragment>\n\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\n\t#ifdef USE_SHEEN\n\t\tfloat sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );\n\t\toutgoingLight = outgoingLight * sheenEnergyComp + sheenSpecular;\n\t#endif\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) );\n\t\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\n\t\toutgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + clearcoatSpecular * material.clearcoat;\n\t#endif\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}","customDepthMaterial.vertex":"#include <common>\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_normal;\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\n\n\n\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n// removed:\n//\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n// removed:\n//\t#include <begin_vertex>\n\n\n\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\n\tv_POLY_O_SLABOLG_O_GLOBALS_O_normal = vec3(normal);\n\tv_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition = vec3(cameraPosition);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_TUPTUO_O_OUTPUT_O\n\tvec3 transformed = position;\n\tvec3 objectNormal = normal;\n\t#ifdef USE_TANGENT\n\t\tvec3 objectTangent = vec3( tangent.xyz );\n\t#endif\n\n\n\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvHighPrecisionZW = gl_Position.zw;\n}","customDepthMaterial.fragment":"\n// INSERT DEFINES\n\n\n#if DEPTH_PACKING == 3200\n\n\tuniform float opacity;\n\n#endif\n\n#include <common>\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_0_OT_TIF_O_FIT_TO_0_1_O\n//\n//\n// FIT\n//\n//\nfloat fit(float val, float srcMin, float srcMax, float destMin, float destMax){\n\tfloat src_range = srcMax - srcMin;\n\tfloat dest_range = destMax - destMin;\n\n\tfloat r = (val - srcMin) / src_range;\n\treturn (r * dest_range) + destMin;\n}\nvec2 fit(vec2 val, vec2 srcMin, vec2 srcMax, vec2 destMin, vec2 destMax){\n\treturn vec2(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y)\n\t);\n}\nvec3 fit(vec3 val, vec3 srcMin, vec3 srcMax, vec3 destMin, vec3 destMax){\n\treturn vec3(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\n\t\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z)\n\t);\n}\nvec4 fit(vec4 val, vec4 srcMin, vec4 srcMax, vec4 destMin, vec4 destMax){\n\treturn vec4(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\n\t\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z),\n\t\tfit(val.w, srcMin.w, srcMax.w, destMin.w, destMax.w)\n\t);\n}\n\n//\n//\n// FIT TO 01\n// fits the range [srcMin, srcMax] to [0, 1]\n//\nfloat fitTo01(float val, float srcMin, float srcMax){\n\tfloat size = srcMax - srcMin;\n\treturn (val - srcMin) / size;\n}\nvec2 fitTo01(vec2 val, vec2 srcMin, vec2 srcMax){\n\treturn vec2(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y)\n\t);\n}\nvec3 fitTo01(vec3 val, vec3 srcMin, vec3 srcMax){\n\treturn vec3(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y),\n\t\tfitTo01(val.z, srcMin.z, srcMax.z)\n\t);\n}\nvec4 fitTo01(vec4 val, vec4 srcMin, vec4 srcMax){\n\treturn vec4(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y),\n\t\tfitTo01(val.z, srcMin.z, srcMax.z),\n\t\tfitTo01(val.w, srcMin.w, srcMax.w)\n\t);\n}\n\n//\n//\n// FIT FROM 01\n// fits the range [0, 1] to [destMin, destMax]\n//\nfloat fitFrom01(float val, float destMin, float destMax){\n\treturn fit(val, 0.0, 1.0, destMin, destMax);\n}\nvec2 fitFrom01(vec2 val, vec2 srcMin, vec2 srcMax){\n\treturn vec2(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y)\n\t);\n}\nvec3 fitFrom01(vec3 val, vec3 srcMin, vec3 srcMax){\n\treturn vec3(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y),\n\t\tfitFrom01(val.z, srcMin.z, srcMax.z)\n\t);\n}\nvec4 fitFrom01(vec4 val, vec4 srcMin, vec4 srcMax){\n\treturn vec4(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y),\n\t\tfitFrom01(val.z, srcMin.z, srcMax.z),\n\t\tfitFrom01(val.w, srcMin.w, srcMax.w)\n\t);\n}\n\n//\n//\n// FIT FROM 01 TO VARIANCE\n// fits the range [0, 1] to [center - variance, center + variance]\n//\nfloat fitFrom01ToVariance(float val, float center, float variance){\n\treturn fitFrom01(val, center - variance, center + variance);\n}\nvec2 fitFrom01ToVariance(vec2 val, vec2 center, vec2 variance){\n\treturn vec2(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y)\n\t);\n}\nvec3 fitFrom01ToVariance(vec3 val, vec3 center, vec3 variance){\n\treturn vec3(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y),\n\t\tfitFrom01ToVariance(val.z, center.z, variance.z)\n\t);\n}\nvec4 fitFrom01ToVariance(vec4 val, vec4 center, vec4 variance){\n\treturn vec4(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y),\n\t\tfitFrom01ToVariance(val.z, center.z, variance.z),\n\t\tfitFrom01ToVariance(val.w, center.w, variance.w)\n\t);\n}\n\n\n\n\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_normal;\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\n\n\n\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\n\nvarying vec2 vHighPrecisionZW;\n\nstruct SSSModel {\n\tbool isActive;\n\tvec3 color;\n\tfloat thickness;\n\tfloat power;\n\tfloat scale;\n\tfloat distortion;\n\tfloat ambient;\n\tfloat attenuation;\n};\n\nvoid RE_Direct_Scattering(\n\tconst in IncidentLight directLight,\n\tconst in GeometricContext geometry,\n\tconst in SSSModel sssModel,\n\tinout ReflectedLight reflectedLight\n\t){\n\tvec3 scatteringHalf = normalize(directLight.direction + (geometry.normal * sssModel.distortion));\n\tfloat scatteringDot = pow(saturate(dot(geometry.viewDir, -scatteringHalf)), sssModel.power) * sssModel.scale;\n\tvec3 scatteringIllu = (scatteringDot + sssModel.ambient) * (sssModel.color * (1.0-sssModel.thickness));\n\treflectedLight.directDiffuse += scatteringIllu * sssModel.attenuation * directLight.color;\n}\n\nvoid main() {\n\n\t#include <clipping_planes_fragment>\n\n\tvec4 diffuseColor = vec4( 1.0 );\n\n\t#if DEPTH_PACKING == 3200\n\n\t\tdiffuseColor.a = opacity;\n\n\t#endif\n\n\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\n\n\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O\n\tvec3 v_POLY_O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O_normalized = normalize(v_POLY_O_SLABOLG_O_GLOBALS_O_normal);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_ETAGEN_O_NEGATE_O\n\tvec3 v_POLY_O_ETAGEN_O_NEGATE_O_val = -1.0 * v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O\n\tvec3 v_POLY_O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O_normalized = normalize(v_POLY_O_ETAGEN_O_NEGATE_O_val);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O\n\tfloat v_POLY_O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O_val = dot(v_POLY_O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O_normalized, v_POLY_O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O_normalized);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_0_OT_TIF_O_FIT_TO_0_1_O\n\tfloat v_POLY_O_1_0_OT_TIF_O_FIT_TO_0_1_O_val = fitTo01(v_POLY_O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O_val, 0.0333, 1.0);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_LUN_O_NUL_1_O\n\tfloat v_POLY_O_1_LUN_O_NUL_1_O_val = v_POLY_O_1_0_OT_TIF_O_FIT_TO_0_1_O_val;\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O\n\tvec3 v_POLY_O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O_vec3 = vec3(v_POLY_O_1_LUN_O_NUL_1_O_val, v_POLY_O_1_LUN_O_NUL_1_O_val, v_POLY_O_1_LUN_O_NUL_1_O_val);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_TUPTUO_O_OUTPUT_O\n\tdiffuseColor.xyz = v_POLY_O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O_vec3;\n\tfloat POLY_metalness = 1.0;\n\tfloat POLY_roughness = 1.0;\n\tvec3 POLY_emissive = vec3(1.0, 1.0, 1.0);\n\tSSSModel POLY_SSSModel = SSSModel(/*isActive*/false,/*color*/vec3(1.0, 1.0, 1.0), /*thickness*/0.1, /*power*/2.0, /*scale*/16.0, /*distortion*/0.1,/*ambient*/0.4,/*attenuation*/0.8 );\n\n\n\n\n\t// INSERT BODY\n\t// the new body lines should be added before the alphatest_fragment\n\t// so that alpha is set before (which is really how it would be set if the alphamap_fragment above was used by the material node parameters)\n\n\t#include <alphatest_fragment>\n\n\t#include <logdepthbuf_fragment>\n\n\n\t// Higher precision equivalent of gl_FragCoord.z. This assumes depthRange has been left to its default values.\n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\n\t#if DEPTH_PACKING == 3200\n\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), diffuseColor.a );\n\n\t#elif DEPTH_PACKING == 3201\n\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\n\t#endif\n\n}\n","customDistanceMaterial.vertex":"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include <common>\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_normal;\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\n\n\n\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n// removed:\n//\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n// removed:\n//\t#include <begin_vertex>\n\n\n\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\n\tv_POLY_O_SLABOLG_O_GLOBALS_O_normal = vec3(normal);\n\tv_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition = vec3(cameraPosition);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_TUPTUO_O_OUTPUT_O\n\tvec3 transformed = position;\n\tvec3 objectNormal = normal;\n\t#ifdef USE_TANGENT\n\t\tvec3 objectTangent = vec3( tangent.xyz );\n\t#endif\n\n\n\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <worldpos_vertex>\n\t#include <clipping_planes_vertex>\n\tvWorldPosition = worldPosition.xyz;\n}","customDistanceMaterial.fragment":"\n// INSERT DEFINES\n\n#define DISTANCE\n\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n\n#include <common>\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_0_OT_TIF_O_FIT_TO_0_1_O\n//\n//\n// FIT\n//\n//\nfloat fit(float val, float srcMin, float srcMax, float destMin, float destMax){\n\tfloat src_range = srcMax - srcMin;\n\tfloat dest_range = destMax - destMin;\n\n\tfloat r = (val - srcMin) / src_range;\n\treturn (r * dest_range) + destMin;\n}\nvec2 fit(vec2 val, vec2 srcMin, vec2 srcMax, vec2 destMin, vec2 destMax){\n\treturn vec2(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y)\n\t);\n}\nvec3 fit(vec3 val, vec3 srcMin, vec3 srcMax, vec3 destMin, vec3 destMax){\n\treturn vec3(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\n\t\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z)\n\t);\n}\nvec4 fit(vec4 val, vec4 srcMin, vec4 srcMax, vec4 destMin, vec4 destMax){\n\treturn vec4(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\n\t\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z),\n\t\tfit(val.w, srcMin.w, srcMax.w, destMin.w, destMax.w)\n\t);\n}\n\n//\n//\n// FIT TO 01\n// fits the range [srcMin, srcMax] to [0, 1]\n//\nfloat fitTo01(float val, float srcMin, float srcMax){\n\tfloat size = srcMax - srcMin;\n\treturn (val - srcMin) / size;\n}\nvec2 fitTo01(vec2 val, vec2 srcMin, vec2 srcMax){\n\treturn vec2(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y)\n\t);\n}\nvec3 fitTo01(vec3 val, vec3 srcMin, vec3 srcMax){\n\treturn vec3(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y),\n\t\tfitTo01(val.z, srcMin.z, srcMax.z)\n\t);\n}\nvec4 fitTo01(vec4 val, vec4 srcMin, vec4 srcMax){\n\treturn vec4(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y),\n\t\tfitTo01(val.z, srcMin.z, srcMax.z),\n\t\tfitTo01(val.w, srcMin.w, srcMax.w)\n\t);\n}\n\n//\n//\n// FIT FROM 01\n// fits the range [0, 1] to [destMin, destMax]\n//\nfloat fitFrom01(float val, float destMin, float destMax){\n\treturn fit(val, 0.0, 1.0, destMin, destMax);\n}\nvec2 fitFrom01(vec2 val, vec2 srcMin, vec2 srcMax){\n\treturn vec2(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y)\n\t);\n}\nvec3 fitFrom01(vec3 val, vec3 srcMin, vec3 srcMax){\n\treturn vec3(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y),\n\t\tfitFrom01(val.z, srcMin.z, srcMax.z)\n\t);\n}\nvec4 fitFrom01(vec4 val, vec4 srcMin, vec4 srcMax){\n\treturn vec4(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y),\n\t\tfitFrom01(val.z, srcMin.z, srcMax.z),\n\t\tfitFrom01(val.w, srcMin.w, srcMax.w)\n\t);\n}\n\n//\n//\n// FIT FROM 01 TO VARIANCE\n// fits the range [0, 1] to [center - variance, center + variance]\n//\nfloat fitFrom01ToVariance(float val, float center, float variance){\n\treturn fitFrom01(val, center - variance, center + variance);\n}\nvec2 fitFrom01ToVariance(vec2 val, vec2 center, vec2 variance){\n\treturn vec2(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y)\n\t);\n}\nvec3 fitFrom01ToVariance(vec3 val, vec3 center, vec3 variance){\n\treturn vec3(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y),\n\t\tfitFrom01ToVariance(val.z, center.z, variance.z)\n\t);\n}\nvec4 fitFrom01ToVariance(vec4 val, vec4 center, vec4 variance){\n\treturn vec4(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y),\n\t\tfitFrom01ToVariance(val.z, center.z, variance.z),\n\t\tfitFrom01ToVariance(val.w, center.w, variance.w)\n\t);\n}\n\n\n\n\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_normal;\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\n\n\n\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <clipping_planes_pars_fragment>\n\nstruct SSSModel {\n\tbool isActive;\n\tvec3 color;\n\tfloat thickness;\n\tfloat power;\n\tfloat scale;\n\tfloat distortion;\n\tfloat ambient;\n\tfloat attenuation;\n};\n\nvoid RE_Direct_Scattering(\n\tconst in IncidentLight directLight,\n\tconst in GeometricContext geometry,\n\tconst in SSSModel sssModel,\n\tinout ReflectedLight reflectedLight\n\t){\n\tvec3 scatteringHalf = normalize(directLight.direction + (geometry.normal * sssModel.distortion));\n\tfloat scatteringDot = pow(saturate(dot(geometry.viewDir, -scatteringHalf)), sssModel.power) * sssModel.scale;\n\tvec3 scatteringIllu = (scatteringDot + sssModel.ambient) * (sssModel.color * (1.0-sssModel.thickness));\n\treflectedLight.directDiffuse += scatteringIllu * sssModel.attenuation * directLight.color;\n}\n\nvoid main() {\n\n\t#include <clipping_planes_fragment>\n\n\tvec4 diffuseColor = vec4( 1.0 );\n\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\n\n\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O\n\tvec3 v_POLY_O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O_normalized = normalize(v_POLY_O_SLABOLG_O_GLOBALS_O_normal);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_ETAGEN_O_NEGATE_O\n\tvec3 v_POLY_O_ETAGEN_O_NEGATE_O_val = -1.0 * v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O\n\tvec3 v_POLY_O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O_normalized = normalize(v_POLY_O_ETAGEN_O_NEGATE_O_val);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O\n\tfloat v_POLY_O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O_val = dot(v_POLY_O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O_normalized, v_POLY_O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O_normalized);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_0_OT_TIF_O_FIT_TO_0_1_O\n\tfloat v_POLY_O_1_0_OT_TIF_O_FIT_TO_0_1_O_val = fitTo01(v_POLY_O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O_val, 0.0333, 1.0);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_LUN_O_NUL_1_O\n\tfloat v_POLY_O_1_LUN_O_NUL_1_O_val = v_POLY_O_1_0_OT_TIF_O_FIT_TO_0_1_O_val;\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O\n\tvec3 v_POLY_O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O_vec3 = vec3(v_POLY_O_1_LUN_O_NUL_1_O_val, v_POLY_O_1_LUN_O_NUL_1_O_val, v_POLY_O_1_LUN_O_NUL_1_O_val);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_TUPTUO_O_OUTPUT_O\n\tdiffuseColor.xyz = v_POLY_O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O_vec3;\n\tfloat POLY_metalness = 1.0;\n\tfloat POLY_roughness = 1.0;\n\tvec3 POLY_emissive = vec3(1.0, 1.0, 1.0);\n\tSSSModel POLY_SSSModel = SSSModel(/*isActive*/false,/*color*/vec3(1.0, 1.0, 1.0), /*thickness*/0.1, /*power*/2.0, /*scale*/16.0, /*distortion*/0.1,/*ambient*/0.4,/*attenuation*/0.8 );\n\n\n\n\n\t// INSERT BODY\n\n\t#include <alphatest_fragment>\n\n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist ); // clamp to [ 0, 1 ]\n\n\tgl_FragColor = packDepthToRGBA( dist );\n\n}\n","customDepthDOFMaterial.vertex":"#include <common>\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_normal;\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\n\n\n\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n// removed:\n//\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n// removed:\n//\t#include <begin_vertex>\n\n\n\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\n\tv_POLY_O_SLABOLG_O_GLOBALS_O_normal = vec3(normal);\n\tv_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition = vec3(cameraPosition);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_TUPTUO_O_OUTPUT_O\n\tvec3 transformed = position;\n\tvec3 objectNormal = normal;\n\t#ifdef USE_TANGENT\n\t\tvec3 objectTangent = vec3( tangent.xyz );\n\t#endif\n\n\n\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvHighPrecisionZW = gl_Position.zw;\n}","customDepthDOFMaterial.fragment":"\n// INSERT DEFINES\n\n\n#if DEPTH_PACKING == 3200\n\n\tuniform float opacity;\n\n#endif\n\n#include <common>\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_0_OT_TIF_O_FIT_TO_0_1_O\n//\n//\n// FIT\n//\n//\nfloat fit(float val, float srcMin, float srcMax, float destMin, float destMax){\n\tfloat src_range = srcMax - srcMin;\n\tfloat dest_range = destMax - destMin;\n\n\tfloat r = (val - srcMin) / src_range;\n\treturn (r * dest_range) + destMin;\n}\nvec2 fit(vec2 val, vec2 srcMin, vec2 srcMax, vec2 destMin, vec2 destMax){\n\treturn vec2(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y)\n\t);\n}\nvec3 fit(vec3 val, vec3 srcMin, vec3 srcMax, vec3 destMin, vec3 destMax){\n\treturn vec3(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\n\t\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z)\n\t);\n}\nvec4 fit(vec4 val, vec4 srcMin, vec4 srcMax, vec4 destMin, vec4 destMax){\n\treturn vec4(\n\t\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\n\t\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\n\t\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z),\n\t\tfit(val.w, srcMin.w, srcMax.w, destMin.w, destMax.w)\n\t);\n}\n\n//\n//\n// FIT TO 01\n// fits the range [srcMin, srcMax] to [0, 1]\n//\nfloat fitTo01(float val, float srcMin, float srcMax){\n\tfloat size = srcMax - srcMin;\n\treturn (val - srcMin) / size;\n}\nvec2 fitTo01(vec2 val, vec2 srcMin, vec2 srcMax){\n\treturn vec2(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y)\n\t);\n}\nvec3 fitTo01(vec3 val, vec3 srcMin, vec3 srcMax){\n\treturn vec3(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y),\n\t\tfitTo01(val.z, srcMin.z, srcMax.z)\n\t);\n}\nvec4 fitTo01(vec4 val, vec4 srcMin, vec4 srcMax){\n\treturn vec4(\n\t\tfitTo01(val.x, srcMin.x, srcMax.x),\n\t\tfitTo01(val.y, srcMin.y, srcMax.y),\n\t\tfitTo01(val.z, srcMin.z, srcMax.z),\n\t\tfitTo01(val.w, srcMin.w, srcMax.w)\n\t);\n}\n\n//\n//\n// FIT FROM 01\n// fits the range [0, 1] to [destMin, destMax]\n//\nfloat fitFrom01(float val, float destMin, float destMax){\n\treturn fit(val, 0.0, 1.0, destMin, destMax);\n}\nvec2 fitFrom01(vec2 val, vec2 srcMin, vec2 srcMax){\n\treturn vec2(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y)\n\t);\n}\nvec3 fitFrom01(vec3 val, vec3 srcMin, vec3 srcMax){\n\treturn vec3(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y),\n\t\tfitFrom01(val.z, srcMin.z, srcMax.z)\n\t);\n}\nvec4 fitFrom01(vec4 val, vec4 srcMin, vec4 srcMax){\n\treturn vec4(\n\t\tfitFrom01(val.x, srcMin.x, srcMax.x),\n\t\tfitFrom01(val.y, srcMin.y, srcMax.y),\n\t\tfitFrom01(val.z, srcMin.z, srcMax.z),\n\t\tfitFrom01(val.w, srcMin.w, srcMax.w)\n\t);\n}\n\n//\n//\n// FIT FROM 01 TO VARIANCE\n// fits the range [0, 1] to [center - variance, center + variance]\n//\nfloat fitFrom01ToVariance(float val, float center, float variance){\n\treturn fitFrom01(val, center - variance, center + variance);\n}\nvec2 fitFrom01ToVariance(vec2 val, vec2 center, vec2 variance){\n\treturn vec2(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y)\n\t);\n}\nvec3 fitFrom01ToVariance(vec3 val, vec3 center, vec3 variance){\n\treturn vec3(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y),\n\t\tfitFrom01ToVariance(val.z, center.z, variance.z)\n\t);\n}\nvec4 fitFrom01ToVariance(vec4 val, vec4 center, vec4 variance){\n\treturn vec4(\n\t\tfitFrom01ToVariance(val.x, center.x, variance.x),\n\t\tfitFrom01ToVariance(val.y, center.y, variance.y),\n\t\tfitFrom01ToVariance(val.z, center.z, variance.z),\n\t\tfitFrom01ToVariance(val.w, center.w, variance.w)\n\t);\n}\n\n\n\n\n\n\n\n// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_SLABOLG_O_GLOBALS_O\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_normal;\nvarying vec3 v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\n\n\n\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\n\nvarying vec2 vHighPrecisionZW;\n\nstruct SSSModel {\n\tbool isActive;\n\tvec3 color;\n\tfloat thickness;\n\tfloat power;\n\tfloat scale;\n\tfloat distortion;\n\tfloat ambient;\n\tfloat attenuation;\n};\n\nvoid RE_Direct_Scattering(\n\tconst in IncidentLight directLight,\n\tconst in GeometricContext geometry,\n\tconst in SSSModel sssModel,\n\tinout ReflectedLight reflectedLight\n\t){\n\tvec3 scatteringHalf = normalize(directLight.direction + (geometry.normal * sssModel.distortion));\n\tfloat scatteringDot = pow(saturate(dot(geometry.viewDir, -scatteringHalf)), sssModel.power) * sssModel.scale;\n\tvec3 scatteringIllu = (scatteringDot + sssModel.ambient) * (sssModel.color * (1.0-sssModel.thickness));\n\treflectedLight.directDiffuse += scatteringIllu * sssModel.attenuation * directLight.color;\n}\n\nvoid main() {\n\n\t#include <clipping_planes_fragment>\n\n\tvec4 diffuseColor = vec4( 1.0 );\n\n\t#if DEPTH_PACKING == 3200\n\n\t\tdiffuseColor.a = opacity;\n\n\t#endif\n\n\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\n\n\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O\n\tvec3 v_POLY_O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O_normalized = normalize(v_POLY_O_SLABOLG_O_GLOBALS_O_normal);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_ETAGEN_O_NEGATE_O\n\tvec3 v_POLY_O_ETAGEN_O_NEGATE_O_val = -1.0 * v_POLY_O_SLABOLG_O_GLOBALS_O_cameraPosition;\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O\n\tvec3 v_POLY_O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O_normalized = normalize(v_POLY_O_ETAGEN_O_NEGATE_O_val);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O\n\tfloat v_POLY_O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O_val = dot(v_POLY_O_LAMRON_EZILAMRON_O_NORMALIZE_NORMAL_O_normalized, v_POLY_O_NOITISOP_AREMAC_EZILAMRON_O_NORMALIZE_CAMERA_POSITION_O_normalized);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_0_OT_TIF_O_FIT_TO_0_1_O\n\tfloat v_POLY_O_1_0_OT_TIF_O_FIT_TO_0_1_O_val = fitTo01(v_POLY_O_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_O_val, 0.0333, 1.0);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_1_LUN_O_NUL_1_O\n\tfloat v_POLY_O_1_LUN_O_NUL_1_O_val = v_POLY_O_1_0_OT_TIF_O_FIT_TO_0_1_O_val;\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O\n\tvec3 v_POLY_O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O_vec3 = vec3(v_POLY_O_1_LUN_O_NUL_1_O_val, v_POLY_O_1_LUN_O_NUL_1_O_val, v_POLY_O_1_LUN_O_NUL_1_O_val);\n\t\n\t// /O_YRTEMOEG_O_GEOMETRY_O/O_TEN_LAIRETAM_O_MATERIAL_NET_O/O_REDLIUB_DRADNATS_HSEM_O_MESH_STANDARD_BUILDER_O/O_TUPTUO_O_OUTPUT_O\n\tdiffuseColor.xyz = v_POLY_O_ROTCEW_TAOLF_ELPIRT_NOITISOP_AREMAC_DEZILAMRON_DNA_LAMRON_DEZILAMRON_MORF_TCUDORP_TOD_O_DOT_PRODUCT_FROM_NORMALIZED_NORMAL_AND_NORMALIZED_CAMERA_POSITION_TRIPLE_FLOAT_WECTOR_O_vec3;\n\tfloat POLY_metalness = 1.0;\n\tfloat POLY_roughness = 1.0;\n\tvec3 POLY_emissive = vec3(1.0, 1.0, 1.0);\n\tSSSModel POLY_SSSModel = SSSModel(/*isActive*/false,/*color*/vec3(1.0, 1.0, 1.0), /*thickness*/0.1, /*power*/2.0, /*scale*/16.0, /*distortion*/0.1,/*ambient*/0.4,/*attenuation*/0.8 );\n\n\n\n\n\t// INSERT BODY\n\t// the new body lines should be added before the alphatest_fragment\n\t// so that alpha is set before (which is really how it would be set if the alphamap_fragment above was used by the material node parameters)\n\n\t#include <alphatest_fragment>\n\n\t#include <logdepthbuf_fragment>\n\n\n\t// Higher precision equivalent of gl_FragCoord.z. This assumes depthRange has been left to its default values.\n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\n\t#if DEPTH_PACKING == 3200\n\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), diffuseColor.a );\n\n\t#elif DEPTH_PACKING == 3201\n\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\n\t#endif\n\n}\n"}},"embeddedPolyNodes":{"sop/video":{"metadata":{"version":{"editor":"1.2.77-1","polygonjs":"1.2.77","marketplace":1},"createdAt":1672789595122},"nodeContext":"sop","inputs":{"simple":{"min":0,"max":1,"names":["input geometry"]}},"params":[{"name":"url","type":"string","rawInput":"textures/sintel.mp4?timestamp=1672756499571","initValue":"","options":{"fileBrowse":{"extensions":["mp4","ogv"]}}},{"name":"play","type":"boolean","rawInput":true,"initValue":true,"options":{}},{"name":"muted","type":"boolean","rawInput":true,"initValue":true,"options":{}},{"name":"loop","type":"boolean","rawInput":true,"initValue":true,"options":{}},{"name":"useInputObject","type":"boolean","rawInput":false,"initValue":false,"options":{"separatorBefore":true,"separatorAfter":false}}],"nodes":{"plane1":{"type":"plane","params":{"size":["copRes('../COP/video1').x / copRes('../COP/video1').y",1],"stepSize":0.24076,"direction":[0,0,1]}},"material1":{"type":"material","params":{"material":"../MAT/meshBasic_VIDEO"},"inputs":["switch1"]},"merge1":{"type":"merge","inputs":["switch2","merge2"],"flags":{"display":true},"cloned_state_overriden":true},"objectProperties2":{"type":"objectProperties","params":{"tname":true,"name":"videoObject"},"inputs":["material1"]},"transform_scale_to_height_1":{"type":"transform","params":{"scale":"1 / bbox(0,'size').y"},"inputs":["plane1"]},"merge2":{"type":"merge","inputs":["transform_PLAY_PAUSE_POSITION","transform_MUTE_POSITION1","transform_PLAYBAR"],"cloned_state_overriden":true},"transform_PLAY_PAUSE_POSITION":{"type":"transform","params":{"applyOn":1,"objectMode":1,"t":["bbox(chsop('ref'), 'min').x + ch('padding')","bbox(chsop('ref'), 'min').y + ch('padding')",0],"ref":{"type":"node_path","default_value":"","options":{"spare":true},"raw_input":"../REF_videoObject"},"padding":{"type":"float","default_value":0,"options":{"spare":true},"raw_input":0.03}},"inputs":["subnet_PLAY_PAUSE_BUTTON"]},"transform_MUTE_POSITION1":{"type":"transform","params":{"applyOn":1,"objectMode":1,"t":["bbox(chsop('ref'), 'max').x - ch('padding')","bbox(chsop('ref'), 'min').y + ch('padding')",0],"ref":{"type":"node_path","default_value":"","options":{"spare":true},"raw_input":"../REF_videoObject"},"padding":{"type":"float","default_value":0,"options":{"spare":true},"raw_input":0.03}},"inputs":["subnet_MUTE_BUTTON"]},"box1":{"type":"box","inputs":["merge9"]},"material4":{"type":"material","params":{"material":"../MAT/meshBasic_VIDEO_BACK"},"inputs":["transform3"]},"merge8":{"type":"merge","inputs":["REF_videoObject","material4"],"cloned_state_overriden":true},"transform1":{"type":"transform","params":{"t":[0,0,-0.06348698030209562]},"inputs":["switch1"]},"merge9":{"type":"merge","params":{"compact":true},"inputs":["switch1","transform1"]},"transform3":{"type":"transform","params":{"t":[0,0,-0.01]},"inputs":["box1"]},"subnetOutput1":{"type":"subnetOutput","inputs":["hierarchy1"]},"hierarchy1":{"type":"hierarchy","inputs":["merge1"]},"switch1":{"type":"switch","params":{"input":"ch(\"../useInputObject\")"},"inputs":["transform_scale_to_height_1","subnetInput1"]},"subnetInput1":{"type":"subnetInput"},"switch2":{"type":"switch","params":{"input":"ch(\"../useInputObject\")"},"inputs":["merge8","REF_videoObject"]},"REF_videoObject":{"type":"null","inputs":["objectProperties2"]},"transform_PLAYBAR":{"type":"transform","params":{"applyOn":1,"objectMode":1,"t":[0,"bbox(chsop('ref'), 'min').y - ch('padding')",0],"s":["bbox(chsop('ref'), 'size').x",1,1],"ref":{"type":"node_path","default_value":"","options":{"spare":true},"raw_input":"../REF_videoObject"},"padding":{"type":"float","default_value":0,"options":{"spare":true},"raw_input":0.03}},"inputs":["subnet_PLAYBAR"]},"MAT":{"type":"materialsNetwork","nodes":{"meshBasic_MUTE":{"type":"meshBasic","params":{"useVertexColors":true,"transparent":true}},"meshBasic_PLAY_PAUSE":{"type":"meshBasic","params":{"useVertexColors":true,"transparent":true}},"meshBasic_VIDEO":{"type":"meshBasic","params":{"useMap":true,"map":"../../COP/video1"}},"meshBasic_VIDEO_BACK":{"type":"meshBasic","params":{"color":[0,0,0],"useVertexColors":true,"transparent":true}},"meshBasicBuilder_PLAYBAR":{"type":"meshBasicBuilder","nodes":{"add1":{"type":"add","params":{"add0":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"add1":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"add2":{"type":"float","default_value":0,"options":{"spare":true,"editable":true}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"add0","node":"vec2ToFloat1","output":"x"},{"index":1,"inputName":"add1","node":"param1","output":"val"}],"connection_points":{"in":[{"name":"add0","type":"float"},{"name":"add1","type":"float"},{"name":"add2","type":"float"}],"out":[{"name":"sum","type":"float"}]}},"compare1":{"type":"compare","params":{"value0":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"value1":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"value0","node":"vec2ToFloat1","output":"x"},{"index":1,"inputName":"value1","node":"param1","output":"val"}],"connection_points":{"in":[{"name":"value0","type":"float"},{"name":"value1","type":"float"}],"out":[{"name":"val","type":"bool"}]}},"constant1":{"type":"constant","params":{"type":4,"color":[0.14901960784313725,0.14901960784313725,0.14901960784313725],"asColor":true},"connection_points":{"in":[],"out":[{"name":"val","type":"vec3"}]}},"constant2":{"type":"constant","params":{"type":4,"color":[0.28627450980392155,0.8549019607843137,0.24313725490196078],"asColor":true},"connection_points":{"in":[],"out":[{"name":"val","type":"vec3"}]}},"globals1":{"type":"globals"},"mix1":{"type":"mix","params":{"value0":{"type":"vector3","default_value":[0,0,0],"options":{"spare":true,"editable":false}},"value1":{"type":"vector3","default_value":[0,0,0],"options":{"spare":true,"editable":false}},"blend":{"type":"float","default_value":0.5,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"value0","node":"constant1","output":"val"},{"index":1,"inputName":"value1","node":"constant2","output":"val"},{"index":2,"inputName":"blend","node":"smoothstep1","output":"val"}],"connection_points":{"in":[{"name":"value0","type":"vec3"},{"name":"value1","type":"vec3"},{"name":"blend","type":"float"}],"out":[{"name":"mix","type":"vec3"}]}},"output1":{"type":"output","inputs":[null,null,{"index":2,"inputName":"color","node":"mix1","output":"mix"}]},"param1":{"type":"param","params":{"name":"ratio"},"connection_points":{"in":[],"out":[{"name":"val","type":"float"}]}},"smoothstep1":{"type":"smoothstep","params":{"edge0":{"type":"float","default_value":0,"options":{"spare":true,"editable":true},"raw_input":0.999},"edge1":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}},"x":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}}},"inputs":[null,null,{"index":2,"inputName":"x","node":"add1","output":"sum"}],"connection_points":{"in":[{"name":"edge0","type":"float"},{"name":"edge1","type":"float"},{"name":"x","type":"float"}],"out":[{"name":"val","type":"float"}]}},"subtract1":{"type":"subtract","params":{"sub0":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"sub1":{"type":"float","default_value":0,"options":{"spare":true,"editable":false},"raw_input":-0.5},"sub2":{"type":"float","default_value":0,"options":{"spare":true,"editable":true}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"sub0","node":"vec2ToFloat1","output":"x"},{"index":1,"inputName":"sub1","node":"param1","output":"val"}],"connection_points":{"in":[{"name":"sub0","type":"float"},{"name":"sub1","type":"float"},{"name":"sub2","type":"float"}],"out":[{"name":"subtract","type":"float"}]}},"twoWaySwitch1":{"type":"twoWaySwitch","params":{"condition":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":true}},"ifTrue":{"type":"float","default_value":0,"options":{"spare":true,"editable":true}},"ifFalse":{"type":"float","default_value":0,"options":{"spare":true,"editable":true}}},"connection_points":{"in":[{"name":"condition","type":"bool"},{"name":"ifTrue","type":"float"},{"name":"ifFalse","type":"float"}],"out":[{"name":"val","type":"float"}]}},"vec2ToFloat1":{"type":"vec2ToFloat","params":{"vec":{"overriden_options":{}}},"inputs":[{"index":0,"inputName":"vec","node":"globals1","output":"uv"}]}},"params":{"doubleSided":true,"ratio":{"type":"float","default_value":0,"options":{"spare":true,"computeOnDirty":true,"cook":false,"dependentOnFoundNode":true},"raw_input":0.59,"overriden_options":{"callback":"{}"}}},"persisted_config":{"material":{"metadata":{"version":4.5,"type":"Material","generator":"Material.toJSON"},"uuid":"/geo1/video1/MAT/meshBasicBuilder_PLAYBAR-main","type":"MeshBasicMaterial","name":"/geo1/video1/MAT/meshBasicBuilder_PLAYBAR","color":16777215,"reflectivity":1,"refractionRatio":0.98,"side":2,"depthFunc":3,"depthTest":true,"depthWrite":true,"colorWrite":true,"stencilWrite":false,"stencilWriteMask":255,"stencilFunc":519,"stencilRef":0,"stencilFuncMask":255,"stencilFail":7680,"stencilZFail":7680,"stencilZPass":7680,"fog":false},"onBeforeCompileDataJSONWithoutShaders":{"paramConfigs":[{"type":"float","name":"ratio","defaultValue":0,"uniformName":"v_POLY_param_ratio"}],"timeDependent":false,"resolutionDependent":false,"raymarchingLightsWorldCoordsDependent":false},"customMaterials":{"customDepthMaterial":{"material":{"metadata":{"version":4.5,"type":"Material","generator":"Material.toJSON"},"uuid":"/geo1/video1/MAT/meshBasicBuilder_PLAYBAR-customDepthMaterial","type":"MeshDepthMaterial","name":"customDepthMaterial","side":2,"depthFunc":3,"depthTest":true,"depthWrite":true,"colorWrite":true,"stencilWrite":false,"stencilWriteMask":255,"stencilFunc":519,"stencilRef":0,"stencilFuncMask":255,"stencilFail":7680,"stencilZFail":7680,"stencilZPass":7680,"depthPacking":3201},"onBeforeCompileDataJSONWithoutShaders":{"paramConfigs":[{"type":"float","name":"ratio","defaultValue":0,"uniformName":"v_POLY_param_ratio"}],"timeDependent":false,"resolutionDependent":false,"raymarchingLightsWorldCoordsDependent":false}},"customDistanceMaterial":{"material":{"metadata":{"version":4.5,"type":"Material","generator":"Material.toJSON"},"uuid":"/geo1/video1/MAT/meshBasicBuilder_PLAYBAR-customDistanceMaterial","type":"MeshDistanceMaterial","name":"customDistanceMaterial","side":2,"depthFunc":3,"depthTest":true,"depthWrite":true,"colorWrite":true,"stencilWrite":false,"stencilWriteMask":255,"stencilFunc":519,"stencilRef":0,"stencilFuncMask":255,"stencilFail":7680,"stencilZFail":7680,"stencilZPass":7680},"onBeforeCompileDataJSONWithoutShaders":{"paramConfigs":[{"type":"float","name":"ratio","defaultValue":0,"uniformName":"v_POLY_param_ratio"}],"timeDependent":false,"resolutionDependent":false,"raymarchingLightsWorldCoordsDependent":false}},"customDepthDOFMaterial":{"material":{"metadata":{"version":4.5,"type":"Material","generator":"Material.toJSON"},"uuid":"/geo1/video1/MAT/meshBasicBuilder_PLAYBAR-customDepthDOFMaterial","type":"MeshDepthMaterial","name":"customDepthDOFMaterial","side":2,"depthFunc":3,"depthTest":true,"depthWrite":true,"colorWrite":true,"stencilWrite":false,"stencilWriteMask":255,"stencilFunc":519,"stencilRef":0,"stencilFuncMask":255,"stencilFail":7680,"stencilZFail":7680,"stencilZPass":7680,"depthPacking":3200},"onBeforeCompileDataJSONWithoutShaders":{"paramConfigs":[{"type":"float","name":"ratio","defaultValue":0,"uniformName":"v_POLY_param_ratio"}],"timeDependent":false,"resolutionDependent":false,"raymarchingLightsWorldCoordsDependent":false}}},"shaders":{"vertex":"#include <common>\n\n\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\nvarying vec2 v_POLY_globals1_uv;\n\n\n\n\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <envmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\n\n\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\n\tv_POLY_globals1_uv = vec2(uv);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/output1\n\tvec3 transformed = position;\n\tvec3 objectNormal = normal;\n\t#ifdef USE_TANGENT\n\t\tvec3 objectTangent = vec3( tangent.xyz );\n\t#endif\n\n\n\n\t#include <morphcolor_vertex>\n\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\n// removed:\n//\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinbase_vertex>\n\t\t#include <skinnormal_vertex>\n\t\t#include <defaultnormal_vertex>\n\t#endif\n// removed:\n//\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <worldpos_vertex>\n\t#include <envmap_vertex>\n\t#include <fog_vertex>\n}","fragment":"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include <common>\n\n\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/param1\nuniform float v_POLY_param_ratio;\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\nvarying vec2 v_POLY_globals1_uv;\n\n\n\n\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <fog_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\n\n\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/constant1\n\tvec3 v_POLY_constant1_val = vec3(0.14901960784313725, 0.14901960784313725, 0.14901960784313725);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/constant2\n\tvec3 v_POLY_constant2_val = vec3(0.28627450980392155, 0.8549019607843137, 0.24313725490196078);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/param1\n\tfloat v_POLY_param1_val = v_POLY_param_ratio;\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/vec2ToFloat1\n\tfloat v_POLY_vec2ToFloat1_x = v_POLY_globals1_uv.x;\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/add1\n\tfloat v_POLY_add1_sum = (v_POLY_vec2ToFloat1_x + v_POLY_param1_val + 0.0);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/smoothstep1\n\tfloat v_POLY_smoothstep1_val = smoothstep(0.999, 1.0, v_POLY_add1_sum);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/mix1\n\tvec3 v_POLY_mix1_mix = mix(v_POLY_constant1_val, v_POLY_constant2_val, v_POLY_smoothstep1_val);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/output1\n\tdiffuseColor.xyz = v_POLY_mix1_mix;\n\n\n\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <specularmap_fragment>\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\n\t\treflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI;\n\t#else\n\t\treflectedLight.indirectDiffuse += vec3( 1.0 );\n\t#endif\n\t#include <aomap_fragment>\n\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\n\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\n\t#include <envmap_fragment>\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}","customDepthMaterial.vertex":"#include <common>\n\n\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\nvarying vec2 v_POLY_globals1_uv;\n\n\n\n\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n// removed:\n//\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n// removed:\n//\t#include <begin_vertex>\n\n\n\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\n\tv_POLY_globals1_uv = vec2(uv);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/output1\n\tvec3 transformed = position;\n\tvec3 objectNormal = normal;\n\t#ifdef USE_TANGENT\n\t\tvec3 objectTangent = vec3( tangent.xyz );\n\t#endif\n\n\n\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvHighPrecisionZW = gl_Position.zw;\n}","customDepthMaterial.fragment":"\n// INSERT DEFINES\n\n\n#if DEPTH_PACKING == 3200\n\n\tuniform float opacity;\n\n#endif\n\n#include <common>\n\n\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/param1\nuniform float v_POLY_param_ratio;\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\nvarying vec2 v_POLY_globals1_uv;\n\n\n\n\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\n\nvarying vec2 vHighPrecisionZW;\n\nvoid main() {\n\n\t#include <clipping_planes_fragment>\n\n\tvec4 diffuseColor = vec4( 1.0 );\n\n\t#if DEPTH_PACKING == 3200\n\n\t\tdiffuseColor.a = opacity;\n\n\t#endif\n\n\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\n\n\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/constant1\n\tvec3 v_POLY_constant1_val = vec3(0.14901960784313725, 0.14901960784313725, 0.14901960784313725);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/constant2\n\tvec3 v_POLY_constant2_val = vec3(0.28627450980392155, 0.8549019607843137, 0.24313725490196078);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/param1\n\tfloat v_POLY_param1_val = v_POLY_param_ratio;\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/vec2ToFloat1\n\tfloat v_POLY_vec2ToFloat1_x = v_POLY_globals1_uv.x;\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/add1\n\tfloat v_POLY_add1_sum = (v_POLY_vec2ToFloat1_x + v_POLY_param1_val + 0.0);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/smoothstep1\n\tfloat v_POLY_smoothstep1_val = smoothstep(0.999, 1.0, v_POLY_add1_sum);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/mix1\n\tvec3 v_POLY_mix1_mix = mix(v_POLY_constant1_val, v_POLY_constant2_val, v_POLY_smoothstep1_val);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/output1\n\tdiffuseColor.xyz = v_POLY_mix1_mix;\n\n\n\n\n\t// INSERT BODY\n\t// the new body lines should be added before the alphatest_fragment\n\t// so that alpha is set before (which is really how it would be set if the alphamap_fragment above was used by the material node parameters)\n\n\t#include <alphatest_fragment>\n\n\t#include <logdepthbuf_fragment>\n\n\n\t// Higher precision equivalent of gl_FragCoord.z. This assumes depthRange has been left to its default values.\n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\n\t#if DEPTH_PACKING == 3200\n\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), diffuseColor.a );\n\n\t#elif DEPTH_PACKING == 3201\n\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\n\t#endif\n\n}\n","customDistanceMaterial.vertex":"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include <common>\n\n\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\nvarying vec2 v_POLY_globals1_uv;\n\n\n\n\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n// removed:\n//\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n// removed:\n//\t#include <begin_vertex>\n\n\n\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\n\tv_POLY_globals1_uv = vec2(uv);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/output1\n\tvec3 transformed = position;\n\tvec3 objectNormal = normal;\n\t#ifdef USE_TANGENT\n\t\tvec3 objectTangent = vec3( tangent.xyz );\n\t#endif\n\n\n\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <worldpos_vertex>\n\t#include <clipping_planes_vertex>\n\tvWorldPosition = worldPosition.xyz;\n}","customDistanceMaterial.fragment":"\n// INSERT DEFINES\n\n#define DISTANCE\n\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n\n#include <common>\n\n\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/param1\nuniform float v_POLY_param_ratio;\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\nvarying vec2 v_POLY_globals1_uv;\n\n\n\n\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <clipping_planes_pars_fragment>\n\nvoid main () {\n\n\t#include <clipping_planes_fragment>\n\n\tvec4 diffuseColor = vec4( 1.0 );\n\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\n\n\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/constant1\n\tvec3 v_POLY_constant1_val = vec3(0.14901960784313725, 0.14901960784313725, 0.14901960784313725);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/constant2\n\tvec3 v_POLY_constant2_val = vec3(0.28627450980392155, 0.8549019607843137, 0.24313725490196078);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/param1\n\tfloat v_POLY_param1_val = v_POLY_param_ratio;\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/vec2ToFloat1\n\tfloat v_POLY_vec2ToFloat1_x = v_POLY_globals1_uv.x;\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/add1\n\tfloat v_POLY_add1_sum = (v_POLY_vec2ToFloat1_x + v_POLY_param1_val + 0.0);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/smoothstep1\n\tfloat v_POLY_smoothstep1_val = smoothstep(0.999, 1.0, v_POLY_add1_sum);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/mix1\n\tvec3 v_POLY_mix1_mix = mix(v_POLY_constant1_val, v_POLY_constant2_val, v_POLY_smoothstep1_val);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/output1\n\tdiffuseColor.xyz = v_POLY_mix1_mix;\n\n\n\n\n\t// INSERT BODY\n\n\t#include <alphatest_fragment>\n\n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist ); // clamp to [ 0, 1 ]\n\n\tgl_FragColor = packDepthToRGBA( dist );\n\n}\n","customDepthDOFMaterial.vertex":"#include <common>\n\n\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\nvarying vec2 v_POLY_globals1_uv;\n\n\n\n\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n// removed:\n//\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n// removed:\n//\t#include <begin_vertex>\n\n\n\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\n\tv_POLY_globals1_uv = vec2(uv);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/output1\n\tvec3 transformed = position;\n\tvec3 objectNormal = normal;\n\t#ifdef USE_TANGENT\n\t\tvec3 objectTangent = vec3( tangent.xyz );\n\t#endif\n\n\n\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvHighPrecisionZW = gl_Position.zw;\n}","customDepthDOFMaterial.fragment":"\n// INSERT DEFINES\n\n\n#if DEPTH_PACKING == 3200\n\n\tuniform float opacity;\n\n#endif\n\n#include <common>\n\n\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/param1\nuniform float v_POLY_param_ratio;\n\n// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/globals1\nvarying vec2 v_POLY_globals1_uv;\n\n\n\n\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\n\nvarying vec2 vHighPrecisionZW;\n\nvoid main() {\n\n\t#include <clipping_planes_fragment>\n\n\tvec4 diffuseColor = vec4( 1.0 );\n\n\t#if DEPTH_PACKING == 3200\n\n\t\tdiffuseColor.a = opacity;\n\n\t#endif\n\n\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\n\n\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/constant1\n\tvec3 v_POLY_constant1_val = vec3(0.14901960784313725, 0.14901960784313725, 0.14901960784313725);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/constant2\n\tvec3 v_POLY_constant2_val = vec3(0.28627450980392155, 0.8549019607843137, 0.24313725490196078);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/param1\n\tfloat v_POLY_param1_val = v_POLY_param_ratio;\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/vec2ToFloat1\n\tfloat v_POLY_vec2ToFloat1_x = v_POLY_globals1_uv.x;\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/add1\n\tfloat v_POLY_add1_sum = (v_POLY_vec2ToFloat1_x + v_POLY_param1_val + 0.0);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/smoothstep1\n\tfloat v_POLY_smoothstep1_val = smoothstep(0.999, 1.0, v_POLY_add1_sum);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/mix1\n\tvec3 v_POLY_mix1_mix = mix(v_POLY_constant1_val, v_POLY_constant2_val, v_POLY_smoothstep1_val);\n\t\n\t// /geo1/video1/MAT/meshBasicBuilder_PLAYBAR/output1\n\tdiffuseColor.xyz = v_POLY_mix1_mix;\n\n\n\n\n\t// INSERT BODY\n\t// the new body lines should be added before the alphatest_fragment\n\t// so that alpha is set before (which is really how it would be set if the alphamap_fragment above was used by the material node parameters)\n\n\t#include <alphatest_fragment>\n\n\t#include <logdepthbuf_fragment>\n\n\n\t// Higher precision equivalent of gl_FragCoord.z. This assumes depthRange has been left to its default values.\n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\n\t#if DEPTH_PACKING == 3200\n\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), diffuseColor.a );\n\n\t#elif DEPTH_PACKING == 3201\n\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\n\t#endif\n\n}\n"}}}}},"COP":{"type":"copNetwork","nodes":{"video1":{"type":"video","params":{"url":"`ch(\"../../url\")`","play":"ch(\"../../play\")","muted":"ch(\"../../muted\")","loop":"ch(\"../../loop\")","tflipY":true,"flipY":true}}}},"subnet_PLAY_PAUSE_BUTTON":{"type":"subnet","nodes":{"color2":{"type":"color","params":{"color":[0.10196078431372549,0.10196078431372549,0.10196078431372549]},"inputs":["tube2"]},"hierarchy1":{"type":"hierarchy","inputs":["actor_hover"]},"material2":{"type":"material","params":{"material":"../../MAT/meshBasic_PLAY_PAUSE"},"inputs":["merge3"]},"merge3":{"type":"merge","inputs":["objectProperties1","objectProperties3"],"cloned_state_overriden":true},"objectProperties1":{"type":"objectProperties","params":{"tname":true,"name":"playButton","tvisible":true},"inputs":["subnet_PLAY_ICON"]},"objectProperties3":{"type":"objectProperties","params":{"tname":true,"name":"pauseButton","tvisible":true,"visible":false},"inputs":["subnet_PAUSE_ICON"],"flags":{"display":true}},"subnetOutput1":{"type":"subnetOutput","inputs":["transform_CORNER"]},"transform_CONTROLS_SCALE":{"type":"transform","params":{"applyOn":1,"objectMode":1,"t":[0,0,0.02],"scale":0.05},"inputs":["actor_PLAY_PAUSE"]},"transform_CORNER":{"type":"transform","params":{"applyOn":1,"objectMode":1,"t":["-bbox(0, 'min').x","-bbox(0, 'min').y",0]},"inputs":["transform_CONTROLS_SCALE"]},"tube2":{"type":"tube","params":{"radiusTop":1.2,"height":0.05,"segmentsRadial":50,"center":[0,0,-0.066]}},"actor_PLAY_PAUSE":{"type":"actor","nodes":{"anyTrigger1":{"type":"anyTrigger","maxInputsCount":4,"inputs":[{"index":0,"inputName":"trigger0","node":"onVideoEvent1","output":"play"},{"index":1,"inputName":"trigger1","node":"onVideoEvent1","output":"pause"},{"index":2,"inputName":"trigger2","node":"onScenePlayState1","output":"triggerPlay"}],"connection_points":{"in":[{"name":"trigger0","type":"trigger","isArray":false},{"name":"trigger1","type":"trigger","isArray":false},{"name":"trigger2","type":"trigger","isArray":false},{"name":"trigger3","type":"trigger","isArray":false}],"out":[{"name":"trigger","type":"trigger","isArray":false}]}},"getObjectChild_0":{"type":"getObjectChild"},"getObjectChild_1":{"type":"getObjectChild","params":{"index":1}},"getVideoProperty1":{"type":"getVideoProperty","params":{"node":"../../../COP/video1"}},"onObjectClick1":{"type":"onObjectClick"},"onScenePlayState1":{"type":"onScenePlayState"},"onVideoEvent1":{"type":"onVideoEvent","params":{"node":"../../../COP/video1"}},"setObjectVisible_FALSE":{"type":"setObjectVisible","maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"anyTrigger1","output":"trigger"},{"index":1,"inputName":"Object3D","node":"twoWaySwitch3","output":"val"}]},"setObjectVisible_TRUE":{"type":"setObjectVisible","params":{"visible":false},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"anyTrigger1","output":"trigger"},{"index":1,"inputName":"Object3D","node":"twoWaySwitch2","output":"val"}]},"setParam1":{"type":"setParam","params":{"param":"../../../COP/video1/play","type":0,"lerp":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}},"val":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":true},"raw_input":"!ch(\"../../../COP/video1/play\")"}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectClick1","output":"trigger"}],"connection_points":{"in":[{"name":"trigger","type":"trigger","isArray":false},{"name":"lerp","type":"float","isArray":false},{"name":"val","type":"boolean","isArray":false}],"out":[{"name":"trigger","type":"trigger","isArray":false}]}},"twoWaySwitch2":{"type":"twoWaySwitch","params":{"condition":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"condition","node":"getVideoProperty1","output":"playing"},{"index":1,"inputName":"ifTrue","node":"getObjectChild_0","output":"object3D"},{"index":2,"inputName":"ifFalse","node":"getObjectChild_1","output":"object3D"}],"connection_points":{"in":[{"name":"condition","type":"boolean","isArray":false},{"name":"ifTrue","type":"Object3D","isArray":false},{"name":"ifFalse","type":"Object3D","isArray":false}],"out":[{"name":"val","type":"Object3D","isArray":false}]}},"twoWaySwitch3":{"type":"twoWaySwitch","params":{"condition":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"condition","node":"getVideoProperty1","output":"playing"},{"index":1,"inputName":"ifTrue","node":"getObjectChild_1","output":"object3D"},{"index":2,"inputName":"ifFalse","node":"getObjectChild_0","output":"object3D"}],"connection_points":{"in":[{"name":"condition","type":"boolean","isArray":false},{"name":"ifTrue","type":"Object3D","isArray":false},{"name":"ifFalse","type":"Object3D","isArray":false}],"out":[{"name":"val","type":"Object3D","isArray":false}]}}},"inputs":["hierarchy1"]},"actor_hover":{"type":"actor","nodes":{"onObjectHover1":{"type":"onObjectHover"},"setMaterialOpacity1":{"type":"setMaterialOpacity","params":{"float":{"overriden_options":{}},"lerp":{"overriden_options":{}}},"maxInputsCount":4,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectHover1","output":"trigger"},null,{"index":2,"inputName":"float","node":"twoWaySwitch1","output":"val"}]},"setViewer1":{"type":"setViewer","params":{"className":{"overriden_options":{}},"set":{"overriden_options":{}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectHover1","output":"trigger"},null,{"index":2,"inputName":"set","node":"onObjectHover1","output":"hovered"}]},"twoWaySwitch1":{"type":"twoWaySwitch","params":{"condition":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":false}},"ifTrue":{"type":"float","default_value":0,"options":{"spare":true,"editable":true},"raw_input":0.75},"ifFalse":{"type":"float","default_value":0,"options":{"spare":true,"editable":true},"raw_input":1}},"inputs":[{"index":0,"inputName":"condition","node":"onObjectHover1","output":"hovered"}],"connection_points":{"in":[{"name":"condition","type":"boolean","isArray":false},{"name":"ifTrue","type":"float","isArray":false},{"name":"ifFalse","type":"float","isArray":false}],"out":[{"name":"val","type":"float","isArray":false}]}}},"inputs":["material2"]},"subnet_PAUSE_ICON":{"type":"subnet","nodes":{"box1":{"type":"box","flags":{"display":true}},"color3":{"type":"color","inputs":["merge2"]},"merge2":{"type":"merge","params":{"compact":true},"inputs":["transform3","transform4"]},"merge5":{"type":"merge","params":{"compact":true},"inputs":["color3","subnetInput1"]},"subnetInput1":{"type":"subnetInput"},"subnetOutput1":{"type":"subnetOutput","inputs":["merge5"]},"transform3":{"type":"transform","params":{"t":[-0.2,0,0],"r":[0,0,90],"s":[1,0.2,0.05]},"inputs":["box1"]},"transform4":{"type":"transform","params":{"t":[0.2,0,0],"r":[0,0,90],"s":[1,0.2,0.05]},"inputs":["box1"]}},"inputs":["color2"]},"subnet_PLAY_ICON":{"type":"subnet","nodes":{"color1":{"type":"color","inputs":["tube1"]},"merge4":{"type":"merge","params":{"compact":true},"inputs":["transform2","subnetInput1"]},"subnetInput1":{"type":"subnetInput"},"subnetOutput1":{"type":"subnetOutput","inputs":["merge4"]},"transform2":{"type":"transform","params":{"r":[0,0,90]},"inputs":["color1"]},"tube1":{"type":"tube","params":{"radiusTop":0.62,"radiusBottom":"ch(\"radiusTop\")","height":0.05,"segmentsRadial":3},"flags":{"display":true}}},"inputs":["color2"]}}},"subnet_MUTE_BUTTON":{"type":"subnet","nodes":{"attribDelete1":{"type":"attribDelete","params":{"name":"uv"},"inputs":["tube3"]},"color1":{"type":"color","inputs":["transform4"]},"color3":{"type":"color","params":{"color":[0.10196078431372549,0.10196078431372549,0.10196078431372549]},"inputs":["attribDelete1"]},"color5":{"type":"color","inputs":["transform5"]},"hierarchy2":{"type":"hierarchy","inputs":["actor_hover"]},"material3":{"type":"material","params":{"material":"../../MAT/meshBasic_MUTE"},"inputs":["merge4"]},"merge10":{"type":"merge","params":{"compact":true},"inputs":["subnet_MUTED_ICON_base","transform2"]},"merge11":{"type":"merge","params":{"compact":true},"inputs":["subnet_MUTED_ICON_base","transform7"]},"merge4":{"type":"merge","inputs":["objectProperties5","objectProperties6"],"flags":{"display":true},"cloned_state_overriden":true},"merge5":{"type":"merge","params":{"compact":true},"inputs":["color1","color3"],"cloned_state_overriden":true},"merge6":{"type":"merge","params":{"compact":true},"inputs":["color5","color3"],"cloned_state_overriden":true},"objectProperties5":{"type":"objectProperties","params":{"tname":true,"name":"unmuteButton"},"inputs":["merge5"]},"objectProperties6":{"type":"objectProperties","params":{"tname":true,"name":"muteButton","tvisible":true,"visible":false},"inputs":["merge6"]},"subnetOutput1":{"type":"subnetOutput","inputs":["transform_CORNER2"]},"transform2":{"type":"transform","params":{"t":[0.22999999999999995,0,0],"r":[0,0,-60],"scale":0.41},"inputs":["subnet_MUTED_ICON_waves"]},"transform4":{"type":"transform","params":{"t":["-$CEX","-$CEY","-$CEZ"]},"inputs":["merge10"]},"transform5":{"type":"transform","params":{"t":["-$CEX","-$CEY","-$CEZ"]},"inputs":["merge11"]},"transform7":{"type":"transform","params":{"t":[0.6604838886767153,0,0],"scale":0.63},"inputs":["subnet_MUTED_ICON_cross"]},"transform_CORNER2":{"type":"transform","params":{"applyOn":1,"objectMode":1,"t":["-bbox(0, 'max').x","-bbox(0, 'min').y",0]},"inputs":["transform_MUTE_POSITION"]},"transform_MUTE_POSITION":{"type":"transform","params":{"applyOn":1,"objectMode":1,"t":[0,0,0.02],"scale":0.05},"inputs":["actor_MUTE"]},"tube3":{"type":"tube","params":{"radiusTop":1.2,"height":0.05,"segmentsRadial":50,"center":[0,0,-0.066]}},"actor_MUTE":{"type":"actor","nodes":{"anyTrigger1":{"type":"anyTrigger","maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger0","node":"onVideoEvent1","output":"volumechange"},{"index":1,"inputName":"trigger1","node":"onScenePlayState1","output":"triggerPlay"}],"connection_points":{"in":[{"name":"trigger0","type":"trigger","isArray":false},{"name":"trigger1","type":"trigger","isArray":false},{"name":"trigger2","type":"trigger","isArray":false}],"out":[{"name":"trigger","type":"trigger","isArray":false}]}},"getObjectChild_0":{"type":"getObjectChild"},"getObjectChild_1":{"type":"getObjectChild","params":{"index":1}},"getVideoProperty1":{"type":"getVideoProperty","params":{"node":"../../../COP/video1"}},"onObjectClick1":{"type":"onObjectClick"},"onScenePlayState1":{"type":"onScenePlayState"},"onVideoEvent1":{"type":"onVideoEvent","params":{"node":"../../../COP/video1"}},"setObjectVisible_FALSE":{"type":"setObjectVisible","maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"anyTrigger1","output":"trigger"},{"index":1,"inputName":"Object3D","node":"twoWaySwitch3","output":"val"}]},"setObjectVisible_TRUE":{"type":"setObjectVisible","params":{"visible":false},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"anyTrigger1","output":"trigger"},{"index":1,"inputName":"Object3D","node":"twoWaySwitch2","output":"val"}]},"setParam1":{"type":"setParam","params":{"param":"../../../COP/video1/muted","type":0,"lerp":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}},"val":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":true},"raw_input":"!ch(\"../../../COP/video1/muted\")"}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectClick1","output":"trigger"}],"connection_points":{"in":[{"name":"trigger","type":"trigger","isArray":false},{"name":"lerp","type":"float","isArray":false},{"name":"val","type":"boolean","isArray":false}],"out":[{"name":"trigger","type":"trigger","isArray":false}]}},"twoWaySwitch2":{"type":"twoWaySwitch","params":{"condition":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"condition","node":"getVideoProperty1","output":"muted"},{"index":1,"inputName":"ifTrue","node":"getObjectChild_0","output":"object3D"},{"index":2,"inputName":"ifFalse","node":"getObjectChild_1","output":"object3D"}],"connection_points":{"in":[{"name":"condition","type":"boolean","isArray":false},{"name":"ifTrue","type":"Object3D","isArray":false},{"name":"ifFalse","type":"Object3D","isArray":false}],"out":[{"name":"val","type":"Object3D","isArray":false}]}},"twoWaySwitch3":{"type":"twoWaySwitch","params":{"condition":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"condition","node":"getVideoProperty1","output":"muted"},{"index":1,"inputName":"ifTrue","node":"getObjectChild_1","output":"object3D"},{"index":2,"inputName":"ifFalse","node":"getObjectChild_0","output":"object3D"}],"connection_points":{"in":[{"name":"condition","type":"boolean","isArray":false},{"name":"ifTrue","type":"Object3D","isArray":false},{"name":"ifFalse","type":"Object3D","isArray":false}],"out":[{"name":"val","type":"Object3D","isArray":false}]}}},"inputs":["hierarchy2"]},"actor_hover":{"type":"actor","nodes":{"onObjectHover1":{"type":"onObjectHover"},"setMaterialOpacity1":{"type":"setMaterialOpacity","params":{"float":{"overriden_options":{}},"lerp":{"overriden_options":{}}},"maxInputsCount":4,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectHover1","output":"trigger"},null,{"index":2,"inputName":"float","node":"twoWaySwitch1","output":"val"}]},"setViewer1":{"type":"setViewer","params":{"className":{"overriden_options":{}},"set":{"overriden_options":{}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectHover1","output":"trigger"},null,{"index":2,"inputName":"set","node":"onObjectHover1","output":"hovered"}]},"twoWaySwitch1":{"type":"twoWaySwitch","params":{"condition":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":false}},"ifTrue":{"type":"float","default_value":0,"options":{"spare":true,"editable":true},"raw_input":0.75},"ifFalse":{"type":"float","default_value":0,"options":{"spare":true,"editable":true},"raw_input":1}},"inputs":[{"index":0,"inputName":"condition","node":"onObjectHover1","output":"hovered"}],"connection_points":{"in":[{"name":"condition","type":"boolean","isArray":false},{"name":"ifTrue","type":"float","isArray":false},{"name":"ifFalse","type":"float","isArray":false}],"out":[{"name":"val","type":"float","isArray":false}]}}},"inputs":["material3"]},"subnet_MUTED_ICON_base":{"type":"subnet","nodes":{"attribDelete1":{"type":"attribDelete","params":{"name":"uv"},"inputs":["merge8"]},"merge8":{"type":"merge","params":{"compact":true},"inputs":["transform4","transform3"]},"roundedBox1":{"type":"roundedBox"},"subnetOutput1":{"type":"subnetOutput","inputs":["attribDelete1"]},"transform3":{"type":"transform","params":{"r":[0,0,-90],"s":[1,0.71,1]},"inputs":["tube4"]},"transform4":{"type":"transform","params":{"t":[-0.2562417944073259,0,0],"s":[0.5209903480155939,0.5330090552766976,0.05]},"inputs":["roundedBox1"]},"tube4":{"type":"tube","params":{"radiusTop":0.75,"radiusBottom":0.75,"height":0.05,"segmentsRadial":3},"flags":{"display":true}}}},"subnet_MUTED_ICON_cross":{"type":"subnet","nodes":{"attribDelete1":{"type":"attribDelete","params":{"name":"uv"},"inputs":["box1"]},"box1":{"type":"box","flags":{"display":true}},"merge9":{"type":"merge","inputs":["transform5","transform6"]},"subnetOutput1":{"type":"subnetOutput","inputs":["merge9"]},"transform1":{"type":"transform","params":{"s":[1,0.14096531589361527,0.05]},"inputs":["attribDelete1"]},"transform5":{"type":"transform","params":{"r":[0,0,45]},"inputs":["transform1"]},"transform6":{"type":"transform","params":{"r":[0,0,-45]},"inputs":["transform1"]}}},"subnet_MUTED_ICON_waves":{"type":"subnet","nodes":{"attribNormalize1":{"type":"attribNormalize","params":{"mode":1,"name":"normal"},"inputs":["normals1"]},"circle1":{"type":"circle","params":{"radius":"1+0.5*copy('../copy1')","connectLastPoint":false,"arcAngle":120,"direction":[0,0,1]},"flags":{"display":true}},"copy1":{"type":"copy","params":{"count":2},"inputs":["skin1"]},"merge5":{"type":"merge","params":{"compact":true},"inputs":["attribNormalize1","peak1"]},"merge6":{"type":"merge","params":{"compact":true},"inputs":["copy1"]},"normals1":{"type":"normals","params":{"edit":true,"updateX":true,"x":"@P.x","updateY":true,"y":"@P.y","updateZ":true,"z":"@P.z"},"inputs":["circle1"]},"peak1":{"type":"peak","params":{"amount":-0.24},"inputs":["attribNormalize1"]},"skin1":{"type":"skin","inputs":["merge5"]},"subnetOutput1":{"type":"subnetOutput","inputs":["merge6"]}}}}},"subnet_PLAYBAR":{"type":"subnet","nodes":{"attribCreate1":{"type":"attribCreate","params":{"class":1,"name":"clicked"},"inputs":["material1"]},"material1":{"type":"material","params":{"material":"../../MAT/meshBasicBuilder_PLAYBAR"},"inputs":["transform1"],"flags":{"display":true}},"plane1":{"type":"plane","params":{"direction":[0,0,-1],"center":[0,-0.5,0]}},"subnetOutput1":{"type":"subnetOutput","inputs":["actor1"]},"transform1":{"type":"transform","params":{"s":[1,0.06999999999999995,0.01]},"inputs":["plane1"]},"actor1":{"type":"actor","nodes":{"complement1":{"type":"complement","params":{"value":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"value","node":"vec2ToFloat1","output":"x"}],"connection_points":{"in":[{"name":"value","type":"float","isArray":false}],"out":[{"name":"complement","type":"float","isArray":false}]}},"divide1":{"type":"divide","params":{"div0":{"type":"float","default_value":1,"options":{"spare":true,"editable":false}},"div1":{"type":"float","default_value":1,"options":{"spare":true,"editable":false}}},"inputs":[{"index":0,"inputName":"div0","node":"getVideoProperty1","output":"currentTime"},{"index":1,"inputName":"div1","node":"getVideoProperty1","output":"duration"}],"connection_points":{"in":[{"name":"div0","type":"float","isArray":false},{"name":"div1","type":"float","isArray":false}],"out":[{"name":"divide","type":"float","isArray":false}]}},"getIntersectionProperty1":{"type":"getIntersectionProperty","inputs":[{"index":0,"inputName":"Intersection","node":"rayIntersectObject1","output":"Intersection"}]},"getObjectAttribute1":{"type":"getObjectAttribute","params":{"attribName":"clicked","type":0},"connection_points":{"in":[{"name":"Object3D","type":"Object3D","isArray":false}],"out":[{"name":"val","type":"boolean","isArray":false}]}},"getVideoProperty1":{"type":"getVideoProperty","params":{"node":"../../../COP/video1"}},"mult1":{"type":"mult","params":{"mult0":{"type":"float","default_value":1,"options":{"spare":true,"editable":false}},"mult1":{"type":"float","default_value":1,"options":{"spare":true,"editable":false}},"mult2":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"mult0","node":"complement1","output":"complement"},{"index":1,"inputName":"mult1","node":"getVideoProperty1","output":"duration"}],"connection_points":{"in":[{"name":"mult0","type":"float","isArray":false},{"name":"mult1","type":"float","isArray":false},{"name":"mult2","type":"float","isArray":false}],"out":[{"name":"product","type":"float","isArray":false}]}},"onObjectHover2":{"type":"onObjectHover"},"onObjectPointerdown1":{"type":"onObjectPointerdown"},"onObjectPointerup1":{"type":"onObjectPointerup"},"onTick1":{"type":"onTick"},"onTick2":{"type":"onTick"},"paramButtonPress1":{"type":"paramButtonPress","params":{"param":"../../../COP/video1/setVideoTime"},"inputs":[{"index":0,"inputName":"trigger","node":"setParam1","output":"trigger"}]},"rayFromCursor1":{"type":"rayFromCursor","connection_points":{"in":[],"out":[{"name":"ray","type":"Ray","isArray":false}]}},"rayIntersectObject1":{"type":"rayIntersectObject","inputs":[{"index":0,"inputName":"Ray","node":"rayFromCursor1","output":"ray"}],"connection_points":{"in":[{"name":"Ray","type":"Ray","isArray":false},{"name":"Object3D","type":"Object3D","isArray":false}],"out":[{"name":"Intersection","type":"Intersection","isArray":false}]}},"setMaterialOpacity1":{"type":"setMaterialOpacity","params":{"float":{"overriden_options":{}},"lerp":{"overriden_options":{}}},"maxInputsCount":4,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectHover2","output":"trigger"},null,{"index":2,"inputName":"float","node":"twoWaySwitch1","output":"val"}]},"setMaterialUniform1":{"type":"setMaterialUniform","params":{"float":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}},"uniformName":{"type":"string","default_value":"","options":{"spare":true,"editable":true},"raw_input":"ratio"},"lerp":{"type":"float","default_value":1,"options":{"spare":true,"editable":true},"raw_input":0.23}},"maxInputsCount":5,"inputs":[{"index":0,"inputName":"trigger","node":"triggerFilter1","output":"trigger"},null,{"index":2,"inputName":"float","node":"divide1","output":"divide"}],"connection_points":{"in":[{"name":"trigger","type":"trigger","isArray":false},{"name":"Material","type":"Material","isArray":false},{"name":"float","type":"float","isArray":false},{"name":"uniformName","type":"string","isArray":false},{"name":"lerp","type":"float","isArray":false}],"out":[{"name":"trigger","type":"trigger","isArray":false}]}},"setObjectAttribute_FALSE":{"type":"setObjectAttribute","params":{"trigger":{"overriden_options":{}},"attribName":"clicked","type":0,"lerp":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}},"val":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":true}}},"maxInputsCount":4,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectPointerup1","output":"trigger"}],"connection_points":{"in":[{"name":"trigger","type":"trigger","isArray":false},{"name":"Object3D","type":"Object3D","isArray":false},{"name":"lerp","type":"float","isArray":false},{"name":"val","type":"boolean","isArray":false}],"out":[{"name":"trigger","type":"trigger","isArray":false}]}},"setObjectAttribute_TRUE":{"type":"setObjectAttribute","params":{"trigger":{"overriden_options":{}},"attribName":"clicked","type":0,"lerp":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}},"val":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":true},"raw_input":true}},"maxInputsCount":4,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectPointerdown1","output":"trigger"}],"connection_points":{"in":[{"name":"trigger","type":"trigger","isArray":false},{"name":"Object3D","type":"Object3D","isArray":false},{"name":"lerp","type":"float","isArray":false},{"name":"val","type":"boolean","isArray":false}],"out":[{"name":"trigger","type":"trigger","isArray":false}]}},"setParam1":{"type":"setParam","params":{"param":"../../../COP/video1/videoTime","lerp":{"type":"float","default_value":1,"options":{"spare":true,"editable":true}},"val":{"type":"float","default_value":0,"options":{"spare":true,"editable":false}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"triggerFilter2","output":"trigger"},null,{"index":2,"inputName":"val","node":"mult1","output":"product"}],"connection_points":{"in":[{"name":"trigger","type":"trigger","isArray":false},{"name":"lerp","type":"float","isArray":false},{"name":"val","type":"float","isArray":false}],"out":[{"name":"trigger","type":"trigger","isArray":false}]}},"setViewer1":{"type":"setViewer","params":{"className":{"overriden_options":{}},"set":{"overriden_options":{}}},"maxInputsCount":3,"inputs":[{"index":0,"inputName":"trigger","node":"onObjectHover2","output":"trigger"},null,{"index":2,"inputName":"set","node":"onObjectHover2","output":"hovered"}]},"triggerFilter1":{"type":"triggerFilter","params":{"condition":{"overriden_options":{}}},"maxInputsCount":2,"inputs":[{"index":0,"inputName":"trigger","node":"onTick1","output":"trigger"},{"index":1,"inputName":"condition","node":"getVideoProperty1","output":"playing"}]},"triggerFilter2":{"type":"triggerFilter","params":{"condition":{"overriden_options":{}}},"maxInputsCount":2,"inputs":[{"index":0,"inputName":"trigger","node":"onTick2","output":"trigger"},{"index":1,"inputName":"condition","node":"getObjectAttribute1","output":"val"}]},"twoWaySwitch1":{"type":"twoWaySwitch","params":{"condition":{"type":"boolean","default_value":false,"options":{"spare":true,"editable":false}},"ifTrue":{"type":"float","default_value":0,"options":{"spare":true,"editable":true},"raw_input":0.75},"ifFalse":{"type":"float","default_value":0,"options":{"spare":true,"editable":true},"raw_input":1}},"inputs":[{"index":0,"inputName":"condition","node":"onObjectHover2","output":"hovered"}],"connection_points":{"in":[{"name":"condition","type":"boolean","isArray":false},{"name":"ifTrue","type":"float","isArray":false},{"name":"ifFalse","type":"float","isArray":false}],"out":[{"name":"val","type":"float","isArray":false}]}},"vec2ToFloat1":{"type":"vec2ToFloat","params":{"vec2":{"overriden_options":{}}},"inputs":[{"index":0,"inputName":"vec2","node":"getIntersectionProperty1","output":"uv"}]}},"inputs":["attribCreate1"]}}}},"ui":{"plane1":{"pos":[-750,-950]},"material1":{"pos":[-600,-250]},"merge1":{"pos":[-400,700]},"objectProperties2":{"pos":[-600,50]},"transform_scale_to_height_1":{"pos":[-750,-700]},"merge2":{"pos":[450,550]},"transform_PLAY_PAUSE_POSITION":{"pos":[0,250]},"transform_MUTE_POSITION1":{"pos":[450,250]},"box1":{"pos":[-400,-50]},"material4":{"pos":[-400,150]},"merge8":{"pos":[-500,350]},"transform1":{"pos":[-350,-350]},"merge9":{"pos":[-400,-250]},"transform3":{"pos":[-400,50]},"subnetOutput1":{"pos":[-400,950]},"hierarchy1":{"pos":[-400,800]},"switch1":{"pos":[-600,-550]},"subnetInput1":{"pos":[-400,-800]},"switch2":{"pos":[-600,500]},"REF_videoObject":{"pos":[-600,200]},"transform_PLAYBAR":{"pos":[850,250]},"MAT":{"pos":[-800,-250],"nodes":{"meshBasic_MUTE":{"pos":[-50,350]},"meshBasic_PLAY_PAUSE":{"pos":[-50,250]},"meshBasic_VIDEO":{"pos":[-50,-100]},"meshBasic_VIDEO_BACK":{"pos":[-50,50]},"meshBasicBuilder_PLAYBAR":{"pos":[-50,500],"nodes":{"add1":{"pos":[50,500]},"compare1":{"pos":[100,250]},"constant1":{"pos":[200,-200]},"constant2":{"pos":[200,-50]},"globals1":{"pos":[-400,-50]},"mix1":{"pos":[450,-100]},"output1":{"pos":[650,-100]},"param1":{"pos":[-200,350]},"smoothstep1":{"pos":[300,350]},"subtract1":{"pos":[50,350]},"twoWaySwitch1":{"pos":[250,250]},"vec2ToFloat1":{"pos":[-250,150]}}}}},"COP":{"pos":[-800,-100],"selection":["video1"],"nodes":{"video1":{"pos":[-300,100]}}},"subnet_PLAY_PAUSE_BUTTON":{"pos":[0,100],"nodes":{"color2":{"pos":[600,-150]},"hierarchy1":{"pos":[650,750]},"material2":{"pos":[650,450]},"merge3":{"pos":[650,350]},"objectProperties1":{"pos":[450,150]},"objectProperties3":{"pos":[800,150]},"subnetOutput1":{"pos":[600,1400]},"transform_CONTROLS_SCALE":{"pos":[650,1100]},"transform_CORNER":{"pos":[650,1250]},"tube2":{"pos":[600,-300]},"actor_PLAY_PAUSE":{"pos":[650,900],"nodes":{"anyTrigger1":{"pos":[-50,400]},"getObjectChild_0":{"pos":[-150,850]},"getObjectChild_1":{"pos":[-150,950]},"getVideoProperty1":{"pos":[-200,700]},"onObjectClick1":{"pos":[0,250]},"onScenePlayState1":{"pos":[-300,600]},"onVideoEvent1":{"pos":[-400,400]},"setObjectVisible_FALSE":{"pos":[500,550]},"setObjectVisible_TRUE":{"pos":[500,400]},"setParam1":{"pos":[300,250]},"twoWaySwitch2":{"pos":[150,700]},"twoWaySwitch3":{"pos":[150,850]}}},"actor_hover":{"pos":[650,600],"nodes":{"onObjectHover1":{"pos":[0,-100]},"setMaterialOpacity1":{"pos":[350,100]},"setViewer1":{"pos":[350,-100]},"twoWaySwitch1":{"pos":[100,150]}}},"subnet_PAUSE_ICON":{"pos":[800,50],"nodes":{"box1":{"pos":[1100,-650]},"color3":{"pos":[1150,-250]},"merge2":{"pos":[1150,-350]},"merge5":{"pos":[1200,0]},"subnetInput1":{"pos":[1300,-200]},"subnetOutput1":{"pos":[1200,200]},"transform3":{"pos":[1050,-500]},"transform4":{"pos":[1250,-500]}}},"subnet_PLAY_ICON":{"pos":[450,50],"nodes":{"color1":{"pos":[350,-250]},"merge4":{"pos":[450,50]},"subnetInput1":{"pos":[650,-200]},"subnetOutput1":{"pos":[400,200]},"transform2":{"pos":[350,-100]},"tube1":{"pos":[350,-400]}}}}},"subnet_MUTE_BUTTON":{"pos":[450,100],"nodes":{"attribDelete1":{"pos":[1350,-250]},"color1":{"pos":[1050,-150]},"color3":{"pos":[1350,-150]},"color5":{"pos":[1600,-150]},"hierarchy2":{"pos":[1400,750]},"material3":{"pos":[1400,450]},"merge10":{"pos":[1050,-350]},"merge11":{"pos":[1600,-350]},"merge4":{"pos":[1400,350]},"merge5":{"pos":[1200,50]},"merge6":{"pos":[1550,50]},"objectProperties5":{"pos":[1200,150]},"objectProperties6":{"pos":[1550,150]},"subnetOutput1":{"pos":[1400,1400]},"transform2":{"pos":[1300,-450]},"transform4":{"pos":[1050,-250]},"transform5":{"pos":[1600,-250]},"transform7":{"pos":[1750,-500]},"transform_CORNER2":{"pos":[1400,1250]},"transform_MUTE_POSITION":{"pos":[1400,1100]},"tube3":{"pos":[1350,-350]},"actor_MUTE":{"pos":[1400,900],"nodes":{"anyTrigger1":{"pos":[-50,400]},"getObjectChild_0":{"pos":[-100,800]},"getObjectChild_1":{"pos":[-100,900]},"getVideoProperty1":{"pos":[-200,700]},"onObjectClick1":{"pos":[0,250]},"onScenePlayState1":{"pos":[-300,600]},"onVideoEvent1":{"pos":[-300,400]},"setObjectVisible_FALSE":{"pos":[500,550]},"setObjectVisible_TRUE":{"pos":[500,400]},"setParam1":{"pos":[300,250]},"twoWaySwitch2":{"pos":[150,700]},"twoWaySwitch3":{"pos":[150,850]}}},"actor_hover":{"pos":[1400,600],"selection":["onObjectHover1","setMaterialOpacity1","setViewer1","twoWaySwitch1"],"nodes":{"onObjectHover1":{"pos":[0,-100]},"setMaterialOpacity1":{"pos":[350,100]},"setViewer1":{"pos":[350,-100]},"twoWaySwitch1":{"pos":[100,150]}}},"subnet_MUTED_ICON_base":{"pos":[950,-550],"selection":["attribDelete1"],"nodes":{"attribDelete1":{"pos":[850,-450]},"merge8":{"pos":[850,-550]},"roundedBox1":{"pos":[750,-850]},"subnetOutput1":{"pos":[850,-300]},"transform3":{"pos":[950,-700]},"transform4":{"pos":[750,-700]},"tube4":{"pos":[950,-850]}}},"subnet_MUTED_ICON_cross":{"pos":[1750,-600],"selection":["attribDelete1"],"nodes":{"attribDelete1":{"pos":[1700,-1100]},"box1":{"pos":[1700,-1250]},"merge9":{"pos":[1700,-750]},"subnetOutput1":{"pos":[1700,-500]},"transform1":{"pos":[1700,-1000]},"transform5":{"pos":[1600,-900]},"transform6":{"pos":[1800,-900]}}},"subnet_MUTED_ICON_waves":{"pos":[1300,-550],"selection":["peak1"],"nodes":{"attribNormalize1":{"pos":[1250,-1500]},"circle1":{"pos":[1250,-1750]},"copy1":{"pos":[1250,-850]},"merge5":{"pos":[1250,-1150]},"merge6":{"pos":[1250,-700]},"normals1":{"pos":[1250,-1600]},"peak1":{"pos":[1350,-1350]},"skin1":{"pos":[1250,-950]},"subnetOutput1":{"pos":[1250,-450]}}}}},"subnet_PLAYBAR":{"pos":[850,100],"selection":["material1"],"nodes":{"attribCreate1":{"pos":[0,-50]},"material1":{"pos":[0,-200]},"plane1":{"pos":[0,-550]},"subnetOutput1":{"pos":[0,350]},"transform1":{"pos":[0,-350]},"actor1":{"pos":[0,200],"nodes":{"complement1":{"pos":[250,250]},"divide1":{"pos":[500,700]},"getIntersectionProperty1":{"pos":[-100,200]},"getObjectAttribute1":{"pos":[400,50]},"getVideoProperty1":{"pos":[200,700]},"mult1":{"pos":[450,250]},"onObjectHover2":{"pos":[300,-1050]},"onObjectPointerdown1":{"pos":[200,-600]},"onObjectPointerup1":{"pos":[200,-450]},"onTick1":{"pos":[550,450],"comment":"using `onTick` as opposed to `onVideoEvent` results in a smoother movement of the `ratio` uniform "},"onTick2":{"pos":[300,-100]},"paramButtonPress1":{"pos":[1350,100]},"rayFromCursor1":{"pos":[-450,200]},"rayIntersectObject1":{"pos":[-300,200]},"setMaterialOpacity1":{"pos":[650,-850]},"setMaterialUniform1":{"pos":[900,650]},"setObjectAttribute_FALSE":{"pos":[500,-450]},"setObjectAttribute_TRUE":{"pos":[500,-600]},"setParam1":{"pos":[1100,100]},"setViewer1":{"pos":[650,-1050]},"triggerFilter1":{"pos":[750,450]},"triggerFilter2":{"pos":[600,-100]},"twoWaySwitch1":{"pos":[400,-800]},"vec2ToFloat1":{"pos":[50,250]}}}}}}}}}