New
r177
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r176--r177 https://github.com/mrdoob/three.js/milestone/90?closed=1
- Global
- Increase version of Object/Scene format. #31096 (@repalash)
- Fix exports in
src/three.tsl.js. #31109 (@ycw) - Add DeepWiki link. #31182, c421357d4384e99a6e5500665b72a58a547cf8a8 (@lumotai, @mrdoob)
- AudioListener
- Set the proper up-direction. #31054 (@WestLangley)
- Box3
- Add
toJSON()andfromJSON()methods. #31028 (@gkjohnson)
- Add
- ColorManagement
- Improve Nomenclature. #31152 (@WestLangley)
- HemisphereLightNode
- Change
normalViewtonormalWorld. #31074 (@vitro-mod)
- Change
- ImageBitmapLoader
- Make error handling more robust. #31088 (@Mugen87)
- LightsNode
- Fix
castShadowregression. #31106 (@Mugen87)
- Fix
- MaterialNode
- Fix
dashOffsetwithLineDashedMaterial. #31008 (@Mugen87)
- Fix
- Mesh
- Add
countproperty. #31091 (@sunag)
- Add
- NodeMaterial
- Cleanup
alphaTest. #31147 (@sunag) - Introduce
maskNodeand improveshapeCircle(). #31127 (@sunag) - Execute
setupVertex()ifvertexNodeis defined. #31136 (@sunag)
- Cleanup
- NodeMaterialObserver
- Fix missing intensity uniform updates. #31120 (@Mugen87)
- PMREMGenerator
- Fix usage with
PMREMNode. #31001 (@Mugen87)
- Fix usage with
- Ray
- Handle empty spheres in
intersectsSphere(). #31200 (@Mugen87, @jmeurice)
- Handle empty spheres in
- ShadowMaskModel
- Fix usage with non shadow casting light. #31081 (@Mugen87)
- ShadowNode
- Fix VSM with point lights. #31103 (@Mugen87)
- Clean up. #31104 (@Mugen87)
- Sphere
- Add
toJSON()andfromJSON()methods. #31028 (@gkjohnson)
- Add
- SpotLightNode
- Add custom attenuation using
spotLight.attenuationNode. #31013 (@sunag)
- Add custom attenuation using
- SpotLightShadow
- Introduce
aspectproperty. #31020 (@sunag)
- Introduce
- Sprite
- Add
countproperty. #31091 (@sunag)
- Add
- StorageBufferNode
- Add
getMemberType(). #31139 (@HongchengZhao)
- Add
- Texture
- Add
setValues(). #31087 (@CodyJasonBennett) - Texture: Introduce width, height, depth. #31025 (@sunag)
- Add
updateRanges. #30998 (@CodyJasonBennett)
- Add
- TSL
- Improve build stages #31156 (@sunag)
- Ensure memory alignment for
struct(). #31151 (@sunag) - Fix
mat2boundary size. #31162 (@sunag) - Ensure 4 byte alignment for
instancedArray()andattributeArray(). #31146 (@sunag) - Add
premult()andunpremult(). #31114 (@sunag) - Fix
reflector()clear texture and stop update if bounce isfalse. #31110 (@sunag) - Add
hashBlur()options{repeats,mask,premultipliedAlpha}. #31115 (@sunag) - Fix
getBitangent(). #31059 (@Mugen87) - Fix
lightShadowMatrix()ifrenderer.shadowMap.enabledisfalse. #31024 (@sunag) - Fix
.toVarying()analyze for optimization. #31090 (@sunag) - Fix auto-cache if using multiple conditionals. #31076 (@sunag)
- Introduce namespace. #31168 (@sunag)
- Fix object-as-parameter checking for
Fn(). #31176 (@sunag) - Introduce
uniformTexture()anduniformCubeTexture(). #31190 (@sunag) - Use multi argument versions of
min()andmax(). #31196 (@kristiker)
- WebGPURenderer
- Honor
Texture.premultiplyAlphain WebGPU backend. #31157 (@Mugen87) - Fix generate mipmaps when using
copyFramebufferToTexture()in WebGPU backend. #31163 (@sunag) - Apply color management changes from #26644. #31142 (@Mugen87)
- Fix runtime errors introduced by texture array refactor. #31108, #31099 (@cabanier)
- Rename
XRResetState()to_resetXRState(). #31105 (@cabanier) - Introduce
ProjectorLight. #31022 (@sunag) - Array-Based RenderTarget Refactor. #30959 (@RenaudRohlinger)
- Cache pipeline per render/compute pass. #31066 (@Mugen87)
- Optimize WebXR render path. #31134, #31189, #31198 (@cabanier)
- Fix blend factor nomenclature. #31188 (@WestLangley)
- Check if OffscreenCanvas is in window before accessing. #31194 (@pavel-mazhuga)
- Honor
- WebGLRenderer
- Add MRT support to
readRenderTargetPixels(). #31204 (@Mugen87, @repalash)
- Add MRT support to
- WebGLTextureUtils
- Clean up. #31195 (@linbingquan)
- WGSLNodeBuilder
- Fix use of sampler for vertex stage. #31052 (@sunag)
- XRManager
- Fix layer color correction. #31124 (@cabanier)
Docs
- Clean up. #31046 (@Mugen87)
- Improve
LoaderUtilspage. #31082 (@ycw) - Improve
SkeletonHelperJSDoc. #31113 (@upisfree) - Improve
XRManagerJSDoc. #31101 (@Mugen87)
Manual
- Fix primitives page. #30997 (@Mugen87)
Examples
- Clean up. #31130, #31138, #31030, #31107 (@WestLangley, @linbingquan, @ycw)
- Add
webgpu_compute_particles_fluid. #31148, #31159 (@holtsetio) - Add
webgpu_compute_cloth. #31123 (@holtsetio) - Improve
noise.png. #31137 (@Mugen87) - Improve
webgpu_compute_particles. #31092 (@mrdoob) - Add
webgpu_reflection_blurred. #31116, #31118 (@sunag) - Add textured assets to
webgl_loader_fbx. #31117 (@tatsuya-ogawa) - Integrate
lookAt()into therotateTowards()demo. #31063 (@Mugen87) - Fix memory leak in FBX demo. #31068 (@Mugen87)
- Make dynamic instancing demo more interesting. #31058 (@Mugen87)
- WebGPU Compute Water Adjustment. #30985, #31011 (@cmhhelgeson, @sunag)
- Update shadow opacity in
webgpu_shadowmap_opacity. #30984 (@sunag) - Cleanup
webgl_reverse_depth_buffer. #30989 (@CodyJasonBennett) - Fix shadows in physics instancing demos. #30988 (@Mugen87)
- Fix
webgpu_waterGUI. #31014 (@sunag) - Add resize event listener for
physics_rapier_instancing. #31012 (@linbingquan) - Clean up XR examples browser notices. #31053 (@mkeblx)
- Make point lights demo more interesting. #31040 (@Mugen87)
- Remove
webgl_geometry_dynamic. #31047 (@Mugen87) - Make tone mapping demos more interesting. #31045 (@Mugen87)
- Make layers example a bit more interesting. #31036 (@Mugen87)
- Add GUI to normal and bump map demo. #31077 (@Mugen87)
- Fix memory leak in SVG demo. #31170 (@Mugen87)
- Enable MSAA in AO demo. #31192 (@Mugen87)
- Refactored
webxr_vr_haptics. 1859806c1f861870410701014e366659ed307109 (@mrdoob)
Addons
-
AfterimagePass
- Add
dampaccessor. #31035 (@neilrackett)
- Add
-
ArcballControls
- Fix state data for reset. #31184 (@Mugen87)
-
CSMShadowNode
- Fix toggle of castShadow. #31186 (@Mugen87)
-
FBXLoader
- Improve error handling. #31017 (@Mugen87)
- Use
getHandler()for custom texture loaders. #31032 (@tatsuya-ogawa) - Add
webpMIME type. #31098 (@Altrozero)
-
FXAAPass
- Add pass class for FXAA post processing shader. #31044 (@neilrackett)
-
GLTFExporter
- Push nodes parent-first instead of child-first. #31125 (@aaronfranke)
-
GLTFLoader
- Clone node associations. #31051 (@nkrajina)
-
HTMLMesh
- Add support for input of type text and number in VR. #31160 (@vincentfretin)
-
KTX2Loader
- Support ETC2, BCn, and ASTC 4x4 sRGB. #31155 (@donmccurdy)
-
LDrawLoader
- Don't clear already-loaded materials onload. #31150 (@Floppy)
- Improve docs. #31153 (@Mugen87)
-
LineMaterial
- Fix clipping planes. #31144 (@rtortajada)
-
Octree
- Improve configurability. #31097 (@Mugen87)
-
PCDLoader
- Parse header without
TextDecoder. #31069 (@F-loat) - Implement data type dependent binary parsing. #31061 (@F-loat)
- Parse header without
-
PeppersGhostEffect
- Remove addon. #31037 (@Mugen87)
-
SkyMesh
- Improve varyings declaration. #31133 (@sunag)
-
USDZExporter
- Fix object indentation level. #31126 (@mkeblx)
- Fix JSDoc to match default value. #31119 (@mkeblx)
Editor
- Fix minor bugs. #31050 (@Mugen87)