@rings-webgpu/core 1.0.0 → 1.0.2
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/dist/package.json +54 -0
- package/dist/packages/wasm-matrix/WasmMatrix.d.ts +26 -0
- package/dist/packages/wasm-matrix/WasmMatrix.js +88 -0
- package/dist/rings.es.js +1240 -1033
- package/dist/rings.es.js.map +2 -2
- package/dist/rings.es.max.js +1316 -1043
- package/dist/rings.umd.js +1261 -1054
- package/dist/rings.umd.js.map +2 -2
- package/dist/rings.umd.max.js +1317 -1044
- package/dist/src/Engine3D.d.ts +107 -0
- package/dist/src/Engine3D.js +471 -0
- package/dist/src/assets/Fonts.d.ts +20 -0
- package/dist/src/assets/Fonts.js +24 -0
- package/dist/src/assets/Res.d.ts +72 -0
- package/dist/src/assets/Res.js +299 -0
- package/dist/src/assets/shader/ShaderLib.d.ts +5 -0
- package/dist/src/assets/shader/ShaderLib.js +128 -0
- package/dist/src/assets/shader/anim/SkeletonAnimation_shader.d.ts +3 -0
- package/dist/src/assets/shader/anim/SkeletonAnimation_shader.js +51 -0
- package/dist/src/assets/shader/cluster/ClusterBoundsSource_cs.d.ts +1 -0
- package/dist/src/assets/shader/cluster/ClusterBoundsSource_cs.js +88 -0
- package/dist/src/assets/shader/cluster/ClusterLighting_cs.d.ts +1 -0
- package/dist/src/assets/shader/cluster/ClusterLighting_cs.js +127 -0
- package/dist/src/assets/shader/compute/BRDFLUT.d.ts +1 -0
- package/dist/src/assets/shader/compute/BRDFLUT.js +90 -0
- package/dist/src/assets/shader/compute/BloomEffect_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/BloomEffect_cs.js +173 -0
- package/dist/src/assets/shader/compute/BlurEffectCreator_cs.d.ts +2 -0
- package/dist/src/assets/shader/compute/BlurEffectCreator_cs.js +84 -0
- package/dist/src/assets/shader/compute/DDGIIrradiance_Cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/DDGIIrradiance_Cs.js +307 -0
- package/dist/src/assets/shader/compute/DDGILighting_CSShader.d.ts +4 -0
- package/dist/src/assets/shader/compute/DDGILighting_CSShader.js +285 -0
- package/dist/src/assets/shader/compute/DepthOfView_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/DepthOfView_cs.js +90 -0
- package/dist/src/assets/shader/compute/ErpImage2CubeMapCreateCube_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/ErpImage2CubeMapCreateCube_cs.js +64 -0
- package/dist/src/assets/shader/compute/ErpImage2CubeMapRgbe2rgba_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/ErpImage2CubeMapRgbe2rgba_cs.js +34 -0
- package/dist/src/assets/shader/compute/GTAO_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/GTAO_cs.js +133 -0
- package/dist/src/assets/shader/compute/GodRay_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/GodRay_cs.js +214 -0
- package/dist/src/assets/shader/compute/IBLEnvMapCreator_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/IBLEnvMapCreator_cs.js +164 -0
- package/dist/src/assets/shader/compute/MergeRGBA_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/MergeRGBA_cs.js +27 -0
- package/dist/src/assets/shader/compute/MultiBouncePass_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/MultiBouncePass_cs.js +169 -0
- package/dist/src/assets/shader/compute/OutLineBlendColor_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/OutLineBlendColor_cs.js +49 -0
- package/dist/src/assets/shader/compute/OutlineCalcOutline_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/OutlineCalcOutline_cs.js +95 -0
- package/dist/src/assets/shader/compute/Outline_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/Outline_cs.js +116 -0
- package/dist/src/assets/shader/compute/Picker_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/Picker_cs.js +40 -0
- package/dist/src/assets/shader/compute/PreFilteredEnvironment_cs copy.d.ts +1 -0
- package/dist/src/assets/shader/compute/PreFilteredEnvironment_cs copy.js +162 -0
- package/dist/src/assets/shader/compute/PreFilteredEnvironment_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/PreFilteredEnvironment_cs.js +201 -0
- package/dist/src/assets/shader/compute/PreIntegratedLut.d.ts +1 -0
- package/dist/src/assets/shader/compute/PreIntegratedLut.js +46 -0
- package/dist/src/assets/shader/compute/SSAO_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/SSAO_cs.js +82 -0
- package/dist/src/assets/shader/compute/SSGI2_cs.d.ts +7 -0
- package/dist/src/assets/shader/compute/SSGI2_cs.js +169 -0
- package/dist/src/assets/shader/compute/SSR_BlendColor_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/SSR_BlendColor_cs.js +53 -0
- package/dist/src/assets/shader/compute/SSR_IS_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/SSR_IS_cs.js +76 -0
- package/dist/src/assets/shader/compute/SSR_RayTrace_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/SSR_RayTrace_cs.js +289 -0
- package/dist/src/assets/shader/compute/TAACopyTex_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/TAACopyTex_cs.js +22 -0
- package/dist/src/assets/shader/compute/TAASharpTex_cs.d.ts +1 -0
- package/dist/src/assets/shader/compute/TAASharpTex_cs.js +42 -0
- package/dist/src/assets/shader/compute/TAA_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/TAA_cs.js +152 -0
- package/dist/src/assets/shader/compute/utils/Combine_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/utils/Combine_cs.js +47 -0
- package/dist/src/assets/shader/compute/utils/Denoising_cs.d.ts +4 -0
- package/dist/src/assets/shader/compute/utils/Denoising_cs.js +28 -0
- package/dist/src/assets/shader/compute/utils/TestComputeLoadBuffer.d.ts +1 -0
- package/dist/src/assets/shader/compute/utils/TestComputeLoadBuffer.js +128 -0
- package/dist/src/assets/shader/compute/utils/TextureCompress.d.ts +2 -0
- package/dist/src/assets/shader/compute/utils/TextureCompress.js +131 -0
- package/dist/src/assets/shader/compute/utils/tw.d.ts +4 -0
- package/dist/src/assets/shader/compute/utils/tw.js +43 -0
- package/dist/src/assets/shader/core/base/Common_frag.d.ts +1 -0
- package/dist/src/assets/shader/core/base/Common_frag.js +62 -0
- package/dist/src/assets/shader/core/base/Common_vert.d.ts +1 -0
- package/dist/src/assets/shader/core/base/Common_vert.js +12 -0
- package/dist/src/assets/shader/core/common/BrdfLut_frag.d.ts +1 -0
- package/dist/src/assets/shader/core/common/BrdfLut_frag.js +6 -0
- package/dist/src/assets/shader/core/common/EnvMap_frag.d.ts +1 -0
- package/dist/src/assets/shader/core/common/EnvMap_frag.js +10 -0
- package/dist/src/assets/shader/core/common/GBufferStand.d.ts +1 -0
- package/dist/src/assets/shader/core/common/GBufferStand.js +171 -0
- package/dist/src/assets/shader/core/common/GlobalUniform.d.ts +4 -0
- package/dist/src/assets/shader/core/common/GlobalUniform.js +117 -0
- package/dist/src/assets/shader/core/common/InstanceUniform.d.ts +1 -0
- package/dist/src/assets/shader/core/common/InstanceUniform.js +9 -0
- package/dist/src/assets/shader/core/common/SHCommon_frag.d.ts +1 -0
- package/dist/src/assets/shader/core/common/SHCommon_frag.js +82 -0
- package/dist/src/assets/shader/core/common/WorldMatrixUniform.d.ts +1 -0
- package/dist/src/assets/shader/core/common/WorldMatrixUniform.js +8 -0
- package/dist/src/assets/shader/core/inline/Inline_vert.d.ts +1 -0
- package/dist/src/assets/shader/core/inline/Inline_vert.js +59 -0
- package/dist/src/assets/shader/core/pass/CastShadow_pass.d.ts +4 -0
- package/dist/src/assets/shader/core/pass/CastShadow_pass.js +284 -0
- package/dist/src/assets/shader/core/pass/FrustumCulling_cs.d.ts +4 -0
- package/dist/src/assets/shader/core/pass/FrustumCulling_cs.js +91 -0
- package/dist/src/assets/shader/core/pass/GBuffer_pass.d.ts +1 -0
- package/dist/src/assets/shader/core/pass/GBuffer_pass.js +72 -0
- package/dist/src/assets/shader/core/pass/SkyGBuffer_pass.d.ts +1 -0
- package/dist/src/assets/shader/core/pass/SkyGBuffer_pass.js +34 -0
- package/dist/src/assets/shader/core/pass/ZPassShader_cs.d.ts +1 -0
- package/dist/src/assets/shader/core/pass/ZPassShader_cs.js +14 -0
- package/dist/src/assets/shader/core/pass/ZPassShader_fs.d.ts +1 -0
- package/dist/src/assets/shader/core/pass/ZPassShader_fs.js +15 -0
- package/dist/src/assets/shader/core/pass/ZPassShader_vs.d.ts +1 -0
- package/dist/src/assets/shader/core/pass/ZPassShader_vs.js +83 -0
- package/dist/src/assets/shader/core/struct/ClusterLight.d.ts +4 -0
- package/dist/src/assets/shader/core/struct/ClusterLight.js +98 -0
- package/dist/src/assets/shader/core/struct/ColorPassFragmentOutput.d.ts +1 -0
- package/dist/src/assets/shader/core/struct/ColorPassFragmentOutput.js +16 -0
- package/dist/src/assets/shader/core/struct/FragmentOutput.d.ts +1 -0
- package/dist/src/assets/shader/core/struct/FragmentOutput.js +18 -0
- package/dist/src/assets/shader/core/struct/FragmentVarying.d.ts +1 -0
- package/dist/src/assets/shader/core/struct/FragmentVarying.js +23 -0
- package/dist/src/assets/shader/core/struct/ShadingInput.d.ts +1 -0
- package/dist/src/assets/shader/core/struct/ShadingInput.js +21 -0
- package/dist/src/assets/shader/core/struct/VertexAttributeIndexShader.d.ts +1 -0
- package/dist/src/assets/shader/core/struct/VertexAttributeIndexShader.js +100 -0
- package/dist/src/assets/shader/core/struct/VertexAttributes.d.ts +1 -0
- package/dist/src/assets/shader/core/struct/VertexAttributes.js +160 -0
- package/dist/src/assets/shader/env/ReflectionCG.d.ts +1 -0
- package/dist/src/assets/shader/env/ReflectionCG.js +86 -0
- package/dist/src/assets/shader/glsl/Quad_glsl.d.ts +2 -0
- package/dist/src/assets/shader/glsl/Quad_glsl.js +55 -0
- package/dist/src/assets/shader/lighting/BRDF_frag.d.ts +4 -0
- package/dist/src/assets/shader/lighting/BRDF_frag.js +461 -0
- package/dist/src/assets/shader/lighting/BsDF_frag.d.ts +4 -0
- package/dist/src/assets/shader/lighting/BsDF_frag.js +139 -0
- package/dist/src/assets/shader/lighting/BxDF_frag.d.ts +4 -0
- package/dist/src/assets/shader/lighting/BxDF_frag.js +210 -0
- package/dist/src/assets/shader/lighting/Hair_frag.d.ts +1 -0
- package/dist/src/assets/shader/lighting/Hair_frag.js +277 -0
- package/dist/src/assets/shader/lighting/IESProfiles_frag.d.ts +1 -0
- package/dist/src/assets/shader/lighting/IESProfiles_frag.js +33 -0
- package/dist/src/assets/shader/lighting/IrradianceVolumeData_frag.d.ts +1 -0
- package/dist/src/assets/shader/lighting/IrradianceVolumeData_frag.js +40 -0
- package/dist/src/assets/shader/lighting/Irradiance_frag.d.ts +4 -0
- package/dist/src/assets/shader/lighting/Irradiance_frag.js +270 -0
- package/dist/src/assets/shader/lighting/LightingFunction_frag.d.ts +1 -0
- package/dist/src/assets/shader/lighting/LightingFunction_frag.js +203 -0
- package/dist/src/assets/shader/lighting/UnLit_frag.d.ts +1 -0
- package/dist/src/assets/shader/lighting/UnLit_frag.js +30 -0
- package/dist/src/assets/shader/materials/ColorLitShader.d.ts +1 -0
- package/dist/src/assets/shader/materials/ColorLitShader.js +22 -0
- package/dist/src/assets/shader/materials/GIProbeShader.d.ts +1 -0
- package/dist/src/assets/shader/materials/GIProbeShader.js +34 -0
- package/dist/src/assets/shader/materials/GlassShader.d.ts +1 -0
- package/dist/src/assets/shader/materials/GlassShader.js +26 -0
- package/dist/src/assets/shader/materials/Hair_shader.d.ts +2 -0
- package/dist/src/assets/shader/materials/Hair_shader.js +210 -0
- package/dist/src/assets/shader/materials/Lambert_shader.d.ts +1 -0
- package/dist/src/assets/shader/materials/Lambert_shader.js +56 -0
- package/dist/src/assets/shader/materials/Lit_shader.d.ts +1 -0
- package/dist/src/assets/shader/materials/Lit_shader.js +21 -0
- package/dist/src/assets/shader/materials/OutlinePass.d.ts +1 -0
- package/dist/src/assets/shader/materials/OutlinePass.js +73 -0
- package/dist/src/assets/shader/materials/PBRLItShader.d.ts +4 -0
- package/dist/src/assets/shader/materials/PBRLItShader.js +155 -0
- package/dist/src/assets/shader/materials/PBRLitSSSShader.d.ts +4 -0
- package/dist/src/assets/shader/materials/PBRLitSSSShader.js +192 -0
- package/dist/src/assets/shader/materials/ReflectionShader_shader.d.ts +1 -0
- package/dist/src/assets/shader/materials/ReflectionShader_shader.js +63 -0
- package/dist/src/assets/shader/materials/UnLit.d.ts +4 -0
- package/dist/src/assets/shader/materials/UnLit.js +41 -0
- package/dist/src/assets/shader/materials/UnLitTextureArray.d.ts +1 -0
- package/dist/src/assets/shader/materials/UnLitTextureArray.js +100 -0
- package/dist/src/assets/shader/materials/program/BxdfDebug_frag.d.ts +4 -0
- package/dist/src/assets/shader/materials/program/BxdfDebug_frag.js +180 -0
- package/dist/src/assets/shader/materials/program/Clearcoat_frag.d.ts +1 -0
- package/dist/src/assets/shader/materials/program/Clearcoat_frag.js +38 -0
- package/dist/src/assets/shader/materials/program/ClusterDebug_frag.d.ts +1 -0
- package/dist/src/assets/shader/materials/program/ClusterDebug_frag.js +40 -0
- package/dist/src/assets/shader/materials/program/NormalMap_frag.d.ts +4 -0
- package/dist/src/assets/shader/materials/program/NormalMap_frag.js +65 -0
- package/dist/src/assets/shader/materials/program/ShadowMapping_frag.d.ts +1 -0
- package/dist/src/assets/shader/materials/program/ShadowMapping_frag.js +210 -0
- package/dist/src/assets/shader/materials/uniforms/PhysicMaterialUniform_frag.d.ts +1 -0
- package/dist/src/assets/shader/materials/uniforms/PhysicMaterialUniform_frag.js +37 -0
- package/dist/src/assets/shader/materials/uniforms/UnLitMaterialUniform_frag.d.ts +1 -0
- package/dist/src/assets/shader/materials/uniforms/UnLitMaterialUniform_frag.js +14 -0
- package/dist/src/assets/shader/materials/uniforms/VideoUniform_frag.d.ts +1 -0
- package/dist/src/assets/shader/materials/uniforms/VideoUniform_frag.js +12 -0
- package/dist/src/assets/shader/math/FastMathShader.d.ts +1 -0
- package/dist/src/assets/shader/math/FastMathShader.js +91 -0
- package/dist/src/assets/shader/math/MathShader.d.ts +4 -0
- package/dist/src/assets/shader/math/MathShader.js +558 -0
- package/dist/src/assets/shader/math/MatrixShader.d.ts +1 -0
- package/dist/src/assets/shader/math/MatrixShader.js +104 -0
- package/dist/src/assets/shader/post/FXAAShader.d.ts +1 -0
- package/dist/src/assets/shader/post/FXAAShader.js +79 -0
- package/dist/src/assets/shader/post/GlobalFog_shader.d.ts +4 -0
- package/dist/src/assets/shader/post/GlobalFog_shader.js +191 -0
- package/dist/src/assets/shader/quad/Quad_shader.d.ts +24 -0
- package/dist/src/assets/shader/quad/Quad_shader.js +210 -0
- package/dist/src/assets/shader/sky/AtmosphericScatteringSky_shader.d.ts +6 -0
- package/dist/src/assets/shader/sky/AtmosphericScatteringSky_shader.js +312 -0
- package/dist/src/assets/shader/sky/CubeSky_Shader.d.ts +7 -0
- package/dist/src/assets/shader/sky/CubeSky_Shader.js +122 -0
- package/dist/src/assets/shader/utils/BitUtil.d.ts +1 -0
- package/dist/src/assets/shader/utils/BitUtil.js +108 -0
- package/dist/src/assets/shader/utils/ColorUtil.d.ts +1 -0
- package/dist/src/assets/shader/utils/ColorUtil.js +144 -0
- package/dist/src/assets/shader/utils/GenerayRandomDir.d.ts +1 -0
- package/dist/src/assets/shader/utils/GenerayRandomDir.js +22 -0
- package/dist/src/components/AtmosphericComponent.d.ts +28 -0
- package/dist/src/components/AtmosphericComponent.js +141 -0
- package/dist/src/components/BillboardComponent.d.ts +13 -0
- package/dist/src/components/BillboardComponent.js +30 -0
- package/dist/src/components/ColliderComponent.d.ts +15 -0
- package/dist/src/components/ColliderComponent.js +39 -0
- package/dist/src/components/ComponentBase.d.ts +43 -0
- package/dist/src/components/ComponentBase.js +141 -0
- package/dist/src/components/IComponent.d.ts +27 -0
- package/dist/src/components/IComponent.js +1 -0
- package/dist/src/components/SkeletonAnimationComponent.d.ts +52 -0
- package/dist/src/components/SkeletonAnimationComponent.js +225 -0
- package/dist/src/components/Transform.d.ts +119 -0
- package/dist/src/components/Transform.js +523 -0
- package/dist/src/components/anim/AnimatorComponent.d.ts +67 -0
- package/dist/src/components/anim/AnimatorComponent.js +411 -0
- package/dist/src/components/anim/OAnimationEvent.d.ts +6 -0
- package/dist/src/components/anim/OAnimationEvent.js +8 -0
- package/dist/src/components/anim/curveAnim/AnimationMonitor.d.ts +29 -0
- package/dist/src/components/anim/curveAnim/AnimationMonitor.js +159 -0
- package/dist/src/components/anim/curveAnim/AttributeAnimCurve.d.ts +8 -0
- package/dist/src/components/anim/curveAnim/AttributeAnimCurve.js +15 -0
- package/dist/src/components/anim/curveAnim/PropertyAnimClip.d.ts +29 -0
- package/dist/src/components/anim/curveAnim/PropertyAnimClip.js +54 -0
- package/dist/src/components/anim/curveAnim/PropertyAnimation.d.ts +31 -0
- package/dist/src/components/anim/curveAnim/PropertyAnimation.js +107 -0
- package/dist/src/components/anim/curveAnim/PropertyAnimationEvent.d.ts +14 -0
- package/dist/src/components/anim/curveAnim/PropertyAnimationEvent.js +11 -0
- package/dist/src/components/anim/curveAnim/PropertyHelp.d.ts +13 -0
- package/dist/src/components/anim/curveAnim/PropertyHelp.js +96 -0
- package/dist/src/components/anim/morphAnim/MorphTargetBlender.d.ts +18 -0
- package/dist/src/components/anim/morphAnim/MorphTargetBlender.js +81 -0
- package/dist/src/components/anim/morphAnim/MorphTargetData.d.ts +52 -0
- package/dist/src/components/anim/morphAnim/MorphTargetData.js +183 -0
- package/dist/src/components/anim/morphAnim/MorphTargetFrame.d.ts +68 -0
- package/dist/src/components/anim/morphAnim/MorphTargetFrame.js +4 -0
- package/dist/src/components/anim/morphAnim/MorphTargetKey.d.ts +58 -0
- package/dist/src/components/anim/morphAnim/MorphTargetKey.js +55 -0
- package/dist/src/components/anim/morphAnim/MorphTarget_shader.d.ts +8 -0
- package/dist/src/components/anim/morphAnim/MorphTarget_shader.js +101 -0
- package/dist/src/components/anim/skeletonAnim/Joint.d.ts +12 -0
- package/dist/src/components/anim/skeletonAnim/Joint.js +14 -0
- package/dist/src/components/anim/skeletonAnim/JointPose.d.ts +6 -0
- package/dist/src/components/anim/skeletonAnim/JointPose.js +7 -0
- package/dist/src/components/anim/skeletonAnim/Skeleton.d.ts +10 -0
- package/dist/src/components/anim/skeletonAnim/Skeleton.js +26 -0
- package/dist/src/components/anim/skeletonAnim/SkeletonAnimationClip.d.ts +22 -0
- package/dist/src/components/anim/skeletonAnim/SkeletonAnimationClip.js +70 -0
- package/dist/src/components/anim/skeletonAnim/SkeletonAnimationClipState.d.ts +21 -0
- package/dist/src/components/anim/skeletonAnim/SkeletonAnimationClipState.js +80 -0
- package/dist/src/components/anim/skeletonAnim/SkeletonAnimationCompute.d.ts +6 -0
- package/dist/src/components/anim/skeletonAnim/SkeletonAnimationCompute.js +27 -0
- package/dist/src/components/anim/skeletonAnim/SkeletonPose.d.ts +16 -0
- package/dist/src/components/anim/skeletonAnim/SkeletonPose.js +79 -0
- package/dist/src/components/anim/skeletonAnim/buffer/SkeletonBlendComputeArgs.d.ts +23 -0
- package/dist/src/components/anim/skeletonAnim/buffer/SkeletonBlendComputeArgs.js +61 -0
- package/dist/src/components/anim/skeletonAnim/buffer/SkeletonTransformComputeArgs.d.ts +23 -0
- package/dist/src/components/anim/skeletonAnim/buffer/SkeletonTransformComputeArgs.js +59 -0
- package/dist/src/components/controller/CameraControllerBase.d.ts +17 -0
- package/dist/src/components/controller/CameraControllerBase.js +33 -0
- package/dist/src/components/controller/FirstPersonCameraController.d.ts +15 -0
- package/dist/src/components/controller/FirstPersonCameraController.js +52 -0
- package/dist/src/components/controller/FlyCameraController.d.ts +36 -0
- package/dist/src/components/controller/FlyCameraController.js +180 -0
- package/dist/src/components/controller/HoverCameraController.d.ts +52 -0
- package/dist/src/components/controller/HoverCameraController.js +183 -0
- package/dist/src/components/controller/OrbitController.d.ts +170 -0
- package/dist/src/components/controller/OrbitController.js +339 -0
- package/dist/src/components/controller/ThirdPersonCameraController.d.ts +16 -0
- package/dist/src/components/controller/ThirdPersonCameraController.js +51 -0
- package/dist/src/components/gui/GUIConfig.d.ts +23 -0
- package/dist/src/components/gui/GUIConfig.js +26 -0
- package/dist/src/components/gui/GUIExtension.d.ts +5 -0
- package/dist/src/components/gui/GUIExtension.js +61 -0
- package/dist/src/components/gui/GUIPick.d.ts +36 -0
- package/dist/src/components/gui/GUIPick.js +178 -0
- package/dist/src/components/gui/GUIPickHelper.d.ts +25 -0
- package/dist/src/components/gui/GUIPickHelper.js +119 -0
- package/dist/src/components/gui/core/GUIAtlasTexture.d.ts +16 -0
- package/dist/src/components/gui/core/GUIAtlasTexture.js +22 -0
- package/dist/src/components/gui/core/GUICanvas.d.ts +21 -0
- package/dist/src/components/gui/core/GUICanvas.js +35 -0
- package/dist/src/components/gui/core/GUIDefine.d.ts +7 -0
- package/dist/src/components/gui/core/GUIDefine.js +8 -0
- package/dist/src/components/gui/core/GUIGeometry.d.ts +36 -0
- package/dist/src/components/gui/core/GUIGeometry.js +215 -0
- package/dist/src/components/gui/core/GUIGeometryRebuild.d.ts +21 -0
- package/dist/src/components/gui/core/GUIGeometryRebuild.js +105 -0
- package/dist/src/components/gui/core/GUIMaterial.d.ts +29 -0
- package/dist/src/components/gui/core/GUIMaterial.js +111 -0
- package/dist/src/components/gui/core/GUIQuad.d.ts +52 -0
- package/dist/src/components/gui/core/GUIQuad.js +154 -0
- package/dist/src/components/gui/core/GUIRenderer.d.ts +15 -0
- package/dist/src/components/gui/core/GUIRenderer.js +42 -0
- package/dist/src/components/gui/core/GUIShader.d.ts +8 -0
- package/dist/src/components/gui/core/GUIShader.js +267 -0
- package/dist/src/components/gui/core/GUISprite.d.ts +19 -0
- package/dist/src/components/gui/core/GUISprite.js +19 -0
- package/dist/src/components/gui/core/GUITexture.d.ts +12 -0
- package/dist/src/components/gui/core/GUITexture.js +25 -0
- package/dist/src/components/gui/uiComponents/IUIInteractive.d.ts +25 -0
- package/dist/src/components/gui/uiComponents/IUIInteractive.js +7 -0
- package/dist/src/components/gui/uiComponents/TextFieldLayout.d.ts +34 -0
- package/dist/src/components/gui/uiComponents/TextFieldLayout.js +265 -0
- package/dist/src/components/gui/uiComponents/UIButton.d.ts +45 -0
- package/dist/src/components/gui/uiComponents/UIButton.js +140 -0
- package/dist/src/components/gui/uiComponents/UIComponentBase.d.ts +15 -0
- package/dist/src/components/gui/uiComponents/UIComponentBase.js +33 -0
- package/dist/src/components/gui/uiComponents/UIImage.d.ts +21 -0
- package/dist/src/components/gui/uiComponents/UIImage.js +72 -0
- package/dist/src/components/gui/uiComponents/UIImageGroup.d.ts +31 -0
- package/dist/src/components/gui/uiComponents/UIImageGroup.js +87 -0
- package/dist/src/components/gui/uiComponents/UIInteractive.d.ts +25 -0
- package/dist/src/components/gui/uiComponents/UIInteractive.js +50 -0
- package/dist/src/components/gui/uiComponents/UIPanel.d.ts +38 -0
- package/dist/src/components/gui/uiComponents/UIPanel.js +173 -0
- package/dist/src/components/gui/uiComponents/UIRenderAble.d.ts +27 -0
- package/dist/src/components/gui/uiComponents/UIRenderAble.js +106 -0
- package/dist/src/components/gui/uiComponents/UIShadow.d.ts +31 -0
- package/dist/src/components/gui/uiComponents/UIShadow.js +117 -0
- package/dist/src/components/gui/uiComponents/UITextField.d.ts +36 -0
- package/dist/src/components/gui/uiComponents/UITextField.js +122 -0
- package/dist/src/components/gui/uiComponents/UITransform.d.ts +60 -0
- package/dist/src/components/gui/uiComponents/UITransform.js +243 -0
- package/dist/src/components/gui/uiComponents/ViewPanel.d.ts +9 -0
- package/dist/src/components/gui/uiComponents/ViewPanel.js +13 -0
- package/dist/src/components/gui/uiComponents/WorldPanel.d.ts +13 -0
- package/dist/src/components/gui/uiComponents/WorldPanel.js +34 -0
- package/dist/src/components/lights/DirectLight.d.ts +13 -0
- package/dist/src/components/lights/DirectLight.js +52 -0
- package/dist/src/components/lights/GILighting.d.ts +6 -0
- package/dist/src/components/lights/GILighting.js +15 -0
- package/dist/src/components/lights/IESProfiles.d.ts +14 -0
- package/dist/src/components/lights/IESProfiles.js +33 -0
- package/dist/src/components/lights/ILight.d.ts +12 -0
- package/dist/src/components/lights/ILight.js +1 -0
- package/dist/src/components/lights/Light.d.ts +32 -0
- package/dist/src/components/lights/Light.js +90 -0
- package/dist/src/components/lights/LightBase.d.ts +127 -0
- package/dist/src/components/lights/LightBase.js +238 -0
- package/dist/src/components/lights/LightData.d.ts +29 -0
- package/dist/src/components/lights/LightData.js +33 -0
- package/dist/src/components/lights/PointLight.d.ts +19 -0
- package/dist/src/components/lights/PointLight.js +67 -0
- package/dist/src/components/lights/SpotLight.d.ts +21 -0
- package/dist/src/components/lights/SpotLight.js +79 -0
- package/dist/src/components/post/PostProcessingComponent.d.ts +16 -0
- package/dist/src/components/post/PostProcessingComponent.js +52 -0
- package/dist/src/components/renderer/GlobalIlluminationComponent.d.ts +22 -0
- package/dist/src/components/renderer/GlobalIlluminationComponent.js +118 -0
- package/dist/src/components/renderer/InstanceDrawComponent.d.ts +19 -0
- package/dist/src/components/renderer/InstanceDrawComponent.js +120 -0
- package/dist/src/components/renderer/MeshFilter.d.ts +9 -0
- package/dist/src/components/renderer/MeshFilter.js +37 -0
- package/dist/src/components/renderer/MeshRenderer.d.ts +51 -0
- package/dist/src/components/renderer/MeshRenderer.js +156 -0
- package/dist/src/components/renderer/Reflection.d.ts +15 -0
- package/dist/src/components/renderer/Reflection.js +33 -0
- package/dist/src/components/renderer/RenderNode.d.ts +85 -0
- package/dist/src/components/renderer/RenderNode.js +518 -0
- package/dist/src/components/renderer/SkinnedMeshRenderer.d.ts +26 -0
- package/dist/src/components/renderer/SkinnedMeshRenderer.js +111 -0
- package/dist/src/components/renderer/SkinnedMeshRenderer2.d.ts +37 -0
- package/dist/src/components/renderer/SkinnedMeshRenderer2.js +138 -0
- package/dist/src/components/renderer/SkyRenderer.d.ts +36 -0
- package/dist/src/components/renderer/SkyRenderer.js +94 -0
- package/dist/src/components/renderer/SphereReflection.d.ts +12 -0
- package/dist/src/components/renderer/SphereReflection.js +45 -0
- package/dist/src/components/shape/BoxColliderShape.d.ts +9 -0
- package/dist/src/components/shape/BoxColliderShape.js +28 -0
- package/dist/src/components/shape/CapsuleColliderShape.d.ts +6 -0
- package/dist/src/components/shape/CapsuleColliderShape.js +9 -0
- package/dist/src/components/shape/ColliderShape.d.ts +35 -0
- package/dist/src/components/shape/ColliderShape.js +49 -0
- package/dist/src/components/shape/MeshColliderShape.d.ts +8 -0
- package/dist/src/components/shape/MeshColliderShape.js +55 -0
- package/dist/src/components/shape/SphereColliderShape.d.ts +26 -0
- package/dist/src/components/shape/SphereColliderShape.js +47 -0
- package/dist/src/core/Camera3D.d.ts +308 -0
- package/dist/src/core/Camera3D.js +534 -0
- package/dist/src/core/CameraType.d.ts +5 -0
- package/dist/src/core/CameraType.js +6 -0
- package/dist/src/core/CubeCamera.d.ts +18 -0
- package/dist/src/core/CubeCamera.js +67 -0
- package/dist/src/core/PointShadowCubeCamera.d.ts +13 -0
- package/dist/src/core/PointShadowCubeCamera.js +59 -0
- package/dist/src/core/Scene3D.d.ts +66 -0
- package/dist/src/core/Scene3D.js +88 -0
- package/dist/src/core/View3D.d.ts +85 -0
- package/dist/src/core/View3D.js +113 -0
- package/dist/src/core/ViewQuad.d.ts +19 -0
- package/dist/src/core/ViewQuad.js +84 -0
- package/dist/src/core/bound/BoundingBox.d.ts +34 -0
- package/dist/src/core/bound/BoundingBox.js +155 -0
- package/dist/src/core/bound/BoundingSphere.d.ts +34 -0
- package/dist/src/core/bound/BoundingSphere.js +71 -0
- package/dist/src/core/bound/Frustum.d.ts +17 -0
- package/dist/src/core/bound/Frustum.js +184 -0
- package/dist/src/core/bound/IBound.d.ts +19 -0
- package/dist/src/core/bound/IBound.js +1 -0
- package/dist/src/core/csm/CSM.d.ts +3 -0
- package/dist/src/core/csm/CSM.js +3 -0
- package/dist/src/core/csm/FrustumCSM.d.ts +32 -0
- package/dist/src/core/csm/FrustumCSM.js +106 -0
- package/dist/src/core/entities/Entity.d.ts +43 -0
- package/dist/src/core/entities/Entity.js +200 -0
- package/dist/src/core/entities/InstancedMesh.d.ts +11 -0
- package/dist/src/core/entities/InstancedMesh.js +32 -0
- package/dist/src/core/entities/Object3D.d.ts +66 -0
- package/dist/src/core/entities/Object3D.js +284 -0
- package/dist/src/core/geometry/ExtrudeGeometry.d.ts +31 -0
- package/dist/src/core/geometry/ExtrudeGeometry.js +156 -0
- package/dist/src/core/geometry/GeometryBase.d.ts +70 -0
- package/dist/src/core/geometry/GeometryBase.js +248 -0
- package/dist/src/core/geometry/GeometryIndicesBuffer.d.ts +15 -0
- package/dist/src/core/geometry/GeometryIndicesBuffer.js +33 -0
- package/dist/src/core/geometry/GeometryVertexBuffer.d.ts +23 -0
- package/dist/src/core/geometry/GeometryVertexBuffer.js +243 -0
- package/dist/src/core/geometry/GeometryVertexType.d.ts +5 -0
- package/dist/src/core/geometry/GeometryVertexType.js +6 -0
- package/dist/src/core/geometry/VertexAttribute.d.ts +15 -0
- package/dist/src/core/geometry/VertexAttribute.js +4 -0
- package/dist/src/core/geometry/VertexAttributeData.d.ts +5 -0
- package/dist/src/core/geometry/VertexAttributeData.js +1 -0
- package/dist/src/core/geometry/VertexAttributeName.d.ts +23 -0
- package/dist/src/core/geometry/VertexAttributeName.js +24 -0
- package/dist/src/core/geometry/VertexAttributeSize.d.ts +11 -0
- package/dist/src/core/geometry/VertexAttributeSize.js +12 -0
- package/dist/src/core/geometry/VertexAttributeStride.d.ts +15 -0
- package/dist/src/core/geometry/VertexAttributeStride.js +16 -0
- package/dist/src/core/geometry/VertexFormat.d.ts +1 -0
- package/dist/src/core/geometry/VertexFormat.js +8 -0
- package/dist/src/core/pool/ObjectPool.d.ts +11 -0
- package/dist/src/core/pool/ObjectPool.js +33 -0
- package/dist/src/core/pool/memory/MemoryDO.d.ts +14 -0
- package/dist/src/core/pool/memory/MemoryDO.js +48 -0
- package/dist/src/core/pool/memory/MemoryInfo.d.ts +83 -0
- package/dist/src/core/pool/memory/MemoryInfo.js +316 -0
- package/dist/src/core/tree/kdTree/IKDTreeUserData.d.ts +10 -0
- package/dist/src/core/tree/kdTree/IKDTreeUserData.js +9 -0
- package/dist/src/core/tree/kdTree/KDTreeEntity.d.ts +27 -0
- package/dist/src/core/tree/kdTree/KDTreeEntity.js +48 -0
- package/dist/src/core/tree/kdTree/KDTreeNode.d.ts +68 -0
- package/dist/src/core/tree/kdTree/KDTreeNode.js +257 -0
- package/dist/src/core/tree/kdTree/KDTreeSpace.d.ts +26 -0
- package/dist/src/core/tree/kdTree/KDTreeSpace.js +66 -0
- package/dist/src/core/tree/octree/Octree.d.ts +28 -0
- package/dist/src/core/tree/octree/Octree.js +133 -0
- package/dist/src/core/tree/octree/OctreeEntity.d.ts +11 -0
- package/dist/src/core/tree/octree/OctreeEntity.js +25 -0
- package/dist/src/core/tree/quad/IQuadNode.d.ts +9 -0
- package/dist/src/core/tree/quad/IQuadNode.js +1 -0
- package/dist/src/core/tree/quad/QuadAABB.d.ts +26 -0
- package/dist/src/core/tree/quad/QuadAABB.js +116 -0
- package/dist/src/core/tree/quad/QuadRoot.d.ts +14 -0
- package/dist/src/core/tree/quad/QuadRoot.js +67 -0
- package/dist/src/core/tree/quad/QuadTree.d.ts +22 -0
- package/dist/src/core/tree/quad/QuadTree.js +250 -0
- package/dist/src/core/tree/quad/QuadTreeCell.d.ts +23 -0
- package/dist/src/core/tree/quad/QuadTreeCell.js +36 -0
- package/dist/src/event/CEvent.d.ts +27 -0
- package/dist/src/event/CEvent.js +19 -0
- package/dist/src/event/CEventDispatcher.d.ts +13 -0
- package/dist/src/event/CEventDispatcher.js +129 -0
- package/dist/src/event/CEventListener.d.ts +13 -0
- package/dist/src/event/CEventListener.js +26 -0
- package/dist/src/event/CResizeEvent.d.ts +4 -0
- package/dist/src/event/CResizeEvent.js +4 -0
- package/dist/src/event/KeyCode.d.ts +110 -0
- package/dist/src/event/KeyCode.js +111 -0
- package/dist/src/event/MouseCode.d.ts +5 -0
- package/dist/src/event/MouseCode.js +6 -0
- package/dist/src/event/eventConst/KeyEvent.d.ts +6 -0
- package/dist/src/event/eventConst/KeyEvent.js +9 -0
- package/dist/src/event/eventConst/LoaderEvent.d.ts +5 -0
- package/dist/src/event/eventConst/LoaderEvent.js +5 -0
- package/dist/src/event/eventConst/Object3DEvent.d.ts +7 -0
- package/dist/src/event/eventConst/Object3DEvent.js +7 -0
- package/dist/src/event/eventConst/PointerEvent3D.d.ts +63 -0
- package/dist/src/event/eventConst/PointerEvent3D.js +54 -0
- package/dist/src/event/eventConst/UIEvent.d.ts +6 -0
- package/dist/src/event/eventConst/UIEvent.js +6 -0
- package/dist/src/gfx/generate/BrdfLUTGenerate.d.ts +7 -0
- package/dist/src/gfx/generate/BrdfLUTGenerate.js +20 -0
- package/dist/src/gfx/generate/PassGenerate.d.ts +9 -0
- package/dist/src/gfx/generate/PassGenerate.js +181 -0
- package/dist/src/gfx/generate/convert/BlurEffectCreator.d.ts +7 -0
- package/dist/src/gfx/generate/convert/BlurEffectCreator.js +79 -0
- package/dist/src/gfx/generate/convert/ErpImage2CubeMap.d.ts +9 -0
- package/dist/src/gfx/generate/convert/ErpImage2CubeMap.js +144 -0
- package/dist/src/gfx/generate/convert/IBLEnvMapCreator.d.ts +12 -0
- package/dist/src/gfx/generate/convert/IBLEnvMapCreator.js +109 -0
- package/dist/src/gfx/generate/convert/MergeRGBACreator.d.ts +5 -0
- package/dist/src/gfx/generate/convert/MergeRGBACreator.js +32 -0
- package/dist/src/gfx/generate/convert/TextureCubeStdCreator.d.ts +9 -0
- package/dist/src/gfx/generate/convert/TextureCubeStdCreator.js +117 -0
- package/dist/src/gfx/generate/convert/TextureCubeUtils.d.ts +12 -0
- package/dist/src/gfx/generate/convert/TextureCubeUtils.js +47 -0
- package/dist/src/gfx/generate/convert/TextureScaleCompute.d.ts +6 -0
- package/dist/src/gfx/generate/convert/TextureScaleCompute.js +18 -0
- package/dist/src/gfx/graphics/webGpu/CanvasConfig.d.ts +7 -0
- package/dist/src/gfx/graphics/webGpu/CanvasConfig.js +1 -0
- package/dist/src/gfx/graphics/webGpu/Context3D.d.ts +20 -0
- package/dist/src/gfx/graphics/webGpu/Context3D.js +112 -0
- package/dist/src/gfx/graphics/webGpu/PipelinePool.d.ts +5 -0
- package/dist/src/gfx/graphics/webGpu/PipelinePool.js +15 -0
- package/dist/src/gfx/graphics/webGpu/WebGPUConst.d.ts +154 -0
- package/dist/src/gfx/graphics/webGpu/WebGPUConst.js +154 -0
- package/dist/src/gfx/graphics/webGpu/compute/PreIntegratedLutCompute.d.ts +8 -0
- package/dist/src/gfx/graphics/webGpu/compute/PreIntegratedLutCompute.js +23 -0
- package/dist/src/gfx/graphics/webGpu/compute/RenderShaderCompute.d.ts +12 -0
- package/dist/src/gfx/graphics/webGpu/compute/RenderShaderCompute.js +19 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/GlobalBindGroup.d.ts +18 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/GlobalBindGroup.js +64 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/GlobalBindGroupLayout.d.ts +4 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/GlobalBindGroupLayout.js +29 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/GlobalUniformGroup.d.ts +25 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/GlobalUniformGroup.js +179 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/MatrixBindGroup.d.ts +11 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/MatrixBindGroup.js +22 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/groups/LightEntries.d.ts +11 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/groups/LightEntries.js +48 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/groups/ProbeEntries.d.ts +10 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/groups/ProbeEntries.js +41 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/groups/ReflectionEntries.d.ts +12 -0
- package/dist/src/gfx/graphics/webGpu/core/bindGroups/groups/ReflectionEntries.js +21 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/ArrayBufferData.d.ts +1 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/ArrayBufferData.js +1 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/ComputeGPUBuffer.d.ts +4 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/ComputeGPUBuffer.js +11 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/GPUBufferBase.d.ts +84 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/GPUBufferBase.js +493 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/GPUBufferType.d.ts +9 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/GPUBufferType.js +10 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/IndicesGPUBuffer.d.ts +14 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/IndicesGPUBuffer.js +44 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/MaterialDataUniformGPUBuffer.d.ts +10 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/MaterialDataUniformGPUBuffer.js +46 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/MatrixGPUBuffer.d.ts +8 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/MatrixGPUBuffer.js +57 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/StorageGPUBuffer.d.ts +11 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/StorageGPUBuffer.js +16 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/StructStorageGPUBuffer.d.ts +7 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/StructStorageGPUBuffer.js +9 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/UniformGPUBuffer.d.ts +11 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/UniformGPUBuffer.js +17 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/VertexGPUBuffer.d.ts +7 -0
- package/dist/src/gfx/graphics/webGpu/core/buffer/VertexGPUBuffer.js +29 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/ITexture.d.ts +18 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/ITexture.js +1 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/Texture.d.ts +79 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/Texture.js +307 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/TextureCube.d.ts +11 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/TextureCube.js +51 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/TextureMipmapCompute.d.ts +9 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/TextureMipmapCompute.js +134 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/TextureMipmapGenerator.d.ts +9 -0
- package/dist/src/gfx/graphics/webGpu/core/texture/TextureMipmapGenerator.js +163 -0
- package/dist/src/gfx/graphics/webGpu/core/uniforms/UniformNode.d.ts +34 -0
- package/dist/src/gfx/graphics/webGpu/core/uniforms/UniformNode.js +176 -0
- package/dist/src/gfx/graphics/webGpu/descriptor/RTDescriptor.d.ts +5 -0
- package/dist/src/gfx/graphics/webGpu/descriptor/RTDescriptor.js +7 -0
- package/dist/src/gfx/graphics/webGpu/descriptor/WebGPUDescriptorCreator.d.ts +8 -0
- package/dist/src/gfx/graphics/webGpu/descriptor/WebGPUDescriptorCreator.js +174 -0
- package/dist/src/gfx/graphics/webGpu/shader/ComputeShader.d.ts +28 -0
- package/dist/src/gfx/graphics/webGpu/shader/ComputeShader.js +219 -0
- package/dist/src/gfx/graphics/webGpu/shader/RenderShaderPass.d.ts +206 -0
- package/dist/src/gfx/graphics/webGpu/shader/RenderShaderPass.js +888 -0
- package/dist/src/gfx/graphics/webGpu/shader/Shader.d.ts +53 -0
- package/dist/src/gfx/graphics/webGpu/shader/Shader.js +205 -0
- package/dist/src/gfx/graphics/webGpu/shader/ShaderPassBase.d.ts +60 -0
- package/dist/src/gfx/graphics/webGpu/shader/ShaderPassBase.js +150 -0
- package/dist/src/gfx/graphics/webGpu/shader/ShaderStage.d.ts +5 -0
- package/dist/src/gfx/graphics/webGpu/shader/ShaderStage.js +6 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/GLSLLexer.d.ts +16 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/GLSLLexer.js +422 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/GLSLLexerToken.d.ts +174 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/GLSLLexerToken.js +388 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/GLSLPreprocessor.d.ts +10 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/GLSLPreprocessor.js +198 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/GLSLSyntax.d.ts +14 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/GLSLSyntax.js +106 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/Reader.d.ts +30 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/Reader.js +136 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/ShaderConverter.d.ts +47 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/ShaderConverter.js +69 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/StatementNode.d.ts +309 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/StatementNode.js +1804 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/WGSLTranslator.d.ts +50 -0
- package/dist/src/gfx/graphics/webGpu/shader/converter/WGSLTranslator.js +272 -0
- package/dist/src/gfx/graphics/webGpu/shader/util/MorePassParser.d.ts +25 -0
- package/dist/src/gfx/graphics/webGpu/shader/util/MorePassParser.js +134 -0
- package/dist/src/gfx/graphics/webGpu/shader/util/Preprocessor.d.ts +28 -0
- package/dist/src/gfx/graphics/webGpu/shader/util/Preprocessor.js +304 -0
- package/dist/src/gfx/graphics/webGpu/shader/util/ShaderUtil.d.ts +23 -0
- package/dist/src/gfx/graphics/webGpu/shader/util/ShaderUtil.js +6 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/ConstValue.d.ts +1 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/ConstValue.js +1 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/DefineValue.d.ts +4 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/DefineValue.js +1 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/ShaderReflectionInfo.d.ts +57 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/ShaderReflectionInfo.js +421 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/ShaderState.d.ts +30 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/ShaderState.js +113 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/ShaderValue.d.ts +32 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/ShaderValue.js +1 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/UniformValue.d.ts +13 -0
- package/dist/src/gfx/graphics/webGpu/shader/value/UniformValue.js +9 -0
- package/dist/src/gfx/renderJob/GPUContext.d.ts +32 -0
- package/dist/src/gfx/renderJob/GPUContext.js +152 -0
- package/dist/src/gfx/renderJob/collect/CollectInfo.d.ts +7 -0
- package/dist/src/gfx/renderJob/collect/CollectInfo.js +10 -0
- package/dist/src/gfx/renderJob/collect/ComponentCollect.d.ts +29 -0
- package/dist/src/gfx/renderJob/collect/ComponentCollect.js +134 -0
- package/dist/src/gfx/renderJob/collect/EntityBatchCollect.d.ts +7 -0
- package/dist/src/gfx/renderJob/collect/EntityBatchCollect.js +24 -0
- package/dist/src/gfx/renderJob/collect/EntityCollect.d.ts +48 -0
- package/dist/src/gfx/renderJob/collect/EntityCollect.js +260 -0
- package/dist/src/gfx/renderJob/collect/RenderGroup.d.ts +7 -0
- package/dist/src/gfx/renderJob/collect/RenderGroup.js +1 -0
- package/dist/src/gfx/renderJob/collect/RenderShaderCollect.d.ts +9 -0
- package/dist/src/gfx/renderJob/collect/RenderShaderCollect.js +51 -0
- package/dist/src/gfx/renderJob/collect/ShadowLightsCollect.d.ts +20 -0
- package/dist/src/gfx/renderJob/collect/ShadowLightsCollect.js +182 -0
- package/dist/src/gfx/renderJob/config/RTResourceConfig.d.ts +10 -0
- package/dist/src/gfx/renderJob/config/RTResourceConfig.js +10 -0
- package/dist/src/gfx/renderJob/config/RenderLayer.d.ts +11 -0
- package/dist/src/gfx/renderJob/config/RenderLayer.js +20 -0
- package/dist/src/gfx/renderJob/frame/GBufferFrame.d.ts +19 -0
- package/dist/src/gfx/renderJob/frame/GBufferFrame.js +74 -0
- package/dist/src/gfx/renderJob/frame/ProbeGBufferFrame.d.ts +5 -0
- package/dist/src/gfx/renderJob/frame/ProbeGBufferFrame.js +37 -0
- package/dist/src/gfx/renderJob/frame/RTFrame.d.ts +17 -0
- package/dist/src/gfx/renderJob/frame/RTFrame.js +34 -0
- package/dist/src/gfx/renderJob/frame/RTResourceMap.d.ts +13 -0
- package/dist/src/gfx/renderJob/frame/RTResourceMap.js +71 -0
- package/dist/src/gfx/renderJob/jobs/ForwardRenderJob.d.ts +7 -0
- package/dist/src/gfx/renderJob/jobs/ForwardRenderJob.js +45 -0
- package/dist/src/gfx/renderJob/jobs/RenderMap.d.ts +12 -0
- package/dist/src/gfx/renderJob/jobs/RenderMap.js +29 -0
- package/dist/src/gfx/renderJob/jobs/RendererJob.d.ts +43 -0
- package/dist/src/gfx/renderJob/jobs/RendererJob.js +123 -0
- package/dist/src/gfx/renderJob/occlusion/OcclusionSystem.d.ts +16 -0
- package/dist/src/gfx/renderJob/occlusion/OcclusionSystem.js +30 -0
- package/dist/src/gfx/renderJob/passRenderer/RenderContext.d.ts +20 -0
- package/dist/src/gfx/renderJob/passRenderer/RenderContext.js +68 -0
- package/dist/src/gfx/renderJob/passRenderer/RendererBase.d.ts +40 -0
- package/dist/src/gfx/renderJob/passRenderer/RendererBase.js +155 -0
- package/dist/src/gfx/renderJob/passRenderer/cluster/ClusterConfig.d.ts +5 -0
- package/dist/src/gfx/renderJob/passRenderer/cluster/ClusterConfig.js +5 -0
- package/dist/src/gfx/renderJob/passRenderer/cluster/ClusterLightingBuffer.d.ts +10 -0
- package/dist/src/gfx/renderJob/passRenderer/cluster/ClusterLightingBuffer.js +29 -0
- package/dist/src/gfx/renderJob/passRenderer/cluster/ClusterLightingRender.d.ts +20 -0
- package/dist/src/gfx/renderJob/passRenderer/cluster/ClusterLightingRender.js +74 -0
- package/dist/src/gfx/renderJob/passRenderer/color/ColorPassRenderer.d.ts +12 -0
- package/dist/src/gfx/renderJob/passRenderer/color/ColorPassRenderer.js +97 -0
- package/dist/src/gfx/renderJob/passRenderer/color/GUIPassRenderer.d.ts +13 -0
- package/dist/src/gfx/renderJob/passRenderer/color/GUIPassRenderer.js +79 -0
- package/dist/src/gfx/renderJob/passRenderer/cubeRenderer/ReflectionRenderer.d.ts +36 -0
- package/dist/src/gfx/renderJob/passRenderer/cubeRenderer/ReflectionRenderer.js +172 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIIrradianceComputePass.d.ts +18 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIIrradianceComputePass.js +52 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIIrradianceGPUBufferReader.d.ts +22 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIIrradianceGPUBufferReader.js +68 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIIrradianceVolume.d.ts +32 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIIrradianceVolume.js +113 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGILightingPass.d.ts +17 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGILightingPass.js +47 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIMultiBouncePass.d.ts +13 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIMultiBouncePass.js +40 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIProbeRenderer.d.ts +46 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/DDGIProbeRenderer.js +292 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/Probe.d.ts +6 -0
- package/dist/src/gfx/renderJob/passRenderer/ddgi/Probe.js +8 -0
- package/dist/src/gfx/renderJob/passRenderer/post/PostRenderer.d.ts +19 -0
- package/dist/src/gfx/renderJob/passRenderer/post/PostRenderer.js +61 -0
- package/dist/src/gfx/renderJob/passRenderer/preDepth/PreDepthPassRenderer.d.ts +16 -0
- package/dist/src/gfx/renderJob/passRenderer/preDepth/PreDepthPassRenderer.js +80 -0
- package/dist/src/gfx/renderJob/passRenderer/preDepth/ZCullingCompute.d.ts +12 -0
- package/dist/src/gfx/renderJob/passRenderer/preDepth/ZCullingCompute.js +26 -0
- package/dist/src/gfx/renderJob/passRenderer/shadow/PointLightShadowRenderer.d.ts +32 -0
- package/dist/src/gfx/renderJob/passRenderer/shadow/PointLightShadowRenderer.js +193 -0
- package/dist/src/gfx/renderJob/passRenderer/shadow/ShadowMapPassRenderer.d.ts +27 -0
- package/dist/src/gfx/renderJob/passRenderer/shadow/ShadowMapPassRenderer.js +224 -0
- package/dist/src/gfx/renderJob/passRenderer/state/PassType.d.ts +13 -0
- package/dist/src/gfx/renderJob/passRenderer/state/PassType.js +14 -0
- package/dist/src/gfx/renderJob/passRenderer/state/RendererMask.d.ts +18 -0
- package/dist/src/gfx/renderJob/passRenderer/state/RendererMask.js +27 -0
- package/dist/src/gfx/renderJob/passRenderer/state/RendererPassState.d.ts +27 -0
- package/dist/src/gfx/renderJob/passRenderer/state/RendererPassState.js +24 -0
- package/dist/src/gfx/renderJob/post/BloomPost.d.ts +45 -0
- package/dist/src/gfx/renderJob/post/BloomPost.js +245 -0
- package/dist/src/gfx/renderJob/post/DepthOfFieldPost.d.ts +56 -0
- package/dist/src/gfx/renderJob/post/DepthOfFieldPost.js +146 -0
- package/dist/src/gfx/renderJob/post/FXAAPost.d.ts +18 -0
- package/dist/src/gfx/renderJob/post/FXAAPost.js +34 -0
- package/dist/src/gfx/renderJob/post/GBufferPost.d.ts +35 -0
- package/dist/src/gfx/renderJob/post/GBufferPost.js +107 -0
- package/dist/src/gfx/renderJob/post/GTAOPost.d.ts +67 -0
- package/dist/src/gfx/renderJob/post/GTAOPost.js +167 -0
- package/dist/src/gfx/renderJob/post/GlobalFog.d.ts +69 -0
- package/dist/src/gfx/renderJob/post/GlobalFog.js +208 -0
- package/dist/src/gfx/renderJob/post/GodRayPost.d.ts +56 -0
- package/dist/src/gfx/renderJob/post/GodRayPost.js +126 -0
- package/dist/src/gfx/renderJob/post/OutlinePost.d.ts +93 -0
- package/dist/src/gfx/renderJob/post/OutlinePost.js +212 -0
- package/dist/src/gfx/renderJob/post/PostBase.d.ts +35 -0
- package/dist/src/gfx/renderJob/post/PostBase.js +78 -0
- package/dist/src/gfx/renderJob/post/SSGIPost.d.ts +67 -0
- package/dist/src/gfx/renderJob/post/SSGIPost.js +210 -0
- package/dist/src/gfx/renderJob/post/SSRPost.d.ts +76 -0
- package/dist/src/gfx/renderJob/post/SSRPost.js +238 -0
- package/dist/src/gfx/renderJob/post/TAAPost.d.ts +40 -0
- package/dist/src/gfx/renderJob/post/TAAPost.js +183 -0
- package/dist/src/index.d.ts +571 -0
- package/dist/src/index.js +571 -0
- package/dist/src/io/InputSystem.d.ts +49 -0
- package/dist/src/io/InputSystem.js +382 -0
- package/dist/src/io/OutlineManager.d.ts +11 -0
- package/dist/src/io/OutlineManager.js +39 -0
- package/dist/src/io/OutlinePostData.d.ts +22 -0
- package/dist/src/io/OutlinePostData.js +54 -0
- package/dist/src/io/PickFire.d.ts +32 -0
- package/dist/src/io/PickFire.js +195 -0
- package/dist/src/io/PickResult.d.ts +59 -0
- package/dist/src/io/PickResult.js +29 -0
- package/dist/src/io/RayCastMeshDetail.d.ts +32 -0
- package/dist/src/io/RayCastMeshDetail.js +119 -0
- package/dist/src/io/TouchData.d.ts +12 -0
- package/dist/src/io/TouchData.js +13 -0
- package/dist/src/io/picker/PickCompute.d.ts +14 -0
- package/dist/src/io/picker/PickCompute.js +53 -0
- package/dist/src/loader/FileLoader.d.ts +7 -0
- package/dist/src/loader/FileLoader.js +70 -0
- package/dist/src/loader/LoaderBase.d.ts +30 -0
- package/dist/src/loader/LoaderBase.js +156 -0
- package/dist/src/loader/LoaderFunctions.d.ts +7 -0
- package/dist/src/loader/LoaderFunctions.js +1 -0
- package/dist/src/loader/LoaderManager.d.ts +36 -0
- package/dist/src/loader/LoaderManager.js +83 -0
- package/dist/src/loader/parser/AtlasParser.d.ts +10 -0
- package/dist/src/loader/parser/AtlasParser.js +31 -0
- package/dist/src/loader/parser/B3DMParser.d.ts +24 -0
- package/dist/src/loader/parser/B3DMParser.js +108 -0
- package/dist/src/loader/parser/FontParser.d.ts +54 -0
- package/dist/src/loader/parser/FontParser.js +171 -0
- package/dist/src/loader/parser/I3DMParser.d.ts +7 -0
- package/dist/src/loader/parser/I3DMParser.js +17 -0
- package/dist/src/loader/parser/OBJParser.d.ts +72 -0
- package/dist/src/loader/parser/OBJParser.js +289 -0
- package/dist/src/loader/parser/ParserBase.d.ts +18 -0
- package/dist/src/loader/parser/ParserBase.js +17 -0
- package/dist/src/loader/parser/ParserFormat.d.ts +5 -0
- package/dist/src/loader/parser/ParserFormat.js +6 -0
- package/dist/src/loader/parser/RGBEParser.d.ts +40 -0
- package/dist/src/loader/parser/RGBEParser.js +248 -0
- package/dist/src/loader/parser/b3dm/B3DMLoader.d.ts +10 -0
- package/dist/src/loader/parser/b3dm/B3DMLoader.js +56 -0
- package/dist/src/loader/parser/b3dm/B3DMLoaderBase.d.ts +9 -0
- package/dist/src/loader/parser/b3dm/B3DMLoaderBase.js +31 -0
- package/dist/src/loader/parser/b3dm/FeatureTable.d.ts +14 -0
- package/dist/src/loader/parser/b3dm/FeatureTable.js +104 -0
- package/dist/src/loader/parser/b3dm/arrayToString.d.ts +1 -0
- package/dist/src/loader/parser/b3dm/arrayToString.js +4 -0
- package/dist/src/loader/parser/b3dm/readMagicBytes.d.ts +1 -0
- package/dist/src/loader/parser/b3dm/readMagicBytes.js +17 -0
- package/dist/src/loader/parser/gis/GeoJsonParser.d.ts +29 -0
- package/dist/src/loader/parser/gis/GeoJsonParser.js +15 -0
- package/dist/src/loader/parser/gis/GeoJsonUtil.d.ts +5 -0
- package/dist/src/loader/parser/gis/GeoJsonUtil.js +30 -0
- package/dist/src/loader/parser/gltf/GLBParser.d.ts +21 -0
- package/dist/src/loader/parser/gltf/GLBParser.js +133 -0
- package/dist/src/loader/parser/gltf/GLTFInfo.d.ts +137 -0
- package/dist/src/loader/parser/gltf/GLTFInfo.js +20 -0
- package/dist/src/loader/parser/gltf/GLTFMaterial.d.ts +24 -0
- package/dist/src/loader/parser/gltf/GLTFMaterial.js +2 -0
- package/dist/src/loader/parser/gltf/GLTFParser.d.ts +45 -0
- package/dist/src/loader/parser/gltf/GLTFParser.js +153 -0
- package/dist/src/loader/parser/gltf/GLTFSubParser.d.ts +47 -0
- package/dist/src/loader/parser/gltf/GLTFSubParser.js +366 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserCamera.d.ts +7 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserCamera.js +41 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserConverter.d.ts +17 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserConverter.js +416 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserMaterial.d.ts +10 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserMaterial.js +182 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserMesh.d.ts +11 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserMesh.js +170 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserSkeleton.d.ts +15 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserSkeleton.js +313 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserSkin.d.ts +10 -0
- package/dist/src/loader/parser/gltf/GLTFSubParserSkin.js +66 -0
- package/dist/src/loader/parser/gltf/GLTFType.d.ts +22 -0
- package/dist/src/loader/parser/gltf/GLTFType.js +21 -0
- package/dist/src/loader/parser/gltf/TypeArray.d.ts +4 -0
- package/dist/src/loader/parser/gltf/TypeArray.js +98 -0
- package/dist/src/loader/parser/gltf/extends/KHR_draco_mesh_compression.d.ts +9 -0
- package/dist/src/loader/parser/gltf/extends/KHR_draco_mesh_compression.js +157 -0
- package/dist/src/loader/parser/gltf/extends/KHR_lights_punctual.d.ts +2 -0
- package/dist/src/loader/parser/gltf/extends/KHR_lights_punctual.js +2 -0
- package/dist/src/loader/parser/gltf/extends/KHR_materials_clearcoat.d.ts +7 -0
- package/dist/src/loader/parser/gltf/extends/KHR_materials_clearcoat.js +26 -0
- package/dist/src/loader/parser/gltf/extends/KHR_materials_emissive_strength.d.ts +3 -0
- package/dist/src/loader/parser/gltf/extends/KHR_materials_emissive_strength.js +17 -0
- package/dist/src/loader/parser/gltf/extends/KHR_materials_ior.d.ts +2 -0
- package/dist/src/loader/parser/gltf/extends/KHR_materials_ior.js +2 -0
- package/dist/src/loader/parser/gltf/extends/KHR_materials_unlit.d.ts +3 -0
- package/dist/src/loader/parser/gltf/extends/KHR_materials_unlit.js +12 -0
- package/dist/src/loader/parser/i3dm/I3DMLoader.d.ts +17 -0
- package/dist/src/loader/parser/i3dm/I3DMLoader.js +97 -0
- package/dist/src/loader/parser/i3dm/I3DMLoaderBase.d.ts +9 -0
- package/dist/src/loader/parser/i3dm/I3DMLoaderBase.js +40 -0
- package/dist/src/loader/parser/prefab/PrefabAvatarParser.d.ts +9 -0
- package/dist/src/loader/parser/prefab/PrefabAvatarParser.js +38 -0
- package/dist/src/loader/parser/prefab/PrefabMaterialParser.d.ts +9 -0
- package/dist/src/loader/parser/prefab/PrefabMaterialParser.js +115 -0
- package/dist/src/loader/parser/prefab/PrefabMeshParser.d.ts +10 -0
- package/dist/src/loader/parser/prefab/PrefabMeshParser.js +133 -0
- package/dist/src/loader/parser/prefab/PrefabParser.d.ts +16 -0
- package/dist/src/loader/parser/prefab/PrefabParser.js +72 -0
- package/dist/src/loader/parser/prefab/PrefabStringUtil.d.ts +12 -0
- package/dist/src/loader/parser/prefab/PrefabStringUtil.js +41 -0
- package/dist/src/loader/parser/prefab/PrefabTextureParser.d.ts +10 -0
- package/dist/src/loader/parser/prefab/PrefabTextureParser.js +32 -0
- package/dist/src/loader/parser/prefab/mats/MaterialUtilities.d.ts +8 -0
- package/dist/src/loader/parser/prefab/mats/MaterialUtilities.js +138 -0
- package/dist/src/loader/parser/prefab/mats/shader/LitSSSShader.d.ts +24 -0
- package/dist/src/loader/parser/prefab/mats/shader/LitSSSShader.js +139 -0
- package/dist/src/loader/parser/prefab/mats/shader/LitShader.d.ts +19 -0
- package/dist/src/loader/parser/prefab/mats/shader/LitShader.js +117 -0
- package/dist/src/loader/parser/prefab/mats/shader/QuadShader.d.ts +4 -0
- package/dist/src/loader/parser/prefab/mats/shader/QuadShader.js +39 -0
- package/dist/src/loader/parser/prefab/mats/shader/ReflectionShader.d.ts +19 -0
- package/dist/src/loader/parser/prefab/mats/shader/ReflectionShader.js +79 -0
- package/dist/src/loader/parser/prefab/mats/shader/SkyShader.d.ts +4 -0
- package/dist/src/loader/parser/prefab/mats/shader/SkyShader.js +35 -0
- package/dist/src/loader/parser/prefab/mats/shader/StandShader.d.ts +220 -0
- package/dist/src/loader/parser/prefab/mats/shader/StandShader.js +420 -0
- package/dist/src/loader/parser/prefab/mats/shader/UnLitShader.d.ts +19 -0
- package/dist/src/loader/parser/prefab/mats/shader/UnLitShader.js +95 -0
- package/dist/src/loader/parser/prefab/mats/shader/UnLitTexArrayShader.d.ts +19 -0
- package/dist/src/loader/parser/prefab/mats/shader/UnLitTexArrayShader.js +100 -0
- package/dist/src/loader/parser/prefab/prefabData/BlendShapeData.d.ts +11 -0
- package/dist/src/loader/parser/prefab/prefabData/BlendShapeData.js +19 -0
- package/dist/src/loader/parser/prefab/prefabData/BlendShapePropertyData.d.ts +9 -0
- package/dist/src/loader/parser/prefab/prefabData/BlendShapePropertyData.js +17 -0
- package/dist/src/loader/parser/prefab/prefabData/KVData.d.ts +9 -0
- package/dist/src/loader/parser/prefab/prefabData/KVData.js +12 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabAvatarData.d.ts +9 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabAvatarData.js +15 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabBoneData.d.ts +16 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabBoneData.js +14 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabMeshData.d.ts +19 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabMeshData.js +2 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabNode.d.ts +19 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabNode.js +40 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabTextureData.d.ts +14 -0
- package/dist/src/loader/parser/prefab/prefabData/PrefabTextureData.js +2 -0
- package/dist/src/loader/parser/prefab/prefabData/ValueParser.d.ts +16 -0
- package/dist/src/loader/parser/prefab/prefabData/ValueParser.js +117 -0
- package/dist/src/loader/parser/prefab/prefabData/ValueType.d.ts +35 -0
- package/dist/src/loader/parser/prefab/prefabData/ValueType.js +36 -0
- package/dist/src/loader/parser/tileRenderer/TileSet.d.ts +45 -0
- package/dist/src/loader/parser/tileRenderer/TileSet.js +10 -0
- package/dist/src/loader/parser/tileRenderer/TilesRenderer.d.ts +12 -0
- package/dist/src/loader/parser/tileRenderer/TilesRenderer.js +88 -0
- package/dist/src/materials/BlendMode.d.ts +58 -0
- package/dist/src/materials/BlendMode.js +132 -0
- package/dist/src/materials/ColorLitMaterial.d.ts +14 -0
- package/dist/src/materials/ColorLitMaterial.js +45 -0
- package/dist/src/materials/GIProbeMaterial.d.ts +15 -0
- package/dist/src/materials/GIProbeMaterial.js +42 -0
- package/dist/src/materials/LambertMaterial.d.ts +39 -0
- package/dist/src/materials/LambertMaterial.js +71 -0
- package/dist/src/materials/LitMaterial.d.ts +49 -0
- package/dist/src/materials/LitMaterial.js +170 -0
- package/dist/src/materials/Material.d.ts +88 -0
- package/dist/src/materials/Material.js +194 -0
- package/dist/src/materials/MaterialRegister.d.ts +9 -0
- package/dist/src/materials/MaterialRegister.js +1 -0
- package/dist/src/materials/ReflectionMaterial.d.ts +13 -0
- package/dist/src/materials/ReflectionMaterial.js +29 -0
- package/dist/src/materials/SkyMaterial.d.ts +23 -0
- package/dist/src/materials/SkyMaterial.js +56 -0
- package/dist/src/materials/UnLitMaterial.d.ts +33 -0
- package/dist/src/materials/UnLitMaterial.js +45 -0
- package/dist/src/materials/UnLitTexArrayMaterial.d.ts +20 -0
- package/dist/src/materials/UnLitTexArrayMaterial.js +32 -0
- package/dist/src/materials/multiPass/CastPointShadowMaterialPass.d.ts +4 -0
- package/dist/src/materials/multiPass/CastPointShadowMaterialPass.js +16 -0
- package/dist/src/materials/multiPass/CastShadowMaterialPass.d.ts +4 -0
- package/dist/src/materials/multiPass/CastShadowMaterialPass.js +16 -0
- package/dist/src/materials/multiPass/DepthMaterialPass.d.ts +4 -0
- package/dist/src/materials/multiPass/DepthMaterialPass.js +11 -0
- package/dist/src/materials/multiPass/GBufferPass.d.ts +5 -0
- package/dist/src/materials/multiPass/GBufferPass.js +19 -0
- package/dist/src/materials/multiPass/SkyGBufferPass.d.ts +4 -0
- package/dist/src/materials/multiPass/SkyGBufferPass.js +18 -0
- package/dist/src/math/AnimationCurve.d.ts +42 -0
- package/dist/src/math/AnimationCurve.js +191 -0
- package/dist/src/math/AnimationCurveClip.d.ts +15 -0
- package/dist/src/math/AnimationCurveClip.js +46 -0
- package/dist/src/math/AnimationCurveT.d.ts +24 -0
- package/dist/src/math/AnimationCurveT.js +105 -0
- package/dist/src/math/BiMap.d.ts +9 -0
- package/dist/src/math/BiMap.js +37 -0
- package/dist/src/math/Color.d.ts +249 -0
- package/dist/src/math/Color.js +381 -0
- package/dist/src/math/ColorGradient.d.ts +6 -0
- package/dist/src/math/ColorGradient.js +14 -0
- package/dist/src/math/CubicBezierCurve.d.ts +47 -0
- package/dist/src/math/CubicBezierCurve.js +100 -0
- package/dist/src/math/CubicBezierPath.d.ts +37 -0
- package/dist/src/math/CubicBezierPath.js +234 -0
- package/dist/src/math/HaltonSeq.d.ts +13 -0
- package/dist/src/math/HaltonSeq.js +45 -0
- package/dist/src/math/Line.d.ts +39 -0
- package/dist/src/math/Line.js +240 -0
- package/dist/src/math/MathUtil.d.ts +86 -0
- package/dist/src/math/MathUtil.js +480 -0
- package/dist/src/math/Matrix3.d.ts +183 -0
- package/dist/src/math/Matrix3.js +511 -0
- package/dist/src/math/Matrix4.d.ts +557 -0
- package/dist/src/math/Matrix4.js +2571 -0
- package/dist/src/math/OrderMap.d.ts +11 -0
- package/dist/src/math/OrderMap.js +56 -0
- package/dist/src/math/Orientation3D.d.ts +5 -0
- package/dist/src/math/Orientation3D.js +5 -0
- package/dist/src/math/ParticleMath.d.ts +22 -0
- package/dist/src/math/ParticleMath.js +26 -0
- package/dist/src/math/ParticleSystemCurves.d.ts +85 -0
- package/dist/src/math/ParticleSystemCurves.js +184 -0
- package/dist/src/math/Plane3D.d.ts +173 -0
- package/dist/src/math/Plane3D.js +191 -0
- package/dist/src/math/PlaneClassification.d.ts +32 -0
- package/dist/src/math/PlaneClassification.js +32 -0
- package/dist/src/math/PolynomialCurve.d.ts +43 -0
- package/dist/src/math/PolynomialCurve.js +236 -0
- package/dist/src/math/Polynomials.d.ts +12 -0
- package/dist/src/math/Polynomials.js +73 -0
- package/dist/src/math/Quaternion.d.ts +42 -0
- package/dist/src/math/Quaternion.js +406 -0
- package/dist/src/math/Rand.d.ts +15 -0
- package/dist/src/math/Rand.js +48 -0
- package/dist/src/math/Random.d.ts +67 -0
- package/dist/src/math/Random.js +543 -0
- package/dist/src/math/Ray.d.ts +41 -0
- package/dist/src/math/Ray.js +304 -0
- package/dist/src/math/Rect.d.ts +21 -0
- package/dist/src/math/Rect.js +108 -0
- package/dist/src/math/TimeInterpolator.d.ts +179 -0
- package/dist/src/math/TimeInterpolator.js +334 -0
- package/dist/src/math/Triangle.d.ts +33 -0
- package/dist/src/math/Triangle.js +113 -0
- package/dist/src/math/UV.d.ts +10 -0
- package/dist/src/math/UV.js +21 -0
- package/dist/src/math/Vector2.d.ts +38 -0
- package/dist/src/math/Vector2.js +166 -0
- package/dist/src/math/Vector3.d.ts +107 -0
- package/dist/src/math/Vector3.js +561 -0
- package/dist/src/math/Vector4.d.ts +34 -0
- package/dist/src/math/Vector4.js +77 -0
- package/dist/src/math/enum/FrameCache.d.ts +6 -0
- package/dist/src/math/enum/FrameCache.js +5 -0
- package/dist/src/math/enum/Keyframe.d.ts +14 -0
- package/dist/src/math/enum/Keyframe.js +27 -0
- package/dist/src/math/enum/T/KeyframeT.d.ts +18 -0
- package/dist/src/math/enum/T/KeyframeT.js +113 -0
- package/dist/src/math/enum/T/ValueOp.d.ts +4 -0
- package/dist/src/math/enum/T/ValueOp.js +32 -0
- package/dist/src/math/enum/WrapTimeMode.d.ts +5 -0
- package/dist/src/math/enum/WrapTimeMode.js +6 -0
- package/dist/src/math/navigation/DoubleArray.d.ts +11 -0
- package/dist/src/math/navigation/DoubleArray.js +44 -0
- package/dist/src/math/navigation/Navi3DAstar.d.ts +16 -0
- package/dist/src/math/navigation/Navi3DAstar.js +82 -0
- package/dist/src/math/navigation/Navi3DConst.d.ts +5 -0
- package/dist/src/math/navigation/Navi3DConst.js +8 -0
- package/dist/src/math/navigation/Navi3DEdge.d.ts +33 -0
- package/dist/src/math/navigation/Navi3DEdge.js +109 -0
- package/dist/src/math/navigation/Navi3DFunnel.d.ts +19 -0
- package/dist/src/math/navigation/Navi3DFunnel.js +254 -0
- package/dist/src/math/navigation/Navi3DMaskType.d.ts +3 -0
- package/dist/src/math/navigation/Navi3DMaskType.js +3 -0
- package/dist/src/math/navigation/Navi3DMesh.d.ts +27 -0
- package/dist/src/math/navigation/Navi3DMesh.js +122 -0
- package/dist/src/math/navigation/Navi3DPoint.d.ts +13 -0
- package/dist/src/math/navigation/Navi3DPoint.js +27 -0
- package/dist/src/math/navigation/Navi3DPoint2D.d.ts +10 -0
- package/dist/src/math/navigation/Navi3DPoint2D.js +26 -0
- package/dist/src/math/navigation/Navi3DPointFat.d.ts +11 -0
- package/dist/src/math/navigation/Navi3DPointFat.js +24 -0
- package/dist/src/math/navigation/Navi3DRouter.d.ts +29 -0
- package/dist/src/math/navigation/Navi3DRouter.js +173 -0
- package/dist/src/math/navigation/Navi3DTriangle.d.ts +44 -0
- package/dist/src/math/navigation/Navi3DTriangle.js +167 -0
- package/dist/src/setting/EngineSetting.d.ts +23 -0
- package/dist/src/setting/EngineSetting.js +1 -0
- package/dist/src/setting/GlobalIlluminationSetting.d.ts +115 -0
- package/dist/src/setting/GlobalIlluminationSetting.js +1 -0
- package/dist/src/setting/LightSetting.d.ts +3 -0
- package/dist/src/setting/LightSetting.js +1 -0
- package/dist/src/setting/LoaderSetting.d.ts +3 -0
- package/dist/src/setting/LoaderSetting.js +1 -0
- package/dist/src/setting/MaterialSetting.d.ts +5 -0
- package/dist/src/setting/MaterialSetting.js +1 -0
- package/dist/src/setting/OcclusionQuerySetting.d.ts +12 -0
- package/dist/src/setting/OcclusionQuerySetting.js +1 -0
- package/dist/src/setting/PickSetting.d.ts +5 -0
- package/dist/src/setting/PickSetting.js +1 -0
- package/dist/src/setting/ReflectionSetting.d.ts +7 -0
- package/dist/src/setting/ReflectionSetting.js +1 -0
- package/dist/src/setting/RenderSetting.d.ts +51 -0
- package/dist/src/setting/RenderSetting.js +1 -0
- package/dist/src/setting/ShadowSetting.d.ts +17 -0
- package/dist/src/setting/ShadowSetting.js +1 -0
- package/dist/src/setting/SkySetting.d.ts +8 -0
- package/dist/src/setting/SkySetting.js +1 -0
- package/dist/src/setting/post/BloomSetting.d.ts +11 -0
- package/dist/src/setting/post/BloomSetting.js +1 -0
- package/dist/src/setting/post/DepthOfViewSetting.d.ts +7 -0
- package/dist/src/setting/post/DepthOfViewSetting.js +1 -0
- package/dist/src/setting/post/GTAOSetting.d.ts +11 -0
- package/dist/src/setting/post/GTAOSetting.js +1 -0
- package/dist/src/setting/post/GlobalFogSetting.d.ts +19 -0
- package/dist/src/setting/post/GlobalFogSetting.js +1 -0
- package/dist/src/setting/post/GodRaySetting.d.ts +7 -0
- package/dist/src/setting/post/GodRaySetting.js +1 -0
- package/dist/src/setting/post/OutlineSetting.d.ts +10 -0
- package/dist/src/setting/post/OutlineSetting.js +1 -0
- package/dist/src/setting/post/SSRSetting.d.ts +12 -0
- package/dist/src/setting/post/SSRSetting.js +1 -0
- package/dist/src/setting/post/TAASetting.d.ts +9 -0
- package/dist/src/setting/post/TAASetting.js +1 -0
- package/dist/src/shape/BoxGeometry.d.ts +28 -0
- package/dist/src/shape/BoxGeometry.js +184 -0
- package/dist/src/shape/CylinderGeometry.d.ts +60 -0
- package/dist/src/shape/CylinderGeometry.js +171 -0
- package/dist/src/shape/PlaneGeometry.d.ts +11 -0
- package/dist/src/shape/PlaneGeometry.js +105 -0
- package/dist/src/shape/SphereGeometry.d.ts +25 -0
- package/dist/src/shape/SphereGeometry.js +102 -0
- package/dist/src/shape/TorusGeometry.d.ts +33 -0
- package/dist/src/shape/TorusGeometry.js +88 -0
- package/dist/src/shape/TrailGeometry.d.ts +18 -0
- package/dist/src/shape/TrailGeometry.js +68 -0
- package/dist/src/shape/TriGeometry.d.ts +13 -0
- package/dist/src/shape/TriGeometry.js +47 -0
- package/dist/src/textures/AtmosphericScatteringSky.d.ts +42 -0
- package/dist/src/textures/AtmosphericScatteringSky.js +97 -0
- package/dist/src/textures/BitmapTexture2D.d.ts +12 -0
- package/dist/src/textures/BitmapTexture2D.js +94 -0
- package/dist/src/textures/BitmapTexture2DArray.d.ts +15 -0
- package/dist/src/textures/BitmapTexture2DArray.js +87 -0
- package/dist/src/textures/BitmapTextureCube.d.ts +14 -0
- package/dist/src/textures/BitmapTextureCube.js +181 -0
- package/dist/src/textures/Depth2DTextureArray.d.ts +9 -0
- package/dist/src/textures/Depth2DTextureArray.js +43 -0
- package/dist/src/textures/DepthCubeArrayTexture.d.ts +9 -0
- package/dist/src/textures/DepthCubeArrayTexture.js +46 -0
- package/dist/src/textures/Float16ArrayTexture.d.ts +28 -0
- package/dist/src/textures/Float16ArrayTexture.js +84 -0
- package/dist/src/textures/Float32ArrayTexture.d.ts +5 -0
- package/dist/src/textures/Float32ArrayTexture.js +61 -0
- package/dist/src/textures/HDRTexture.d.ts +7 -0
- package/dist/src/textures/HDRTexture.js +52 -0
- package/dist/src/textures/HDRTextureCube.d.ts +16 -0
- package/dist/src/textures/HDRTextureCube.js +50 -0
- package/dist/src/textures/LDRTextureCube.d.ts +13 -0
- package/dist/src/textures/LDRTextureCube.js +49 -0
- package/dist/src/textures/RenderTexture.d.ts +12 -0
- package/dist/src/textures/RenderTexture.js +140 -0
- package/dist/src/textures/SolidColorSky.d.ts +11 -0
- package/dist/src/textures/SolidColorSky.js +29 -0
- package/dist/src/textures/TextureCubeFaceData.d.ts +19 -0
- package/dist/src/textures/TextureCubeFaceData.js +55 -0
- package/dist/src/textures/Uint8ArrayTexture.d.ts +6 -0
- package/dist/src/textures/Uint8ArrayTexture.js +63 -0
- package/dist/src/textures/VirtualTexture.d.ts +29 -0
- package/dist/src/textures/VirtualTexture.js +152 -0
- package/dist/src/util/AxisObject.d.ts +11 -0
- package/dist/src/util/AxisObject.js +52 -0
- package/dist/src/util/BoundUtil.d.ts +12 -0
- package/dist/src/util/BoundUtil.js +73 -0
- package/dist/src/util/BytesArray.d.ts +49 -0
- package/dist/src/util/BytesArray.js +257 -0
- package/dist/src/util/CameraUtil.d.ts +10 -0
- package/dist/src/util/CameraUtil.js +62 -0
- package/dist/src/util/Convert.d.ts +1 -0
- package/dist/src/util/Convert.js +24 -0
- package/dist/src/util/GeometryUtil.d.ts +12 -0
- package/dist/src/util/GeometryUtil.js +55 -0
- package/dist/src/util/Global.d.ts +15 -0
- package/dist/src/util/Global.js +57 -0
- package/dist/src/util/GridObject.d.ts +12 -0
- package/dist/src/util/GridObject.js +94 -0
- package/dist/src/util/KelvinUtil.d.ts +40 -0
- package/dist/src/util/KelvinUtil.js +79 -0
- package/dist/src/util/Object3DUtil.d.ts +25 -0
- package/dist/src/util/Object3DUtil.js +121 -0
- package/dist/src/util/ProfilerUtil.d.ts +49 -0
- package/dist/src/util/ProfilerUtil.js +141 -0
- package/dist/src/util/Reference.d.ts +37 -0
- package/dist/src/util/Reference.js +67 -0
- package/dist/src/util/SerializeDecoration.d.ts +9 -0
- package/dist/src/util/SerializeDecoration.js +95 -0
- package/dist/src/util/StringUtil.d.ts +23 -0
- package/dist/src/util/StringUtil.js +250 -0
- package/dist/src/util/Time.d.ts +9 -0
- package/dist/src/util/Time.js +14 -0
- package/dist/src/util/Vector3Ex.d.ts +16 -0
- package/dist/src/util/Vector3Ex.js +84 -0
- package/dist/src/util/ZSorterUtil.d.ts +13 -0
- package/dist/src/util/ZSorterUtil.js +51 -0
- package/dist/src/util/struct/Struct.d.ts +17 -0
- package/dist/src/util/struct/Struct.js +101 -0
- package/dist/src/util/transformUtil/Object3DTransformTools.d.ts +37 -0
- package/dist/src/util/transformUtil/Object3DTransformTools.js +136 -0
- package/dist/src/util/transformUtil/RotationControlComponents.d.ts +21 -0
- package/dist/src/util/transformUtil/RotationControlComponents.js +198 -0
- package/dist/src/util/transformUtil/ScaleControlComponents.d.ts +11 -0
- package/dist/src/util/transformUtil/ScaleControlComponents.js +132 -0
- package/dist/src/util/transformUtil/TransformAxisEnum.d.ts +11 -0
- package/dist/src/util/transformUtil/TransformAxisEnum.js +12 -0
- package/dist/src/util/transformUtil/TransformControllerBaseComponent.d.ts +48 -0
- package/dist/src/util/transformUtil/TransformControllerBaseComponent.js +283 -0
- package/dist/src/util/transformUtil/TransformMode.d.ts +6 -0
- package/dist/src/util/transformUtil/TransformMode.js +7 -0
- package/dist/src/util/transformUtil/TransformSpaceMode.d.ts +4 -0
- package/dist/src/util/transformUtil/TransformSpaceMode.js +5 -0
- package/dist/src/util/transformUtil/TranslationControlComponents.d.ts +12 -0
- package/dist/src/util/transformUtil/TranslationControlComponents.js +164 -0
- package/package.json +3 -2
|
@@ -0,0 +1,461 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 功能:表面反射 适用场景:金属、塑料 性能消耗:低
|
|
3
|
+
*/
|
|
4
|
+
export let BRDF_frag = `
|
|
5
|
+
#include "EnvMap_frag"
|
|
6
|
+
#include "BrdfLut_frag"
|
|
7
|
+
#include "ColorUtil_frag"
|
|
8
|
+
#include "SHCommon_frag"
|
|
9
|
+
|
|
10
|
+
struct FragData {
|
|
11
|
+
Ao: f32,
|
|
12
|
+
Metallic: f32,
|
|
13
|
+
Roughness: f32,
|
|
14
|
+
|
|
15
|
+
Albedo: vec4<f32>, // 反照色
|
|
16
|
+
Emissive: vec3<f32>,
|
|
17
|
+
Specular: vec3<f32>,
|
|
18
|
+
|
|
19
|
+
N: vec3<f32>, // 法线
|
|
20
|
+
V: vec3<f32>, // 视线
|
|
21
|
+
R: vec3<f32>, // 反射
|
|
22
|
+
T: vec3<f32>, // 切线
|
|
23
|
+
|
|
24
|
+
F0: vec3<f32>,
|
|
25
|
+
F: vec3<f32>,
|
|
26
|
+
KS: vec3<f32>,
|
|
27
|
+
KD: vec3<f32>,
|
|
28
|
+
|
|
29
|
+
Alpha: f32,
|
|
30
|
+
Shadow: f32,
|
|
31
|
+
Indirect: f32,
|
|
32
|
+
Reflectance: f32,
|
|
33
|
+
|
|
34
|
+
NoV: f32,
|
|
35
|
+
FaceDirection:f32,
|
|
36
|
+
|
|
37
|
+
ClearcoatRoughness:f32,
|
|
38
|
+
ClearcoatFactor:f32,
|
|
39
|
+
ClearcoatIor:f32,
|
|
40
|
+
EnvColor: vec3<f32>,
|
|
41
|
+
Irradiance: vec3<f32>,
|
|
42
|
+
LightChannel: vec3<f32>
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
var<private> fragData: FragData;
|
|
46
|
+
|
|
47
|
+
struct BxDFContext
|
|
48
|
+
{
|
|
49
|
+
NoV : f32 ,
|
|
50
|
+
NoL : f32 ,
|
|
51
|
+
VoL : f32 ,
|
|
52
|
+
NoH : f32 ,
|
|
53
|
+
HoL : f32 ,
|
|
54
|
+
VoH : f32
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
fn getContext( N:vec3<f32>, V:vec3<f32>, H:vec3<f32>, L:vec3<f32> ) -> BxDFContext
|
|
58
|
+
{
|
|
59
|
+
var Context:BxDFContext ;
|
|
60
|
+
Context.NoL = saturate(dot(N, L));
|
|
61
|
+
Context.NoV = saturate(dot(N, V));
|
|
62
|
+
Context.VoL = saturate(dot(V, L));
|
|
63
|
+
Context.NoH = saturate(dot(N, H));
|
|
64
|
+
Context.VoH = saturate(dot(V, H));
|
|
65
|
+
Context.HoL = saturate(dot(H, L));
|
|
66
|
+
return Context ;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
fn roughnessToMipmapLevel( roughness: f32 , mipmapCount:i32 ) -> f32{
|
|
70
|
+
let level = roughness * (1.7 - 0.7 * roughness );
|
|
71
|
+
return level * f32(mipmapCount);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
fn IORToF0(ior:f32)->f32{
|
|
75
|
+
var dc = ior - 1.0 ;
|
|
76
|
+
dc *= dc ;
|
|
77
|
+
var dt = ior + 1.0 ;
|
|
78
|
+
dt *= dt ;
|
|
79
|
+
return dc / dt ;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
fn Fd90( NoL:f32, roughness:f32) -> f32
|
|
83
|
+
{
|
|
84
|
+
return (2.0 * NoL * roughness) + 0.4;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
fn KDisneyTerm( NoL:f32, NoV:f32 , roughness:f32) -> f32
|
|
88
|
+
{
|
|
89
|
+
return (1.0 + Fd90(NoL, roughness) * pow(1.0 - NoL, 5.0)) * (1.0 + Fd90(NoV, roughness) * pow(1.0 - NoV, 5.0));
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
fn FresnelSchlick( NoV:f32, F0:vec3<f32>) -> vec3<f32>
|
|
93
|
+
{
|
|
94
|
+
return F0 + (1.0 - F0) * pow(1.0 - NoV, 5.0);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
fn FresnelTerm( cosA:f32, F0:vec3<f32>) -> vec3<f32>
|
|
98
|
+
{
|
|
99
|
+
let t = pow5( 1.0 - cosA );
|
|
100
|
+
return F0 + (1.0 - F0) * t;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
fn FresnelLerp( cosA:f32, F0:vec3<f32> , F90:vec3<f32>) -> vec3<f32>
|
|
104
|
+
{
|
|
105
|
+
let t = pow5( 1.0 - cosA );
|
|
106
|
+
return mix( F0 ,F90,t ) ;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
fn FresnelSchlickRoughness( NoV:f32, F0:vec3<f32>, roughness:f32) -> vec3<f32>
|
|
110
|
+
{
|
|
111
|
+
return F0 + (max(vec3(roughness), F0) - F0) * pow(1.0 - NoV, 5.0);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
fn DistributionGGX( NdotH:f32 , roughness:f32 ) -> f32
|
|
115
|
+
{
|
|
116
|
+
let alpha = roughness * roughness;
|
|
117
|
+
let alpha2 = roughness * roughness;
|
|
118
|
+
let NdotH2 = NdotH * NdotH;
|
|
119
|
+
let nom = alpha2;
|
|
120
|
+
var denom = (NdotH2 * (alpha2 - 1.0) + 1.0);
|
|
121
|
+
denom = PI * denom * denom;
|
|
122
|
+
return nom / denom;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
fn Vis_SmithJoint( NoV : f32 , NoL : f32 , a2 : f32) -> f32
|
|
126
|
+
{
|
|
127
|
+
var Vis_SmithV = NoL * sqrt(NoV * (NoV - NoV * a2) + a2);
|
|
128
|
+
var Vis_SmithL = NoV * sqrt(NoL * (NoL - NoL * a2) + a2);
|
|
129
|
+
return 0.5 * rcp(Vis_SmithV + Vis_SmithL);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
fn Vis_SmithJointApprox( NoV : f32 , NoL : f32 , a2 : f32 ) -> f32
|
|
133
|
+
{
|
|
134
|
+
let a = sqrt(a2);
|
|
135
|
+
let Vis_SmithV = NoL * ( NoV * ( 1.0 - a ) + a );
|
|
136
|
+
let Vis_SmithL = NoV * ( NoL * ( 1.0 - a ) + a );
|
|
137
|
+
return 0.5 * rcp( Vis_SmithV + Vis_SmithL );
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
fn GeometrySchlickGGX( NdotV : f32 , roughness : f32 ) -> f32
|
|
141
|
+
{
|
|
142
|
+
let r = (roughness + 1.0);
|
|
143
|
+
let k = (r*r) / 8.0;
|
|
144
|
+
let nom = NdotV;
|
|
145
|
+
let denom = NdotV * (1.0 - k) + k;
|
|
146
|
+
return nom / denom;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
fn GeometrySmith( NdotV:f32 , NdotL:f32 , roughness : f32) -> f32
|
|
150
|
+
{
|
|
151
|
+
let ggx1 = GeometrySchlickGGX(NdotV, roughness);
|
|
152
|
+
let ggx2 = GeometrySchlickGGX(NdotL, roughness);
|
|
153
|
+
return ggx1 * ggx2;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
fn GeometryAttenuationGGXSmith( NdotL:f32, NdotV:f32, roughness:f32) -> f32
|
|
157
|
+
{
|
|
158
|
+
var NdotL2 = NdotL * NdotL;
|
|
159
|
+
var NdotV2 = NdotV * NdotV;
|
|
160
|
+
var kRough2 = roughness * roughness + 0.0001;
|
|
161
|
+
var ggxL = (2.0 * NdotL) / (NdotL + sqrt(NdotL2 + kRough2 * (1.0 - NdotL2)));
|
|
162
|
+
var ggxV = (2.0 * NdotV) / (NdotV + sqrt(NdotV2 + kRough2 * (1.0 - NdotV2)));
|
|
163
|
+
return ggxL * ggxV;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
fn colorLinear( colorVector:vec3<f32> ) -> vec3<f32>
|
|
167
|
+
{
|
|
168
|
+
var linearColor = pow(colorVector.rgb, vec3<f32>(2.2));
|
|
169
|
+
return linearColor;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
fn computeFresnelSchlick( NoV:f32 , F0:vec3<f32>) -> vec3<f32>
|
|
173
|
+
{
|
|
174
|
+
return F0 + (1.0 - F0) * pow(clamp(1.0 - NoV,0.0,1.0), 5.0);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
fn computeFresnelSchlickRoughness(NoV:f32 , F0:vec3<f32>, roughness:f32) -> vec3<f32>
|
|
178
|
+
{
|
|
179
|
+
return F0 + (max(vec3(1.0 - roughness), F0) - F0) * pow(clamp(1.0 - fragData.NoV,0.0,1.0), 5.0);
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
fn computeDistributionGGX( N:vec3<f32>, H:vec3<f32>, roughness:f32) -> f32
|
|
183
|
+
{
|
|
184
|
+
var alpha = roughness * roughness;
|
|
185
|
+
var alpha2 = alpha * alpha;
|
|
186
|
+
var NdotH = saturate(dot(N, H));
|
|
187
|
+
var NdotH2 = NdotH * NdotH;
|
|
188
|
+
return (alpha2) / (PI * (NdotH2 * (alpha2 - 1.0) + 1.0) * (NdotH2 * (alpha2 - 1.0) + 1.0));
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
fn D_GGX( NoH:f32, roughness:f32 ) -> f32
|
|
192
|
+
{
|
|
193
|
+
var d = ( NoH * roughness - NoH ) * NoH + 1.0; // 2 mad
|
|
194
|
+
return roughness / ( PI*d*d ); // 4 mul, 1 rcp
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
fn computeGeometryAttenuationGGXSmith( NdotL:f32 , NdotV:f32, roughness:f32) -> f32
|
|
198
|
+
{
|
|
199
|
+
var NdotL2 = NdotL * NdotL;
|
|
200
|
+
var NdotV2 = NdotV * NdotV;
|
|
201
|
+
var kRough2 = roughness * roughness + 0.0001;
|
|
202
|
+
var ggxL = (2.0 * NdotL) / (NdotL + sqrt(NdotL2 + kRough2 * (1.0 - NdotL2)));
|
|
203
|
+
var ggxV = (2.0 * NdotV) / (NdotV + sqrt(NdotV2 + kRough2 * (1.0 - NdotV2)));
|
|
204
|
+
return ggxL * ggxV;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
fn Vis_Smith( NoL:f32 , NoV:f32, a2:f32 )-> f32
|
|
208
|
+
{
|
|
209
|
+
var Vis_SmithV = NoV + sqrt( NoV * (NoV - NoV * a2) + a2 );
|
|
210
|
+
var Vis_SmithL = NoL + sqrt( NoL * (NoL - NoL * a2) + a2 );
|
|
211
|
+
return rcp( Vis_SmithV * Vis_SmithL );
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
fn F_Function( HdotL:f32, F0:vec3f ) -> vec3f
|
|
215
|
+
{
|
|
216
|
+
var fresnel = exp2((-5.55473 * HdotL - 6.98316) * HdotL);
|
|
217
|
+
return mix(vec3f(fresnel),vec3f(1.0),F0);
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
fn D_Function( NdotH:f32, roughness:f32) ->f32
|
|
221
|
+
{
|
|
222
|
+
var a = roughness*roughness;
|
|
223
|
+
var a2 = a*a;
|
|
224
|
+
var NdotH2 = NdotH*NdotH;
|
|
225
|
+
var nom = a2;
|
|
226
|
+
var denom = (NdotH2 * (a2 - 1.0) + 1.0);
|
|
227
|
+
denom = PI * denom * denom;
|
|
228
|
+
return nom / denom;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
fn G_SubFunction( NdotW : f32, K : f32)->f32
|
|
232
|
+
{
|
|
233
|
+
return NdotW / mix(NdotW,1.0,K);
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
fn G_Function( NdotL: f32, NdotV: f32, roughness: f32)->f32
|
|
237
|
+
{
|
|
238
|
+
var K = (1.0+roughness) * (1.0+roughness) / 8.0;
|
|
239
|
+
return G_SubFunction(NdotL,K) * G_SubFunction(NdotV,K);
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
fn DGF_Function( NdotH:f32, NdotL:f32,NdotV:f32, HdotL:f32, roughness:f32, shadow:f32, F0:vec3f , lightColor:vec3f )-> vec3f
|
|
243
|
+
{
|
|
244
|
+
var D = D_Function(NdotH,roughness);
|
|
245
|
+
var G = G_Function(NdotL,NdotV,roughness);
|
|
246
|
+
var F = F_Function(HdotL,F0);
|
|
247
|
+
let light_BRDF = ( D * G * F ) / (4.0 * NdotV * NdotL + 0.001);
|
|
248
|
+
return light_BRDF * lightColor * NdotL * PI * shadow;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
fn LightDiffuse_Function( HdotL:f32, NdotL:f32 , baseColor:vec3f, metallic:f32, shadow:f32, F0:vec3f, lightColor:vec3f) -> vec3f
|
|
252
|
+
{
|
|
253
|
+
var KS = F_Function(HdotL,F0);
|
|
254
|
+
var KD = (1 - KS) * (1 - metallic);
|
|
255
|
+
return KD * baseColor * lightColor.rgb * NdotL * shadow;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
fn lightContribution( NdotH:f32, NdotL:f32, NdotV:f32, HdotL:f32, roughness:f32, baseColor:vec3f, metallic:f32, shadow:f32, F0:vec3f, lightColor:vec3f ) ->vec3f
|
|
259
|
+
{
|
|
260
|
+
return LightDiffuse_Function(HdotL,NdotL,baseColor,metallic,shadow,F0,lightColor) + DGF_Function(NdotH,NdotL,NdotV,HdotL,roughness,shadow,F0,lightColor);
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
fn simpleBRDF( albedo:vec3<f32>, N:vec3<f32>, V:vec3<f32>,L:vec3<f32>,att:f32,lightColor:vec3<f32>,roughness:f32 ,metallic:f32)-> vec3<f32>{
|
|
264
|
+
let H = normalize(V + L);
|
|
265
|
+
let Context:BxDFContext = getContext(N,V,H,L);
|
|
266
|
+
let alpha = roughness * roughness;
|
|
267
|
+
let a2 = alpha * alpha;
|
|
268
|
+
let F0 = mix(vec3<f32>(materialUniform.materialF0.rgb), albedo.rgb , metallic);
|
|
269
|
+
let D = D_GGX( Context.NoH , a2);
|
|
270
|
+
let G = Vis_SmithJointApprox(Context.NoV,Context.NoL, a2 );
|
|
271
|
+
let F = FresnelSchlick(Context.VoH, vec3<f32>(F0));
|
|
272
|
+
let specular = ( D * G * F ) / (4.0 * Context.NoV * Context.NoL + 0.001);
|
|
273
|
+
let kS = F ;
|
|
274
|
+
var kd = 1.0 - kS ;
|
|
275
|
+
kd *= 1.0 - metallic ;
|
|
276
|
+
|
|
277
|
+
#if USE_SRGB_ALBEDO
|
|
278
|
+
var diffuse = kd ;
|
|
279
|
+
#else
|
|
280
|
+
var diffuse = kd * (albedo.rgb / PI ) ;
|
|
281
|
+
#endif
|
|
282
|
+
|
|
283
|
+
let lightAtt = Context.NoL * lightColor * att ;
|
|
284
|
+
var diffuseColor = diffuse * lightAtt;
|
|
285
|
+
// diffuseColor = vec3f(0.0) ;
|
|
286
|
+
var specularColor = specular * lightAtt;
|
|
287
|
+
var col = (diffuseColor + specularColor ) ;
|
|
288
|
+
return vec3f(col) ;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
fn getSpecularDominantDir ( N : vec3<f32> , R : vec3<f32> , roughness : f32 ) -> vec3<f32>
|
|
292
|
+
{
|
|
293
|
+
var smoothness = saturate (1.0 - roughness );
|
|
294
|
+
var lerpFactor = smoothness * ( sqrt ( smoothness ) + roughness );
|
|
295
|
+
return mix (N, R, lerpFactor );
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
fn approximateSpecularIBL( specularColor:vec3<f32> , roughness:f32 , R:vec3<f32> , NoV:f32 ) -> vec3<f32> {
|
|
299
|
+
let MAX_REFLECTION_LOD = i32(textureNumLevels(prefilterMap)) ;
|
|
300
|
+
let mip = roughnessToMipmapLevel(roughness,MAX_REFLECTION_LOD) * f32(MAX_REFLECTION_LOD);
|
|
301
|
+
fragData.EnvColor = (textureSampleLevel(prefilterMap, prefilterMapSampler, getSpecularDominantDir(fragData.N,R,roughness) , mip ).rgb);
|
|
302
|
+
fragData.EnvColor = globalUniform.skyExposure * (fragData.EnvColor);
|
|
303
|
+
var envBRDF = textureSampleLevel(brdflutMap, brdflutMapSampler, vec2<f32>(NoV, roughness) , 0.0 ) ;
|
|
304
|
+
return (specularColor.rgb * envBRDF.x + envBRDF.y) ;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
fn fresnel_coat(n:vec3<f32>,v:vec3<f32>,ior:f32) -> f32 {
|
|
308
|
+
var f0 = (1.0-ior)/(1.0+ior);
|
|
309
|
+
f0 = f0 * f0 ;
|
|
310
|
+
let fr = pow((f0 + (1.0 - f0)*(1.0 - abs( max(dot(n,v),0.0) ))) , 5.0 ) ;
|
|
311
|
+
return fr ;
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
fn reflectEnvMap(n:vec3<f32> , v:vec3<f32> , roughness:f32) -> vec3<f32> {
|
|
315
|
+
let MAX_REFLECTION_LOD = i32(textureNumLevels(envMap)) ;
|
|
316
|
+
let mip = roughnessToMipmapLevel(roughness,MAX_REFLECTION_LOD);
|
|
317
|
+
let R = 2.0 * dot( v , n ) * n - v ;
|
|
318
|
+
var prefilteredColor: vec3<f32> = globalUniform.skyExposure * (textureSampleLevel(envMap, envMapSampler, R , mip ).rgb);
|
|
319
|
+
prefilteredColor = LinearToGammaSpace(prefilteredColor);
|
|
320
|
+
return prefilteredColor ;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
fn Specular_D_GGX( NoH:f32, roughness:f32 ) -> f32
|
|
324
|
+
{
|
|
325
|
+
let a2 = roughness * roughness ;
|
|
326
|
+
let f = (NoH * a2 - NoH) * NoH + 1.0;
|
|
327
|
+
return a2 / (PI * f * f) ;
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
fn V_Kelemen( LoH : f32 ) -> f32 {
|
|
331
|
+
return 0.25 / (LoH * LoH);
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
fn F_Schlick( f0:vec3<f32> , f90 : f32 , VoH : f32 ) -> vec3<f32> {
|
|
335
|
+
return f0 + (f90 - f0) * pow(1.0 - VoH,5.0);
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
fn F_Schlick2( SpecularColor:vec3<f32>, VoH :f32 )-> vec3<f32> {
|
|
339
|
+
var Fc = pow5( 1.0 - VoH );
|
|
340
|
+
let rt = clamp(50.0 * SpecularColor.g,0.0,1.0) ;
|
|
341
|
+
return rt * Fc + (1.0 - Fc) * SpecularColor;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
fn oneMinusReflectivity ( metallic : f32 , F0:f32 ) -> f32 {
|
|
345
|
+
let range = 1.0 - F0;
|
|
346
|
+
return range - metallic * range;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
fn CoatSpecular_brdf( f:vec3<f32>, s:vec3<f32>, n:vec3<f32> , v:vec3<f32> , l:vec3<f32> , att:f32 , layer :vec3<f32> , clearcoatRoughnessFactor:f32 ) -> vec3<f32> {
|
|
350
|
+
let H = normalize(v + l);
|
|
351
|
+
let VdotNc = max(dot(v,n),0.0);
|
|
352
|
+
let LdotNc = max(dot(l,n),0.0);
|
|
353
|
+
let NoH = max(dot(n,H),0.0);
|
|
354
|
+
let LoH = saturate(dot(l, H)) ;
|
|
355
|
+
let NoL = max(dot(n,l),0.0);
|
|
356
|
+
let Fd = f ;
|
|
357
|
+
let Fr = s ;
|
|
358
|
+
let factor = clamp(clearcoatRoughnessFactor,0.089,1.0);
|
|
359
|
+
let clearCoatRoughness = factor * factor ;
|
|
360
|
+
|
|
361
|
+
let Dc = D_GGX( NoH , factor ) ;
|
|
362
|
+
let Vc = V_Kelemen( LoH ) * NoL ;
|
|
363
|
+
let Fc = F_Schlick(vec3<f32>(0.04), 2.0 , LoH);
|
|
364
|
+
let Frc = (Dc * Vc) * Fc ;
|
|
365
|
+
return vec3<f32>(Frc) ;
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
#if USE_CLEARCOAT
|
|
369
|
+
fn approximate_coating(base:vec3<f32> , clearColor: vec3<f32>, n:vec3<f32> , v:vec3<f32> , light:LightData , clearcoatRoughnessFactor:f32 ) -> vec3<f32> {
|
|
370
|
+
let factor = clamp(clearcoatRoughnessFactor,0.084,1.0);
|
|
371
|
+
var clearcoatAlpha = factor * factor + fragData.ClearcoatRoughness;
|
|
372
|
+
var att = light.intensity ;
|
|
373
|
+
let l = light.direction ;
|
|
374
|
+
let NdotV = max(dot(n,v),0.0);
|
|
375
|
+
let MAX_REFLECTION_LOD = f32(textureNumLevels(prefilterMap)) ;
|
|
376
|
+
let R = 2.0 * dot( v , n ) * n - v ;
|
|
377
|
+
var envIBL: vec3<f32> = globalUniform.skyExposure * (textureSampleLevel(prefilterMap, prefilterMapSampler, R , MAX_REFLECTION_LOD * clearcoatRoughnessFactor ).rgb) ;
|
|
378
|
+
let clearCoat = materialUniform.clearcoatFactor ;
|
|
379
|
+
let clearcoat_brdf = CoatSpecular_brdf( vec3<f32>(0.04) , vec3<f32>( 0.04 ) , n , v , -l , att , vec3<f32>( 0.04 ) , factor ) ;
|
|
380
|
+
|
|
381
|
+
return mix(base, clearcoat_brdf,materialUniform.clearcoatWeight ) ;
|
|
382
|
+
}
|
|
383
|
+
#endif
|
|
384
|
+
|
|
385
|
+
fn EnvBRDF( SpecularColor : vec3f , Roughness : f32 , NoV : f32) -> vec3f
|
|
386
|
+
{
|
|
387
|
+
var AB = textureSampleLevel( brdflutMap, brdflutMapSampler, vec2f( NoV, Roughness ), 0.0 ).rg;
|
|
388
|
+
var GF = SpecularColor * AB.x + saturate( 50.0 * SpecularColor.g ) * AB.y;
|
|
389
|
+
return GF;
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
fn EnvBRDF_FD90( F0: vec3f , F90: vec3f , Roughness: f32, NoV: f32)-> vec3f
|
|
393
|
+
{
|
|
394
|
+
var AB = textureSampleLevel(brdflutMap, brdflutMapSampler, vec2f(NoV, Roughness), 0.0).rg;
|
|
395
|
+
var GF = F0 * AB.x + F90 * AB.y;
|
|
396
|
+
return GF;
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
fn IBLEnv( V:vec3f , N:vec3f , Roughness : f32) -> vec3f
|
|
400
|
+
{
|
|
401
|
+
let MAX_REFLECTION_LOD = i32(textureNumLevels(prefilterMap));
|
|
402
|
+
let mip = roughnessToMipmapLevel(Roughness,MAX_REFLECTION_LOD);
|
|
403
|
+
let R = 2.0 * dot( V , N ) * N - V ;
|
|
404
|
+
var envIBL: vec3<f32> = textureSampleLevel(prefilterMap, prefilterMapSampler, R , mip ).rgb ;
|
|
405
|
+
return envIBL;
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
fn IBLEnv2( R:vec3f , Roughness : f32) -> vec3f
|
|
409
|
+
{
|
|
410
|
+
let MAX_REFLECTION_LOD = i32(textureNumLevels(reflectionMap));
|
|
411
|
+
let mip = roughnessToMipmapLevel(Roughness,MAX_REFLECTION_LOD);
|
|
412
|
+
var envIBL: vec3<f32>;
|
|
413
|
+
envIBL = getReflectionsEnv(R,ORI_VertexVarying.vWorldPos.xyz, mip).rgb;
|
|
414
|
+
envIBL = gammaToLiner(envIBL);
|
|
415
|
+
return envIBL;
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
fn F_indirect_Function( NdotV:f32, roughness:f32, F0:vec3f) -> vec3f
|
|
420
|
+
{
|
|
421
|
+
var fresnel = exp2((-5.55473 * NdotV - 6.98316) * NdotV);
|
|
422
|
+
return F0 + fresnel * saturate(1.0 - roughness - F0);
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
fn indirectionDiffuse_Function( NdotV:f32, normalDir:vec3f, metallic:f32, baseColor:vec3f, roughness:f32, occlusion:f32, F0:vec3f)-> vec3f
|
|
427
|
+
{
|
|
428
|
+
var SHColor = fragData.Irradiance.rgb ;
|
|
429
|
+
var KS = F_indirect_Function(NdotV,roughness,F0);
|
|
430
|
+
var KD = (1.0 - KS) * (1.0 - metallic);
|
|
431
|
+
return SHColor * KD * baseColor * occlusion;
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
fn indirectionSpec_Function( reflectDir:vec3f, roughness:f32, NdotV:f32,occlusion:f32, F0:vec3f )-> vec3f
|
|
435
|
+
{
|
|
436
|
+
var mipRoughness = roughness * (1.7 - 0.7 * roughness) ;
|
|
437
|
+
var env : vec3f ;
|
|
438
|
+
#if USE_CASTREFLECTION
|
|
439
|
+
env = textureSampleLevel(envMap, envMapSampler, reflectDir , mipRoughness * 12.0 ).rgb ;
|
|
440
|
+
#else
|
|
441
|
+
useSphereReflection();
|
|
442
|
+
env = getReflectionsEnv(reflectDir,ORI_VertexVarying.vWorldPos.xyz, mipRoughness).rgb ;
|
|
443
|
+
#endif
|
|
444
|
+
|
|
445
|
+
var indirectionCube: vec3<f32> = globalUniform.skyExposure * env ;
|
|
446
|
+
var F_IndirectionLight = F_indirect_Function(NdotV,roughness,F0);
|
|
447
|
+
var AB = LUT_Approx(roughness,NdotV);
|
|
448
|
+
var indirectionSpecFactor = indirectionCube.rgb * (F_IndirectionLight * AB.r + AB.g) ;
|
|
449
|
+
return indirectionSpecFactor * occlusion;
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
const c0 = vec4f(-1, -0.0275, -0.572, 0.022 );
|
|
453
|
+
const c1 = vec4f(1, 0.0425, 1.04, -0.04 );
|
|
454
|
+
fn LUT_Approx( roughness:f32, NoV:f32 )->vec2f
|
|
455
|
+
{
|
|
456
|
+
var r = roughness * c0 + c1;
|
|
457
|
+
var a004 = min( r.x * r.x, exp2( -9.28 * NoV ) ) * r.x + r.y;
|
|
458
|
+
var AB = vec2f( -1.04, 1.04 ) * a004 + r.zw;
|
|
459
|
+
return saturate(AB);
|
|
460
|
+
}
|
|
461
|
+
`;
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 功能:表面+体积散射 适用: 皮肤、云、大理石 性能消耗: 高
|
|
3
|
+
*/
|
|
4
|
+
export let BsDF_frag = `
|
|
5
|
+
#include "Clearcoat_frag"
|
|
6
|
+
#include "BRDF_frag"
|
|
7
|
+
#include "MathShader"
|
|
8
|
+
#include "FastMathShader"
|
|
9
|
+
#include "Common_frag"
|
|
10
|
+
#include "GlobalUniform"
|
|
11
|
+
#include "PhysicMaterialUniform_frag"
|
|
12
|
+
#include "NormalMap_frag"
|
|
13
|
+
#include "LightingFunction_frag"
|
|
14
|
+
#include "Irradiance_frag"
|
|
15
|
+
#include "ColorUtil_frag"
|
|
16
|
+
#include "BxdfDebug_frag"
|
|
17
|
+
|
|
18
|
+
fn initFragData() {
|
|
19
|
+
fragData.Albedo = ORI_ShadingInput.BaseColor ;
|
|
20
|
+
fragData.Ao = clamp( pow(ORI_ShadingInput.AmbientOcclusion,materialUniform.ao) , 0.0 , 1.0 ) ;
|
|
21
|
+
fragData.Roughness = clamp((ORI_ShadingInput.Roughness),0.003,1.0) ;
|
|
22
|
+
fragData.Metallic = ORI_ShadingInput.Metallic ;
|
|
23
|
+
fragData.Emissive = ORI_ShadingInput.EmissiveColor.rgb ;
|
|
24
|
+
fragData.N = ORI_ShadingInput.Normal;
|
|
25
|
+
let viewDir = normalize(globalUniform.CameraPos.xyz - ORI_VertexVarying.vWorldPos.xyz);
|
|
26
|
+
fragData.V = viewDir;
|
|
27
|
+
|
|
28
|
+
#if USE_TANGENT
|
|
29
|
+
fragData.T = ORI_VertexVarying.TANGENT.xyz ;
|
|
30
|
+
#endif
|
|
31
|
+
|
|
32
|
+
let R = 2.0 * dot(fragData.V, fragData.N) * fragData.N - fragData.V;
|
|
33
|
+
fragData.R = R;
|
|
34
|
+
fragData.Nov = saturate(dot(fragData.N,fragData.V));
|
|
35
|
+
fragData.F0 = mix(vec3<f32>(materialUniform.specularColor.rgb), fragData.Albedo.rgb, fragData.Metallic);
|
|
36
|
+
fragData.F = computeFresnelSchlick(fragData.Nov, fragData.F0);
|
|
37
|
+
fragData.KD = vec3<f32>(fragData.F);
|
|
38
|
+
fragData.KS = vec3<f32>(0.0);
|
|
39
|
+
fragData.Indirect = 0.0;
|
|
40
|
+
fragData.Reflectance = 1.0;
|
|
41
|
+
fragData.ClearcoatRoughness = materialUniform.clearcoatRoughnessFactor;
|
|
42
|
+
|
|
43
|
+
#if USE_CLEARCOAT_ROUGHNESS
|
|
44
|
+
fragData.ClearcoatRoughness = getClearcoatRoughness() * materialUniform.clearcoatRoughnessFactor;
|
|
45
|
+
#endif
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
fn BsDFShading(){
|
|
49
|
+
initFragData();
|
|
50
|
+
var irradiance = vec3<f32>(0.0);
|
|
51
|
+
#if USEGI
|
|
52
|
+
irradiance += getIrradiance().rgb;
|
|
53
|
+
#else
|
|
54
|
+
let MAX_REFLECTION_LOD = f32(textureNumLevels(prefilterMap));
|
|
55
|
+
irradiance += (globalUniform.skyExposure * textureSampleLevel(prefilterMap, prefilterMapSampler, fragData.N.xyz, 0.8 * (MAX_REFLECTION_LOD) ).rgb);
|
|
56
|
+
#endif
|
|
57
|
+
irradiance = ORI_ShadingInput.SSS + LinearToGammaSpace(irradiance.rgb);
|
|
58
|
+
fragData.Irradiance = irradiance.rgb;
|
|
59
|
+
|
|
60
|
+
//***********lighting-PBR part*********
|
|
61
|
+
var specColor = vec3<f32>(0.0) ;
|
|
62
|
+
let lightIndex = getCluster();
|
|
63
|
+
let start = max(lightIndex.start, 0.0);
|
|
64
|
+
let count = max(lightIndex.count, 0.0);
|
|
65
|
+
let end = max(start + count , 0.0);
|
|
66
|
+
for(var i:i32 = i32(start) ; i < i32(end); i += 1 )
|
|
67
|
+
{
|
|
68
|
+
let light = getLight(i32(i));
|
|
69
|
+
switch (light.lightType) {
|
|
70
|
+
case PointLightType: {
|
|
71
|
+
specColor += pointLighting( fragData.Albedo.rgb,ORI_VertexVarying.vWorldPos.xyz,fragData.N,fragData.V,fragData.Roughness,fragData.Metallic,light) ;
|
|
72
|
+
}
|
|
73
|
+
case DirectLightType: {
|
|
74
|
+
specColor += directDulLighting( fragData.Albedo.rgb ,fragData.N,fragData.V,fragData.Roughness ,fragData.Metallic, light , globalUniform.shadowBias) ;
|
|
75
|
+
}
|
|
76
|
+
case SpotLightType: {
|
|
77
|
+
specColor += spotLighting( fragData.Albedo.rgb,ORI_VertexVarying.vWorldPos.xyz,fragData.N,fragData.V,fragData.Roughness,fragData.Metallic , light ) ;
|
|
78
|
+
}
|
|
79
|
+
default: {
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
fragData.LightChannel = specColor;
|
|
84
|
+
|
|
85
|
+
let sunLight = lightBuffer[0];
|
|
86
|
+
//***********lighting-PBR part*********
|
|
87
|
+
var F = FresnelSchlickRoughness(fragData.NoV, fragData.F0, fragData.Roughness);
|
|
88
|
+
var kS = F;
|
|
89
|
+
var kD = vec3(1.0) - kS;
|
|
90
|
+
kD = kD * (1.0 - fragData.Metallic);
|
|
91
|
+
let envIBL = materialUniform.envIntensity * approximateSpecularIBL( F , fragData.Roughness , fragData.R , fragData.NoV );
|
|
92
|
+
fragData.EnvColor = envIBL;
|
|
93
|
+
//***********indirect-specular part*********
|
|
94
|
+
|
|
95
|
+
var surfaceReduction = 1.0/(fragData.Roughness*fragData.Roughness+1.0);
|
|
96
|
+
var oneMinusReflectivity = oneMinusReflectivity(fragData.Metallic , materialUniform.materialF0.r );
|
|
97
|
+
var grazingTerm = clamp((1.0 - fragData.Roughness ) + (1.0 - oneMinusReflectivity),0.0,1.0);
|
|
98
|
+
var t = pow5(fragData.NoV);
|
|
99
|
+
var fresnelLerp = FresnelLerp(fragData.NoV,fragData.F0.rgb,vec3<f32>(grazingTerm));
|
|
100
|
+
var iblSpecularResult = surfaceReduction * fragData.EnvColor * fresnelLerp + envIBL;
|
|
101
|
+
iblSpecularResult *= max(sunLight.quadratic,0.05);
|
|
102
|
+
//***********indirect-specular part*********
|
|
103
|
+
|
|
104
|
+
//***********indirect-ambient part*********
|
|
105
|
+
var kdLast = (1.0 - fragData.F0.r) * (1.0 - fragData.Metallic);
|
|
106
|
+
var iblDiffuseResult = irradiance * 2.0 * kdLast * fragData.Albedo.rgb * (vec3(1.0) - kS);
|
|
107
|
+
//***********indirect-ambient part*********
|
|
108
|
+
var indirectResult = (iblSpecularResult + iblDiffuseResult) * fragData.Ao * max(sunLight.quadratic,0.05);
|
|
109
|
+
|
|
110
|
+
ORI_FragmentOutput.color = vec4<f32>(0.0);
|
|
111
|
+
|
|
112
|
+
#if USEGBUFFER
|
|
113
|
+
var normal_rgba8unorm = (ORI_VertexVarying.vWorldNormal + 1.0) * 0.5;
|
|
114
|
+
normal_rgba8unorm = clamp(normal_rgba8unorm, vec3<f32>(0.0), vec3<f32>(1.0));
|
|
115
|
+
ORI_FragmentOutput.worldNormal = vec4<f32>(normal_rgba8unorm,1.0);
|
|
116
|
+
ORI_FragmentOutput.material = vec4<f32>(1.0,fragData.Roughness,fragData.Metallic,1.0);
|
|
117
|
+
#endif
|
|
118
|
+
|
|
119
|
+
#if USE_WORLDPOS
|
|
120
|
+
ORI_FragmentOutput.worldPos = vec4<f32>(ORI_VertexVarying.vWorldPos.xyzw);
|
|
121
|
+
#endif
|
|
122
|
+
|
|
123
|
+
var color = specColor + indirectResult;
|
|
124
|
+
color += fragData.Emissive.xyz;
|
|
125
|
+
|
|
126
|
+
var clearCoatColor = vec3<f32>(0.0);
|
|
127
|
+
#if USE_CLEARCOAT
|
|
128
|
+
let clearCoatBaseColor = vec3<f32>(1.0) * materialUniform.baseColor.rgb;
|
|
129
|
+
let clearNormal = fragData.N;
|
|
130
|
+
let clearcoatRoughness = fragData.ClearcoatRoughness;
|
|
131
|
+
let att = sunLight.intensity;
|
|
132
|
+
let clearCoatLayer = ClearCoat_BRDF( color , materialUniform.clearcoatColor.rgb , materialUniform.ior , clearNormal , -sunLight.direction ,-fragData.V , materialUniform.clearcoatWeight , clearcoatRoughness , att );
|
|
133
|
+
color = vec3<f32>(clearCoatLayer.rgb/fragData.Albedo.a);
|
|
134
|
+
#endif
|
|
135
|
+
|
|
136
|
+
let retColor = (LinearToGammaSpace(color.rgb));
|
|
137
|
+
ORI_FragmentOutput.color = vec4<f32>( retColor ,fragData.Albedo.a);
|
|
138
|
+
}
|
|
139
|
+
`;
|