Skip to content

Addons: Support overview in WebGLRenderer and WebGPURenderer. #29295

@Mugen87

Description

@Mugen87

Description

This issue is intended for tracking which addons are already supported in WebGPURenderer.

Not all open tasks must be implemented. Certain addons might not be ported to WebGPURenderer because they are outdated (like the old BloomPass) or replaced with different APIs (like MaskPass). Such addons are marked with a ✖️ sign.

If someone wants to migrate a component, it's best to leave a comment so we can add the name to the "Assignee" column. In this way, we avoid the situation where more than one developer works at the same task.

Addon WebGLRenderer WebGPURenderer Assignee
animation/AnimationClipCreator.js -
animation/CCDIKSolver.js -
animation/MMDAnimationHelper.js -
animation/MMDPhysics.js -
capabilities/WebGL.js -
capabilities/WebGPU.js -
controls/ArcballControls.js -
controls/DragControls.js -
controls/FirstPersonControls.js -
controls/FlyControls.js -
controls/MapControls.js -
controls/OrbitControls.js -
controls/PointerLockControls.js -
controls/TrackballControls.js -
controls/TransformControls.js -
csm/CSM.js -
csm/CSMFrustum.js -
csm/CSMHelper.js -
csm/CSMShader.js -
curves/CurveExtras.js -
curves/NURBSCurve.js -
curves/NURBSSurface.js -
curves/NURBSUtils.js -
curves/NURBSVolume.js -
effects/AnaglyphEffect.js ✅ (as AnaglyphPassNode ) -
effects/AsciiEffect.js -
effects/OutlineEffect.js ✅ (as ToonOutlinePassNode ) -
effects/ParallaxBarrierEffect.js ✅ (as ParallaxBarrierPassNode ) -
effects/PeppersGhostEffect.js -
effects/StereoEffect.js ✅ (as StereoPassNode) -
environments/DebugEnvironment.js -
environments/RoomEnvironment.js -
exporters/DRACOExporter.js -
exporters/EXRExporter.js -
exporters/GLTFExporter.js -
exporters/KTX2Exporter.js -
exporters/MMDExporter.js -
exporters/OBJExporter.js -
exporters/PLYExporter.js -
exporters/STLExporter.js -
exporters/USDZExporter.js -
geometries/BoxLineGeometry.js -
geometries/ConvexGeometry.js -
geometries/DecalGeometry.js -
geometries/InstancedPointsGeometry.js -
geometries/ParametricGeometries.js -
geometries/ParametricGeometry.js -
geometries/RoundedBoxGeometry.js -
geometries/TeapotGeometry.js -
geometries/TextGeometry.js -
helpers/LightProbeHelper.js ✅ (as LightProbeHelperGPU) -
helpers/OctreeHelper.js -
helpers/PositionalAudioHelper.js -
helpers/RectAreaLightHelper.js -
helpers/TextureHelper.js ✅ (as TextureHelperGPU) -
helpers/VertexNormalsHelper.js -
helpers/VertexTangentsHelper.js -
helpers/ViewHelper.js -
interactive/HTMLMesh.js -
interactive/InteractiveGroup.js -
interactive/SelectionBox.js -
interactive/SelectionHelper.js -
lights/LightProbeGenerator.js -
lights/RectAreaLightTexturesLib.js -
lights/RectAreaLightUniformsLib.js -
lines/Lines.js ✅ (as webgpu/Lines2.js) -
lines/LineGeometry.js -
lines/LineMaterial.js ✅ (as Line2NodeMaterial) -
lines/LineSegments2.js ✅ (as webgpu/LineSegments2.js) -
lines/LineSegmentsGeometry.js -
lines/Wireframe.js ✅ (as webgpu/Wireframe.js) -
lines/WireframeGeometry2.js -
loaders/3DMLoader.js -
loaders/3MFLoader.js -
loaders/AMFLoader.js -
loaders/BVHLoader.js -
loaders/ColladaLoader.js -
loaders/DDSLoader.js -
loaders/DRACOLoader.js -
loaders/EXRLoader.js -
loaders/FBXLoader.js -
loaders/FontLoader.js -
loaders/GCodeLoader.js -
loaders/GLTFLoader.js -
loaders/HDRCubeTextureLoader.js -
loaders/IESLoader.js -
loaders/KMZLoader.js -
loaders/KTX2Loader.js -
loaders/KTXLoader.js -
loaders/LDrawLoader.js -
loaders/LottieLoader.js -
loaders/LUT3dlLoader.js -
loaders/LUTCubeLoader.js -
loaders/LUTImageLoader.js -
loaders/LWOLoader.js -
loaders/MaterialXLoader.js -
loaders/MD2Loader.js -
loaders/MDDLoader.js -
loaders/MTLLoader.js -
loaders/NRRDLoader.js -
loaders/OBJLoader.js -
loaders/PCDLoader.js -
loaders/PDBLoader.js -
loaders/PLYLoader.js -
loaders/PVRLoader.js -
loaders/RGBELoader.js -
loaders/RGBMLoader.js -
loaders/STLLoader.js -
loaders/SVGLoader.js -
loaders/TDSLoader.js -
loaders/TGALoader.js -
loaders/TIFFLoader.js -
loaders/TTFLoader.js -
loaders/UltraHDRLoader.js -
loaders/USDZLoader.js -
loaders/VOXLoader.js -
loaders/VRMLLoader.js -
loaders/VTKLoader.js -
loaders/XYZLoader.js -
materials/MeshGouraudMaterial.js ✖️ (won't be ported) -
materials/MeshPostProcessingMaterial.js ✖️ (won't be ported) -
math/Capsule.js -
math/ColorConverter.js -
math/ConvexHull.js -
math/ImprovedNoise.js -
math/Lut.js -
math/MeshSurfaceSampler.js -
math/OBB.js -
math/Octree.js -
math/SimplexNoise.js -
misc/ConvexObjectBreaker.js -
misc/GPUComputationRenderer.js ✖️ (replaced with compute shaders) -
misc/Gyroscope.js -
misc/MD2Character.js -
misc/MD2CharacterComplex.js -
misc/MorphAnimMesh.js -
misc/MorphBlendMesh.js -
misc/ProgressiveLightMap.js -
misc/RollerCoaster.js -
misc/Timer.js -
misc/TubePainter.js -
misc/Volume.js -
misc/VolumeSlice.js -
modifiers/CurveModifier.js ✅ (as CurveModifierGPU) -
modifiers/EdgeSplitModifier.js -
modifiers/SimplifyModifier.js -
modifiers/TessellateModifier.js -
objects/GroundedSkybox.js -
objects/Lensflare.js ✅ (as LensflareMesh) -
objects/MarchingCubes.js -
objects/Reflector.js ✅ (as ReflectorNode) -
objects/ReflectorForSSRPass.js ✖️ (use ReflectorNode instead) -
objects/Refractor.js ✅ (as viewportSharedTexture()) -
objects/ShadowMesh.js -
objects/Sky.js ✅ (as objects/SkyMesh) -
objects/Water.js ✅ (as objects/WaterMesh) -
objects/Water2.js ✅ (as objects/Water2Mesh) -
physics/AmmoPhysics.js -
physics/JoltPhysics.js -
physics/RapierPhysics.js -
postprocessing/AfterimagePass.js ✅ (as AfterImageNode) -
postprocessing/BloomPass.js ✖️ (use BloomNode instead) -
postprocessing/BokehPass.js ✅ (as DepthOfFieldNode) -
postprocessing/ClearPass.js ✖️ (won't be ported) -
postprocessing/CubeTexturePass.js ✖️ (won't be ported) -
postprocessing/DotScreenPass.js ✅ (as DotScreenNode) -
postprocessing/EffectComposer.js ✅ (as PostProcessing) -
postprocessing/FilmPass.js ✅ (as FilmNode) -
postprocessing/GlitchPass.js ✖️ (won't be ported) -
postprocessing/GTAOPass.js ✅ (as GTAONode) -
postprocessing/HalftonePass.js ✖️ (won't be ported) -
postprocessing/LUTPass.js ✅ (as Lut3DNode) -
postprocessing/MaskPass.js ✖️ (won't be ported) -
postprocessing/OutlinePass.js ✅ (as OutlineNode) -
postprocessing/OutputPass.js ✅ (as RenderOutputNode) -
postprocessing/Pass.js ✅ (as TempNode or TextureNode) -
postprocessing/RenderPass.js ✅ (as PassNode) -
postprocessing/RenderPixelatedPass.js ✅ (as PixelationNode) -
postprocessing/SAOPass.js ✖️ (use GTAONode instead) -
postprocessing/SavePass.js ✖️ (won't be ported) -
postprocessing/ShaderPass.js ✖️ (won't be ported) -
postprocessing/SMAAPass.js ✅ (as SMAANode) -
postprocessing/SSAARenderPass.js ✅ (as SSAAPassNode) -
postprocessing/SSAOPass.js ✖️ (use GTAONode instead) -
postprocessing/SSRPass.js ✅ (as SSRNode) -
postprocessing/TAARenderPass.js ✅ (as TRAAPassNode) -
postprocessing/TexturePass.js ✅ (as TextureNode) -
postprocessing/UnrealBloomPass.js ✅ (as BloomNode) -
renderers/CSS2DRenderer.js -
renderers/CSS3DRenderer.js -
renderers/Projector.js -
renderers/SVGRenderer.js -
shaders ✖️ (only dependencies are ported) -
textures/FlakesTexture.js -
utils/BufferGeometryUtils.js -
utils/GeometryCompressionUtils.js -
utils/GeometryUtils.js -
utils/LDrawUtils.js -
utils/SceneUtils.js -
utils/ShadowMapViewer.js ✅ (as ShadowMapViewerGPU) -
utils/SkeletonUtils.js -
utils/SortUtils.js -
utils/UVsDebug.js -
utils/WebGLTextureUtils.js ✅ (as WebGPUTextureUtils) -
utils/WorkerPool.js -
webxr/ARButton.js -
webxr/OculusHandModel.js -
webxr/OculusHandPointerModel.js -
webxr/Text2D.js -
webxr/VRButton.js -
webxr/XRButton.js -
webxr/XRControllerModelFactory.js -
webxr/XREstimatedLight.js ❌ (dependency to WebGLRenderer) -
webxr/XRHandMeshModel.js -
webxr/XRHandModelFactory.js -
webxr/XRHandPrimitiveModel.js -
webxr/XRPlanes.js -

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions