@tushar-br/editing-pack 1.0.195 → 1.0.196
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/staging_area/Blender/BlendThumb.dll +0 -0
- package/staging_area/Blender/BlendThumb.lib +0 -0
- package/staging_area/Blender/blender.shared/usd_ms.dll +0 -0
- package/staging_area/Blender/blender.shared/vulkan-1.dll +0 -0
- package/staging_area/Blender/blender_cpu_check.dll +0 -0
- package/staging_area/Blender/blender_cpu_check.lib +0 -0
- package/staging_area/Blender/blender_debug_cycles.cmd +20 -0
- package/staging_area/Blender/blender_debug_gpu.cmd +21 -0
- package/staging_area/Blender/blender_debug_gpu_glitchworkaround.cmd +21 -0
- package/staging_area/Blender/blender_debug_log.cmd +20 -0
- package/staging_area/Blender/blender_factory_startup.cmd +20 -0
- package/staging_area/Blender/blender_factory_startup_vulkan.cmd +20 -0
- package/staging_area/Blender/blender_oculus.cmd +14 -0
- package/staging_area/Blender/blender_startup_opengl.cmd +4 -0
- package/staging_area/Blender/blender_startup_vulkan.cmd +4 -0
- package/staging_area/Blender/blender_system_info.cmd +16 -0
- package/staging_area/Blender/copyright.txt +39 -0
- package/staging_area/Blender/blender.shared/shaderc_shared.dll +0 -0
- package/staging_area/Blender/blender.shared/sndfile.dll +0 -0
- package/staging_area/Blender/blender.shared/swresample-5.dll +0 -0
- package/staging_area/Blender/blender.shared/swscale-8.dll +0 -0
- package/staging_area/Blender/blender.shared/sycl8.dll +0 -0
- package/staging_area/Blender/blender.shared/tbb12.dll +0 -0
- package/staging_area/Blender/blender.shared/tbbmalloc.dll +0 -0
- package/staging_area/Blender/blender.shared/tbbmalloc_proxy.dll +0 -0
- package/staging_area/Blender/blender.shared/ur_adapter_level_zero.dll +0 -0
- package/staging_area/Blender/blender.shared/ur_adapter_level_zerod.dll +0 -0
- package/staging_area/Blender/blender.shared/ur_loader.dll +0 -0
- package/staging_area/Blender/blender.shared/ur_loaderd.dll +0 -0
- package/staging_area/Blender/blender.shared/ur_win_proxy_loader.dll +0 -0
- package/staging_area/Blender/blender.shared/ur_win_proxy_loaderd.dll +0 -0
- package/staging_area/Blender/blender.shared/usd/ar/resources/plugInfo.json +0 -23
- package/staging_area/Blender/blender.shared/usd/esf/resources/plugInfo.json +0 -15
- package/staging_area/Blender/blender.shared/usd/esfUsd/resources/plugInfo.json +0 -15
- package/staging_area/Blender/blender.shared/usd/exec/resources/plugInfo.json +0 -15
- package/staging_area/Blender/blender.shared/usd/execGeom/resources/plugInfo.json +0 -23
- package/staging_area/Blender/blender.shared/usd/execUsd/resources/plugInfo.json +0 -15
- package/staging_area/Blender/blender.shared/usd/glf/resources/plugInfo.json +0 -14
- package/staging_area/Blender/blender.shared/usd/glf/resources/shaders/pcfShader.glslfx +0 -124
- package/staging_area/Blender/blender.shared/usd/glf/resources/shaders/simpleLighting.glslfx +0 -543
- package/staging_area/Blender/blender.shared/usd/hd/resources/codegenTemplates/schemaClass.cpp +0 -265
- package/staging_area/Blender/blender.shared/usd/hd/resources/codegenTemplates/schemaClass.h +0 -310
- package/staging_area/Blender/blender.shared/usd/hd/resources/plugInfo.json +0 -12
- package/staging_area/Blender/blender.shared/usd/hdGp/resources/plugInfo.json +0 -24
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/plugInfo.json +0 -76
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/basisCurves.glslfx +0 -1365
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/compute.glslfx +0 -439
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/domeLight.glslfx +0 -280
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/edgeId.glslfx +0 -237
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/fallbackLighting.glslfx +0 -59
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/fallbackLightingShader.glslfx +0 -27
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/fallbackMaterialNetwork.glslfx +0 -47
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/fallbackVolume.glslfx +0 -97
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/frustumCull.glslfx +0 -448
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/imageShader.glslfx +0 -103
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/instancing.glslfx +0 -217
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/invalidMaterialNetwork.glslfx +0 -53
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/mesh.glslfx +0 -1519
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/meshFaceCull.glslfx +0 -40
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/meshNormal.glslfx +0 -201
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/meshWire.glslfx +0 -326
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/overlayShader.glslfx +0 -66
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/pointDisk.glslfx +0 -103
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/pointId.glslfx +0 -87
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/points.glslfx +0 -155
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/ptexTexture.glslfx +0 -371
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/renderPass.glslfx +0 -319
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/renderPassShader.glslfx +0 -53
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/simpleLightingShader.glslfx +0 -41
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/surfaceHelpers.glslfx +0 -80
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/terminals.glslfx +0 -458
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/visibility.glslfx +0 -80
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/volume.glslfx +0 -631
- package/staging_area/Blender/blender.shared/usd/hdSt/resources/textures/fallbackBlackDomeLight.png +0 -0
- package/staging_area/Blender/blender.shared/usd/hdStorm/resources/plugInfo.json +0 -22
- package/staging_area/Blender/blender.shared/usd/hdsi/resources/plugInfo.json +0 -20
- package/staging_area/Blender/blender.shared/usd/hdx/resources/plugInfo.json +0 -14
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/boundingBox.glslfx +0 -52
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/colorChannel.glslfx +0 -53
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/colorCorrection.glslfx +0 -57
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/fullscreen.glslfx +0 -48
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/oitResolveImageShader.glslfx +0 -93
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/outline.glslfx +0 -138
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPass.glslfx +0 -405
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassColorAndSelectionShader.glslfx +0 -56
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassColorShader.glslfx +0 -55
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassColorWithOccludedSelectionShader.glslfx +0 -55
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassOitOpaqueShader.glslfx +0 -53
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassOitShader.glslfx +0 -54
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassOitVolumeShader.glslfx +0 -53
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassPickingShader.glslfx +0 -51
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassShadowShader.glslfx +0 -53
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/selection.glslfx +0 -476
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/skydome.glslfx +0 -46
- package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/visualize.glslfx +0 -107
- package/staging_area/Blender/blender.shared/usd/hdx/resources/textures/StinsonBeach.hdr +0 -0
- package/staging_area/Blender/blender.shared/usd/hdx/resources/textures/StinsonBeach.tex +0 -0
- package/staging_area/Blender/blender.shared/usd/hgiGL/resources/plugInfo.json +0 -18
- package/staging_area/Blender/blender.shared/usd/hgiVulkan/resources/plugInfo.json +0 -18
- package/staging_area/Blender/blender.shared/usd/hio/resources/plugInfo.json +0 -25
- package/staging_area/Blender/blender.shared/usd/hioOiio/resources/plugInfo.json +0 -20
- package/staging_area/Blender/blender.shared/usd/hioOpenVDB/resources/plugInfo.json +0 -20
- package/staging_area/Blender/blender.shared/usd/plugInfo.json +0 -5
- package/staging_area/Blender/blender.shared/usd/sdf/resources/plugInfo.json +0 -94
- package/staging_area/Blender/blender.shared/usd/sdr/resources/plugInfo.json +0 -21
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/CMakeLists.txt +0 -15
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/__init__.py +0 -10
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/api.h +0 -30
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/generatedSchema.classes.txt +0 -16
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/generatedSchema.module.h +0 -11
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/module.cpp +0 -18
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/moduleDeps.cpp +0 -27
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/plugInfo.json +0 -15
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/schema.usda +0 -12
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/schemaClass.cpp +0 -438
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/schemaClass.h +0 -489
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/schemaUserDoc.usda +0 -20
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/tokens.cpp +0 -30
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/tokens.h +0 -74
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/wrapSchemaClass.cpp +0 -328
- package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/wrapTokens.cpp +0 -25
- package/staging_area/Blender/blender.shared/usd/usd/resources/generatedSchema.usda +0 -146
- package/staging_area/Blender/blender.shared/usd/usd/resources/plugInfo.json +0 -125
- package/staging_area/Blender/blender.shared/usd/usd/resources/usd/schema.usda +0 -538
- package/staging_area/Blender/blender.shared/usd/usdGeom/resources/generatedSchema.usda +0 -2689
- package/staging_area/Blender/blender.shared/usd/usdGeom/resources/plugInfo.json +0 -433
- package/staging_area/Blender/blender.shared/usd/usdGeom/resources/usdGeom/schema.usda +0 -2775
- package/staging_area/Blender/blender.shared/usd/usdGeomValidators/resources/plugInfo.json +0 -39
- package/staging_area/Blender/blender.shared/usd/usdHydra/resources/generatedSchema.usda +0 -28
- package/staging_area/Blender/blender.shared/usd/usdHydra/resources/plugInfo.json +0 -38
- package/staging_area/Blender/blender.shared/usd/usdHydra/resources/shaders/empty.glslfx +0 -18
- package/staging_area/Blender/blender.shared/usd/usdHydra/resources/shaders/shaderDefs.usda +0 -252
- package/staging_area/Blender/blender.shared/usd/usdHydra/resources/usdHydra/schema.usda +0 -201
- package/staging_area/Blender/blender.shared/usd/usdImaging/resources/plugInfo.json +0 -340
- package/staging_area/Blender/blender.shared/usd/usdImagingGL/resources/plugInfo.json +0 -12
- package/staging_area/Blender/blender.shared/usd/usdLux/resources/generatedSchema.usda +0 -1165
- package/staging_area/Blender/blender.shared/usd/usdLux/resources/plugInfo.json +0 -266
- package/staging_area/Blender/blender.shared/usd/usdLux/resources/usdLux/schema.usda +0 -1511
- package/staging_area/Blender/blender.shared/usd/usdMedia/resources/generatedSchema.usda +0 -95
- package/staging_area/Blender/blender.shared/usd/usdMedia/resources/plugInfo.json +0 -40
- package/staging_area/Blender/blender.shared/usd/usdMedia/resources/usdMedia/schema.usda +0 -214
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/generatedSchema.usda +0 -20
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/disney_principled.mtlx +0 -140
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/gltf_pbr.mtlx +0 -695
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_add.mtlx +0 -52
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_conductor.mtlx +0 -123
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_dielectric.mtlx +0 -163
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_diffuse.mtlx +0 -45
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_emission.mtlx +0 -20
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_generalized_schlick.mtlx +0 -172
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_iridescence.mtlx +0 -103
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_layer.mtlx +0 -27
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_mix.mtlx +0 -41
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_sheen.mtlx +0 -41
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_sss.mtlx +0 -60
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_surface.mtlx +0 -28
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_translucent.mtlx +0 -22
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/open_pbr_surface.mtlx +0 -676
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/standard_surface.mtlx +0 -431
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/translation/open_pbr_to_standard_surface.mtlx +0 -362
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/translation/standard_surface_to_gltf_pbr.mtlx +0 -166
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/translation/standard_surface_to_open_pbr.mtlx +0 -309
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/translation/standard_surface_to_usd.mtlx +0 -128
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/usd_preview_surface.mtlx +0 -438
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/cmlib/cmlib_defs.mtlx +0 -110
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/cmlib/cmlib_ng.mtlx +0 -392
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genglsl/lights_genglsl_impl.mtlx +0 -13
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genglsl/mx_directional_light.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genglsl/mx_point_light.glsl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genglsl/mx_spot_light.glsl +0 -13
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genmsl/lights_genmsl_impl.mtlx +0 -13
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genmsl/mx_directional_light.metal +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genmsl/mx_point_light.metal +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genmsl/mx_spot_light.metal +0 -13
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/lights_defs.mtlx +0 -53
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/core.mdl +0 -206
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/hsv.mdl +0 -80
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/noise.mdl +0 -759
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib.mdl +0 -30
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_10.mdl +0 -234
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_6.mdl +0 -1083
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_7.mdl +0 -265
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_8.mdl +0 -36
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_9.mdl +0 -373
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/sampling.mdl +0 -182
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib.mdl +0 -18
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_10.mdl +0 -18
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_6.mdl +0 -4474
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_7.mdl +0 -18
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_8.mdl +0 -444
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_9.mdl +0 -388
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/genglsl/nprlib_genglsl_impl.mtlx +0 -17
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/genmdl/nprlib_genmdl_impl.mtlx +0 -17
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/genmsl/nprlib_genmsl_impl.mtlx +0 -17
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/genosl/nprlib_genosl_impl.mtlx +0 -17
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/nprlib_defs.mtlx +0 -55
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/nprlib_ng.mtlx +0 -114
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_closure_type.glsl +0 -17
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_environment_fis.glsl +0 -69
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_environment_none.glsl +0 -11
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_environment_prefilter.glsl +0 -30
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_generate_albedo_table.glsl +0 -10
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_generate_prefilter_env.glsl +0 -66
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_microfacet.glsl +0 -106
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_microfacet_diffuse.glsl +0 -199
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_microfacet_sheen.glsl +0 -189
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_microfacet_specular.glsl +0 -510
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_shadow.glsl +0 -23
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_transmission_opacity.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_transmission_refract.glsl +0 -14
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_add_bsdf.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_add_edf.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_anisotropic_vdf.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_artistic_ior.glsl +0 -17
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_blackbody.glsl +0 -48
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_burley_diffuse_bsdf.glsl +0 -33
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_chiang_hair_bsdf.glsl +0 -291
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_conductor_bsdf.glsl +0 -51
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_dielectric_bsdf.glsl +0 -73
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_displacement_float.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_displacement_vector3.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_generalized_schlick_bsdf.glsl +0 -80
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_generalized_schlick_edf.glsl +0 -13
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_layer_bsdf.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_layer_vdf.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_mix_bsdf.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_mix_edf.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_multiply_bsdf_color3.glsl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_multiply_bsdf_float.glsl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_multiply_edf_color3.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_multiply_edf_float.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_oren_nayar_diffuse_bsdf.glsl +0 -37
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_roughness_anisotropy.glsl +0 -15
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_roughness_dual.glsl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_sheen_bsdf.glsl +0 -60
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_subsurface_bsdf.glsl +0 -33
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_translucent_bsdf.glsl +0 -28
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_uniform_edf.glsl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/pbrlib_genglsl_impl.mtlx +0 -89
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genmdl/pbrlib_genmdl_impl.mtlx +0 -105
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genmsl/pbrlib_genmsl_impl.mtlx +0 -10
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/lib/mx_microfacet.osl +0 -78
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_anisotropic_vdf.osl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_artistic_ior.osl +0 -17
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_blackbody.osl +0 -49
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_chiang_hair_bsdf.osl +0 -12
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_chiang_hair_roughness.osl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_dielectric_bsdf.osl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_generalized_schlick_bsdf.osl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_generalized_schlick_edf.osl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_roughness_anisotropy.osl +0 -15
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_roughness_dual.osl +0 -12
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_subsurface_bsdf.osl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_surface.osl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/pbrlib_genosl_impl.mtlx +0 -86
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/pbrlib_defs.mtlx +0 -462
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/pbrlib_ng.mtlx +0 -22
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_hsv.glsl +0 -91
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_math.glsl +0 -35
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_noise.glsl +0 -707
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_sampling.glsl +0 -91
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_transform_uv.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_transform_uv_vflip.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_aastep.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_burn_color3.glsl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_burn_color4.glsl +0 -10
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_burn_float.glsl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_cellnoise2d_float.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_cellnoise3d_float.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_creatematrix_vector3_matrix33.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_creatematrix_vector3_matrix44.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_creatematrix_vector4_matrix44.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_disjointover_color4.glsl +0 -25
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_dodge_color3.glsl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_dodge_color4.glsl +0 -10
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_dodge_float.glsl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_fractal3d_float.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_fractal3d_vector2.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_fractal3d_vector3.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_fractal3d_vector4.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_hsvtorgb_color3.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_hsvtorgb_color4.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_color3.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_color4.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_float.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_vector2.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_vector3.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_vector4.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_luminance_color3.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_luminance_color4.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_mix_surfaceshader.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise2d_float.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise2d_vector2.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise2d_vector3.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise2d_vector4.glsl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise3d_float.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise3d_vector2.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise3d_vector3.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise3d_vector4.glsl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_normalmap.glsl +0 -13
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_premult_color4.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramplr_float.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramplr_vector2.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramplr_vector3.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramplr_vector4.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramptb_float.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramptb_vector2.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramptb_vector3.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramptb_vector4.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_rgbtohsv_color3.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_rgbtohsv_color4.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_rotate_vector2.glsl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_rotate_vector3.glsl +0 -19
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_smoothstep_float.glsl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splitlr_float.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splitlr_vector2.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splitlr_vector3.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splitlr_vector4.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splittb_float.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splittb_vector2.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splittb_vector3.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splittb_vector4.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_transformmatrix_vector2M3.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_transformmatrix_vector3M4.glsl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_unpremult_color4.glsl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise2d_float.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise2d_vector2.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise2d_vector3.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise3d_float.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise3d_vector2.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise3d_vector3.glsl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/stdlib_genglsl_impl.mtlx +0 -756
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmdl/stdlib_genmdl_impl.mtlx +0 -762
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/lib/mx_math.metal +0 -129
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/lib/mx_matscalaroperators.metal +0 -55
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/lib/mx_sampling.metal +0 -91
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/lib/mx_texture.metal +0 -25
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/stdlib_genmsl_impl.mtlx +0 -160
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/color4.h +0 -332
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/matrix33.h +0 -161
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/mx_funcs.h +0 -673
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/vector2.h +0 -333
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/vector4.h +0 -424
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/lib/mx_sampling.osl +0 -150
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/lib/mx_transform_uv.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/lib/mx_transform_uv_vflip.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_burn_color3.osl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_burn_color4.osl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_burn_float.osl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_cellnoise2d_float.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_cellnoise3d_float.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_creatematrix.osl +0 -23
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_disjointover_color4.osl +0 -25
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_dodge_color3.osl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_dodge_color4.osl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_dodge_float.osl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_fractal3d_float.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_fractal3d_vector2.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_fractal3d_vector3.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_fractal3d_vector4.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_frame_float.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geomcolor_color3.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geomcolor_color4.osl +0 -9
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geomcolor_float.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_boolean.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_color3.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_color4.osl +0 -16
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_float.osl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_integer.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_string.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_vector2.osl +0 -13
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_vector3.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_vector4.osl +0 -15
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_heighttonormal_vector3.osl +0 -8
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_hsvtorgb_color3.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_hsvtorgb_color4.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_color3.osl +0 -20
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_color4.osl +0 -24
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_float.osl +0 -20
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_vector2.osl +0 -21
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_vector3.osl +0 -19
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_vector4.osl +0 -23
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_luminance_color3.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_luminance_color4.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_mix_surfaceshader.osl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise2d_float.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise2d_vector2.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise2d_vector3.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise2d_vector4.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise3d_float.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise3d_vector2.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise3d_vector3.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise3d_vector4.osl +0 -5
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_normalmap.osl +0 -24
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_premult_color4.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_rgbtohsv_color3.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_rgbtohsv_color4.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_rotate_vector2.osl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_rotate_vector3.osl +0 -20
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_surface_unlit.osl +0 -7
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_time_float.osl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_transformmatrix_vector2M3.osl +0 -6
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_unpremult_color4.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise2d_float.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise2d_vector2.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise2d_vector3.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise3d_float.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise3d_vector2.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise3d_vector3.osl +0 -4
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/stdlib_genosl_impl.mtlx +0 -752
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/stdlib_defs.mtlx +0 -4942
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/stdlib_ng.mtlx +0 -6232
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/essl.mtlx +0 -14
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/genglsl.mtlx +0 -14
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/genmdl.mtlx +0 -14
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/genmsl.mtlx +0 -14
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/genosl.mtlx +0 -14
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/plugInfo.json +0 -58
- package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/usdMtlx/schema.usda +0 -42
- package/staging_area/Blender/blender.shared/usd/usdPhysics/resources/generatedSchema.usda +0 -926
- package/staging_area/Blender/blender.shared/usd/usdPhysics/resources/plugInfo.json +0 -215
- package/staging_area/Blender/blender.shared/usd/usdPhysics/resources/usdPhysics/schema.usda +0 -879
- package/staging_area/Blender/blender.shared/usd/usdPhysicsValidators/resources/plugInfo.json +0 -54
- package/staging_area/Blender/blender.shared/usd/usdProc/resources/generatedSchema.usda +0 -57
- package/staging_area/Blender/blender.shared/usd/usdProc/resources/plugInfo.json +0 -29
- package/staging_area/Blender/blender.shared/usd/usdProc/resources/usdProc/schema.usda +0 -45
- package/staging_area/Blender/blender.shared/usd/usdProcImaging/resources/plugInfo.json +0 -22
- package/staging_area/Blender/blender.shared/usd/usdRender/resources/generatedSchema.usda +0 -335
- package/staging_area/Blender/blender.shared/usd/usdRender/resources/plugInfo.json +0 -80
- package/staging_area/Blender/blender.shared/usd/usdRender/resources/usdRender/schema.usda +0 -436
- package/staging_area/Blender/blender.shared/usd/usdRi/resources/generatedSchema.usda +0 -38
- package/staging_area/Blender/blender.shared/usd/usdRi/resources/plugInfo.json +0 -51
- package/staging_area/Blender/blender.shared/usd/usdRi/resources/usdRi/schema.usda +0 -157
- package/staging_area/Blender/blender.shared/usd/usdRiPxrImaging/resources/plugInfo.json +0 -53
- package/staging_area/Blender/blender.shared/usd/usdSemantics/resources/generatedSchema.usda +0 -19
- package/staging_area/Blender/blender.shared/usd/usdSemantics/resources/plugInfo.json +0 -29
- package/staging_area/Blender/blender.shared/usd/usdSemantics/resources/usdSemantics/schema.usda +0 -36
- package/staging_area/Blender/blender.shared/usd/usdShade/resources/generatedSchema.usda +0 -112
- package/staging_area/Blender/blender.shared/usd/usdShade/resources/plugInfo.json +0 -145
- package/staging_area/Blender/blender.shared/usd/usdShade/resources/usdShade/schema.usda +0 -595
- package/staging_area/Blender/blender.shared/usd/usdShadeValidators/resources/plugInfo.json +0 -63
- package/staging_area/Blender/blender.shared/usd/usdShaders/resources/plugInfo.json +0 -22
- package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/previewSurface.glslfx +0 -498
- package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/primvarReader.glslfx +0 -18
- package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/shaderDefs.usda +0 -475
- package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/transform2d.glslfx +0 -18
- package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/uvTexture.glslfx +0 -18
- package/staging_area/Blender/blender.shared/usd/usdSkel/resources/generatedSchema.usda +0 -249
- package/staging_area/Blender/blender.shared/usd/usdSkel/resources/plugInfo.json +0 -86
- package/staging_area/Blender/blender.shared/usd/usdSkel/resources/usdSkel/schema.usda +0 -289
- package/staging_area/Blender/blender.shared/usd/usdSkelImaging/resources/plugInfo.json +0 -57
- package/staging_area/Blender/blender.shared/usd/usdSkelImaging/resources/shaders/skinning.glslfx +0 -265
- package/staging_area/Blender/blender.shared/usd/usdSkelValidators/resources/plugInfo.json +0 -27
- package/staging_area/Blender/blender.shared/usd/usdUI/resources/generatedSchema.usda +0 -123
- package/staging_area/Blender/blender.shared/usd/usdUI/resources/plugInfo.json +0 -62
- package/staging_area/Blender/blender.shared/usd/usdUI/resources/usdUI/schema.usda +0 -288
- package/staging_area/Blender/blender.shared/usd/usdUtilsValidators/resources/plugInfo.json +0 -45
- package/staging_area/Blender/blender.shared/usd/usdValidation/resources/plugInfo.json +0 -24
- package/staging_area/Blender/blender.shared/usd/usdVol/resources/generatedSchema.usda +0 -340
- package/staging_area/Blender/blender.shared/usd/usdVol/resources/plugInfo.json +0 -73
- package/staging_area/Blender/blender.shared/usd/usdVol/resources/usdVol/schema.usda +0 -144
- package/staging_area/Blender/blender.shared/usd/usdVolImaging/resources/plugInfo.json +0 -29
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
#include "mx_microfacet_specular.glsl"
|
|
2
|
-
|
|
3
|
-
vec3 mx_environment_radiance(vec3 N, vec3 V, vec3 X, vec2 alpha, int distribution, FresnelData fd)
|
|
4
|
-
{
|
|
5
|
-
// Generate tangent frame.
|
|
6
|
-
X = normalize(X - dot(X, N) * N);
|
|
7
|
-
vec3 Y = cross(N, X);
|
|
8
|
-
mat3 tangentToWorld = mat3(X, Y, N);
|
|
9
|
-
|
|
10
|
-
// Transform the view vector to tangent space.
|
|
11
|
-
V = vec3(dot(V, X), dot(V, Y), dot(V, N));
|
|
12
|
-
|
|
13
|
-
// Compute derived properties.
|
|
14
|
-
float NdotV = clamp(V.z, M_FLOAT_EPS, 1.0);
|
|
15
|
-
float avgAlpha = mx_average_alpha(alpha);
|
|
16
|
-
float G1V = mx_ggx_smith_G1(NdotV, avgAlpha);
|
|
17
|
-
|
|
18
|
-
// Integrate outgoing radiance using filtered importance sampling.
|
|
19
|
-
// http://cgg.mff.cuni.cz/~jaroslav/papers/2008-egsr-fis/2008-egsr-fis-final-embedded.pdf
|
|
20
|
-
vec3 radiance = vec3(0.0);
|
|
21
|
-
int envRadianceSamples = $envRadianceSamples;
|
|
22
|
-
for (int i = 0; i < envRadianceSamples; i++)
|
|
23
|
-
{
|
|
24
|
-
vec2 Xi = mx_spherical_fibonacci(i, envRadianceSamples);
|
|
25
|
-
|
|
26
|
-
// Compute the half vector and incoming light direction.
|
|
27
|
-
vec3 H = mx_ggx_importance_sample_VNDF(Xi, V, alpha);
|
|
28
|
-
vec3 L = fd.refraction ? mx_refraction_solid_sphere(-V, H, fd.ior.x) : -reflect(V, H);
|
|
29
|
-
|
|
30
|
-
// Compute dot products for this sample.
|
|
31
|
-
float NdotL = clamp(L.z, M_FLOAT_EPS, 1.0);
|
|
32
|
-
float VdotH = clamp(dot(V, H), M_FLOAT_EPS, 1.0);
|
|
33
|
-
|
|
34
|
-
// Sample the environment light from the given direction.
|
|
35
|
-
vec3 Lw = tangentToWorld * L;
|
|
36
|
-
float pdf = mx_ggx_NDF(H, alpha) * G1V / (4.0 * NdotV);
|
|
37
|
-
float lod = mx_latlong_compute_lod(Lw, pdf, float($envRadianceMips - 1), envRadianceSamples);
|
|
38
|
-
vec3 sampleColor = mx_latlong_map_lookup(Lw, $envMatrix, lod, $envRadiance);
|
|
39
|
-
|
|
40
|
-
// Compute the Fresnel term.
|
|
41
|
-
vec3 F = mx_compute_fresnel(VdotH, fd);
|
|
42
|
-
|
|
43
|
-
// Compute the geometric term.
|
|
44
|
-
float G = mx_ggx_smith_G2(NdotL, NdotV, avgAlpha);
|
|
45
|
-
|
|
46
|
-
// Compute the combined FG term, which simplifies to inverted Fresnel for refraction.
|
|
47
|
-
vec3 FG = fd.refraction ? vec3(1.0) - F : F * G;
|
|
48
|
-
|
|
49
|
-
// Add the radiance contribution of this sample.
|
|
50
|
-
// From https://cdn2.unrealengine.com/Resources/files/2013SiggraphPresentationsNotes-26915738.pdf
|
|
51
|
-
// incidentLight = sampleColor * NdotL
|
|
52
|
-
// microfacetSpecular = D * F * G / (4 * NdotL * NdotV)
|
|
53
|
-
// pdf = D * G1V / (4 * NdotV);
|
|
54
|
-
// radiance = incidentLight * microfacetSpecular / pdf
|
|
55
|
-
radiance += sampleColor * FG;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
// Apply the global component of the geometric term and normalize.
|
|
59
|
-
radiance /= G1V * float(envRadianceSamples);
|
|
60
|
-
|
|
61
|
-
// Return the final radiance.
|
|
62
|
-
return radiance * $envLightIntensity;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
vec3 mx_environment_irradiance(vec3 N)
|
|
66
|
-
{
|
|
67
|
-
vec3 Li = mx_latlong_map_lookup(N, $envMatrix, 0.0, $envIrradiance);
|
|
68
|
-
return Li * $envLightIntensity;
|
|
69
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
#include "mx_microfacet_specular.glsl"
|
|
2
|
-
|
|
3
|
-
// Return the mip level associated with the given alpha in a prefiltered environment.
|
|
4
|
-
float mx_latlong_alpha_to_lod(float alpha)
|
|
5
|
-
{
|
|
6
|
-
float lodBias = (alpha < 0.25) ? sqrt(alpha) : 0.5 * alpha + 0.375;
|
|
7
|
-
return lodBias * float($envRadianceMips - 1);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
vec3 mx_environment_radiance(vec3 N, vec3 V, vec3 X, vec2 alpha, int distribution, FresnelData fd)
|
|
11
|
-
{
|
|
12
|
-
N = mx_forward_facing_normal(N, V);
|
|
13
|
-
vec3 L = fd.refraction ? mx_refraction_solid_sphere(-V, N, fd.ior.x) : -reflect(V, N);
|
|
14
|
-
|
|
15
|
-
float NdotV = clamp(dot(N, V), M_FLOAT_EPS, 1.0);
|
|
16
|
-
|
|
17
|
-
float avgAlpha = mx_average_alpha(alpha);
|
|
18
|
-
vec3 F = mx_compute_fresnel(NdotV, fd);
|
|
19
|
-
float G = mx_ggx_smith_G2(NdotV, NdotV, avgAlpha);
|
|
20
|
-
vec3 FG = fd.refraction ? vec3(1.0) - (F * G) : F * G;
|
|
21
|
-
|
|
22
|
-
vec3 Li = mx_latlong_map_lookup(L, $envMatrix, mx_latlong_alpha_to_lod(avgAlpha), $envRadiance);
|
|
23
|
-
return Li * FG * $envLightIntensity;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
vec3 mx_environment_irradiance(vec3 N)
|
|
27
|
-
{
|
|
28
|
-
vec3 Li = mx_latlong_map_lookup(N, $envMatrix, 0.0, $envIrradiance);
|
|
29
|
-
return Li * $envLightIntensity;
|
|
30
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
#include "mx_microfacet_sheen.glsl"
|
|
2
|
-
#include "mx_microfacet_specular.glsl"
|
|
3
|
-
|
|
4
|
-
vec3 mx_generate_dir_albedo_table()
|
|
5
|
-
{
|
|
6
|
-
vec2 uv = gl_FragCoord.xy / $albedoTableSize;
|
|
7
|
-
vec2 ggxDirAlbedo = mx_ggx_dir_albedo(uv.x, uv.y, vec3(1, 0, 0), vec3(0, 1, 0)).xy;
|
|
8
|
-
float sheenDirAlbedo = mx_imageworks_sheen_dir_albedo(uv.x, uv.y);
|
|
9
|
-
return vec3(ggxDirAlbedo, sheenDirAlbedo);
|
|
10
|
-
}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
#include "mx_microfacet_specular.glsl"
|
|
2
|
-
|
|
3
|
-
// Return the alpha associated with the given mip level in a prefiltered environment.
|
|
4
|
-
float mx_latlong_lod_to_alpha(float lod)
|
|
5
|
-
{
|
|
6
|
-
float lodBias = lod / float($envRadianceMips - 1);
|
|
7
|
-
return (lodBias < 0.5) ? mx_square(lodBias) : 2.0 * (lodBias - 0.375);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
// The inverse of mx_latlong_projection.
|
|
11
|
-
vec3 mx_latlong_map_projection_inverse(vec2 uv)
|
|
12
|
-
{
|
|
13
|
-
float latitude = (uv.y - 0.5) * M_PI;
|
|
14
|
-
float longitude = (uv.x - 0.5) * M_PI * 2.0;
|
|
15
|
-
|
|
16
|
-
float x = -mx_cos(latitude) * mx_sin(longitude);
|
|
17
|
-
float y = -mx_sin(latitude);
|
|
18
|
-
float z = mx_cos(latitude) * mx_cos(longitude);
|
|
19
|
-
|
|
20
|
-
return vec3(x, y, z);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
vec3 mx_generate_prefilter_env()
|
|
24
|
-
{
|
|
25
|
-
// The tangent view vector is aligned with the normal.
|
|
26
|
-
vec3 V = vec3(0.0, 0.0, 1.0);
|
|
27
|
-
float NdotV = 1.0;
|
|
28
|
-
|
|
29
|
-
// Compute derived properties.
|
|
30
|
-
vec2 uv = gl_FragCoord.xy * pow(2.0, $envPrefilterMip) / vec2(textureSize($envRadiance, 0));
|
|
31
|
-
vec3 worldN = mx_latlong_map_projection_inverse(uv);
|
|
32
|
-
mat3 tangentToWorld = mx_orthonormal_basis(worldN);
|
|
33
|
-
float alpha = mx_latlong_lod_to_alpha(float($envPrefilterMip));
|
|
34
|
-
float G1V = mx_ggx_smith_G1(NdotV, alpha);
|
|
35
|
-
|
|
36
|
-
// Integrate the LD term for the given environment and alpha.
|
|
37
|
-
vec3 radiance = vec3(0.0, 0.0, 0.0);
|
|
38
|
-
float weight = 0.0;
|
|
39
|
-
int envRadianceSamples = 1024;
|
|
40
|
-
for (int i = 0; i < envRadianceSamples; i++)
|
|
41
|
-
{
|
|
42
|
-
vec2 Xi = mx_spherical_fibonacci(i, envRadianceSamples);
|
|
43
|
-
|
|
44
|
-
// Compute the half vector and incoming light direction.
|
|
45
|
-
vec3 H = mx_ggx_importance_sample_VNDF(Xi, V, vec2(alpha));
|
|
46
|
-
vec3 L = -V + 2.0 * H.z * H;
|
|
47
|
-
|
|
48
|
-
// Compute dot products for this sample.
|
|
49
|
-
float NdotL = clamp(L.z, M_FLOAT_EPS, 1.0);
|
|
50
|
-
|
|
51
|
-
// Compute the geometric term.
|
|
52
|
-
float G = mx_ggx_smith_G2(NdotL, NdotV, alpha);
|
|
53
|
-
|
|
54
|
-
// Sample the environment light from the given direction.
|
|
55
|
-
vec3 Lw = tangentToWorld * L;
|
|
56
|
-
float pdf = mx_ggx_NDF(H, vec2(alpha)) * G1V / (4.0 * NdotV);
|
|
57
|
-
float lod = mx_latlong_compute_lod(Lw, pdf, float($envRadianceMips - 1), envRadianceSamples);
|
|
58
|
-
vec3 sampleColor = mx_latlong_map_lookup(Lw, $envMatrix, lod, $envRadiance);
|
|
59
|
-
|
|
60
|
-
// Add the radiance contribution of this sample.
|
|
61
|
-
radiance += G * sampleColor;
|
|
62
|
-
weight += G;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
return radiance / weight;
|
|
66
|
-
}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
#define M_PI 3.1415926535897932
|
|
2
|
-
#define M_PI_INV (1.0 / M_PI)
|
|
3
|
-
|
|
4
|
-
float mx_pow5(float x)
|
|
5
|
-
{
|
|
6
|
-
return mx_square(mx_square(x)) * x;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
float mx_pow6(float x)
|
|
10
|
-
{
|
|
11
|
-
float x2 = mx_square(x);
|
|
12
|
-
return mx_square(x2) * x2;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
// Standard Schlick Fresnel
|
|
16
|
-
float mx_fresnel_schlick(float cosTheta, float F0)
|
|
17
|
-
{
|
|
18
|
-
float x = clamp(1.0 - cosTheta, 0.0, 1.0);
|
|
19
|
-
float x5 = mx_pow5(x);
|
|
20
|
-
return F0 + (1.0 - F0) * x5;
|
|
21
|
-
}
|
|
22
|
-
vec3 mx_fresnel_schlick(float cosTheta, vec3 F0)
|
|
23
|
-
{
|
|
24
|
-
float x = clamp(1.0 - cosTheta, 0.0, 1.0);
|
|
25
|
-
float x5 = mx_pow5(x);
|
|
26
|
-
return F0 + (1.0 - F0) * x5;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
// Generalized Schlick Fresnel
|
|
30
|
-
float mx_fresnel_schlick(float cosTheta, float F0, float F90)
|
|
31
|
-
{
|
|
32
|
-
float x = clamp(1.0 - cosTheta, 0.0, 1.0);
|
|
33
|
-
float x5 = mx_pow5(x);
|
|
34
|
-
return mix(F0, F90, x5);
|
|
35
|
-
}
|
|
36
|
-
vec3 mx_fresnel_schlick(float cosTheta, vec3 F0, vec3 F90)
|
|
37
|
-
{
|
|
38
|
-
float x = clamp(1.0 - cosTheta, 0.0, 1.0);
|
|
39
|
-
float x5 = mx_pow5(x);
|
|
40
|
-
return mix(F0, F90, x5);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
// Generalized Schlick Fresnel with a variable exponent
|
|
44
|
-
float mx_fresnel_schlick(float cosTheta, float F0, float F90, float exponent)
|
|
45
|
-
{
|
|
46
|
-
float x = clamp(1.0 - cosTheta, 0.0, 1.0);
|
|
47
|
-
return mix(F0, F90, pow(x, exponent));
|
|
48
|
-
}
|
|
49
|
-
vec3 mx_fresnel_schlick(float cosTheta, vec3 F0, vec3 F90, float exponent)
|
|
50
|
-
{
|
|
51
|
-
float x = clamp(1.0 - cosTheta, 0.0, 1.0);
|
|
52
|
-
return mix(F0, F90, pow(x, exponent));
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
// Enforce that the given normal is forward-facing from the specified view direction.
|
|
56
|
-
vec3 mx_forward_facing_normal(vec3 N, vec3 V)
|
|
57
|
-
{
|
|
58
|
-
return (dot(N, V) < 0.0) ? -N : N;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
// https://www.graphics.rwth-aachen.de/publication/2/jgt.pdf
|
|
62
|
-
float mx_golden_ratio_sequence(int i)
|
|
63
|
-
{
|
|
64
|
-
const float GOLDEN_RATIO = 1.6180339887498948;
|
|
65
|
-
return fract((float(i) + 1.0) * GOLDEN_RATIO);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
// https://people.irisa.fr/Ricardo.Marques/articles/2013/SF_CGF.pdf
|
|
69
|
-
vec2 mx_spherical_fibonacci(int i, int numSamples)
|
|
70
|
-
{
|
|
71
|
-
return vec2((float(i) + 0.5) / float(numSamples), mx_golden_ratio_sequence(i));
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
// Generate a uniform-weighted sample on the unit hemisphere.
|
|
75
|
-
vec3 mx_uniform_sample_hemisphere(vec2 Xi)
|
|
76
|
-
{
|
|
77
|
-
float phi = 2.0 * M_PI * Xi.x;
|
|
78
|
-
float cosTheta = 1.0 - Xi.y;
|
|
79
|
-
float sinTheta = sqrt(1.0 - mx_square(cosTheta));
|
|
80
|
-
return vec3(mx_cos(phi) * sinTheta,
|
|
81
|
-
mx_sin(phi) * sinTheta,
|
|
82
|
-
cosTheta);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
// Generate a cosine-weighted sample on the unit hemisphere.
|
|
86
|
-
vec3 mx_cosine_sample_hemisphere(vec2 Xi)
|
|
87
|
-
{
|
|
88
|
-
float phi = 2.0 * M_PI * Xi.x;
|
|
89
|
-
float cosTheta = sqrt(Xi.y);
|
|
90
|
-
float sinTheta = sqrt(1.0 - Xi.y);
|
|
91
|
-
return vec3(mx_cos(phi) * sinTheta,
|
|
92
|
-
mx_sin(phi) * sinTheta,
|
|
93
|
-
cosTheta);
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
// Construct an orthonormal basis from a unit vector.
|
|
97
|
-
// https://graphics.pixar.com/library/OrthonormalB/paper.pdf
|
|
98
|
-
mat3 mx_orthonormal_basis(vec3 N)
|
|
99
|
-
{
|
|
100
|
-
float sign = (N.z < 0.0) ? -1.0 : 1.0;
|
|
101
|
-
float a = -1.0 / (sign + N.z);
|
|
102
|
-
float b = N.x * N.y * a;
|
|
103
|
-
vec3 X = vec3(1.0 + sign * N.x * N.x * a, sign * b, -sign * N.x);
|
|
104
|
-
vec3 Y = vec3(b, sign + N.y * N.y * a, -N.y);
|
|
105
|
-
return mat3(X, Y, N);
|
|
106
|
-
}
|
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
#include "mx_microfacet.glsl"
|
|
2
|
-
|
|
3
|
-
const float FUJII_CONSTANT_1 = 0.5 - 2.0 / (3.0 * M_PI);
|
|
4
|
-
const float FUJII_CONSTANT_2 = 2.0 / 3.0 - 28.0 / (15.0 * M_PI);
|
|
5
|
-
|
|
6
|
-
// Qualitative Oren-Nayar diffuse with simplified math:
|
|
7
|
-
// https://www1.cs.columbia.edu/CAVE/publications/pdfs/Oren_SIGGRAPH94.pdf
|
|
8
|
-
float mx_oren_nayar_diffuse(float NdotV, float NdotL, float LdotV, float roughness)
|
|
9
|
-
{
|
|
10
|
-
float s = LdotV - NdotL * NdotV;
|
|
11
|
-
float stinv = (s > 0.0) ? s / max(NdotL, NdotV) : 0.0;
|
|
12
|
-
|
|
13
|
-
float sigma2 = mx_square(roughness);
|
|
14
|
-
float A = 1.0 - 0.5 * (sigma2 / (sigma2 + 0.33));
|
|
15
|
-
float B = 0.45 * sigma2 / (sigma2 + 0.09);
|
|
16
|
-
|
|
17
|
-
return A + B * stinv;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
// Rational quadratic fit to Monte Carlo data for Oren-Nayar directional albedo.
|
|
21
|
-
float mx_oren_nayar_diffuse_dir_albedo_analytic(float NdotV, float roughness)
|
|
22
|
-
{
|
|
23
|
-
vec2 r = vec2(1.0, 1.0) +
|
|
24
|
-
vec2(-0.4297, -0.6076) * roughness +
|
|
25
|
-
vec2(-0.7632, -0.4993) * NdotV * roughness +
|
|
26
|
-
vec2(1.4385, 2.0315) * mx_square(roughness);
|
|
27
|
-
return r.x / r.y;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
float mx_oren_nayar_diffuse_dir_albedo_table_lookup(float NdotV, float roughness)
|
|
31
|
-
{
|
|
32
|
-
#if DIRECTIONAL_ALBEDO_METHOD == 1
|
|
33
|
-
if (textureSize($albedoTable, 0).x > 1)
|
|
34
|
-
{
|
|
35
|
-
return texture($albedoTable, vec2(NdotV, roughness)).b;
|
|
36
|
-
}
|
|
37
|
-
#endif
|
|
38
|
-
return 0.0;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
float mx_oren_nayar_diffuse_dir_albedo_monte_carlo(float NdotV, float roughness)
|
|
42
|
-
{
|
|
43
|
-
NdotV = clamp(NdotV, M_FLOAT_EPS, 1.0);
|
|
44
|
-
vec3 V = vec3(sqrt(1.0 - mx_square(NdotV)), 0, NdotV);
|
|
45
|
-
|
|
46
|
-
float radiance = 0.0;
|
|
47
|
-
const int SAMPLE_COUNT = 64;
|
|
48
|
-
for (int i = 0; i < SAMPLE_COUNT; i++)
|
|
49
|
-
{
|
|
50
|
-
vec2 Xi = mx_spherical_fibonacci(i, SAMPLE_COUNT);
|
|
51
|
-
|
|
52
|
-
// Compute the incoming light direction.
|
|
53
|
-
vec3 L = mx_uniform_sample_hemisphere(Xi);
|
|
54
|
-
|
|
55
|
-
// Compute dot products for this sample.
|
|
56
|
-
float NdotL = clamp(L.z, M_FLOAT_EPS, 1.0);
|
|
57
|
-
float LdotV = clamp(dot(L, V), M_FLOAT_EPS, 1.0);
|
|
58
|
-
|
|
59
|
-
// Compute diffuse reflectance.
|
|
60
|
-
float reflectance = mx_oren_nayar_diffuse(NdotV, NdotL, LdotV, roughness);
|
|
61
|
-
|
|
62
|
-
// Add the radiance contribution of this sample.
|
|
63
|
-
// uniform_pdf = 1 / (2 * PI)
|
|
64
|
-
// radiance = (reflectance * NdotL) / (uniform_pdf * PI);
|
|
65
|
-
radiance += reflectance * NdotL;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
// Apply global components and normalize.
|
|
69
|
-
radiance *= 2.0 / float(SAMPLE_COUNT);
|
|
70
|
-
|
|
71
|
-
// Return the final directional albedo.
|
|
72
|
-
return radiance;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
float mx_oren_nayar_diffuse_dir_albedo(float NdotV, float roughness)
|
|
76
|
-
{
|
|
77
|
-
#if DIRECTIONAL_ALBEDO_METHOD == 2
|
|
78
|
-
float dirAlbedo = mx_oren_nayar_diffuse_dir_albedo_monte_carlo(NdotV, roughness);
|
|
79
|
-
#else
|
|
80
|
-
float dirAlbedo = mx_oren_nayar_diffuse_dir_albedo_analytic(NdotV, roughness);
|
|
81
|
-
#endif
|
|
82
|
-
return clamp(dirAlbedo, 0.0, 1.0);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
// Improved Oren-Nayar diffuse from Fujii:
|
|
86
|
-
// https://mimosa-pudica.net/improved-oren-nayar.html
|
|
87
|
-
float mx_oren_nayar_fujii_diffuse_dir_albedo(float cosTheta, float roughness)
|
|
88
|
-
{
|
|
89
|
-
float A = 1.0 / (1.0 + FUJII_CONSTANT_1 * roughness);
|
|
90
|
-
float B = roughness * A;
|
|
91
|
-
float Si = sqrt(max(0.0, 1.0 - mx_square(cosTheta)));
|
|
92
|
-
float G = Si * (mx_acos(clamp(cosTheta, -1.0, 1.0)) - Si * cosTheta) +
|
|
93
|
-
2.0 * ((Si / cosTheta) * (1.0 - Si * Si * Si) - Si) / 3.0;
|
|
94
|
-
return A + (B * G * M_PI_INV);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
float mx_oren_nayar_fujii_diffuse_avg_albedo(float roughness)
|
|
98
|
-
{
|
|
99
|
-
float A = 1.0 / (1.0 + FUJII_CONSTANT_1 * roughness);
|
|
100
|
-
return A * (1.0 + FUJII_CONSTANT_2 * roughness);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
// Energy-compensated Oren-Nayar diffuse from OpenPBR Surface:
|
|
104
|
-
// https://academysoftwarefoundation.github.io/OpenPBR/
|
|
105
|
-
vec3 mx_oren_nayar_compensated_diffuse(float NdotV, float NdotL, float LdotV, float roughness, vec3 color)
|
|
106
|
-
{
|
|
107
|
-
float s = LdotV - NdotL * NdotV;
|
|
108
|
-
float stinv = (s > 0.0) ? s / max(NdotL, NdotV) : s;
|
|
109
|
-
|
|
110
|
-
// Compute the single-scatter lobe.
|
|
111
|
-
float A = 1.0 / (1.0 + FUJII_CONSTANT_1 * roughness);
|
|
112
|
-
vec3 lobeSingleScatter = color * A * (1.0 + roughness * stinv);
|
|
113
|
-
|
|
114
|
-
// Compute the multi-scatter lobe.
|
|
115
|
-
float dirAlbedoV = mx_oren_nayar_fujii_diffuse_dir_albedo(NdotV, roughness);
|
|
116
|
-
float dirAlbedoL = mx_oren_nayar_fujii_diffuse_dir_albedo(NdotL, roughness);
|
|
117
|
-
float avgAlbedo = mx_oren_nayar_fujii_diffuse_avg_albedo(roughness);
|
|
118
|
-
vec3 colorMultiScatter = mx_square(color) * avgAlbedo /
|
|
119
|
-
(vec3(1.0) - color * max(0.0, 1.0 - avgAlbedo));
|
|
120
|
-
vec3 lobeMultiScatter = colorMultiScatter *
|
|
121
|
-
max(M_FLOAT_EPS, 1.0 - dirAlbedoV) *
|
|
122
|
-
max(M_FLOAT_EPS, 1.0 - dirAlbedoL) /
|
|
123
|
-
max(M_FLOAT_EPS, 1.0 - avgAlbedo);
|
|
124
|
-
|
|
125
|
-
// Return the sum.
|
|
126
|
-
return lobeSingleScatter + lobeMultiScatter;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
vec3 mx_oren_nayar_compensated_diffuse_dir_albedo(float cosTheta, float roughness, vec3 color)
|
|
130
|
-
{
|
|
131
|
-
float dirAlbedo = mx_oren_nayar_fujii_diffuse_dir_albedo(cosTheta, roughness);
|
|
132
|
-
float avgAlbedo = mx_oren_nayar_fujii_diffuse_avg_albedo(roughness);
|
|
133
|
-
vec3 colorMultiScatter = mx_square(color) * avgAlbedo /
|
|
134
|
-
(vec3(1.0) - color * max(0.0, 1.0 - avgAlbedo));
|
|
135
|
-
return mix(colorMultiScatter, color, dirAlbedo);
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
// https://media.disneyanimation.com/uploads/production/publication_asset/48/asset/s2012_pbs_disney_brdf_notes_v3.pdf
|
|
139
|
-
// Section 5.3
|
|
140
|
-
float mx_burley_diffuse(float NdotV, float NdotL, float LdotH, float roughness)
|
|
141
|
-
{
|
|
142
|
-
float F90 = 0.5 + (2.0 * roughness * mx_square(LdotH));
|
|
143
|
-
float refL = mx_fresnel_schlick(NdotL, 1.0, F90);
|
|
144
|
-
float refV = mx_fresnel_schlick(NdotV, 1.0, F90);
|
|
145
|
-
return refL * refV;
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
// Compute the directional albedo component of Burley diffuse for the given
|
|
149
|
-
// view angle and roughness. Curve fit provided by Stephen Hill.
|
|
150
|
-
float mx_burley_diffuse_dir_albedo(float NdotV, float roughness)
|
|
151
|
-
{
|
|
152
|
-
float x = NdotV;
|
|
153
|
-
float fit0 = 0.97619 - 0.488095 * mx_pow5(1.0 - x);
|
|
154
|
-
float fit1 = 1.55754 + (-2.02221 + (2.56283 - 1.06244 * x) * x) * x;
|
|
155
|
-
return mix(fit0, fit1, roughness);
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
// Evaluate the Burley diffusion profile for the given distance and diffusion shape.
|
|
159
|
-
// Based on https://graphics.pixar.com/library/ApproxBSSRDF/
|
|
160
|
-
vec3 mx_burley_diffusion_profile(float dist, vec3 shape)
|
|
161
|
-
{
|
|
162
|
-
vec3 num1 = exp(-shape * dist);
|
|
163
|
-
vec3 num2 = exp(-shape * dist / 3.0);
|
|
164
|
-
float denom = max(dist, M_FLOAT_EPS);
|
|
165
|
-
return (num1 + num2) / denom;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
// Integrate the Burley diffusion profile over a sphere of the given radius.
|
|
169
|
-
// Inspired by Eric Penner's presentation in http://advances.realtimerendering.com/s2011/
|
|
170
|
-
vec3 mx_integrate_burley_diffusion(vec3 N, vec3 L, float radius, vec3 mfp)
|
|
171
|
-
{
|
|
172
|
-
float theta = mx_acos(dot(N, L));
|
|
173
|
-
|
|
174
|
-
// Estimate the Burley diffusion shape from mean free path.
|
|
175
|
-
vec3 shape = vec3(1.0) / max(mfp, 0.1);
|
|
176
|
-
|
|
177
|
-
// Integrate the profile over the sphere.
|
|
178
|
-
vec3 sumD = vec3(0.0);
|
|
179
|
-
vec3 sumR = vec3(0.0);
|
|
180
|
-
const int SAMPLE_COUNT = 32;
|
|
181
|
-
const float SAMPLE_WIDTH = (2.0 * M_PI) / float(SAMPLE_COUNT);
|
|
182
|
-
for (int i = 0; i < SAMPLE_COUNT; i++)
|
|
183
|
-
{
|
|
184
|
-
float x = -M_PI + (float(i) + 0.5) * SAMPLE_WIDTH;
|
|
185
|
-
float dist = radius * abs(2.0 * mx_sin(x * 0.5));
|
|
186
|
-
vec3 R = mx_burley_diffusion_profile(dist, shape);
|
|
187
|
-
sumD += R * max(mx_cos(theta + x), 0.0);
|
|
188
|
-
sumR += R;
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
return sumD / sumR;
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
vec3 mx_subsurface_scattering_approx(vec3 N, vec3 L, vec3 P, vec3 albedo, vec3 mfp)
|
|
195
|
-
{
|
|
196
|
-
float curvature = length(fwidth(N)) / length(fwidth(P));
|
|
197
|
-
float radius = 1.0 / max(curvature, 0.01);
|
|
198
|
-
return albedo * mx_integrate_burley_diffusion(N, L, radius, mfp) / vec3(M_PI);
|
|
199
|
-
}
|
|
@@ -1,189 +0,0 @@
|
|
|
1
|
-
#include "mx_microfacet.glsl"
|
|
2
|
-
|
|
3
|
-
// https://fpsunflower.github.io/ckulla/data/s2017_pbs_imageworks_sheen.pdf
|
|
4
|
-
// Equation 2
|
|
5
|
-
float mx_imageworks_sheen_NDF(float NdotH, float roughness)
|
|
6
|
-
{
|
|
7
|
-
float invRoughness = 1.0 / max(roughness, 0.005);
|
|
8
|
-
float cos2 = NdotH * NdotH;
|
|
9
|
-
float sin2 = 1.0 - cos2;
|
|
10
|
-
return (2.0 + invRoughness) * pow(sin2, invRoughness * 0.5) / (2.0 * M_PI);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
float mx_imageworks_sheen_brdf(float NdotL, float NdotV, float NdotH, float roughness)
|
|
14
|
-
{
|
|
15
|
-
// Microfacet distribution.
|
|
16
|
-
float D = mx_imageworks_sheen_NDF(NdotH, roughness);
|
|
17
|
-
|
|
18
|
-
// Fresnel and geometry terms are ignored.
|
|
19
|
-
float F = 1.0;
|
|
20
|
-
float G = 1.0;
|
|
21
|
-
|
|
22
|
-
// We use a smoother denominator, as in:
|
|
23
|
-
// https://blog.selfshadow.com/publications/s2013-shading-course/rad/s2013_pbs_rad_notes.pdf
|
|
24
|
-
return D * F * G / (4.0 * (NdotL + NdotV - NdotL*NdotV));
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
// Rational quadratic fit to Monte Carlo data for Imageworks sheen directional albedo.
|
|
28
|
-
float mx_imageworks_sheen_dir_albedo_analytic(float NdotV, float roughness)
|
|
29
|
-
{
|
|
30
|
-
vec2 r = vec2(13.67300, 1.0) +
|
|
31
|
-
vec2(-68.78018, 61.57746) * NdotV +
|
|
32
|
-
vec2(799.08825, 442.78211) * roughness +
|
|
33
|
-
vec2(-905.00061, 2597.49308) * NdotV * roughness +
|
|
34
|
-
vec2(60.28956, 121.81241) * mx_square(NdotV) +
|
|
35
|
-
vec2(1086.96473, 3045.55075) * mx_square(roughness);
|
|
36
|
-
return r.x / r.y;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
float mx_imageworks_sheen_dir_albedo_table_lookup(float NdotV, float roughness)
|
|
40
|
-
{
|
|
41
|
-
#if DIRECTIONAL_ALBEDO_METHOD == 1
|
|
42
|
-
if (textureSize($albedoTable, 0).x > 1)
|
|
43
|
-
{
|
|
44
|
-
return texture($albedoTable, vec2(NdotV, roughness)).b;
|
|
45
|
-
}
|
|
46
|
-
#endif
|
|
47
|
-
return 0.0;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
float mx_imageworks_sheen_dir_albedo_monte_carlo(float NdotV, float roughness)
|
|
51
|
-
{
|
|
52
|
-
NdotV = clamp(NdotV, M_FLOAT_EPS, 1.0);
|
|
53
|
-
vec3 V = vec3(sqrt(1.0f - mx_square(NdotV)), 0, NdotV);
|
|
54
|
-
|
|
55
|
-
float radiance = 0.0;
|
|
56
|
-
const int SAMPLE_COUNT = 64;
|
|
57
|
-
for (int i = 0; i < SAMPLE_COUNT; i++)
|
|
58
|
-
{
|
|
59
|
-
vec2 Xi = mx_spherical_fibonacci(i, SAMPLE_COUNT);
|
|
60
|
-
|
|
61
|
-
// Compute the incoming light direction and half vector.
|
|
62
|
-
vec3 L = mx_uniform_sample_hemisphere(Xi);
|
|
63
|
-
vec3 H = normalize(L + V);
|
|
64
|
-
|
|
65
|
-
// Compute dot products for this sample.
|
|
66
|
-
float NdotL = clamp(L.z, M_FLOAT_EPS, 1.0);
|
|
67
|
-
float NdotH = clamp(H.z, M_FLOAT_EPS, 1.0);
|
|
68
|
-
|
|
69
|
-
// Compute sheen reflectance.
|
|
70
|
-
float reflectance = mx_imageworks_sheen_brdf(NdotL, NdotV, NdotH, roughness);
|
|
71
|
-
|
|
72
|
-
// Add the radiance contribution of this sample.
|
|
73
|
-
// uniform_pdf = 1 / (2 * PI)
|
|
74
|
-
// radiance = reflectance * NdotL / uniform_pdf;
|
|
75
|
-
radiance += reflectance * NdotL * 2.0 * M_PI;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
// Return the final directional albedo.
|
|
79
|
-
return radiance / float(SAMPLE_COUNT);
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
float mx_imageworks_sheen_dir_albedo(float NdotV, float roughness)
|
|
83
|
-
{
|
|
84
|
-
#if DIRECTIONAL_ALBEDO_METHOD == 0
|
|
85
|
-
float dirAlbedo = mx_imageworks_sheen_dir_albedo_analytic(NdotV, roughness);
|
|
86
|
-
#elif DIRECTIONAL_ALBEDO_METHOD == 1
|
|
87
|
-
float dirAlbedo = mx_imageworks_sheen_dir_albedo_table_lookup(NdotV, roughness);
|
|
88
|
-
#else
|
|
89
|
-
float dirAlbedo = mx_imageworks_sheen_dir_albedo_monte_carlo(NdotV, roughness);
|
|
90
|
-
#endif
|
|
91
|
-
return clamp(dirAlbedo, 0.0, 1.0);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
// The following functions are adapted from https://github.com/tizian/ltc-sheen.
|
|
95
|
-
// "Practical Multiple-Scattering Sheen Using Linearly Transformed Cosines", Zeltner et al.
|
|
96
|
-
|
|
97
|
-
// Gaussian fit to directional albedo table.
|
|
98
|
-
float mx_zeltner_sheen_dir_albedo(float x, float y)
|
|
99
|
-
{
|
|
100
|
-
float s = y*(0.0206607 + 1.58491*y)/(0.0379424 + y*(1.32227 + y));
|
|
101
|
-
float m = y*(-0.193854 + y*(-1.14885 + y*(1.7932 - 0.95943*y*y)))/(0.046391 + y);
|
|
102
|
-
float o = y*(0.000654023 + (-0.0207818 + 0.119681*y)*y)/(1.26264 + y*(-1.92021 + y));
|
|
103
|
-
return exp(-0.5*mx_square((x - m)/s))/(s*sqrt(2.0*M_PI)) + o;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
// Rational fits to LTC matrix coefficients.
|
|
107
|
-
float mx_zeltner_sheen_ltc_aInv(float x, float y)
|
|
108
|
-
{
|
|
109
|
-
return (2.58126*x + 0.813703*y)*y/(1.0 + 0.310327*x*x + 2.60994*x*y);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
float mx_zeltner_sheen_ltc_bInv(float x, float y)
|
|
113
|
-
{
|
|
114
|
-
return sqrt(1.0 - x)*(y - 1.0)*y*y*y/(0.0000254053 + 1.71228*x - 1.71506*x*y + 1.34174*y*y);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
// V and N are assumed to be unit vectors.
|
|
118
|
-
mat3 mx_orthonormal_basis_ltc(vec3 V, vec3 N, float NdotV)
|
|
119
|
-
{
|
|
120
|
-
// Generate a tangent vector in the plane of V and N.
|
|
121
|
-
// This required to correctly orient the LTC lobe.
|
|
122
|
-
vec3 X = V - N*NdotV;
|
|
123
|
-
float lenSqr = dot(X, X);
|
|
124
|
-
if (lenSqr > 0.0)
|
|
125
|
-
{
|
|
126
|
-
X *= mx_inversesqrt(lenSqr);
|
|
127
|
-
vec3 Y = cross(N, X);
|
|
128
|
-
return mat3(X, Y, N);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
// If lenSqr == 0, then V == N, so any orthonormal basis will do.
|
|
132
|
-
return mx_orthonormal_basis(N);
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
// Multiplication by directional albedo is handled by the calling function.
|
|
136
|
-
float mx_zeltner_sheen_brdf(vec3 L, vec3 V, vec3 N, float NdotV, float roughness)
|
|
137
|
-
{
|
|
138
|
-
mat3 toLTC = transpose(mx_orthonormal_basis_ltc(V, N, NdotV));
|
|
139
|
-
vec3 w = toLTC * L;
|
|
140
|
-
|
|
141
|
-
float aInv = mx_zeltner_sheen_ltc_aInv(NdotV, roughness);
|
|
142
|
-
float bInv = mx_zeltner_sheen_ltc_bInv(NdotV, roughness);
|
|
143
|
-
|
|
144
|
-
// Transform w to original configuration (clamped cosine).
|
|
145
|
-
// |aInv 0 bInv|
|
|
146
|
-
// wo = M^-1 . w = | 0 aInv 0| . w
|
|
147
|
-
// | 0 0 1|
|
|
148
|
-
vec3 wo = vec3(aInv*w.x + bInv*w.z, aInv * w.y, w.z);
|
|
149
|
-
float lenSqr = dot(wo, wo);
|
|
150
|
-
|
|
151
|
-
// D(w) = Do(M^-1.w / ||M^-1.w||) . |M^-1| / ||M^-1.w||^3
|
|
152
|
-
// = Do(M^-1.w) . |M^-1| / ||M^-1.w||^4
|
|
153
|
-
// = Do(wo) . |M^-1| / dot(wo, wo)^2
|
|
154
|
-
// = Do(wo) . aInv^2 / dot(wo, wo)^2
|
|
155
|
-
// = Do(wo) . (aInv / dot(wo, wo))^2
|
|
156
|
-
return max(wo.z, 0.0) * M_PI_INV * mx_square(aInv / lenSqr);
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
vec3 mx_zeltner_sheen_importance_sample(vec2 Xi, vec3 V, vec3 N, float roughness, out float pdf)
|
|
160
|
-
{
|
|
161
|
-
float NdotV = clamp(dot(N, V), 0.0, 1.0);
|
|
162
|
-
roughness = clamp(roughness, 0.01, 1.0); // Clamp to range of original impl.
|
|
163
|
-
|
|
164
|
-
vec3 wo = mx_cosine_sample_hemisphere(Xi);
|
|
165
|
-
|
|
166
|
-
float aInv = mx_zeltner_sheen_ltc_aInv(NdotV, roughness);
|
|
167
|
-
float bInv = mx_zeltner_sheen_ltc_bInv(NdotV, roughness);
|
|
168
|
-
|
|
169
|
-
// Transform wo from original configuration (clamped cosine).
|
|
170
|
-
// |1/aInv 0 -bInv/aInv|
|
|
171
|
-
// w = M . wo = | 0 1/aInv 0| . wo
|
|
172
|
-
// | 0 0 1|
|
|
173
|
-
vec3 w = vec3(wo.x/aInv - wo.z*bInv/aInv, wo.y / aInv, wo.z);
|
|
174
|
-
|
|
175
|
-
float lenSqr = dot(w, w);
|
|
176
|
-
w *= mx_inversesqrt(lenSqr);
|
|
177
|
-
|
|
178
|
-
// D(w) = Do(wo) . ||M.wo||^3 / |M|
|
|
179
|
-
// = Do(wo / ||M.wo||) . ||M.wo||^4 / |M|
|
|
180
|
-
// = Do(w) . ||M.wo||^4 / |M| (possible because M doesn't change z component)
|
|
181
|
-
// = Do(w) . dot(w, w)^2 * aInv^2
|
|
182
|
-
// = Do(w) . (aInv * dot(w, w))^2
|
|
183
|
-
pdf = max(w.z, 0.0) * M_PI_INV * mx_square(aInv * lenSqr);
|
|
184
|
-
|
|
185
|
-
mat3 fromLTC = mx_orthonormal_basis_ltc(V, N, NdotV);
|
|
186
|
-
w = fromLTC * w;
|
|
187
|
-
|
|
188
|
-
return w;
|
|
189
|
-
}
|