r183
https://github.com/mrdoob/three.js/wiki/Migration-Guide#182--183 https://github.com/mrdoob/three.js/milestone/96?closed=1
- Global
- Remove deprecated code. #32569 (@Mugen87)
- Replace eslint-plugin-import with eslint-plugin-import-x. #32651 (@mrdoob)
- Removed eslint-plugin-import-x. #32653 (@mrdoob)
- Bump lodash from 4.17.21 to 4.17.23. #32814 (@dependabot)
- remove jshint remnants. #32885 (@ycw)
- Update package.json. 4c280ff9c2599baba7afe262e434a1449d6f67d4 (@Mugen87)
- Update package.json. 3332b33bea214d2033de83272ec56bd08dca4a00 (@Mugen87)
- Animation
- Add BezierInterpolant. #32829 (@mrdoob, @claude)
- AnimationAction
- Fixed typos in /src folder. #32629 (@mrdoob)
- AnimationMixer
- DEVTOOLS access to AnimationMixer + Loaders. #32616 (@marwie)
- BatchedMesh
- correctly set the nextIndexStart, nextVertexStart. #32744 (@gkjohnson)
- Enable per-instance opacity. #32725 (@vanruesc, @gkjohnson)
- Add support for wireframe materials. #32948 (@gkjohnson)
- BindGroup
- Remove
bindingsReference. #32910 (@Mugen87)
- Remove
- Cache
- Don't cache Blobs. #32989 (@Mugen87)
- Camera
- Exclude scale from view matrix. #32805 (@Mugen87)
- Clock
- Deprecated module. #32798 (@Mugen87)
- Core
- Add
ReversedDepthFuncsdictionary. #32983 (@Mugen87)
- Add
- GLSLNodeBuilder
- Fix
CubeDepthTexturesampler. #32857 (@Mugen87) - Fix array texture layer support for filtered sampling. #33008 (@RenaudRohlinger)
- Fix
- Helpers
- Clarify the usage of
update(). #32717 (@Mugen87)
- Clarify the usage of
- InstanceNode
- Support velocity. #32586 (@Mugen87)
- Fix UBO size and attribute update. #32615 (@Mugen87)
- Lighting
- Refactor camera usage. #32557 (@sunag)
- LightShadow
- Introduce
biasNode. #32811 (@Mugen87)
- Introduce
- Line2NodeMaterial
- Avoid performance degradation with
viewportSharedTexture(). #32639 (@Mugen87, @sunag) - Rename
useColorproperty tovertexColors. #32670 (@sunag)
- Avoid performance degradation with
- Line3
- Fix closest point in
distanceSqToLine3(). #32878 (@Mugen87)
- Fix closest point in
- Matrix4
- Cache determinant result in decompose(). #32658 (@mrdoob, @microsoftcopilot)
- Optimize invert() calculation. #32657 (@mrdoob)
- MeshLambertMaterial
- Add support for scene.environment IBL. #32791 (@mrdoob, @claude)
- MeshPhongMaterial
- Add support for scene.environment IBL. #32795 (@mrdoob, @claude)
- MeshPhysicalMaterial
- Added clearcoat support for rect area lights. #32809 (@TobiasNoell)
- MeshPhysicalNodeMaterial
- Fix missing iorNode in MeshPhysicalNodeMaterial copy method. #32821 (@TobiasNoell)
- NodeBuilder
- Fix shared group detection. #32913 (@Mugen87)
- Fix update nodes sequence. #32991 (@sunag)
- NodeBuilders
- Unifies uniform groups of different shader stages. #32534 (@sunag)
- NodeMaterial
- Add
maskShadowNode. #32598 (@sunag) - Remove
shadowPositionNodefallback to reduce CPU load. #32699 (@Mugen87)
- Add
- NodeMaterialObeserver
- Fix detection of replaced attribute/index. #32933 (@Mugen87)
- Nodes
- Update exports. #32783 (@Mugen87)
- Fix PMREM cache. #32941 (@Mugen87)
- Object3D
- Document
static, add support incopy()and JSON. #32679 (@Mugen87)
- Document
- ObjectLoader
- Wrap
JSON.parse()in try/catch for consistent error handling. #32947 (@glowsenior)
- Wrap
- Playground
- Archived playground. #32771 (@mrdoob)
- PMREM
- Simplify GGX VNDF importance sampling. #32737 (@Mugen87)
- RenderContext
- Refactor context key. #32546 (@Mugen87)
- Renderer
- Rename
shadowMap.colortoshadowMap.colored. #32608 (@Mugen87) - Rename
shadowMap.colored->shadowMap.transmitted. #32611 (@sunag) - Shadow map improvements. #32705 (@Mugen87)
- Rename
- RenderObject
- Fix ID assignment bug. #32700 (@Mugen87)
- Update
bundlereference at correct point. #32901 (@Mugen87)
- RenderTarget
- minor formatting. #32988 (@epreston)
- ShadowFilterNode
- Fix TSL warning in
VSMShadowFilter. #32836 (@Mugen87)
- Fix TSL warning in
- ShadowMaterial
- Respect "premultiplied alpha". #32550 (@gkjohnson)
- SkinningNode
- Fix tangent transformation. #32718 (@Mugen87)
- SpriteSheetUVNode
- Transform to TSL function and fix
countNodeaccess. #32693 (@gayanMatch)
- Transform to TSL function and fix
- StorageTextureNode
- Add TSL read/write support. #32734 (@NateSmyth)
- Test
- Remove servez reference. adfc78595273c614f1e0557131644924a039c322 (@mrdoob)
- Texture3DNode
- Remove outdated
setupUV(). #32630 (@Mugen87)
- Remove outdated
- TextureNode
- Use
compareNodefor Android ifcompareStepNodeis not compatible. #32956 (@sunag)
- Use
- TSL
- Introduce
clipSpace. #32594 (@sunag) - Introduce
TSL.md(TSL Spec). #32601 (@sunag) - Remove exports for removed TSL methods. #32635 (@Methuselah96)
- use raw data for
DebugNodecallback. #32638 (@linbingquan) - Add
exponentialHeightFogFactor(). #32659 (@Mugen87) - Check if the stack has a valid output. #32669 (@sunag)
- Fix
positionViewsub-build. #32691 (@sunag) - Revert
positionWorldre-computation. #32710 (@sunag) - Fixing invalid GLSL using nested structures. #32724 (@sunag)
- Move
SceneNodeto TSL functions. #32838 (@sunag) - Support switching
StorageBufferAttributewhen usingstorage(). #32847 (@sunag) - Force flat shading for geometries without normals for
normal*nodes. #32848 (@sunag) - Avoid side effect of
getTextureLevel()in normals. #32877 (@Mugen87) - Remove
scriptablenode. #32925 (@sunag) - Introduce
StackTrace. #32914 (@sunag) - Add
RenderPipelinefor TSL Spec. #32928 (@sunag) - Add
retroPassand example. #32930 (@sunag) - Remove ScriptableNodeResources export. #32945 (@Methuselah96)
- Cache
camera*uniform nodes. #32938 (@sunag) - Fix
instancedArray()bufferCountproperty. #32977 (@sunag)
- Introduce
- UniformGroups
- Partially updates. #32558 (@sunag)
- UniformsGroup
- Add range cache and fix clear old update ranges. #32561 (@sunag)
- ViewportDepthNode
- Support reversed depth in viewZ functions. #33001 (@Mugen87)
- ViewportTextureNode
- Change update type to
RENDER. #32664 (@Mugen87)
- Change update type to
- WebGLRenderer
- Allow InstancedMesh provide a unique ID for WebGLBindingStates. #32556 (@OndrejSpanel)
- Consider skinning / instancing when sorting objects. #28125 (@OndrejSpanel)
- Fix shadow map uniform management. #32590 (@Mugen87)
- Fix
PCFSoftShadowMapcheck. #32593 (@Mugen87) - Ensure readback checks work on correct attachment state. #32506 (@andredsm)
- Fix pointlight shadows with reversed depth buffer. #32749 (@Mugen87)
- Fix remaining shadow issues with reversed depth. #32751 (@Mugen87)
- Fix shadow bias with reversed depth buffer. #32770 (@Mugen87)
- Unify cubemaps and cubeuvmaps into WebGLEnvironments. #32792 (@mrdoob, @claude)
- Force flat shading for geometries without normals. #32831 (@mrdoob, @claude)
- Only clear when bit mask is set. #33010 (@Philipp-M)
- WebGLShadowMap
- Fix wrong camera state. #32777 (@Mugen87)
- WebGLState
- Fix polygon offset with reversed depth buffer. #32832 (@Mugen87)
- WebGPURenderer
- Fix
compileAsync()with target scenes. #32530 (@Mugen87) - Prevent translation of skybox. #32537 (@Mugen87)
- Prevent undefined GPUShaderStage. #32539 (@verekia)
- Fix shadow comparison on Adreno GPUs. #32548 (@sunag)
- Introduce
shadowMap.color. #32596 (@sunag) - Unify uniformGroup bindings across shader stages. #32602 (@sunag)
- Add per-attachment MRT blending support. #32636 (@sunag)
- Fix depth/stencil format out-of-sync bug. #32731 (@Mugen87)
- Use @interpolate(flat, either) for all cases. #32761 (@greggman)
- Rename
NodestoNodeManager. #32786 (@sunag) - Rename
RenderPipelinetoRenderObjectPipeline. #32785 (@sunag) - Rename
PostProcessingtoRenderPipeline. #32789 (@sunag) - Always request compatibility mode and upgrade to core. #32762 (@greggman, @Mugen87)
- Optimize chain key array reset. #32833 (@Mugen87)
- Fall back to default texture when texture creation fails. #32853 (@ycw)
- Introduce
initRenderTarget(). #32867 (@Mugen87) - Export
CubeRenderTargetand use it in examples. #32871 (@Mugen87) - WebGL viewport / scissors not working correctly with PostProcessing. #32883 (@TobiasNoell)
- Fix
overrideMaterialnode assignments. #32896 (@Mugen87) - Turn off antialiasing in compat mode. #32902 (@greggman)
- Make wireframe update more flexible. #32908 (@Mugen87)
- Make generateMipmap work in compatibility mode. #32906 (@greggman)
- Fix
flipYand cache key whengenerateMipmap. #32922 (@sunag) - Improve checks for uniform buffer limits. #32949 (@sunag)
- Fix wireframe rendering for
BatchedMesh. #32955 (@Mugen87) - Improve
compatibilityModesupport for MRT. #32973 (@sunag) - Add basic reversed depth buffer support. #32967 (@Mugen87)
- Add shared
BindGroupvia hash. #32936 (@sunag) - Use all visibility for shared BindingGroup. #32997 (@sunag)
- Minor improvements for shared BindingGroup. #32998 (@sunag)
- Reversed depth buffer fixes. #33000 (@Mugen87)
- Fix stencilBack not matching stencilFront in pipeline. #33002 (@jpt)
- Remove outdated bind groups. #33011 (@Mugen87)
- Fix
- WebGPUTexturePassUtils
- Cleanup generateMipmaps. #32915 (@greggman)
- WGSLNodeBuilder
- Fix array texture layer support for filtered sampling. #32990 (@RenaudRohlinger)
- XRManager
- Fix XR camera layers inheritance. #32626 (@wrangelvid)
Docs
- Update URL in VignetteShader.js documentation. #32573 (@jwheare)
- Update documentation for ImageBitmapLoader options. #32574 (@jwheare)
- Improved search results. #32577 (@mrdoob)
- Remove .is properties from search results. #32578 (@mrdoob)
- Fix JSDoc Example. #32603 (@leannepepper)
- worldToLocal typo. #32647 (@satelllte)
- Update documentation to include KHR_meshopt_compression. #32661 (@donmccurdy)
- improve JSDoc documentation in utils.js. #32743 (@Angel98518, @Daniel)
- Update TorusGeometry with thetaStart and thetaLength. #32760 (@3dpk-interactive)
- Improve documentation for edge cases in MathUtils functions. #32806 (@dive2tech, @Gittensor Miner, @Mugen87)
- Prevent translators from aggressively translating parameter names. #32868 (@ycw)
- KTX2Loader. Fix typo in
TYPE_MAP. #32899 (@epreston) - Clarify auto update flags. #32909 (@Mugen87)
- Add missing JSDoc. #32921 (@Mugen87)
- Fix typo in JSDoc. #32946 (@glowsenior)
- Added llms.txt, llms-full.txt and llms/build.js script. #32673 (@mrdoob)
- Fix typo and link in Installation manual. #32972 (@pavan-sh)
- utils : update probeAsync jsdoc. #32995 (@epreston)
Manual
- Frame-rate independent cube rotation example. #32627 (@satelllte)
- Update rendering-on-demand.html. 4bbae20d6759dd0bd160fede992dd5d82e0b8294 (@Mugen87)
- Improve Chinese translation. #32804 (@guo-weijie)
- Update WebGPU guide. #32846 (@Mugen87)
- docs(zh): translate "Getting Started" manual pages into Chinese. #32996 (@DDDDD12138)
- Add Physics page. #33004 (@Mugen87, @Walid Chtioui)
- Replace the template literal with string concat in lights page. #33012 (@v-stamenova)
Examples
- Cleanup examples. #32528 (@Methuselah96)
- Add external example for Polyslice G-code slicer. #32502 (@jgphilpott, @microsoftcopilot, @Mugen87)
- Remove material AO demo. #32579 (@Mugen87)
- Update
webgpu_shadowmap. #32610 (@sunag) - Add basic fog scattering demo. #32613 (@Mugen87)
- Add shadow tag to webgpu_postprocessing_sss. e85890ebc870883c4147fefd472cb13542bc9e4b (@mrdoob)
- Clean up. 15cbc8c6f2b104835082cf08dadfdd1a72fcf5b0 (@mrdoob)
- Improved grid in webgpu_loader_materialx. 5cde3c7ec5af65456dfc1c29d3e592be6051400f (@mrdoob)
- Cleanup examples. #32634 (@Methuselah96)
- Improved examples. 0168a66eaebd0cd5a5ae5dc85ad20ed34b03827a (@mrdoob)
- Added bloom to ocean examples. #32680 (@mrdoob)
- Improved webgl_animation_keyframes. #32685 (@mrdoob)
- Remove obsolete shadow bias from WebGPU demos. #32715 (@Mugen87)
- Add missing UnrealBloomPass parameters. #32736 (@Methuselah96)
- Add support for reversed depth to post processing modules. #32773 (@Mugen87)
- Replace
ClockwithTimer. #32782 (@Mugen87) - Update Godrays demo. #32801 (@Mugen87)
- Improved draco example and re-encode bunny.drc with 2.2 (cl7) reducing file size from 96KB to 47KB. 89c278c26286bfb223a2c82ec388b094b69d2a94 (@mrdoob)
- Update webgpu_postprocessing_godrays.html. d167b69e3c0b7157ac96ca9eda3c5a0c351cfa2b (@Mugen87)
- Various fixes for WebGPU compatibility mode. #32907 (@greggman)
- Add Volumetric Lighting using TRAA. #32953 (@sunag)
- Update
webgpu_parallax_uv, andwebgpu_cubemap_adjustmentsexamples using.hdrfile. #32976 (@sunag) - Scroll sidebar to selected example. #32980 (@sunag)
- Clean up. #32994 (@Mugen87)
- Improve birds compute demo. #33016 (@Mugen87)
Addons
-
Anaglyph
- Rename
screenDistancetoplaneDistance. #32943 (@Mugen87)
- Rename
-
AnaglyphEffect
- Use frameCorners() for physically-correct stereo. #32929 (@zalo, @claude)
-
CCDIKSolver
- Fixed typos in /examples/jsm folder. #32631 (@mrdoob)
-
ColladaLoader
- Split into modular files. #32796 (@mrdoob, @claude)
- Improve animation support. #32830 (@mrdoob, @claude)
- Apply falloff angle to spot lights. 17529114983185f1266b40e36933d306badfd5f5 (@mrdoob, @claude)
-
Exporters
- Add Object3D.pivot support. #32769 (@mrdoob)
-
GCodeLoader
- Add support for M82/M83 commands. #32687 (@Mugen87)
-
GLTFExporter
- Fix skinIndex export for InterleavedBufferAttribute. #32607 (@querielo, @Mugen87)
-
GLTFExporter/GLTFLoader
- Add Object3D.pivot support. #32774 (@mrdoob)
-
GLTFLoader
- Fix empty groups when multiple scenes reference same nodes. #32567 (@YusakuNo1)
- GLTFLoader and KTX2Loader: Add a sanity check for navigator.userAgent before using it. #32633 (@leonmetthez)
- Implement support for KHR_meshopt_compression. #32163 (@zeux)
- Add getMaterialExtension helper. #32748 (@mrdoob, @claude)
-
Global
- Remove deprecated code. #32572 (@Mugen87)
- Replace
ClockwithTimer. #32793 (@Mugen87)
-
HalftoneShader
- Add diamond shape option. #32942 (@NateWr)
-
Inspector
- Store parameters object+key. #32507 (@marwie)
- Add "Copy All" button to Console tab. #32825 (@seantai, @sunag)
-
JoltPhysics
- Fix dynamic import Vite warning. e796263ee25703290d920d958888061b799c7ded (@mrdoob)
-
KTX2Loader
- Fix alpha for BC3 textures. #32772 (@donmccurdy)
-
LDrawConditionalLineNodeMaterial
- fix import. #32861 (@gkjohnson)
-
LDrawLoader
- De‑magic condition. #32886 (@ycw)
-
LensflareMesh
- Fix DPR usage. #32625 (@Mugen87)
-
LineMaterial
- Set needsupdate when changing worldUnits property. #32952 (@dsafa)
-
Loaders
- Use named fflate imports and native TextDecoder. #32765 (@mrdoob)
-
Nodes
- Removing unnecessary
nodesObject. #33014 (@sunag)
- Removing unnecessary
-
Object3D
- Added pivot property. #32745 (@mrdoob)
-
OrbitControls
- Expose pan, rotate and dolly methods. #32810 (@TobiasNoell)
- Add
cursorStyleproperty. #32981 (@Mugen87)
-
PCDLoader
- Fix label parsing. #32683 (@Mugen87)
-
RapierPhysics
- Fix dynamic import Vite warning. #32565 (@mrdoob, @claude)
-
RoomEnvironment
- Adjust scene position. #32646 (@mrdoob)
-
SSRNode
- Performance optimizations. #32637 (@mrdoob)
- Add distance-aware blur for roughness. #32834 (@mrdoob, @claude)
- Use squared roughness for blur LOD and simplify pointPlaneDistance. #32993 (@mrdoob, @claude)
-
Sky/SkyMesh
- Remove legacy gamma correction curve. #32677 (@mrdoob)
- Added procedural clouds. #32682 (@mrdoob)
-
TSL
- Improve
retroPassand example. #32954 (@sunag)
- Improve
-
USDAParser
- Improve text parsing robustness. #32747 (@mrdoob, @claude)
-
USDAParser/USDComposer
- Clean up. 3cd3e5b87e4a75aa14cf43958ddcaf9c6edebebc (@mrdoob)
-
USDCParser
- Fixed scalar handling. 43166fcb2c5378a3cdd4c782175d0daf136a10d1 (@mrdoob)
-
USDComposer
- Fix color space handling for material colors. 73636e35bfc1800f0242cbd0a5c488b184546943 (@mrdoob)
- Clean up. e3f4523ed8d11e538cdbfbe573514a7fe01ed64a (@mrdoob)
- Added primvars:displayOpacity support. 27f2f4eb5fbf78f42d0447a7b7f1879445b96111 (@mrdoob)
- Fixed variant composition. 9a711cc1f452a917fe92eab3b4538fd34f45687a (@mrdoob)
- Support variant overrides on ancestor prims. 96432fc0bd1a4a44afea6ebed27f65e9ed342c9e (@mrdoob)
-
USDLoader
- Added USDC file support. #32704 (@mrdoob)
- Refactored into USDComposer and added animation support. #32740 (@mrdoob)
- Improve material and UV support. #32746 (@mrdoob)
- Unify USD format handling and add .usd support. 5532147c692e1ec3c34e8d6455a598945011223e (@mrdoob)
- Add OpenPBR Surface shader and polygon hole support. #32764 (@mrdoob)
- Various bug fixes and improvements. #32766 (@mrdoob)
- Performance improvements and external texture support. #32790 (@mrdoob, @claude)
- Improve transform handling, skinning, and image loading. #32828 (@mrdoob, @claude)
- Fix material binding lookup for variants. 43c8ff7e8966b1a359b104915290b8d4619e80cc (@mrdoob, @claude)
- Apply UsdUVTexture scale to material colors. 585b578fb735485a95b651ff9d9e001601d3090f (@mrdoob, @claude)
-
UltraHDRLoader
- Add support for ISO 21496-1 gainmap metadata. #32862 (@mrdoob)
-
VRMLLoader
- Add camera support. #32580 (@Mugen87)
-
VTKLoader
- Fix ReDoS vulnerability. #32622 (@mrdoob)
-
ViewHelper
- Add location property for positioning. 22afab942a46cd9f6b7310e3c210a6a19655ca0d (@mrdoob, @claude)
-
Water
- Use HalfFloatType for reflection render target. #32678 (@mrdoob)
-
Water/WaterMesh
- Improve realism. #32681 (@mrdoob)
-
WaterMesh
- Remove unneeded Lambert material. 40d7441aee16fc0bc0839ba597b2f7ec84324045 (@mrdoob)
-
WebGLRenderer
- More fixes for reversed depth buffer. #32799 (@Mugen87)
-
WebGPURenderer
- Add
GodraysNode. #32888 (@Mugen87)
- Add
-
WebGPU_Display_StereoExample
- Add new Anaglyph Techniques. #32905 (@zalo)
-
examples
- jolt-physics@1.0.0. #32711 (@linbingquan)
Editor
- Modernized ui.js. #32545 (@mrdoob)
- use ES6 const/let for
app.js. #32712 (@linbingquan) - Move render options from sidebar to menubar. #32727 (@mrdoob)
- Replace FFmpeg with WebCodecs for video rendering. #32728 (@mrdoob)
- Use parseAsync when rendering image. f02c6851af95be4d2ca655521a6928bd7e35d297 (@mrdoob)
- Add Resources panel to Project sidebar. #32729 (@mrdoob)
- UI css scope. #32714 (@linbingquan)
- Enable logarithmic depth buffer. #32732 (@mrdoob)
- Debounce Resources panel updates. 8084de7640e5b7794754f8bad3b53b9641840493 (@mrdoob)
- Add default environment. #32752 (@mrdoob)
- ESLint: migrate to flat config, note missing eqeqeq rule. #32754 (@ycw)
- Simplify environment handling. #32757 (@mrdoob)
- Clean up sw.js. d9b39f4ea88d1b87d91c7f1f6cb43c04670658cd (@mrdoob)
- Improve service worker caching and activation. c36ae33e09de7cb788ad098c6778ac2b8d10249b (@mrdoob)
- Add dialog for glTF import. #32784 (@Mugen87)
- Improve geometry sidebar with interleaved and instanced support. 86c5b3e9afb9a910909f06e6086ffccb519cc7dc (@mrdoob, @claude)
- Change default tone mapping to Neutral. ceda42c71f661585fa16282536695ef0c18e781f (@mrdoob, @claude)
- Added WebGPURenderer support. #32842 (@mrdoob, @claude)
- Improve UI layout. 293ed86238d8563af70a4ddab51067891c7188ee (@mrdoob, @claude)
- Fix camera move error. #32843 (@linbingquan)
- Clean up Viewport.Controls. a97401bca9c0bbacbb931aa0f8a446ad161c1ae2 (@mrdoob, @claude)
- Add morph target support. #32844 (@Mugen87)
- Fix canvas reference for video rendering. #32864 (@ycw)
- Retain viewport color when rendering images/videos. #32866 (@Mugen87)
- Deprecate ServiceWorker. 3ab79b8334a6c905f7ab54ef02ed3e82884aad6a (@mrdoob, @claude)
- fix app publishing for project using WebGPURenderer. #32897 (@ycw)
- Refine eslint config: limited exclusion and lint fixes. #32917 (@ycw)
- Cleanup. #32965 (@linbingquan)
- Add Animation panel. #32869 (@mrdoob, @claude)
Tests
- Quaternion - Support extrapolation in slerp methods. #32541 (@WestLangley)
- Puppeteer: Remove express dependency. #32649 (@mrdoob)
- Removed rollup-plugin-filesize dependency. #32650 (@mrdoob)
- Puppeteer: Replaced jimp with jpeg-js and pngjs. #32652 (@mrdoob, @claude)
- Puppeteer: Removed pixelmatch dependency. #32656 (@mrdoob)
Utils
- Replaced servez with custom server.js. #32654 (@mrdoob)
- Replaced concurrently with custom preview.js. #32655 (@mrdoob)
- Update utils/server.js to selfsigned 5.0.0. 5b5594a161c3c41f6e1fc9aa58e96949bbc5c2d8 (@mrdoob)
- server.js: removed redundant call to path.normalize(). 7cc18054c7fa5e438b9a6cd648b1d4296282920d (@mrdoob)
- server.js: simplified code. 7cd43e066a725ea6b2349e52911a01613a9cbeaa (@mrdoob)
- Remove dev-ssl and preview-ssl. #32672 (@mrdoob)
- utils/server.js: cross-platform isMain check. #32674 (@ycw)
- Add changelog generator. #32781 (@mrdoob, @claude)
- Fix loading of sites without .html extension. #32970 (@Mugen87)
- build-llms: Clean up stale .md files before generating new ones. f45d6f94de70d6f8351a0e0a17628979718044dc (@mrdoob, @claude)
- build-docs: Clean up stale .html files before generating new ones. ed98cc4aa1f5decd9b23f54aa5ca2865e95fa56a (@mrdoob, @claude)
- Improve changelog.js. 2cc37c2bdab8318bdb14033bdbe6763b695d21b2 (@mrdoob, @claude)
- Improve changelog.js. 8863cdbd3aa3f66df4c5e5385f717adaf8b06ada (@mrdoob, @claude)
r182
https://github.com/mrdoob/three.js/wiki/Migration-Guide#181--182 https://github.com/mrdoob/three.js/milestone/95?closed=1
- BatchedMesh
- Fix index and attribute updates in
optimize(). #32185 (@querielo)
- Fix index and attribute updates in
- BatchNode
- Optimize generated shader code. #32203 (@Mugen87)
- BufferGeometry
- Add
indirectOffsetparameter for indirect drawing. #32392, #32413 (@holtsetio, @RenaudRohlinger)
- Add
- ExtrudeGeometry
- Honor
closedproperty ofCatmullRomCurve3. #32410 (@Mugen87)
- Honor
- InstanceNode
- Add support for
StorageInstancedBufferAttribute. #32240 (@RenaudRohlinger)
- Add support for
- Light
- Unify
toJSON()implementations. #32414 (@Mugen87)
- Unify
- LightProbe
- Remove
fromJSON(). #32415 (@Mugen87)
- Remove
- Line2NodeMaterial
- Align wide lines with
WebGLRendererversion. #32234 (@Mugen87)
- Align wide lines with
- Material
- Fix
copy()to includeallowOverride. #32269, ba1655cf3587349768665c442a4f7cc0ecd23759 (@crazylogic03, @Mugen87)
- Fix
- Matrix4
- Optimize
determinant()calculation. #32157 (@mrdoob)
- Optimize
- MeshPhysicalMaterial
- Fix iridescence energy conservation for mixed materials. #32309 (@mrdoob)
- Improve Sheen energy conservation and analytic approximation. #32356, #32397 (@mrdoob)
- MeshStandardMaterial
- Fix furnace test energy loss for intermediate metalness values. #32190, #32201 (@mrdoob)
- Improve physical accuracy. #32330 (@mrdoob)
- NodeBuilder
- Add missing vector types to
generateConst(). #32162 (@cmhhelgeson) - Cache node attributes for vertex stage only. #32189 (@Mugen87)
- Ignore events for shared context. #32492 (@sunag)
- Add missing vector types to
- NormalMapNode
- Add basic support for normal unpacking. #31695 (@castano)
- PMREMGenerator
- Improve GGX VNDF accuracy and match Blender roughness. #32311 (@mrdoob)
- Reduce DFG LUT resolution to 16x16. #32358 (@mrdoob)
- PointShadowNode
- Refactor to use native cube depth texture. #32379 (@mrdoob)
- PolyhedronGeometry
- Fix typo in
fromJSON(). #32475 (@Ayush123-e)
- Fix typo in
- ShaderMaterial
- Fix
copy()to include missing properties. #32219 (@NssGourav)
- Fix
- Source
- Guard reference to VideoFrame. #32301 (@Mugen87)
- StructTypeNode
- Fix memory length calculations. #32377 (@holtsetio)
- TSL
- Add renderer context node (global). #32295 (@sunag)
- Check for
undefinedinuniform(). #32183 (@Mugen87) - Add
texture3DLoad()andtexture3DLevel(). #32171 (@RenaudRohlinger) - Add bitcount related functions. #31990 (@cmhhelgeson)
- Add support for
mat3andmat4usingbufferAttribute(). #32204 (@sunag) - Do not auto-generate tangent attribute. #32220 (@Mugen87)
- Pre-pass using global context. #32276, #32345 (@sunag)
- Introduce float packing / unpacking intrinsics. #32329 (@Ne0nWinds)
- Introduce
builtinShadowContext()andbuiltinAOContext(). #32384, #32378 (@sunag, @querielo) - Renamed
DFGApproxtoDFGLUT. #32399 (@mrdoob) - Fix non-stack function call with loops. #32420 (@sunag)
- Prevent memory leaks in
ShadowNode. #32395 (@querielo)
- Vector3
- Clean up. #32363 (@MOHITKOURAV01)
- WebGLRenderer
- Support more EAC texture formats. #32308 (@castano)
- Modernized shadow mapping. #32181, #32303, #32407, #32443 (@mrdoob)
- Align transmission render target samples with canvas. #32444 (@mrdoob)
- Remove
SUPPORTS_VERTEX_TEXTURES. #32455 (@mrdoob) - Clean up
setupRenderBufferStorage(). #32456 (@mrdoob) - Use Map for O(1) program lookup. #32463 (@mrdoob)
- Move point light shadow logic from
PointLightShadow. #32473 (@mrdoob)
- WebGPURenderer
- Support more EAC texture formats. #32308 (@castano)
- Fix textured backgrounds with ortho cameras. #32313 (@Mugen87)
- Improve StorageTexture3D support. #32150 (@RenaudRohlinger)
- Optimize VSM shadow code. #32209 (@mrdoob)
- Fix shadowing of error function. #32245 (@Methuselah96)
- Improve cache bindings from node uniforms. #32244 (@sunag)
- Set opaque blend mode for secondary MRT targets. #32265 (@sunag)
- Add update ranges for bindings. #32248 (@sunag)
- Buffer labeling adjustment. #32247 (@cmhhelgeson)
- Relates MRT for RenderContext in obtaining a unique context. #32264 (@sunag)
- Fix VSM shadow artifacts. #32327 (@mrdoob)
- Fix point light shadows. #32365 (@mrdoob)
- PCF shadow filtering with Vogel disk sampling and IGN. #32381, #32407 (@mrdoob)
- Use correct cache for default cube textures. #32425 (@SE7EN2028)
- Refine video texture warning. #32439 (@Mugen87)
- Improve resource disposal. #32446 (@querielo)
- Skip invalid frame of video textures. #32441 (@whatisor)
- Improve Bind Group Layout cache system. #32451, #32249 (@cmhhelgeson, @Mugen87)
Docs
- Clean up. d70adae523c1b3c67defbe9fdf3a69c153cbd454, 9e94632cb90fc22f0b32f1461d625439b9db47e8, 72f91e3cf64eee7f392c8b15bddbc36bc56247d5 (@Mugen87)
- Add missing @private annotation. #32165 (@Mugen87)
- Fix external links. #32161 (@mrdoob)
- Fix ShadowNode JSDoc. #32166 (@Mugen87)
- Improved search with category matching. #32164 (@mrdoob)
- Fix JSDoc of inspector. #32192 (@Mugen87)
- Remove unused parameter from
BatchedMesh.optimize(). #32186 (@querielo) - Improve
ShaderMaterial.fog. #32224 (@Mugen87) - Fix return type in
compileAsync(). #32205 (@querielo) - Fix
optionsofPMREMGenerator. #32285 (@ycw) - Improve
SkyMesh. #32289 (@jwheare) - Open panel on mobile when no page is selected. #32261 (@mrdoob)
- Fix typo in
MaterialLoader. #32316 (@michael-erskine) - Replace
[name]in docstring. #32332 (@ycw) - Update default anisotropy value in
Texture. #32346 (@thibka) - Fix restitution param desc in physics addons. #32341 (@SollyBunny)
- Fix typo in
DecalGeometry. #32366 (@rotu) - Improve Bloom radius description. #32450 (@Mugen87)
- Fix
RendererWebGPU convention. #32457 (@sunag) - Fixed typo in
BufferGeometry. #32477 (@Magnus1X)
Manual
- Update OffscreenCanvas support details. #32184 (@aganders3)
- Fix formatting in
prerequisites.html. #32217 (@Mugen87) - Add guide about Post-Processing with
WebGPURenderer. #32279 (@Mugen87) - Add guide about WebGPURenderer. #32260 (@Mugen87)
Examples
- Add radial blur demo. #32297 (@Mugen87)
- Fix chromatic aberration type usage of caustics example. #32169 (@sunag)
- Improve BPCEM demo. #32172 (@Mugen87)
- Fix thumbnail of backdrop demo. #32178 (@Mugen87)
- Simplify render bundle demo. #32215 (@Mugen87)
- Cleanup
stats-gl. #32242 (@RenaudRohlinger) - Improve ray marching in volume rendering examples. #32235 (@mrdoob)
- Move
webgpu_struct_drawindirectto TSL. #32222 (@cmhhelgeson) - Add WebGPU Contact Shadows. #32262 (@querielo)
- Renamed “external” tag to “community”. #32232 (@mrdoob)
- Open panel on mobile when no example is selected. #32261 (@mrdoob)
- Update credit link in
webgl_animation_skinning_ik. #32259 (@abernier) - Add model selector to glTF loader examples. #32364, 1296afb199e2420f322bd5d45701fd686cfe2f38, #32406 (@mrdoob)
- Made shadows soft in webgl_shadowmap_pointlights. 56838ce12c409fdf24992932839490d7ab58877f (@mrdoob)
- Added
webgpu_shadowmap_pointlightexample. 3b0c9cd4760c0b75f3fa4ce1ac5f882e37f68fd3, 645e0898bdbf6992cbd24c016e6a539d68181873 (@mrdoob) - Migrate
royal_esplanadeexamples toUltraHDRLoader. #32380 (@mrdoob) - Use real-world scale in stereo demo. #32403 (@Mugen87)
- Fix WebGPU water simulation on mobile GPUs. #32411 (@mrdoob)
- Update Compute Fluid to use
IndirectStorageBuffer. #32176 (@cmhhelgeson) - Update
webgl_loader_texture_ktxexample with new formats. #32448 (@castano) - Improved
RectAreaLightexamples. #32493 (@mrdoob) - Unify import path for WebGPU related classes. #32494 (@Mugen87)
Addons
-
AmmoPhysics
- Support restitution. #32347 (@SollyBunny)
-
BloomNode
- Implement disposal of materials to prevent memory leaks. #32452 (@querielo)
-
Controls
- Fix stuck state when releasing mouse outside window. #32323 (@mrdoob)
-
CSM
- Reuse origin vector. #32331 (@Mugen87)
-
Inspector
- Fix Viewer aspect ratio. #32194 (@sunag)
- Fix slider dimensions. #32177 (@Mugen87)
- Improve UX. #32197, a6ca2537932e47510b2542990f6033d9f794454a (@sunag)
- Add window/panel boundary constraints. #32208 (@sunag)
- Mini-panel for parameters. #32257 (@sunag)
- Fix value update of number and checkbox elements. #32355 (@Mugen87)
- Fix cube depth texture error. #32412 (@sunag)
- Update checkmark internal box size. 7ad089e773167ed7a7da33dc13ee7fd05280bc36 (@sunag)
- Add warn if the inspected node outside of frame scope. #32458 (@sunag)
-
MapControls
- Improve panning accuracy. #32324 (@mrdoob)
-
Octree
- Add
Box3interface. #32343, 6e006b29964ff6facb832690d3e38918d8434b64 (@Mugen87, @mrdoob)
- Add
-
Physics
- Add errors when trying to use getShape() for unsupported geometry types. #32372 (@SollyBunny)
-
PixelationPassNode
- Fix zero normal processing. #32159 (@Mugen87)
-
SkyMesh
- Add
isSkyMeshflag and deprecateisSky. #32263 (@querielo)
- Add
-
SSRNode
- Ensure boolean value for isPerspectiveCamera uniform. #32218 (@FarazzShaikh)
-
SVGLoader
- Add stylesheet jsName vs svgName fix. #32119 (@jhlggit)
-
SVGRenderer
- Add depth sorting for Sprites and SVGObjects. #32212 (@mrdoob)
- Add near/far plane clipping support. #32210 (@mrdoob)
-
TRAANode
- Improve motion factor and disocclusion. #32296 (@shotamatsuda)
- Replace MSAA sample pattern with Halton sequence. #32319 (@shotamatsuda)
- Reduce smearing. #32322 (@shotamatsuda)
-
TSL Transpiler
- Support struct definitions and declarations. #32300 (@Ne0nWinds)
- Fix Fn layout generation when generating a function with no input parameters. #32272 (@Ne0nWinds)
-
UltraHDRLoader
- Fix incorrect alpha channel values. #32464 (@mrdoob)
- Improve parsing performance. #32468, 4b110fe4c39799672f1d1de51fc013d5f2930989, d7f67fafff6eaa4871963b14baeff060f2f13102 (@mrdoob)
-
VOXLoader
- Added scene graph support. #32488 (@mrdoob)
- Implemented greedy meshing. #32489 (@mrdoob)
- Accept version 200 files. #32490 (@mrdoob)
- Replace
VOXMeshandVOXData3DTextureclasses with functions. #32491 (@mrdoob)
Editor
- Save and restore controls state. #32408 (@mrdoob)
- Scale
PointLightHelperbased on camera distance. b7c9099db9d7e6a959d2bf46b2e5fb807e91dbcf (@mrdoob) - Cycle through overlapping objects on click. c745aee7c0b5297a986818235d2f2ffae029223c (@mrdoob)
- Scale down touchscreen zoom speed #32454 (@TylerSelden)
Tests
- Removed todo()s. #32483 (@mrdoob)
r181
https://github.com/mrdoob/three.js/wiki/Migration-Guide#180--181 https://github.com/mrdoob/three.js/milestone/94?closed=1
- Global
- Use internal log, warn and error functions instead of the system ones. #31790 (@sunag)
- Earcut
- Updated to latest version. #31956 (@tonybart1337)
- InstanceNode
- Honor
updateRanges. #31816 (@Mugen87)
- Honor
- LoadingManager
- Lazily instantiate abort controller. #32120 (@NuroDev)
- MeshMatcapMaterial
- Support wireframe. #31917 (@WestLangley)
- NodeBuilder
- Add hints in comments. #32004 (@cmhhelgeson)
- NodeFrame
- Simplify caching. #31896 (@cmhhelgeson)
- NodeMaterial
- Fix alpha discard. #31927 (@Mugen87)
- Honor aoNode in
clone(). #32084 (@querielo)
- PassNode
- Ensure clear of internal render target. #31993 (@Mugen87)
- PhysicalLightingModel
- Fix
Favgassignment. #32094 (@sunag)
- Fix
- PMREMGenerator
- Implement GGX VNDF importance sampling. #32114, #32134, #32148, #32154 (@mrdoob)
- Quaternion
- Rewrite
slerp()andslerpFlat(). #31875 (@WestLangley)
- Rewrite
- RenderTarget
- Fix resize of 3D textures. #31854 (@Mugen87)
- Sampler
- Don't set
_texturetonull. #31874 (@Mugen87)
- Don't set
- ShadowNode
- Fix shadows in first frame. #32021 (@Mugen87)
- TextureNode
- Manage y-flip as a uniform. #31929 (@Mugen87, @sunag)
- TSL
- Clone
PassMultipleTextureNodewithoffsetNode. #31849 (@shotamatsuda) - Fix
onDisposelistener not being removed inSampler. #31868 (@shotamatsuda) - Minor fixes. #31808 (@Mugen87)
- Fix coordinate types for
load()on 3D texture nodes. #31775 (@shotamatsuda) - Add member type support for layout function parameter. #31838 (@sunag)
- Fix conditional cache and introduce
isolate(). #31973, 594893f13ea9f252a2e918d2c3755878157220cb (@sunag) - Forces assignment of a function call if a loop is detected. #31974 (@sunag)
- Fix auto type conversion for layout parameters. #32059 (@sunag)
- Resolve some name collision. #32032 (@sunag)
- Move Interleaved Gradient Noise into PostProcessingUtils. #32074 (@Mugen87)
- Fix recursive cache key. #32070 (@sunag)
- Fix size computations in FX/RTT nodes. #32077 (@Mugen87)
- Ensure
nodeProxyIntentalways setsintent: true. #32092 (@querielo) - Refactor
positionViewDirectionto handle orthographic camera cases. #32088 (@querielo) - Fix
overloadingFnreturn type. #32112 (@sunag) - Add active stack and improve "node block" support. #32109 (@sunag)
- Assign stack for nodes after remove stack. #32137 (@sunag)
- Add
OnBefore*events. #32144, 1d9c5a0859ac357488443d62b44ed2c457915fc1 (@sunag) - Fix get element through an output
Fnvalue. #32143 (@sunag)
- Clone
- VideoTexture
- Reset internal state rVFCId on dispose. #32082 (@ycw)
- WebGLRenderer
- Fix WebXR Depth Sensing. #31831 (@cabanier)
- Use DFG LUT instead of analytical approximation. #32054, 9b0d0937c75eab4d46f5f66b3e0c18bcb1f8c07b, 5e3cd6c52b3151a7243a0dd639334c7ce4d9c320, 361853114a24b7df70df907d3f38d1997a24b34d, e225530224722d9df1e392dbfcffc7dbdbe46a4a (@mrdoob)
- Clean up. 39b05002504a06b6a58a07570b0a6231f9390417 (@mrdoob)
- Remove WebGL 1.0 compatibility code. #32071, 62e6f436cec8bae9a55f47f7fca16629ea0eb679 (@mrdoob)
- Add multi-scattering energy compensation for direct lighting. #32072 (@mrdoob)
- Improve rough reflection mixing for IBL. #32102 (@mrdoob)
- WebGPURenderer
- Guard reference to
VideoFrame. #31864 (@Mugen87) - Prevent dispose of default textures. #31860 (@Mugen87)
- Fix renderer not being garbage collected. #31798 (@shotamatsuda)
- Properly delete compute node bindings in
dispose(). #31832 (@cmhhelgeson) - Properly delete bind groups when render objects are disposed. #31879 (@cmhhelgeson)
- Align
copyTextureToTexture()withWebGLRenderer. #31810 (@shotamatsuda) - Fix shadow's
alphaTestif usedmaterial.map. #31803 (@sunag) - Add cache for shadow nodes. #31880 (@sunag)
- Decouple samplers from textures. #31899 (@Mugen87)
- Introduce
Inspector. #31869, #31928, #31958, #31963, #31962, #31982, #31997, #32003, #32007 (@sunag) - Fix rendering morphed meshes. #31904 (@Mugen87)
- Skip resolving anti-aliasing twice. #31743, #31924 (@sunag)
- Introduce
CanvasTarget. #31919 (@sunag) - Make Render Bundle work with MRT. #31906 (@Berthur)
- Fix tone mapping mode detect. #31957 (@sunag)
- Fix binding sampler update. #31971 (@sunag)
- Fix logs in WebGL backend. #31978 (@Mugen87)
- Fix compressed texture feature detection for WebGL backend. #31980 (@Mugen87)
- Adjustments and Polyfill in
GLSLNodeBuilder. #31999 (@cmhhelgeson) - Fix functions with struct layouts cannot resolve struct types. #32000 (@shotamatsuda)
- Allow manual mipmap creation with StorageTexture. #31983, #32039 (@RenaudRohlinger)
- Deprecate
renderAsync(),computeAsync()and related async methods. #32022, #32026, #32029, #32033, #32042, #32063 (@Mugen87, @sunag) - Remove
waitForGPU(). #32024 (@Mugen87) - Fix transmission flicker. #32043 (@Mugen87)
- Add multi-scattering energy compensation for direct lighting. #32089 (@mrdoob)
- Improve rough reflection mixing for IBL. #32108 (@mrdoob)
- Fix material transparent assignment. #32110 (@sunag)
- Enable dynamic shadowMap type switching. #32105 (@querielo)
- Introduce dispatchWorkgroupsIndirect #31488 (@Spiri0)
- Improve shader validation #32130 (@sunag)
- Fix dispose RenderTarget textures. #32131 (@sunag)
- Fix types for indirect compute and modify example to show usage. #32129 (@TheBlek)
- Improve cache key verification. #32138 (@sunag)
- Guard reference to
- XRManager
- Reset
XRWebGLBindingon session end. #31835 (@harryhjsh)
- Reset
Docs
- Document animation loop parameter. #31853 (@Mugen87)
- Add
PLYLoaderpage. #31848 (@mmjinglin163) - Improve
AnimationClippage. #31915 (@kang-git) - Improve Chinese translation. #31806, #31817, #31828, #32041 (@mmjinglin163, @pangda9527)
- Improve JSDoc. #31822, #31819, #32017 (@s-rigaud)
- Update link to packLDrawModel script extension. #31938 (@jjohnson5253)
- Improve translation accuracy and consistency. #31960 (@puxiao)
- Added redirects for old docs URL. #31986 (@mrdoob)
- Reduce folder size of new docs. #31992 (@mrdoob)
- Updated templates with old design. #32002 (@mrdoob)
- Generate old docs system and design. #32036, 28dcaf5f9db3326dc40eb98d377b48e72afbf771, 64d3d974170722d303d49b77b48d7e466da2608d, ed360e81958bbebd4a4c0bf4ae254dc884aa5593, a02ba14525946ce991a6a119449b7ea9c04f358e, 4b510dfb7df38ac8aa1e0a7f64a2b3550dbc7615, 1ef293278f707f7f715c0313772bc86d10d3216c, a4777982c4b1c1ba3106fd59a10393172bfd63cb (@mrdoob)
- New Docs: Add translation disable flags. #32048 (@mrdoob)
- Add type annotations for dispatch size in
ComputeNode. #32068 (@shotamatsuda) - Improve
GLTFLoaderpage. #32096 (@marwie) - Removed legacy docs. #32117
- Added new docs generated with JSDocs. #32118, 96fe466f8edce6e90f7c48a6fe252a2b22f7b667 (@mrdoob)
- Update JSDoc links for better readability. #32132 (@marwie)
- Fixed properties layout. #32156 (@mrdoob)
Manual
- Don’t open external URLs in iFrame. #31856 (@xjh22222228)
- Manual: Improve
Responsiveguide. #31942 (@davcri)
Examples
- Clean up. #31830, #31829, #31823, #31855, #31843, #31811, #31842, #31844, #31824, #31898, #31887, #31914, #32011, #32018, #32051, #32057 (@WestLangley, @s-rigaud, @Methuselah96, @Mugen87)
- Use instancing in
webgpu_compute_birdsexample. #31766 (@cmhhelgeson) - Add WebGPU HDR example. #31893 (@RenaudRohlinger)
- Update with the new style and inspector. #31907, #31951, #31954, #31964, #31976, #31984, #31995, #32060 (@sunag, @Mugen87)
- Set
OrthographicCameranear plane >= 0. #31912 (@WestLangley) - Use
globalIdin compute water demo, updateIndexNodecomments. #31941 (@cmhhelgeson) - Add shadow intensity to spotlight examples. #31972 (@WestLangley)
- Don’t use
property()for creating variables. #32028 (@shotamatsuda) - Improve
webgl_watchexample. b61441df2e92a487f3063cd44cc614be8bbd9a4a (@mrdoob) - Improve
webgl_postprocessing_unreal_bloomexample. 2cff1474de2e0037c12bc46c1d9d472f14b04637 (@mrdoob) - Apply camera constraint immediately in WebGPU bloom demo. #32081 (@ycw)
- Fix output control in SSS demo. #32083 (@ycw)
- Add bloom strength to
webgl_postprocessing_unreal_bloom_selective. #32125 (@querielo) - Visualize normal as color in
webgpu_postprocessing_ao. #32141, #32153 (@ycw, @sunag)
Addons
-
AfterImageNode
- Fix swap. #32140 (@Mugen87)
-
AsciiEffect
- Remove noise from black texture. #31858 (@s-rigaud)
-
BitonicSort
- Add new bitonic sort addon. #31852, #31949 (@cmhhelgeson)
-
CSS2DRenderer
- Add
sortObjects. #31946 (@Konseyy)
- Add
-
CSSRenderer
- Ensure element exists when execute remove. #31905 (@xiaoliyooo)
-
DRACOLoader
- Implement data alignment for WebGPU. #31991 (@donmccurdy)
-
FontLoader
- Add text direction. #31683, #32078 (@Rikahei)
-
GlitchPass
- Fix
heightMapmember name. #32047 (@joey8angelo)
- Fix
-
GTAONode
- Optimize render target format. #31883 (@Mugen87)
- Add basic support for temporal filtering. #32076 (@Mugen87)
-
HTMLMesh
- Fix dimensions of canvas drawing. #31931 (@pvtech-adam)
-
KTX2Loader
- Fix ETC1S/UASTC prioritization. #31871 (@zeux)
- Honor
setRequestHeader(). #32115 (@LR17)
-
MaterialXLoader
- Use ImageBitmapLoader to prevent blocking. 154e14558021d0aae2770eafb621741ac25680e4, bca53e60926c4afb05c6d16672c00554d9c8bbde (@mrdoob)
-
ProgressiveLightMap
- Make normals mandatory. #31825 (@Mugen87)
-
SelectionBox
- Add support for
BatchedMesh. #32052 (@sunjiang0018)
- Add support for
-
SSGINode
- New node for screen-space global illumination. #31839, #31865, #31867, #31863, #31873, #31881, #31890, #31882 (@Mugen87, @zalo)
-
SSSNode
- Add new node for Screen-Space Shadows. #32050 (@Mugen87)
-
SVGLoader
- Make node transform parsing more robust. #31985 (@Mugen87)
-
TRAANode
- Reduce Ghosting/Smearing. #31895 (@zalo)
- Make depth copy more robust. #31908 (@Mugen87)
- Add adaptive blend weights. #32139 (@Mugen87)
-
TSL Transpiler
- Fix immutable to dynamic parameter conversion and shadertoy example. #31996 (@sunag)
-
TubePainter
- Improved generated geometry and added caps. #32025 (@mrdoob)
- Fixed end caps and removed object allocations. #32030, 21009ebc442a3566e76ba0f4d9b8b19a5c910c7d (@mrdoob)
-
UnrealBloomPass
- Backported blur improvements. 057d341afde09e38c59037e39fc81198b241258d (@mrdoob)
-
USDZExporter
- Improve material prop types and setup. #32008 (@mkeblx)
-
ViewHelper
- Add OffscreenCanvas support. #32128, f957f0b2adada81cb7c1de6fe34a79ead0026a93, babe7f2cc2946b87cdf5e6958fb660bc8ba5d8a3 (@Mugen87)
-
WaterMesh
- Fix incorrect resolution scale assignment. #32056 (@jonsmithers)
-
XRHandModelFactory
- Fix inverted hand models. #31634 (@jorodi)
Tests
- Remove obsolete material callbacks. #31876 (@codyjasonbennett)
- Improved E2E robustness. #32091, #32090, b3dde01ebb2509893dc41a9d29bd6dfba1794731, 3a987fad398939a7b6a2c4e9b7d2dd5df99ffa50 (@mrdoob)
Editor
- Fix material reference in
SetMaterialRangeCommand. #32080 (@ycw)
Node Editor
- Fix usage of
timerLocal. #31889 (@Mugen87)
r180
https://github.com/mrdoob/three.js/wiki/Migration-Guide#179--180 https://github.com/mrdoob/three.js/milestone/93?closed=1
- Global
- Clean up. #31719, #31564, #31671, #31732, #31734, #31726 (@Methuselah96, @WestLangley, @s-rigaud)
- Remove deprecated code. #31632, #31555 (@Mugen87)
- AnimationClip
- Add
userDataand honor in glTF loader and exporter. #31586 (@repalash)
- Add
- Bindings
- Fix caching of texture bindings. #31755 (@Mugen87)
- ClippingNode
- Move uniforms into
rendergroup. #31716 (@Mugen87)
- Move uniforms into
- ExternalTexture
- Support
copy(),clone(). #31731 (@donmccurdy)
- Support
- GLSLNodeBuilder
- Fix
texelFetch*()code generation with depth textures. #31760 (@shotamatsuda) - Fix
texture()code generation for depth texture. #31770 (@shotamatsuda)
- Fix
- Material
- Add missing map properties to
toJSON(). #31578 (@Mugen87)
- Add missing map properties to
- NodeBuilderState
- Fix type of
bindingsReferenceincreateBindings(). #31678 (@cmhhelgeson)
- Fix type of
- PointsNodeMaterial
- Fix scaling bugs. #31627, #31707 (@WestLangley)
- Fix broken point primitive rendering. #31702 (@Mugen87)
- Improve JSDoc. #31703 (@Mugen87, @WestLangley)
- Renderer
- Make
dispose()more robust. #31681 (@Mugen87)
- Make
- RenderObject
- Honor sampler data in material cache key. #31633 (@Mugen87)
- Fix cache key for instanced meshes. #31783 (@Mugen87)
- Sampler
- Fix dispose. #31751 (@Mugen87)
- Sprite
- Improve JSDoc. #31642 (@cmhhelgeson)
- SpriteNodeMaterial
- Honor
sizeAttenuationfor perspective camera only. #31628 (@WestLangley)
- Honor
- TSL
- Add texture offset feature. #31715 (@shotamatsuda)
- Refine pow2/3/4 and remove polyfill for Windows. #31720 (@shotamatsuda)
- Improve camera array support and introduce
cameraViewport. #31615 (@RenaudRohlinger) - Replace
Proxyapproach with prototypes. #31691 (@sunag) - Fix update type of
screenDPR. #31706 (@Mugen87) - Fix type propagation in members. #31699 (@sunag)
- Fix member type in function layout. #31609 (@sunag)
- Fixed persistent reference of the first stack. #31717 (@sunag)
- Uniformly implement resolution scale. #31697 (@Mugen87)
- Fix performance of
viewportTexture(). #31591, #31599 (@sunag, @Mugen87) - Add
SubgroupFunctionNodewith compute reduction demo. #31378 (@cmhhelgeson) - Introduce
uniformFlow(). #31531 (@cmhhelgeson) - Fix instance buffer size in
instance(). #31608 (@ahaensler) - Fix missing
getMemberType()incontext(). #31601 (@sunag) - Use dynamic parameters eval for
Fn(). #31592 (@sunag) - Improve error message for operators with void values. #31593 (@sunag)
- Improve warnings. #31562 (@sunag)
- Add AA-samples parameter to reflector-node. #31542 (@NoxDawnsong)
- Improve
Fn()warning if not invoked. #31552 (@sunag) - Fix assignment to swizzled for var intent. #31647 (@sunag)
- Show an error message if no stack defined for assign operation. #31756 (@sunag)
- Fix bitcast type resolver. #31746 (@cmhhelgeson)
- Fix primitive vector conversion,
vec*withivec*. #31793 (@sunag)
- WebGLBackend
- Fix manual clear with MSAA render targets. #31705 (@Mugen87)
- Cache WebGL buffer when updating UBOs. #31684 (@Mugen87)
- Honor layerUpdates for array textures. #31582 (@ahaensler)
- WebGPUBackend
- Remove redundant dispose handlers. #31603 (@Mugen87)
- Align
frontFaceandcullModevalues to WebGL backend. #31769 (@Mugen87)
- WebGPURenderer
- Fix broken worker support. #31607 (@Mugen87)
- Fix
rgb9e5ufloatusage andrg11b10ufloatconstant value. #31698 (@Mugen87) - Add HDR support. #29573 (@RenaudRohlinger, @donmccurdy)
- Support
ExternalTexturewithGPUTexture#31653 (@donmccurdy) - Fix rendering into mips. #31645 (@Mugen87)
- Add support for manual mipmaps for regular textures. #31637 (@Mugen87)
- Add support for manual mipmaps for cube textures. #31639 (@Mugen87)
- Add warning when video textures with invalid color spaces are used. #31569 (@ycw)
- Fix MSAA using mipmap levels. #31544 (@NoxDawnsong)
- Add missing
rgba8unorm-srgbtoWebGPUTextureUtils. #31655 (@Mugen87) - Add support for BC4 and BC5 texture compression. #31737 (@Mugen87)
- Fix
Texture.onUpdate()call. #31752 (@Berthur) - Fix timestamp query conflict. #31762 (@sunag)
- Align
frontFaceandcullModesetup. #31784, #31769 (@sunag, @Mugen87)
- WebGPUTextureUtils
- Fix readback buffer size. #31765 (@Mugen87, @greggman)
- XRManager
- Lazily initialise
XRWebGLBindingin XR managers. #31648 (@harryhjsh) - Fix typo in getBinding JSDoc. #31656 (@vincentfretin)
- Lazily initialise
Docs
- Improve JSDoc. #31733, #31742, #31754, #31773 (@s-rigaud, @Mugen87)
- Improve Chinese translation. #31616 (@IanDingMing)
- Improve
WebXRManagerpage. #31657 (@harryhjsh)
Manual
- Improve Chinese translation. #31635, #31574, #31575, #31589, #31590 (@HappyColour, @yuangang123)
- Fix missing
hrefparameters formanual/#xx/lights. #31763 (@Rikahei) - Fix double open hyperlink by open in new tab. #31780 (@Rikahei)
Examples
- Clean up. #31725, #31700, #31696, #31643, #31623, #31651, #31736, #31738 (@Methuselah96, @linbingquan, @Mugen87, @WestLangley)
- Add
webgpu_multiple_elementsexample. #31724, #31782 (@sunag) - Add WebGPU KTX2 test demo. #31714 (@Mugen87)
- Add reflector
resolutionScaletowebgl_mirrorexample. #31692 (@WestLangley) - Add GLTF progressive example. #31625 (@marwie)
- Add WebGPU check to some compute demos. #31685 (@Mugen87)
- Improve comments in
webgpu_custom_fog_backgroundexample. #31626 (@WestLangley) - Fix
webgpu_compute_particles_fluidGUI. #31570 (@ycw) - Rename reversed depth buffer example. #31563 (@WestLangley)
- Align
webgpu_camerawith WebGL demo. #31594 (@WestLangley) - Add TSL Procedural Wood Material. #31640, #31786 (@SeeleyLogan, @bhouston)
- Add KHR animation pointer example page. #31761 (@marwie)
Addons
-
DepthOfFieldNode
- New implementation. #31547, #31554 (@Mugen87)
-
DragControls
- Fix firing events when actions are disabled. #31612 (@ahaensler)
-
FirstPersonControls
- Fix dispose not release listener. #31606 (@314159265358x)
-
GLTFExporter
- Make
getToBlobPromise()more robust. #31598 (@boggan)
- Make
-
GTAONode
- Add comments to TSL. #31676 (@Mugen87)
-
KTX2Loader
- Fix WebGPU feature detection. #31721 (@Mugen87)
- Add
VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT. #31689 (@hybridherbst) - Support
generateMipmaps=true. #31621 (@donmccurdy) - Support RGB9E5. #31611 (@donmccurdy)
- Support R11G11B10 in loader and renderers. #31613 (@donmccurdy)
- Support for BC4, BC5. #31713 (@donmccurdy)
- Add PVRTC1 RGBA support. #31771 (@donmccurdy)
-
RGBELoader
- Rename to
HDRLoader. #31604 (@mrdoob)
- Rename to
-
RGBMLoader
- Removal. #31566 (@mrdoob)
-
ShadowMapViewerGPU
- Fix
DepthTextureusage. #31673 (@sunag)
- Fix
-
SSRPass
- Add
resolutionScale. #31629 (@Mugen87)
- Add
-
SSRNode
- Use linear filtering and half float for reflection buffer. #31646 (@Mugen87)
- Improve performance and add quality setting. #31576 (@Mugen87)
- Add blurred mipmaps and honor roughness for ssr(). #31649, #3166 (@Mugen87, @sunag)
-
TSL
- Add
boxBlur(). #31556 (@Mugen87) - Align API of blur filters and deprecated
premultipliedGaussianBlur(). #31557, #31559, #31741 (@Mugen87, @sunag, @s-rigaud)
- Add
-
TSL Transpiler
- Add grouped precedence levels. #31581 (@sunag)
- Remove the need for
toVar(). #31580 (@sunag) - Fix addition of
Beforefor non++or–. #31579 (@sunag)
Tests
- Run addons unit tests. #31664 (@mkeblx)
- Add an USDZ E2E test. #31662 (@mkeblx)
r179
https://github.com/mrdoob/three.js/wiki/Migration-Guide#178--179 https://github.com/mrdoob/three.js/milestone/92?closed=1
- Global
- Optimize CI workflow by eliminating redundant setup steps. #31383 (@souhailaS)
- BatchedMesh
- Fix
setInstanceCount(). #31458 (@andreas-hilti)
- Fix
- PassNode
- Add
compileAsync(). #31501 (@Mugen87) - Provide viewport and scissor API. #31390, #31428 (@Mugen87)
- Add
- ProjectorLight
- Fix back-projection. #31473, #31474 (@Mugen87)
- Line2NodeMaterial
- Remove unused
lineWidthproperty. #31401 (@Jenychen1996)
- Remove unused
- Line3
- Add method for computing closest squared distance between line segments. #31384 (@TheBlek, @Mugen87)
- Loader
- Add
abort(). #31276 (@Mugen87, @gkjohnson)
- Add
- MaterialXNodes
- Improved MaterialX import support to align with Blender's MaterialX exporter. #31439 (@bhouston, @sunag)
- Matrix4
- Rewrite
makeOrthographic()for clarity. #31451 (@WestLangley)
- Rewrite
- NodeMaterial
- Make sure fog is applied only once. #31463 (@Mugen87)
- NodeMaterialObserver
- Add checking the lights. #31440 (@sunag)
- NodeUtils
- Ignore private sub properties in
getNodeChildren(). #31523 (@Mugen87, @sunag)
- Ignore private sub properties in
- Renderer
- Make info log evaluation more robust. #31438 (@Mugen87)
- SkeletonHelper
- Add
setColors(). #31484 (@lukehorvat)
- Add
- StorageTexture
- Add
.setSize(). #31502 (@sunag)
- Add
- Timer
- Move into core. #31385 (@Mugen87)
- TSL
- Double-check on the parents of the atomic functions to prevent errors. #31509 (@sunag)
- Add
load()function totexture(). #31510 (@sunag) - Introduce boolean for
uniform(). #31507 (@sunag) - Sequential object as parameters for Fn( { .. } ). #31498 (@sunag)
- Rename
label()tosetName(). #31490 (@Mugen87) - Add
debug()for the stack when running outside the code flow. #31486 (@sunag) - Introduce automatic use of
toVar()toassign(). #31459 (@sunag) - Introduce
computeKernel(). #31402 (@Spiri0, @sunag) - Fix
pass()build duringsample()call usingMesh. #31431 (@sunag) viewportTexture()cacheFramebufferTextureaccording toRenderTarget. #31343 (@sunag)- Introduce events. #31514 (@sunag)
- VideoTexture
- Cancel rVFC on Dispose. #31375 (@ycw)
- WebGLRenderer
- Improve reversed depth buffer support. #31508, #31495, #31499, #31496, #31500, #31464, #31481, #31466, #31370, #31391, #31426, #31410, #31405, #31407, #31512 (@WestLangley, @CodyJasonBennett, @sunag)
- Support MRT for 2d array textures. #31476 (@mrxz)
- WebGPUBackend
- Remove obsolete argument from
getDrawingBufferSize(). #31460 (@Mugen87) - Fix manual
clear()regression. #31388 (@Mugen87)
- Remove obsolete argument from
- WebGPURenderer
- Improve and fix texture bindings manager. #31497 (@sunag)
SampledTextureextends ofSamplerfor bindings. #31494 (@sunag)- Persistent video texture approach. #31416, #31425, #31423 (@sunag, @Mugen87)
- Avoid hardcoding color spaces. #31519 (@Mugen87)
- WebGPUUtils
- Ensure sample count is valid. #31352 (@ycw)
- WebXRManager
- Set glBinding separately from layer creation. #31443 (@mikeskydev)
- Disable left eye layer for right eye camera and vice versa. #31437 (@mrxz)
Docs
- Clean up. #31447, #31450 (@s-rigaud)
- Add
KTX2Exporterpage. #31441 (@mkeblx) - Add
USDZExporterpage #31417 (@mkeblx) - Improve
AnimationClippage. #31415 (@Mugen87) - Improve
KeyframeTrackpage. #31373 (@floriandotorg) - Improve
Texturepage. #31477 (@agargaro) - Improve Korean translation. #31344 (@sonwonjae)
- Improve JSDoc. #31475, #31380, #31341, #31529 (@powah, @Mugen87, @WestLangley)
Examples
- Clean up. #31504, #31483, #31485, #31412, #31411, #31379 (@Mugen87, @WestLangley, @linbingquan)
- Improved
webgpu_reflectionexample. #31409, #31372 (@mrdoob, @Mugen87) - Add
webgpu_postprocessing_dof_basic. #31445 (@Mugen87) - Upgrade meshopt_decoder.module.js to 0.22. #31449 (@zeux)
- Switch to
OrbitControlsinwebgl_shadowmapexample. #31406 (@WestLangley) - Improve AA approach in WebGPU water demo. #31354 (@Mugen87)
- Use
onLoad()inwebgpu_materials. #31362 (@andyleiserson) - Add
webgpu_compute_texture_3dexample. #31337 (@RenaudRohlinger) - Rename import from
threetothree/webgpuin WebGPU demos. #31518 (@sunag) - Add GUI to
webgpu_loader_materialxexample. #31530 (@WestLangley)
Addons
-
EXRLoader
- Added lossyDctChannelDecode. #31482 (@mrdoob)
- Introduces output-format API. #31511 (@sciecode)
- Set color space to linear-sRGB. #31525 (@WestLangley)
-
FBXLoader
- Fix vertex color check. #31420 (@Mugen87)
-
GTAOPass
- Improve cache performance. #31454 (@querielo)
- Exclude
Line2objects from AO calculation #31422 (@wyc001122)
-
HTMLMesh
- Add support for email and password inputs. #31345 (@HuangLinBao)
-
LensflareMesh
- Use
colorNodeinstead offragmentNode. #31433 (@Mugen87)
- Use
-
LightProbeGenerator
- Support
FloatTypeinfromCubeRenderTarget(). #31349 (@Mugen87)
- Support
-
OutlinePass
- Exclude Line2 objects from outline computation. #31503 (@pwlviolet)
-
RapierPhysics
- Support
RoundedBoxGeometry. #31351 (@linbingquan)
- Support
-
RoomEnvironment
- Set
emissiveIntensityinstead. #31348 (@WestLangley)
- Set
-
RoundedBoxGeometry
- Add type, parameters and
toJSON(). #31340 (@vis-prime)
- Add type, parameters and
-
SSAOPass
- Improve cache performance. #31453 (@querielo)
-
TRAANode
- New TRAA implementation. #31421 (@Mugen87, @sunag)
-
TTFLoader
- Fix when TTF has different unicode assign to same glyph index. #31386 (@Rikahei)
-
TSL Transpiler
- Fix operator precedence of GLSLDecoder. #31515 (@sunag)
-
USDZExporter
- Add option for
onlyVisible. #31489 (@mkeblx) - Export scene hierarchy. #31448 (@mkeblx)
- Use object names #31442, #31444 (@mkeblx)
- Refactor to use two stages. #31400 (@mkeblx)
- Add option for
Tests
- Clean up
Frustumtests. #31456 (@WestLangley) - Add test for
USDZExporter. #31435 (@mkeblx)
Editor
- Fix crash when geometry lacks position attribute. #31334 (@AlexRynas)
- Add support for EXR files. 01d3c943f0452ff856b4bdd162f4c86bd67dc2ee (@mrdoob)
- Load image loaders only when needed. 2f3dd3822cb270b422dae55153f69dfffd08ff85 (@mrdoob)
r178
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r177--r178 https://github.com/mrdoob/three.js/milestone/91?closed=1
- Global
- Remove deprecated code. #31254 (@Mugen87)
- Correct the blending formulas in all renderers. #31246 (@WestLangley)
- Upgrade monaco-editor. #31300 (@linbingquan)
- Initial support for
Float16Arrayin renderers. #31305 (@Mugen87)
- Clock
- Inline
performance.now(). #31295 (@linbingquan)
- Inline
- Frustum
- Honor sprite offset in
intersectsSprite(). #31307 (@Mugen87)
- Honor sprite offset in
- GLBufferAttribute
- Add
normalizedproperty. #31268 (@Rtwo-Dtwo)
- Add
- ImageLoader
- Optimize caching. #31258 (@Mugen87)
- Loader
- Use unique cache keys per loader type. #31315, ac07a8accb1228707e694a221d9ed8ab71d694f6, ee327fd8e13ae7d6e5fbcd6506a4006405aa5232 (@Mugen87, @mrdoob)
- NodeBuilder
- Fix interpolation specifier. #31222 (@cmhhelgeson)
- NodeMaterial
- Honor
material.premultipliedAlphain the shader. #31166 (@WestLangley)
- Honor
- Quaternion
- Update epsilon in
setFromUnitVectors(). #31302 (@Mugen87)
- Update epsilon in
- RenderObject
- Check attributes version of the geometry. #31227 (@sunag)
- SampleNode
- Remove PURE annotation. #31293 (@Mugen87)
- TSL
- Fix
Fnas parameter. #31214 (@sunag) - Introduce
sample(). #31287 (@sunag) - Introduce
textureBicubicLevel(). #31288 (@sunag) - Move
TriplanarTexturesNodetotriplanarTextures()Fn. #31285 (@sunag) - Move
EquirectUVNodetoequirectUV()Fn. #31283 (@sunag) - Move
MatcapUVNodetomatcapUVFn constant. #31284 (@sunag) - Remove transformed* prefix. #31271 (@sunag)
- Fix
convertToTexture()auto resize. #31277 (@sunag) - Fix
outgoingLightredeclaration. #31266 (@sunag) - Introduce Chromatic Aberration. #31236 (@pashaydev)
- Fix inconsistent chaining for
step()(Parameter order). #31241 (@sunag) - Rename
premulttopremultiplyAlpha. #31240 (@sunag) - Introduce
tangentViewFrameandbitangentViewFrame. #31282 (@sunag) - Use
node.nodeTypeinstead ofsafeGetNodeType(). #31328 (@sunag)
- Fix
- WebGLPrograms
- Don't use flat shading with enabled wireframe. #31242 (@Mugen87)
- Fix cache key with gradient maps. #31292 (@Mugen87)
- WebGLRenderer
- Correctly restore render target during transmission pass. #31320 (@Mugen87)
- WebGPUConstants
- Add missing features. #31323 (@cmhhelgeson)
- WebGPURenderer
- Use correct invalidation array in WebGL backend. #31255 (@cabanier)
- Make MSAA with MRT work with WebGL backend. #31228 (@Mugen87)
- Honor depth/stencil in
blitFramebuffer(). #31219 (@Mugen87) - Add
Storage3DTextureandStorageArrayTexture. #31175, #31327 (@Spiri0, @sunag)
- XRManager
- Silence opaque framebuffer warning. #31201 (@cabanier)
- XRRenderTarget
- Clean up. #31210 (@Mugen87)
Docs
- Improve JSDoc. #31261, #31224, #31317 (@linbingquan, @SamJB123)
Manual
- Open external links in new tab. #31273 (@Mugen87)
- Fix code typo in scene graph page. #31289 (@MeirArani)
- Improve French translation. #31252 (@AlexandreGagne10)
- Fix links to homepage. #31301 (@Mugen87)
Examples
- Clean up. #31265, #31303 (@zeevick10, @Methuselah96)
- Improve water demo. #31291 (@Mugen87)
- Add BatchedMesh LOD and BVH example page. #31239 (@agargaro)
- Merge geometry demos. #31253 (@Mugen87)
- Fix GUI colors in
webgpu_compute_clothexample. #31232 (@WestLangley) - Fix
instancedArray()usage ofwebgpu_compute_birds. #31230 (@sunag) - Fix texture path of
webgpu_sandbox. #31217 (@sunag) - Merge OBJ demos. #31216 (@Mugen87)
- Add new path demo. #31209 (@Mugen87)
- Add
webgpu_reflection_roughness. #31294, c06fa765243ce8379b539d73e6690914bec2039a (@sunag) - Improve lottie example. #31321 (@linbingquan)
- Add window resize event to
webgl_geometry_extrude_shapes. #31324 (@linbingquan)
Addons
-
ArcballControls
- Add
passive: falsefor wheel event. #31259 (@juji)
- Add
-
FBXLoader
- Gracefully handle missing color data. #31248 (@Mugen87)
-
RapierPhysics
- Add
removeMesh(). #31296, #31298 (@linbingquan)
- Add
-
RoundedBoxGeometry
- Fix parameters of the parent class. #31319 (@linbingquan)
-
TransformControls
- Make gizmo colors configurable. #31262 (@Mugen87)
-
TSL Transpiler
- Add support for
switchstatements. #31272 (@cmhhelgeson) - Fix unary negate after arithmetic operator. #31297 (@sunag)
- Add simplified
Fn()layout. #31299 (@sunag) - Introduce Linker and improvements. #31314 (@sunag)
- Introduce
WGSLEncoder. #31329 (@sunag)
- Add support for
Editor
- Fix typo in comment. #31264 (@vtjl10)
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)
- 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
- 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)
- 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 (@cabanier)
- Fix blend factor nomenclature. #31188 (@WestLangley)
- Honor
- 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)
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)
r176
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r175--r176 https://github.com/mrdoob/three.js/milestone/89?closed=1
- Global
- Remove legacy code. #30821 (@Mugen87)
- Remove Luminance and LuminanceAlpha format. #30934 (@gkjohnson)
- ArrowHelper
- Replace cylinder with cone geometry. #30867 (@shlomnissan)
- Animation
- Fix ReferenceError in non-broswer environment. #30835 (@chirsz-ever)
- Background
- Make sure background nodes can be disposed of. #30938 (@Mugen87)
- BatchedMesh
- Fix
toJSON(),ObjectLoaderintegration. #30965 (@gkjohnson)
- Fix
- CapsuleGeometry
- Add
heightSegmentsparameter. #30868 (@mkeblx) - Change length param to height, fix UVs. #30915 (@mkeblx)
- Add
- ExtrudeGeometry
- Fix regression introduced with last release. #30822 (@mlasala45)
- LightsNode
- Honor spotlight maps in cache key. #30940 (@Mugen87)
- NodeMaterial
- Fix alpha of vertex-color. #30974 (@sunag)
- NodeMaterialObserver
- Force refresh when rendering velocity. #30840 (@Mugen87)
- RenderTarget
- Fix depth texture assignment regression. #30921 (@Spiri0)
- ShadowNode
- Inherit camera.layers only if shadow.camera.layers is not set. #30877 (@RenaudRohlinger)
- TSL
- Don't flip normals when using flat shading. #30823 (@Mugen87, @sunag)
- Fix
frontFacingwhen usingmaterial.flatShading. #30828 (@sunag) - Add
dFdxanddFdywarnings. #30831 (@sunag) - Show shader stage in
debug()message. #30833 (@sunag) - Fix
blur()on Framebuffer. #30845 (@RenaudRohlinger) - Fix
bitangent*when usingmaterial.flatShading. #30837 (@sunag) - Fix
instance()optional parameter. #30848 (@sunag) - Introduce
varying.setInterpolation(). #30582 (@cmhhelgeson, @sunag) - Fix optional
Fnparameters. #30884 (@sunag) - Fix
texture()matrix sync. #30893 (@sunag) - Fix early-z rejection. #30891 (@sunag)
- Add
increment()anddecrement()and fix unsualfor()expression syntax for transpiler. #30912 (@Mugen87, @sunag) - Fix
dispose()when usingreflector(). #30933 (@Mugen87) - Fix and improve
bvecoperators. #30922 (@sunag) - Fix
debug()changes the compiled code. #30944 (@sunag) - Add switch/case. #30935 (@Mugen87)
- Add expression support for
loop( { update: ... } ). #30947 (@sunag) - Add
Stack()and.toStack(). #30956 (@sunag) - Cache
getShadowRenderObjectFunction(). #30969 (@sunag) - Fixes the return value of
atomic*nodes. #30971 (@sunag) - Auto-cache
atomic*nodes. #30972 (@sunag) - Fix
denoise()sampler texture. #30975 (@sunag) - Improve
debug()callback changing to( builder, code )signature. #30976 (@sunag)
- VelocityNode
- Fix initial value of previous model matrix. #30839 (@Mugen87)
- WebGLRenderer
- Fix binding
__webglFramebufferwhen mipmaps are used. #30746 (@haxiomic) - Support
alphaToCoveragewith shadows. #30871 (@Mugen87)
- Fix binding
- WebGPURenderer
- Introduce Shadow Map Array. #30830 (@RenaudRohlinger)
- Introduce compatibilityMode. #30854, #30869, #30875 (@sunag)
- Disable draw call when
object.count = 0. #30881 (@cmhhelgeson) - Make
material.transparent behave as in WebGLRenderer. #30862 (@rkreis-v) - Add Multiview support. (@cabanier)
- Introduce
renderer.highPrecision. #30970 (@sunag)
- WGSLNodeBuilder
- Improve
isCustomStruct()checking. #30525 (@Spiri0)
- Improve
- XRManager
- Request reference space for both layers and non layers. #30902 (@danrossi)
Docs
- Clean up. #30888, #30927, #30978 (@rizzler329842, @notgod6, @arcs-)
- Simplify JSDoc output directory. #30815 (@Mugen87)
- Fix typos and types. #30843, #30874, #30880, #30879 (@s-rigaud)
- Improve
SkinningNode. #30852 (@Mugen87) - JSDoc: Add import section for addons. #30853, #30860 (@Mugen87)
- Improve Chinese translation. #30887 (@linzhou559)
Examples
- Clean up. #30820, #30979 (@Mugen87, @Methuselah96)
- Added additional Rapier physics examples. #30818 (@NikLever)
- Fix AR hit-test. #30866 (@mkeblx)
- Use
InstancedMeshinwebgl_clipping_advanced. 2cb9218b049b93c0b412e4b1e73ab340bf87e6ba (@mrdoob) - Fix WebXR Haptics example when entering VR from Oculus Browser button. #30859 (@arturitu)
- Add external "3d tiles" globe example. #30883, #30907 (@gkjohnson)
- Use post-processing and improve description in reverse depth buffer demo. #30941 (@CodyJasonBennett)
- Add
webgpu_causticsexample and shadow revisions. #30962 (@sunag) - Call
ImageBitmap.close()inwebgl_loader_imagebitmap. #30977 (@Mugen87)
Addons
-
Global
- Fix SSAA/TRAA state reset. #30838 (@Mugen87)
- Clean up. #30917, #30918, #30953 (@satelllte, @Mugen87)
-
AfterImageNode
- Fix usage of multiple nodes. #30834 (@Makio64)
-
GLTFLoader
- Remove support detection for WebP and AVIF. #30864 (@Mugen87)
-
IFFParser
- Fix missing Debbuger attribute declarations #30946 (@s-rigaud)
-
ImprovedNoise
- Use
MathUtils.lerp(). #30905 (@satelllte)
- Use
-
LottieLoader
- Deprecated loader, inline library usage. #30896 (@Mugen87)
-
MD2CharacterComplex
- Fix
frontDecelerationattribute name. #30817 (@s-rigaud)
- Fix
-
OutlinePass
- Fix using with BatchedMesh. #30952 (@luigidenora)
-
PointerLockControls
- Constant for mouse sensitivity #30966 (@satelllte)
-
RapierPhysics
- Add heightfield support. #30906 (@andytriboletti)
-
RoomEnvironment
- Use
InstancedMesh. df3b15e5f4a35aa083138d71965b1352f4102685 (@mrdoob)
- Use
-
TileShadowNode
- Fix shadow manual update. #30863 (@RenaudRohlinger)
-
TSLTranspiler
- Add valid
!=. #30890 (@s-rigaud) - Fix typo. 2edea69e6e6bb213198a9864034824b856aa9c09 (@sunag)
- Add valid
-
Water2Mesh
- Fix missing
material.transparent=true. #30892 (@sunag)
- Fix missing
Editor
- Fix selection box update when reparenting objects in hierarchy. #30904 (@lixinde)
r175
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r174--r175 https://github.com/mrdoob/three.js/milestone/88?closed=1
- Global
- Remove deprecated code. #30621 (@Mugen87)
- AnalyticLightNode
- Fix call of
setupShadowNode(). #30713 (@s-rigaud)
- Fix call of
- AnimationClip
- Deprecate
parseAnimation(). #30625 (@Mugen87)
- Deprecate
- ArrayElementNode
- Optimize indexes. #30741 (@sunag)
- AtomicFunctionNode
- Add inline support. #30732 (@sunag)
- Attributes
- Fix
nullcheck. #30694 (@Mugen87)
- Fix
- Backend
- Move
trackTimestampto parent class. #30714 (@s-rigaud)
- Move
- BufferGeometry
- Fix clone index data copy. #30680 (@s-rigaud)
- Controls
- Require
elementinconnect(). #30772 (@mrdoob)
- Require
- Earcut
- Copy mapbox/earcut file into core libs. #30756 (@gkjohnson)
- ExtrudeGeometry
- Automatically clean shape data. #30750 (@mlasala45)
- FileLoader
- Avoid
undefinedfor members. #30622 (@Mugen87)
- Avoid
- ImageUtils
- Add optional
typeparameter togetDataURL(). #30751 (@Mugen87)
- Add optional
- Material
- Add
allowOverride. #30753 (@Mugen87)
- Add
- MorphNode
- Improve performance. #30742 (@sunag)
- NodeBuilder
- Add abstract reference for
buildFunctionCode(). #30712 (@s-rigaud)
- Add abstract reference for
- NodeMaterial
- Add support for
compute()integrated into the material. #30768 (@sunag)
- Add support for
- OperatorNode
- Fix
notEqual()redundant bool conversion. #30740 (@sunag)
- Fix
- Renderer
- Disallow render target resizing while in XR. #30738 (@cabanier)
- ShadowMaskModel
- Fix signatures. #30764 (@Mugen87)
- TextureNode
- Add
blur()check and warning. #30722 (@sunag)
- Add
- TSL
- Simplify expression output. #30691 (@RenaudRohlinger)
- Add
samplerComparison. #30734 (@sunag) - Fix
equal()inconsistent. #30777 (@sunag) - Allow
max()/min()to take an arbitrary number of arguments. #30780 (@sunag) - Avoid name collisions. #30785 (@sunag)
- Improve warnings. #30783 (@sunag)
- Deprecated
modInt()and minor fixes. #30790, #30796 (@sunag) - Add
debug(). #30797 (@sunag) - Add while to
Loop(). #30807 (@sunag) - Simplified
Fn()layout. #30810 (@sunag) - Improve
vec*checks and warnings. #30811 (@sunag)
- WebGLBackend
- Bring back 3D functionality for
copyTextureToTexture(). #30584, #30644 (@zonkypop, @Mugen87)
- Bring back 3D functionality for
- WebGLRenderer
- Refactor
setRenderTargetTextures(). #30628 (@cabanier) - Fixed
readRenderTargetPixelsAsync()readability check. #30672 (@greyb1t) - Fix reference to
drawingBufferColorSpace. #30707 (@s-rigaud) - Fix
setReversed()soreverseDepthBuffer: trueworks. #30809 (@haxiomic, @CodyJasonBennett)
- Refactor
- WebGPUAttributeUtils
- Use correct buffer offset for
updateRanges. #30617 (@zonkypop) - Add int8/uint8 patch. #30749 (@sunag)
- Use correct buffer offset for
- WebGPUBackend
- Make
copyTextureToTexture()work with 3D textures. #30618 (@zonkypop)
- Make
- WebGPUConstants
- Fix name of
RG11B10UFloat. #30717 (@s-rigaud)
- Fix name of
- WebGPURenderer
- Fix texture view caching and dispose event stacking #30647 (@RenaudRohlinger)
- Honor
material.outputNodeif used with MRT. #30659 (@sunag) - RenderBundle support transparent objects. #30689 (@RenaudRohlinger)
- RenderBundle use correct LightsNode. #30700 (@RenaudRohlinger)
- Revisions for release. #30803 (@sunag)
- WebGPUTextureUtils
- Fix reference for
BC4RSnorm. #30678 (@s-rigaud)
- Fix reference for
- XRManager
- Fix up AA for WebXR and use multisample extension only when needed. #30724 (@cabanier)
- Add more integrated support for WebXR Layers. #30730 (@cabanier)
Manual
- Move guides from old docs to manual. #30736, 49f25c6e5ee731e1daf0c3978bd59cda62f76c74 (@Mugen87, @mrdoob)
Docs
- Add more JSDoc. #30620, #30624, #30629, #30631, #30633, #30638, #30641, #30642, #30646, #30649, #30651, #30656, #30658, #30662, #30675, #30686, #30692, #30702, #30705, #30719, #30727, #30733, #30752, #30793 (@Mugen87)
- Fix typings and typos. #30626, #30632, #30664, #30665, #30677, #30711, #30723, #30721, #30776, #30789, #30791 (@s-rigaud, @omahs)
- Improve Chinese translation. #30683 (@kang-git)
Examples
- Clean up. #30798, #30799 (@s-rigaud)
- Cleanup volumetric lighting examples. #30660 (@sunag)
- Improve
webgpu_compute_geometryexample. #30699 (@cmhhelgeson) - Avoid relying on implicit event parameter. #30792 (@s-rigaud)
- Add new examples. #30695 (@lo-th)
Addons
-
AMFLoader
- Fix materialId reference. #30668 (@s-rigaud)
-
AnimationClipCreator
- Default to empty string for clip name. #30666 (@s-rigaud)
-
AsciiEffect
- Avoid useless split operations. #30667 (@s-rigaud)
- Fix values types. #30710 (@s-rigaud)
-
CSMShader
- Add missing
getPointShadow()argument. #30771 (@brentyi)
- Add missing
-
EXRLoader
- Fix string comparison. #30709 (@s-rigaud)
-
GLTFExporter
- Delete invalid and outdated fallback. #30744 (@Bajdzis)
-
GLTFLoader
- Fix bad reference to
PATH_PROPERTIES. #30669 (@s-rigaud)
- Fix bad reference to
-
LDrawLoader
- Wrong call to
parseModel(). #30670 (@s-rigaud) - Fix error message. #30801 (@s-rigaud
- Wrong call to
-
LUTImageLoader
- Harmonize ctor. #30720 (@Mugen87)
-
LWOLoader
- Fix method calls. #30802 (@s-rigaud)
-
MD2Loader
- Clip creation requires additional argument. #30671 (@s-rigaud)
-
OculusHandModel
- Fix reference to path attribute. #30679 (@s-rigaud)
-
ProgressiveLightMapGPU
- Disclove potpack hidden behavior. #30716 (@s-rigaud)
-
PointerLockControls
- Add
unadjustedMovementoptiontolock(). #30687 (@james090500)
- Add
-
USDZExporter
- Reuse instantiated material for
buildXform(). #30661 (@zphr)
- Reuse instantiated material for
-
USDZLoader
- Fix Blob options. #30708 (@s-rigaud)
-
ViewHelper
- Adjust viewport position for WebGPU renderer. #30735 (@Child-qjj)
-
VolumeSlice
- Comment out broken code path. #30715 (@s-rigaud)
Editor
- Fix publish. #30690 (@Mugen87)
- Improve Chinese translation. #30787 (@linbingquan)
- Add color space options for background textures. #30794 (@Mugen87)
r174
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r173--r174 https://github.com/mrdoob/three.js/milestone/87?closed=1
- Global
- Improve ESLint setup. #30509, #30513, #30580 (@s-rigaud)
- Animation
- Rename
frameparameter toxrFrame. #30558 (@Mugen87)
- Rename
- BatchedMesh
- Deprecate old instancing render paths. #30550 (@gkjohnson)
- GLSLNodeBuilder
- Check texture type when declaring usampler3D/sampler3D uniforms. #30608 (@zonkypop)
- MeshNormalNodeMaterial
- Convert packed normal to working color space. #30590 (@WestLangley, @cmhhelgeson)
- PMREMGenerator
- Add size and position options to
fromScene(). #30477 (@Mugen87, @Spiri0)
- Add size and position options to
- PMREMNode
- Manage own generator, fix caching. #30504 (@Mugen87)
- Renderer
- Disable autoClear in the output pass. #30454 (@Mugen87)
- Return self in
init(). #30556 (@CodyJasonBennett)
- RenderTarget
- Fix copy of images. #30585 (@Mugen87)
- SpriteNodeMaterial
- Set
transparent=trueas default. #30435 (@sunag) - Fix
scaleNodetype conversion. #30545 (@sunag)
- Set
- StructTypeNode
- Fix inclusion when added to the layout. #30439 (@sunag)
- TSL
- Introduce
RaymarchingBoxandraymarchingTexture3D. #30495 (@sunag)
- Introduce
- WebGLBackend
- Configure scissor/viewport before clear. #30452 (@Mugen87)
- Fix depth regression. #30527 (@Mugen87)
- Optimize vertex state definition. #30562 (@Mugen87)
- Only invalidate framebuffers on supported devices. #30606 (@Mugen87)
- WebGLRenderer
- Assign
currentRenderStateinrenderer.compile(). #30607 (@cmhhelgeson)
- Assign
- WebGPUBackend
- Add support for
setStencilReference(). #30470 (@Mugen87) - Fix clear(). #30485 (@Mugen87)
- Add support for
- WebGPURenderer
- Fix clear for default framebuffer. #30457 (@RenaudRohlinger)
- Add
setOutputRenderTarget()#30459 (@sunag) - Fix info metrics. #30483 (@Mugen87)
- Simplify clear color generation. #30486 (@Mugen87)
- Fix color space of clear colors. #30488 (@Mugen87)
- Honor polygonOffset with WebGPU backend. #30496 (@Mugen87)
- Add tone-mapping/output color space support for WebXR. #30499 (@sunag)
- Fix output depth struct. #30514 (@sunag)
- Fix storage buffer binding update and 4 bytes alignment. #30529 (@RenaudRohlinger)
- Support rotation of env maps. #30528 (@Mugen87, @sunag)
- Fix storage buffer update range. #30532 (@RenaudRohlinger)
- Fix
mat2()arguments. #30543 (@RenaudRohlinger) - Add volumetric lighting. #30530 (@sunag)
- Harmonize clear of MRT textures. #30586 (@Mugen87)
- XRManager
- Simplify MSAA setup. #30500 (@Mugen87)
- Mark XR rendertarget as needing a resolve for depth or stencil. #30565 (@cabanier)
Manual
- Clean up. #30480 (@fengT-T)
Docs
- Improve JSDoc setup. #30430, #30443, #30449, #30453, #30460, #30461, #30466, #30542, #30611 (@Mugen87)
- Fix typos and types. #30510, #30511, #30546, #30548, #30555, #30557, #30559, #30602, #30603 (@s-rigaud, @Mugen87)
- Improve dispose guide. #30441, #30524 (@Mugen87, @catalin-enache)
- Add more JSDoc. #30442, #30534, #30541, #30547, #30552, #30573, #30574, #30579, #30588, #30592, #30601, #30610, #30614, #30615 (@Mugen87)
- Add instructions for improving editor auto-completion. #30444 (@Makio64)
- Add
MattercrafttoWrappers and Frameworksguide. #30465 (@nyan-left) - Improve Chinese translation. #30475 (@haiyoucuv)
- Improve
LODpage. #30591 (@guiseek) - Improve
Raycasterpage. #30478 (@trusktr) - Improve
displacementBiasdescription. #30564 (@s-rigaud)
Examples
- Clean up. #30432 (@Mugen87)
- Update particle count to 500k in WebGPU compute example. #30455 (@Makio64)
- Adjust volume instances demo to write to depth. #30464 (@gkjohnson)
- Fix time usage. #30498 (@Mugen87)
Addons
-
3MFLoader
- Fix parsing of assets with sub models. #30491 (@Jack-J-Young)
-
AfterImageNode
- Refactor code and improve demo. #30433 (@Mugen87)
-
CCDIKSolver
- Add
blendFactorsupport. #30415 (@anishwij)
- Add
-
DDSLoader
- Fix incorrect alpha when loading 24-bit uncompressed textures. #30598 (@miere43)
-
FBXLoader
- Handle out-of-bounds material assignments. #30581 (@hybridherbst)
-
MTLLoader
- Add support for displacement maps. #30508 (@krotalias)
-
OutlinePass
- Honor original
overrideMaterial. #30578 (@Mugen87)
- Honor original
-
Raymarching
- Move
raymarchingTexture3Dto example and updatewebgpu_volume_perlin. #30531 (@sunag)
- Move
-
Reflector
- Add
forceUpdate. #30569 (@Shane-oo)
- Add
-
SelectionHelper
- Ensure DOM cleanup. #30473 (@trusktr)
-
Timer
- Add
connect()/disconnect(). #30551 (@Mugen87)
- Add
-
TSL Transpiler
- Support matrix types. #30501 (@Mugen87)
- Support varying. #30506 (@Mugen87)
- Support more matrix types, bool vectors. #30517 (@CodyJasonBennett)
- Basic texture support. #30521 (@Mugen87)
- Add support for
discard. #30538 (@Mugen87)