https://github.com/mrdoob/three.js/wiki/Migration-Guide#183--184
https://github.com/mrdoob/three.js/milestone/97?closed=1
- Global
- Update @rollup/plugin-terser to 1.0.0. 456f169 (@mrdoob)
- Update ESLint to ECMA 2022. #33128 (@PoseidonEnergy)
- Added new DevTools. #30870 (@mrdoob, @Darkensses, @cesmoak, @claude)
- AnimationAction
- AudioLoader
- BatchedMesh
- InstancedMesh, BatchedMesh: Fix getColorAt throwing an error when colors have not been set. #33079 (@gkjohnson)
- Remove deprecated instancing render paths. #33234 (@Mugen87)
- CatmullRomCurve3
- Geometry corruption on 2-point curves. #33270 (@Necro-Rohan)
- CubeRenderTarget
- Restore
generateMipmapscorrectly. #33069 (@PoseidonEnergy)
- Restore
- DataTextureLoader
- Fix log regression. #33148 (@Mugen87)
- Move
returnin catch block to correct position. #33243 (@Om-Mishra09)
- GLSLNodeBuilder
- ImageBitmapLoader
- Inspector
- InstancedMesh
- add consistent return values to functions. #33059 (@gkjohnson)
- LightProbeGrid
- Line2NodeMaterial
- Fix clone() losing worldUnits, dashed, and linewidth. #33236 (@cyphercodes)
- Line3
- Handle degenerate line in
closestPointToPointParameter(). #33264 (@Necro-Rohan)
- Handle degenerate line in
- Loaders
- MaterialLoader
- Simplified bool check. #33066 (@PoseidonEnergy)
- Math
- Make use of Static initialization blocks. #33140 (@PoseidonEnergy)
- MeshPhysicalMaterial
- NodeManager
- NodeMaterialObserver
- NodeObjectLoader
- NodeUtils
- Replace
instanceof ArraywithArray.isArray(). #33262 (@Mridul012)
- Replace
- Object3D
- Correctly copy
pivot. #33163 (@PoseidonEnergy, @Mugen87)
- Correctly copy
- ObjectLoader
- Fix log regression. #33240 (@Om-Mishra09)
- PassNode
- Plane
- Renderer
- Renderers
- RenderOutputNode
- RenderPipeline
- RenderTarget
- Preserve multiview in copy(). #33285 (@Kundan-CR7)
- Shaders
- Clean up. #33133 (@WestLangley)
- ShadowNode
- Add support for
renderer.highPrecision. #33246 (@shotamatsuda, @sunag)
- Add support for
- SkinnedMesh
- Update "applyBoneTransform" to optionally take Vector4, support direction or position transformation. #33091 (@gkjohnson)
- Source
- Fix
getSize()forVideoFrame. #33131 (@PoseidonEnergy)
- Fix
- Texture
- Remove default setter parameter. #33129 (@PoseidonEnergy)
- Triangle
- Simpler bool check in
isFrontFacing(). #33071 (@PoseidonEnergy)
- Simpler bool check in
- TSL
- Fix billboarding examples in TSL.md. #33056 (@jwheare)
- Fix array texture with no
.depth()defined breaks shader compilation. #33096 (@sunag) - Improves compilation performance by 3.0x. #33120 (@sunag)
- Fix two issues in
StorageTextureNode. #33167 (@PoseidonEnergy) - add
hyperbolicmath nodes. #33233 (@thelazylamaGit) - Make global context available within compute nodes. #33231 (@shotamatsuda, @sunag)
- Add
globalandlocalscope. #33302 (@sunag) - Add OnFrameUpdate and OnBeforeFrameUpdate. #33356 (@shotamatsuda)
- UniformsGroup
- Fix incorrect index in Vector4 dirty check. #33276 (@Mridul012)
- UniformUtils
- WebGLOutput
- WebGLRenderer
- Use working color space for render targets. #33036 (@Mugen87)
- Add support for packed normal maps. #33055 (@castano)
- Fix feedback loop regression. #33063 (@Mugen87)
- Fix envMap and background rotation. #33077 (@WestLangley)
- Fix active texture setting in
copyTextureToTexture(). #33153 (@geekuillaume, @Mugen87) - Add NodeMaterial compatibility layer. #32851 (@gkjohnson, @sunag)
- Improve reverse depth buffer logging. #33176 (@Mugen87)
- Save/restore textureUnits on render state stack. #33217 (@SSopin)
- Set depth mask when clearing depth. #33241 (@mlavik1)
- Implement normal bias fallback. #33391 (@Mugen87)
- WebGLTextures
- WebGLTimestampQueryPool
- Fixed warning message. #33068 (@PoseidonEnergy)
- WebGPUBackend
- WebGPURenderer
- Make
compileAsync()truly non-blocking. #32984 (@RenaudRohlinger, @sunag) - Fix texture compare fallback for shadows. #33050 (@Mugen87)
- Honor layerUpdates for array textures. #33072 (@ahaensler)
- Improve compatibility test for reversed depth buffer. #33086 (@Mugen87)
- Make device capabilities handling more consistent. #33094 (@Mugen87)
- Add individual dispose for
CanvasTargetcaching. #33106 (@sunag) - Remove inline functions in rendering methods. #33108 (@PoseidonEnergy, @Mugen87)
- Use node events to update the binding groups. #33047 (@sunag)
- Fix WebXR sampling array-texture. #33132 (@sunag)
- Simplification of the frame buffer cache for WebXR layers. #33154 (@sunag)
- Support unfilterable float32 StorageTextures. #33155 (@sunag)
- Use
depth32floatinstead ofdepth24pluswhen usingreversedDepthBuffer. #33184 (@PoseidonEnergy, @Mugen87) - Ensure render targets have consistent default depth values. #33191 (@Mugen87)
- Add compute shader bounds check. #33186 (@marcofugaro, @sunag)
- Refactor env map rotation. #33232 (@Mugen87)
- Introduce Quad cache per RendeTarget texture. #33228 (@sunag)
- Implement
WEBGL_multi_drawfallback. #33238 (@Mugen87) - Fix texture issues. #33296 (@Mugen87)
- Clean up. #33305 (@Mugen87)
- Introduce
ReadbackBufferand reusegetArrayBufferAsync()buffers. #33300 (@sunag) - Fix WebGPU render bundle reuse across render contexts. #33335 (@RenaudRohlinger)
- Adjust getArrayBufferAsync behavior, add support for partial readback. #33322 (@gkjohnson, @sunag)
- Make
- WebGPUTextureUtils
- WebXRController
- WGSLNodeBuilder
Docs
- Using the correct class type for
NodeManager. #33067 (@PoseidonEnergy) - Fix typo in JSDoc. #33130 (@PoseidonEnergy)
- Improve JSDoc. #33213 (@Mugen87)
- Fix module links in search. #33255 (@Mugen87)
- Fix typos in TessellateModifier and LineMaterial. #33272 (@Jadu07)
- Update incorrect documentation for setMatrixAt. #33310 (@nopeless)
- Improve JSDoc. 37a0863 (@Mugen87)
Manual
- Translate manual/zh/game.html to Chinese. #33123 (@DDDDD12138)
- Remove reference to Matrix4.setRotationFromQuaternion(). #33320 (@Kodub)
Examples
- Add sky to scene. #33037 (@Mugen87)
- Fix colors in webgpu_custom_fog. #33057 (@Methuselah96)
- Fix floor threshold in
games_fps. #33053 (@Mugen87) - Improve watch demo. #33089 (@lo-th, @Mugen87)
- Rename webxr_xr_sculpt to webxr_xr_marchingcubes. 3a0e75b (@mrdoob)
- Improve
MapControlsdemo. #33171 (@Mugen87) - Add SSGI Ball Pool demo. #33258 (@mrdoob, @claude)
- Fix links missing target="_blank" in webgl_loader_3dtiles example. 11e6acb (@mrdoob)
- Add volumetric clouds and atmosphere to webgl_loader_3dtiles. #33292 (@mrdoob, @claude)
- fix ArcherRi01 model ext name. #33324 (@linbingquan)
- Added HTMLTexture. #31233 (@mrdoob, @claude)
- Update versions for external libraries. #33362 (@gkjohnson)
- Autoplay sintel video, remove Play overlay. f3fa844 (@mrdoob)
- Remove unused memorial.png texture. 6814f96 (@mrdoob)
- Add banking to roller coaster track and camera. 354fc4e (@mrdoob)
- Fix lightprobes complex scene issues. 4cf573d (@mrdoob)
- Improved HTMLTexture support. #33400 (@mrdoob, @claude)
Addons
-
Addons
-
ArcballControls
-
Bayer
- Bayer node: fix web worker usage. #33279 (@pavel-mazhuga, @Mugen87)
-
BufferGeometryUtils
- Fix two bugs. #33338 (@nameearly)
-
CCDIKSolver
-
CSMShadowNode
- Fix error when disposed multiple times. #33202 (@shotamatsuda)
-
ChromaticAberrationNode
-
ColladaLoader
-
ColorUtils
- Add setKelvin(). #33381 (@Nedunchezhiyan-M, @Mugen87)
-
EXRLoader
-
FBXLoader
- Add skinning fixes. #33316 (@Mugen87)
- Correct bind matrix. #33317 (@Mugen87)
- Fix
penumbracomputation. #33321 (@Mugen87) - Fix rotation animations. #33323 (@Mugen87)
- Fix opacity fallback. #33325 (@Mugen87)
- Guard against orphaned animation curve nodes. #33327 (@digitalbreed)
- Add coordinate system correction for Z-up. #33332 (@Mugen87)
- Fix morph deltas. #33350 (@Mugen87)
-
FSR1Node
-
FirstPersonControls
-
GLSLDecoder
- Replace deprecated
substr()withslice(). #33260 (@Mridul012)
- Replace deprecated
-
GLTFExporter
- Add
EXT_texture_webpsupport. #33117 (@BorisKourt) - Make attribute prefix more robust. #33357 (@Mugen87)
- Add
-
GLTFLoader
-
GPUComputationRenderer
- Call
dispose()on variable's material. #33318 (@madisonrickert, @claude)
- Call
-
GodraysNode
-
HDRLoader
-
Inspector
- Use fixed mini-panel. #33070 (@sunag)
- Introduce
forceWebGL. #33074 (@sunag) - Introduce
Timeline( Commands Recorder ). #33078 (@sunag) - Add
Capture Stack TraceforSettings. #33122 (@sunag) - Added string type support to parameters. #33156 (@sunag)
- Introduce TSL Graph Addons. #33165 (@sunag)
- Add export functionality to Inspector Timeline tab and enhance call detail logging. #33192 (@Makio64, @sunag)
- Added
Extensionsupport and revisions. #33200 (@sunag) - Improvements. #33230 (@sunag)
- Fix
Tab.isActive. 33feff9 (@sunag) - Replace deprecated
substr()withslice(). #33267 (@Mridul012)
-
KTX2Loader
- Support RGBA 16-bit unsigned normalized formats. #33245 (@donmccurdy, @Mugen87)
-
LDrawLoader
-
OutlineNode
-
Reflector
-
SSGINode
-
SVGLoader
- Fix round stroke joins and caps when
arcDivisions = 1. #33256 (@georgpukk, @Mugen87)
- Fix round stroke joins and caps when
-
SVGRenderer
-
Sky
-
TAAUNode
-
TRAANode
- Improve docs. d2d9d40 (@Mugen87)
- Add velocity node source. #32274 (@shotamatsuda)
- Add support for reversed/logarithmic depth buffers and orthograhic cameras. #33364 (@shotamatsuda)
-
TSL
-
TransformControls
-
USDCParser
-
USDComposer
- recurse mesh children and skip GeomSubset nodes. db5f5e5 (@mrdoob)
- avoid global displayOpacity on subset materials. 7f89d9b (@mrdoob)
- add Camera prim parsing. 8d9c591 (@mrdoob)
- Add light support. a158b85 (@mrdoob)
- Fix reference parsing. #33294 (@Mugen87)
- Fix uv data for multi-material meshes. #33297 (@Mugen87)
-
USDLoader
- Fix flat shading on meshes without normals. #33081 (@mrdoob, @claude)
- Add support for geometric primitives (Cube, Sphere, Cylinder, Cone, Capsule). #33082 (@mrdoob, @claude)
- Add support for MaterialX UsdPreviewSurface materials. #33083 (@mrdoob, @claude)
- Add metersPerUnit support. #33084 (@mrdoob, @claude)
- Fix skeleton skinning distortion. #33085 (@mrdoob, @claude)
-
VTKLoader
-
WebGPURenderer
- Introduce Dynamic Lights. #33042 (@RenaudRohlinger, @sunag)
-
WebXR
- Added model caching to XRHandModelFactory. #33252 (@NssGourav, @Mugen87)
-
meshopt_decoder.module
Editor
- add deterministic dropped-file finder for URL resolution. 5213386 (@mrdoob)
- Improve animation panel. #33110 (@Mugen87)
- Add
TextGeometry. #33253 (@Mugen87)
Tests
- Fixes framebuffer caching with multiple references of different sizes. #32690 (@arodic)
- Replace SwiftShader with software Dawn (Lavapipe). #33346 (@mrdoob, @claude)
- Tighten pixel diff tolerance and refresh screenshots. #33389 (@mrdoob, @claude)
- Added webgpu_compute_sort_bitonic to exceptionList. 4a48e81 (@mrdoob)