Releases: mrdoob/three.js
r160
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r159--r160
https://github.com/mrdoob/three.js/milestone/73?closed=1
- Global
- Clarify warning messages. #27288 (@WestLangley)
- Remove deprecated code. #27341 (@Mugen87)
- ImageBitmapLoader
- Cache promises to deduplicate requests. #27270 (@Archimagus)
- Quaternion
- RectAreaLight
- Only use float textures if linear interpolation is supported. #27315 (@gkjohnson)
- Shaders
- Sphere
- Triangle
- Return
null
ingetBarycoord()
if triangle is degenerated. #27311 (@gkjohnson) - Return
null
l ingetInterpolation()
if triangle is degenerate. #27331 (@gkjohnson)
- Return
- WebGLRenderer
- Fix level mipmap and support
CompressedArrayTexture
incopyTextureToTexture3D()
. #27313 (@RenaudRohlinger) - Add
WEBGL_clip_cull_distance
support. #27371 (@RenaudRohlinger, @Mugen87) - Add support for
AgX
Tone Mapping. #27366, #27403, #27409 (@gkjohnson, @donmccurdy, @Mugen87)
- Fix level mipmap and support
- WebGLShadowMap
- WebGLTextures
- WebGLUniformsGroups
- Correct 3x3 to 3x4 matrix conversion in UBO. #27284 (@RenaudRohlinger)
- UBO Boolean support and fix cache on number. #27285 (@RenaudRohlinger)
- Add array support in UBOs. #27293, #27374 (@RenaudRohlinger)
Documentation
- Improve Chinese translation. #27298, #27408 (@puxiao, @SADYX)
- Improve
Material
page. #27416 (@LR17) - Improve
SceneUtils
page. #27372 (@linbingquan) - Improve
SkinnedMesh
page. #27303 (@Mugen87) - Add Jolt to physics list. #27335 (@josephrocca)
Examples
- Clean up. #27322, #27469, fc292ae (@Methuselah96, @mrdoob, @ycw)
- Fix RTT coord Y in
webgpu_compute_particles_rain
example. #27286 (@sunag) - Update
3DMLoader
docs and example CDN script. #27289 (@ianpetrarca) - Add
webgpu_backdrop_water
example. #27397, #27404, caf8c1f (@sunag, @mrdoob) - Add
webgpu_compute_particles_snow
example. #27400, #27404, de3d5ff (@sunag, @mrdoob) - Use relative references inside
examples/jsm
. #27381 (@hybridherbst) - Change default tone mapping in
webgl_tonemapping
example. 3a5de8c (@mrdoob) - Improve
webgpu_compute_particles
example. b7ebd00 (@mrdoob)
-
CSM
- Fix lights when shadow maps are disabled. #27358 (@OndrejSpanel)
-
CurveModifier
- Add multiple material support. #27324 (@sheepdragon)
-
DracoLoader
- Fix not calling
onError()
. #27306, #27308 (@Benjythebee)
- Fix not calling
-
GTAOPass
-
LineMaterial
- Fix clipping at edge artifacts. #27349 (@gkjohnson)
-
MaterialXLoader
- Add
normalNode
andemissiveNode
. #27356 (@hybridherbst)
- Add
-
NodeMaterial
- Log warnings instead of throwing on redefinitions of node types. #27357 (@hybridherbst)
- Mark directory as effectful for Webpack/Vite. #27376 (@CodyJasonBennett)
-
OrbitControls
-
StorageTexture
-
Timer
-
TSL
-
USDZExporter
- Export from compressed texture data. #27382 (@jeffbeene)
- Only import required modules. #27383 (@jeffbeene)
-
WebGPURenderer
- Add initial support of
MaterialX
. #27294 (@sunag) - Support
getArrayBufferAsync()
for WebGL backend. #27355 (@aardgoose) - Initial support for PostProcessing,
GaussianBlurNode
andQuadMesh
. #27369 (@sunag) - Fix use of same material with different skeleton. #27398 (@sunag)
- Bug fixes for
WebGLBackend
. #27410 (@aardgoose)
- Add initial support of
-
XRButton
Editor
r159
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r158--r159
https://github.com/mrdoob/three.js/milestone/72?closed=1
- AudioLoader
- BatchedMesh
- Clean up. #27231 (@gkjohnson)
- Fix failure with
MeshBasicMaterial
. #27074 (@gkjohnson) - Use
texelFetch
andtextureSize
. #27077 (@gkjohnson) - Add
setGeometryAt()
andaddGeometry()
methods. #27078, #27099 (@gkjohnson) - Add multi draw support. #27109, #27111, #27130, #27176, #27178 (@gkjohnson)
- Add built-in material support. #27115, #27229 (@gkjohnson)
- Add serialization and
copy()
support. #27131, #27179, #27201 (@gkjohnson) - Add support for frustum culling per batched geometry. #27120, #27219 (@gkjohnson)
- Add object-level bounds. #27145 (@gkjohnson)
- Add support for raycasting. #27146 (@gkjohnson)
- Add support for per-object opaque and transparent sorting. #27168, #27202, #27213, #27236, #27258 (@gkjohnson)
- Move to core. #27200, 2b3883a (@gkjohnson, @mrdoob)
- Update example, fix depth conversion & auxiliary buffer. #27228 (@sciecode)
- BufferAttribute
- Add support for multiple update ranges. #27103, #27148, #27149 (@gkjohnson)
- InstancedMesh
- Add missing transformation for tangents. #27128 (@gkjohnson)
- MeshPhysicalMaterial
- Object3D
- Add optional target to
getObjectsByProperty()
. #27225 (@agargaro) - Add
onBeforeShadow()
andonAfterShadow()
callbacks. #27250 (@RenaudRohlinger)
- Add optional target to
- Skeleton
- Remove need skinning texture size uniform by using
textureSize
function. #27117, #27127 (@gkjohnson, @Mugen87) - Compute a smaller texture dimension. #27211 (@gkjohnson)
- Remove need skinning texture size uniform by using
- WebGLAttributes
- Strict buffer size check when updating data. #27188 (@eXponenta)
- WebGLArrayRenderTarget
- Missing
options
in constructor. #27249 (@RenaudRohlinger)
- Missing
- WebGLCubeMap
- WebGLUniforms
- Add
sampler2DShadow
support. #27252 (@RenaudRohlinger)
- Add
- WebXRManager
- Synchronize sizing with renderer. #26905 (@CodyJasonBennett)
Documentation
- Improve formatting of matrices. #27079 (@ycw)
- Improve Arabic translation. #27118, #27129, #27140 (@mourra950)
- Improve Portuguese translation. #27144 (@south3452)
- Improve
BatchedMesh
page. #27175, #27209 (@gkjohnson, @Methuselah96) - Improve
DirectionalLightHelper
page. #27122, #27135 (@amin-da, @Mugen87) - Improve
Libraries and Plugins
page. #27182 (@JaimeTorrealba) - Improve
LineDashedMaterial
page. #27278, #27276 (@Mugen87, @WestLangley) - Improve
MeshPhysicalMaterial
page. #27281, #27282 (@gkjohnson, @Mugen87) - Improve
Object3D
page. #27257 (@Mugen87) - Improve render target pages. #27253, #27254 (@Mugen87)
Examples
- Clean up. #27105, #27226, #27262, #27267, #27272, 966e9fe (@sunag, @CodyJasonBennett, @Mugen87, @linbingquan, @mrdoob)
- Disable minimap in
webgpu_tsl_editor
example. #27113 (@WestLangley) - Add
webgl_postprocessing_hbao
example. #27114, #27185 (@Rabbid76) - Add
glsl
tag and format fragment shaders with tabs. #27206 (@linbingquan) - Add
webgl_loader_texture_hdrjpg
example. #27183, #27277, 90ee2ef, c15506e, 9bcf8ab (@daniele-pelagatti, @mrdoob) - Add Safari fix for
OffscreenCanvas
inwebgl_worker_offscreencanvas
example. #27283 (@RenaudRohlinger) - Removed minimap from
webgpu_tsl_transpiler
example. b5e44da (@mrdoob)
-
ColladaLoader
- Remove unused constructor. #27119 (@gkjohnson)
-
FBXLoader
- Fix polygon triangulation. #27094 (@StrandedKitty)
- Fix rotation discontinuities. #27057 (@solinehayes)
- Fix error when loading one frame animation. #27143 (@solinehayes)
- Add
UnitScaleFactor
to scene'suserData
. #27187 (@Mugen87) - Support loading DDS textures. #27204 (@Mugen87)
-
GLTFExporter
-
GLTFLoader
- Fix use of
setPath()
with external resources. #27106 (@Archimagus) - Initial support for
EXT_materials_bump
. #27036 (@bhouston)
- Fix use of
-
HTMLMesh
- Clear the canvas before starting to draw. #27092 (@Elettrotecnica)
- Create canvas in its original position instead of
(0,0)
. #27091 (@Elettrotecnica)
-
NodeMaterial
ViewportNode
revision. #27096 (@sunag)- Ensure
onBuild()
uses the correct material reference. #27097 (@Mugen87) - Mark as effectful for Webpack. #27189 (@CodyJasonBennett)
- Fix hue code in
ColorAdjustmentNode
. #27197 (@sunag) - Use type
vec3
when getting color attribute. #27210 (@andreasrosdal) - Rename
colorSpace
tocolorSpaced
property. #27238 (@sunag) - Prioritize
depthNode
. #27244 (@sunag)
-
NRRDLoader
-
Octree
-
OrbitControls
-
SVGLoader
-
TextureHelper
- Add new addon for debugging textures. #27151 (@donmccurdy)
-
TextureUtils
-
TSL
-
USDZExporter
-
USDZLoader
-
WebGPURenderer
- Clean up. #27090 (@sunag)
- Add
setRenderObjectFunction()
. #27068 (@sunag) - Support depth buffer copies in
WebGLBackend.copyFramebufferToTexture()
. #27083 (@aardgoose) - Add call ID. #27101 (@sunag)
- Add support for shared and unique uniform groups. #27134 (@sunag)
- Fix lights hash. #27150 (@sunag)
- Add support for
DataArrayTexture
. #27190 (@sunag) - Add support for morph textures. #27207, #27218 (@sunag)
- Move pipeline cache data to backends. #27220 (@sunag)
- Add
Color4
support. #27222 (@sunag) - Depth pixel & logarithmic depth buffer. #27243 (@sunag)
- Implement
readRenderTargetPixelsAsync()
for WebGL backend. #27006 (@aardgoose) - Fix strip index format. #27279 (@sunag)
- Added
webgpu
string indata-engine
. d4f278c (@mrdoob)
Tests
Editor
- Clean up. e1e2409 (@mrdoob)
- Fix KTX2 support with glTF assets. #27191 (@Mugen87)
- Refactor creation of
GLTFLoader
. #27193 (@Mugen87) - Unified
Viewport.Camera
andViewport.Shading
. 1151545 (@mrdoob) - Moved grid and helpers settings to
Viewport.Controls
. e0d329d (@mrdoob) - Fixed helpers checkbox also hiding the grid. 116382c (@mrdoob)
- Removed IndexedDB prefixes. e49c913 (@mrdoob)
- Fixed
UINumber
mobile UX. a45cf54 (@mrdoob)
r158
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r157--r158
https://github.com/mrdoob/three.js/milestone/71?closed=1
- Global
- Add
test-circular-deps
script. #26926 (@marcofugaro) - Add
three/addons
target for npm. #26910, #27003 (@CodyJasonBennett) - Fix typos. #27020 (@thapasusheel)
- Add
- Box3
- Material
- PMREMGenerator
- Shaders
- SkinnedMesh
- Vector3
- Optimize
applyQuaternion()
. #26456, #27025 (@infusion, @WestLangley)
- Optimize
- WebGLProgram
- WebGLRenderer
Documentation
- Remove outdated links from
list.json
. #26867 (@Mugen87) - Use MathML for math syntax. #26887, #26892, #26896 (@ycw)
- Improve
CapsuleGeometry
page. #27005 (@Mugen87) - Improve
Creating a scene
page. #26895 (@ycw) - Improve
Lensflare
page. #27008 (@devxprite) - Improve
Material
page. #27000 (@fleroviux) - Improve
Matrix4
page. #26893 (@ycw) - Improve
Quaternion
page. #26936 (@Mugen87) - Improve
WebGLRenderer
page. #26961, #26963, #26972 (@Mugen87) - Improve Chinese translation. #26945, #26952, #26953, #27001, #27032 (@cswwww, @puxiao)
- Improve Korean translation. #26977, #26986 (@Sangminnn)
- Add page for
XREstimatedLight
. #27041 (@snowzurfer
Examples
- Clean up. #26869, #26870, #26871, #26955, #26969, #26981, #27015, #27039, #27050, #27059 (@Methuselah96, @linbingquan, @Mugen87, @WestLangley, @mkkellogg)
- Track pointer in
misc_exporter_exr
example. #26890 (@WestLangley) - Use
OutputPass
inwebgl_postprocessing_fxaa
example. #26927 (@Mugen87) - Make
webgl_postprocessing_smaa
example more configurable. #26934 (@Mugen87) - Match all words, in any order in search. #26971 (@sunag)
- Add shared skeleton setup to
webgl_animation_multiple
. #26995 (@Mugen87) - Don't expose LWO parsers. #26996 (@CodyJasonBennett)
- Added
webgpu_compute_particles_rain
example. #27053 (@sunag) - Added
addScene()
toAmmoPhysics
andRapierPhysics
. 2bd5617, 92c71d7 (@mrdoob)
-
BatchedMesh
- Introduce new addon for batching geometries. #25059, #27043, #27045, #27049, #27046, #27054, #27060, #27066 (@takahirox, @donmccurdy, @gkjohnson)
-
BokehPass
-
Capsule
- Move and rename
lineToLineClosestPoints()
function toOctree
. #27044 (@gkjohnson)
- Move and rename
-
CSS3DRenderer
- Modify perspective transform to avoid issues in Chrome and Firefox. #27017 (@donmccurdy)
-
FilmShader
-
FlyControls
-
FullScreenQuad
- Refactor internal geometry. #26938 (@CodyJasonBennett)
-
GLTFExporter
-
GLTFLoader
-
IFFParser
- Convert to ES6 classes. #26929 (@CodyJasonBennett)
-
InstancedPoints
-
Lensflare
-
LottieLoader
- Add document check for SSR. #26989 (@CodyJasonBennett)
-
LUTImageLoader
-
NodeMaterial
- Subflows of
TextureNode
andUVNode
inBumpMapNode
. #26865 (@sunag) - Define
stack.assign()
as default. #26881 (@sunag) - Refactor
VarNode
. #26821 (@LeviPesin) - Modular usage of
PhysicalLightingModel
. #26885 (@sunag) - Allow JS-like assigns, implement
AssignNode
. #26795 (@LeviPesin) - Fixes and clean up. #26931 (@sunag)
- Attenuate color in
Line2NodeMaterial
. #26970 (@WestLangley) - Merge
*MaterialNode
into singularMaterialNode
, fix exports, some cleanup. #26976 (@LeviPesin) - Update
PropertyNode
exports. #26975 (@LeviPesin) - Force replacement of
UVNode
if the context includesforceUVContext=true
. #27031 (@sunag)
- Subflows of
-
OrbitControls
-
OutputShader
- Use
#include
instead ofShaderChunk
. #26990 (@CodyJasonBennett)
- Use
-
SAOPass
- Remove
depthMaterial
reference fromdispose()
. #26946 (@paradoxxxzero)
- Remove
-
SDFGeometryGenerator
- Add geometry generator from SDF definitions. #26837 (@santi-grau)
-
SimplifyModifier
-
SMAAPass
-
SVGRenderer
- Add
.outputColorSpace=DisplayP3ColorSpace
support. #26914 (@donmccurdy)
- Add
-
TAARenderPass
- Fix runtime error in
dispose()
. #26991 (@Archimagus)
- Fix runtime error in
-
TessellateModifier
- Fix color access. #26873 (@freealise)
-
TransformControls
-
TSL
-
VRButton
- Test navigator for SSR. #26915 (@CodyJasonBennett)
-
WebGPURenderer
- Support occlusion query for WebGL backend. #26744 (@aardgoose)
- Handle instanced geometries in WebGL backend #26731 (@aardgoose)
- Add
isWeb*Backend
flags. #26877 (@WestLangley) - Fix rendering of line segments. #26884 (@WestLangley)
- Fix uniform update when using
compute()
. #26906 (@sunag) - Environment Nodes Hash. #26942 (@sunag)
- Ensure bump map scale is texture UV scale invariant. #26958 (@sunag)
- Clearcoat and sheen is shadowed by ambient occlusion. #26957 (@sunag)
- Support integer vertex attributes in
WebGLBackend
. #26974 (@aardgoose) - Add
getInstanceIndex()
forGLSLNodeBuilder
. #26978 (@aardgoose) - Add flat qualifiers for integer attributes in
GLSLNodeBuilder
. #26987 (@aardgoose) - Support Nodes
buffer()
inGLSLNodeBuilder
andWebGLSLBackend
#26988 (@aardgoose) - Correct initial blending state for
WebGLBackend
. #27009 (@aardgoose) - Implement
WebGLBackend
copyFramebufferToTexture()
. #27012 (@aardgoose) - Fix color mask setting in
WebGLBackend
. #27026 (@aardgoose) - Enable shadow rendering in
WebGLBackend
. #27023 (@aardgoose) - Remove
HTMLImage
toOffscreenCanvas
conversion. #27021 (@aardgoose) - Use recommended shader compile and link sequence for WebGL. #27055 (@aardgoose)
- Use common clearing code and fix depth state for
WebGLBackend
. #27065 (@aardgoose)
-
XRButton
- Allow specifying optional and required features. #27030 (@snowzurfer)
Editor
r157
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r156--r157
https://github.com/mrdoob/three.js/milestone/70?closed=1
- Global
- AnimationUtils
- Camera
- Color
- CubeCamera
- CurvePath
- Return
this
inclosePath()
. #26697 (@Mugen87) - Use correct line type in
closePath()
. #26850 (@GuoBinyong)
- Return
- Fog
- Make sure
name
can be serialized/deserialized. (@ycw)
- Make sure
- LightProbe
- Remove
AmbientLightProbe
andHemisphereLightProbe
. #26715 (@WestLangley)
- Remove
- Material
- MaterialLoader
- RenderTarget
- Refactor default constructor parameters. #26775 (@linbingquan)
- Shaders
- WebGLProgram
- Add
USE_ANISOTROPY
toprefixVertex
. (@uma-neko)
- Add
- WebGLRenderer
- Support "Linear Display P3" working color space and "Display P3" unlit rendering. #26644 (@donmccurdy)
- Introduce
USE_LIGHT_PROBES
define. #26768 (@Mugen87)
- WebGLTextures
Documentation
- Improve
Fog
page. #26792 (@ycw) - Improve
Material
page. #26664 (@donmccurdy) - Improve
MeshPhysicalMaterial
page. #26753 (@Ameobea) - Improve Chinese translation. #26693, #26701, #26728, #26855 (@sdarpeng, @Junior2Ran, @SADYX)
- Improve
Libraries and Plugins
guide. #26723, #26722, #26819, #26828 (@marwie, @trusktr, @isaac-mason) - Document default value of
userData
properties. #26799 (@tim-we)
Examples
- Clean up. #26678, #26706, #26800, d6c8dd0, 1c85c95 (@WestLangley, @epreston, @sunag, @mrdoob)
- Remove import maps polyfill. #26836 (@marcofugaro)
- Rename some WebGPU Compute examples. #26845 (@sunag)
-
3DMLoader
-
BufferGeometryUtils
- Shift the hash bin to avoid missing neighbors in
mergeVertices()
. #26746 (@gkjohnson)
- Shift the hash bin to avoid missing neighbors in
-
DragControls
-
GLTFExporter
- Simplify inner cone angle equation. #26787 (@WestLangley)
-
GLTFLoader
-
LDrawLoader
-
LightProbeGenerator
-
LineMaterial
- User getter/setter syntax. #26720 (@LeviPesin)
-
NodeMaterial
- Clean up
HashNode
, cite original authorship. #26695 (@LeviPesin) - Export viewport and minor fixes. #26698 (@aardgoose)
- Add
Line2
support. #26704 (@aardgoose) - Consume
labels()
when used, to prevent duplicate uniform names. #26822 (@aardgoose) - Fix
context.material
reference inRenderNodes
. #26838 (@sunag) - Rename
TextureNode.getTextureMatrix()
togetTransformedUV()
. #26839 (@sunag) - Rename
construct()
tosetup()
. #26840 (@sunag) - Add support for other formats in
StorageTexture
. #26842 (@sunag) - Fix
addNodeClass()
andaddNodeMaterial()
in case of renaming classes. #26846, #26858 (@LeviPesin)
- Clean up
-
RGBELoader
-
Sky
- Use
cameraPosition
uniform instead of world origin in sky shader. #26766 (@StrandedKitty)
- Use
-
TSL
-
USDZLoader
- Distinguish between text (supported) and binary (not supported) usd files and fix UV parsing. #26709 (@hybridherbst)
- Load metallic, roughness, emissive, occlusion textures and fix color spaces. #26710 (@hybridherbst)
- Switch to
MeshPhysicalMaterial
and add initial clearcoat/clearcoatRoughness/ior support. #26713 (@hybridherbst) - Fix index array type. #26751 (@GitHubDragonFly)
- Added texture scale + offset + rotation support. #26861 (@GitHubDragonFly)
-
WebGPURenderer
- Invert viewport/scissor y coords. #26730 (@aardgoose)
- dFdy vs dpdy #26776 (@aardgoose)
- Add
StorageTexture
. #26769 (@sunag) - Texture fixes for WebGL backend. #26797 (@aardgoose)
- CCW FrontFace as default. #26807 (@sunag)
- Basic render to texture support for WebGL backend. #26801 (@aardgoose)
- Support
textureCompare()
operations in WebGL backend. #26823 (@aardgoose) - Fix
flipY
example. #26843 (@sunag) - Fix multi-material in
WebGLNodeBuilder
. #26841 (@sunag)
Editor
- Fix style error when resizing the sidebar. #26703 (@linbingquan)
- Add
clearcoatMap
andclearcoatRoughnessMap
. #26712 (@hybridherbst) - Fix camera transform when using select in Firefox. #26717 (@Mugen87)
- Add serialization support for
modelviewer
environment. #26718 (@Mugen87) - Fix
CapsuleGeometry
parameter. #26794 (@Mugen87)
r156
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r155--r156
https://github.com/mrdoob/three.js/milestone/69?closed=1
- Global
- Improve naming of module scope variables. #26603 (@linbingquan)
- Update
es-module-shims
. #26605, #26606 (@linbingquan) - Export
createCanvasElement()
as a utility method. #26601 (@linbingquan) - Use
Math.trunc()
inroundToZero()
vector methods. #26643 (@ycw)
- Audio
- Prevent
null
source error indisconnect()
. #26597 (@takahirox)
- Prevent
- Object3D
- Clone material arrays. #26589 (@jespertheend)
- Fix
clear()
emitting removed events too early. #26625 (@ycw)
- VideoTexture
- WebGLBackground
- Respect
autoClear
in XR. #26428 (@CodyJasonBennett)
- Respect
- WebGLRenderer
- Remove material condition for unconditional uniforms. #26467 (@SoprachevAK)
- WebXRManager
Documentation
- Improve
CameraUtils
page. #26591 (@Mugen87) - Improve
Matrix3
page. #26617, #26627 (@mgroth0, @Mugen87) - Improve
MeshPhysicalMaterial
page. #26543 (@mjurczyk) - Improve
OBB
page. #26522 (@balraj-johal) - Improve
Object3D
page. #26636 (@alone-as-a-god) - Improve
OrbitControls page
. #26541, #26547 (@Mugen87, @WestLangley) - Improve
SpotLight
page. #26645 (@ycw) - Improve
WebGLRenderer
page. #26670 (@alone-as-a-god) - Improve Chinese translation. #26511 (@newstart0514)
- Remove
ColladaExporter
page. #26592 (@skyclouds2001) - Update
page.js
to handle inline code with newline chars. #26622 (@ycw)
Manual
- Update monaco-editor to
0.40.0
. #26503 (@linbingquan)
Examples
- Clean up. #26530, #26639, #26650 (@Methuselah96, @Mugen87, @WestLangley)
- Bubble parsing errors in remaining data texture loaders. #26499 (@Mugen87)
- Disable damping in
webgl_materials_alphahash
example. #26519 (@Mugen87) - Update UTIF module. #26526 (@Mugen87)
- Fix
PMREMGenerator
usage inwebgl_shaders_ocean
example. #26580 (@skyclouds2001) - Fix flickering in
webgl_decals
example. #26593 (@Mugen87) - Add GUI to
misc_exporter_usdz
example. #26607 (@Mugen87) - Prevent aspect distortion in
webgpu_compute_texture
. #26651 (@WestLangley) - Enable anti-aliasing in WebGPU examples. #26653 (@linbingquan)
- Add stats to
webgpu_compute_particles
example. #26665 (@linbingquan) - Updated
tween.module.js
to21.0.0
. #26669 (@linbingquan) - Exposure adjustments for WebGPU examples. #26672 (@sunag)
-
CSMShader
-
DDSLoader
-
FBXLoader
-
FilmPass
-
GLTFLoader
- Specify color space of inputs. #26534, #26691 (@donmccurdy, @wlinna)
-
KTX2Loader
- Add support for ASTC 6x6 format #26586, #26679 (@donmccurdy, @vlucendo)
-
MMDLoader
- Apply color management to textures. #26554 (@donmccurdy)
-
NodeMaterial
- Fix
construct()
node data inNodeBuilder
. #26533 (@sunag) - Add
LineDashedNodeMaterial
. #26528, #26542 (@aardgoose, @sunag) - Add
ViewportNode.VIEWPORT
. #26540 (@aardgoose) - Use
context.tempWrite=false
for conditionals inTextureNode
. #26574 (@sunag) - Fix
.getNodeType()
if.construct()
return some Node. #26631 (@sunag) - Add
HashNode
. #26663 (@sunag, @LeviPesin)
- Fix
-
OrbitControls
- Support frame rate independent
autoRotate
. #26472 (@Issung) - Fix
zoomToCursor
when objects are changed. #26549 (@xiaowangxu)
- Support frame rate independent
-
RenderPass
-
SAOPass
-
SSAOPass
-
STLLoader
-
TSL
-
WebGLNodeBuilder
-
WebGPURenderer
- Add support for
alphaToCoverage
. #26513 (@aardgoose) - Fix
clear()
inheriting state from previousrender()
&clear()
passes. #26514 (@aardgoose) - Add
data-engine
attribute to canvas. #26544 (@linbingquan) - Performance revision. #26556 (@sunag)
- Add occlusion queries. #26335, #26584 (@aardgoose, @sunag)
- Add WebGLBackend. #26581, #26671 (@sunag)
- Fix
DataTexture
withFloatType
. #26585 (@sunag) - Add
Backend.generateMipmaps()
. #26609 (@sunag) - Support for multiple render targets. #26409 (@aardgoose)
- Add support for
r155
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r154--r155
https://github.com/mrdoob/three.js/milestone/68?closed=1
- BufferAttribute
- Add generic vector component getter / setter. #24515 (@gkjohnson)
- CapsuleGeometry
- CompressedCubeTexture
- Added. #26369 (@donmccurdy)
- CubeCamera
- DataTextureLoader
- Fix promise never rejected on error. #26412 (@ashconnell)
- InstancedMesh
- Add support for async color definitions. #26430 (@CodyJasonBennett)
- Object3D
- Shallow copy
animations
incopy()
. #26416 (@luisfonsivevo)
- Shallow copy
- PropertyBinding
- Change error to warning and reword. #26386 (@hybridherbst)
- WebGLMultipleRenderTargets
- Return
undefined
insetSize()
. #26418 (@CodyJasonBennett)
- Return
- WebGLRenderer
- WebGLRenderTarget
- WebGLTextures
- Improve
RED_INTEGER
texture support. #26450 (@RenaudRohlinger)
- Improve
Documentation
- Improve
BufferAttribute
page. #26365 (@Mugen87) - Improve
BufferGeometryUtils
page. #26454 (@gkjohnson) - Improve
OrbitControls
page. #26404 (@Mugen87) - Improve
ShapePath
page. #26401 (@atul-mourya) - Improve
TrackballControls
page. #26459 (@vaughnrichard) - Improve post processing guide. #26359 (@Mugen87)
- Improve Arabic translation. #26362 (@afilahkle)
- Clarify reuse of disposed objects. #26498 (@Mugen87)
Manual
Examples
- Fix color space in
webgl_materials_video_webcam
. #26364 (@Mugen87) - Improve
webgpu_tsl_editor
example. #26368 (@sunag) - Remove usages of
FirstPersonControls.noFly
. #26374 (@Methuselah96) - Remove obsolete tone mapping settings. #26377 (@Mugen87)
- Fix linter issues. #26388 (@hybridherbst)
- Add
backgroundIntensity
GUI towebgl_tonemapping
example. #26411 (@vis-prime) - Fix GUI title in different examples. #26421, #26439 (@Methuselah96)
- Simplify resize in
webgl_postprocessing_procedural
example. #26434 (@Methuselah96) - Fix typo in
webgl_postprocessing_ssaa
example. #26433 (@Methuselah96) - Remove usage of
Group.material
inwebgl_postprocessing_godrays
example. #26431 (@Methuselah96) - Correctly invoke
requestAnimationFrame()
inwebgl_postprocessing_godrays
example. #26432 (@Methuselah96) - Correctly call
setSize()
inwebgl_raymarching_reflect
example. #26438 (@Methuselah96) - Use the right return type for
customProgramCacheKey()
inwebgl_materials_modified
example. #26437 (@Methuselah96) - Directly set uniforms in
webgl_gpgpu_water
example. #26436 (@Methuselah96) - Remove outdated settings of focal length. #26460 (@Methuselah96)
- Remove unnecessary use of
OrbitControls
change event listeners. #26475 (@WestLangley)
-
BufferGeometryUtils
-
GLTFLoader
- Fix
loadAnimation()
refactor. #26477 (@hybridherbst)
- Fix
-
MaskPass
-
NodeMaterial
- Fix deprecation text to match code for
tslFn()
. #26383 (@aardgoose) - Add
unlit
property. #26429 (@sunag) - Fix
construct()
call inHemisphereLightNode
. #26441 (@sunag) - Add
specularStrength
toMaterialNode
. #26444 (@sunag) - Add
fog
andcolorSpace
properties. #26440 (@sunag) - Add
backgroundIntensity
toSceneNode
. #26447 (@sunag) - Add
MeshLambertNodeMaterial
. #26448 (@sunag) - Add
BumpMapNode
. #26449 (@sunag) - Add
getTextureMatrix()
toTextureNode
. #26461 (@sunag) - Add
isToneMappingState
toRendererNodes
. #26463 (@sunag) - New class structure for
LightingModel
. #26486 (@sunag) - Cache equirectangular textures in
EnvironmentNode
. #26491 (@sunag)
- Fix deprecation text to match code for
-
OculusHandPointerModel
- Make
_onDisconnected()
more robust. #26387 (@hybridherbst)
- Make
-
OrbitControls
- Add zoom to cursor. #26165 (@gkjohnson)
-
OutputPass
-
SelectionHelper
-
TGALoader
-
TSL
-
UnrealBloomPass
- Improve performance by pre-calculating gaussian coefficients. #26356 (@keaukraine)
-
USDZExporter
- Add
defaultPrim
to makeusdchecker
happy. #26495 (@hybridherbst)
- Add
-
WebGPUBackend
-
WebGPUPipelines
-
WebGPURenderer
- Remove duplication of interleaved attribute buffers. #26351 (@aardgoose)
- Add missing
Texture.onUpdate()
callback. #26375 (@aardgoose) - Avoid render pass/pipeline attachment mismatches. #26376 (@aardgoose)
- Fix
Node.updateBefore()
sequence call. #26391 (@sunag) - Rename
getArrayBuffer()
togetArrayBufferAsync()
. #26393 (@sunag) - Support
Object3D
as parameter inrender()
. #26400 (@sunag) - Fix
updateBefore()
. #26417, #26422 (@sunag) - Not crash if texture is not supported. #26423 (@sunag)
- Fix fog
ColorSpace
. #26424 (@sunag) - Add
DepthTexture.compareFunction
. #26420 (@sunag) - Blending revision part 1. #26455 (@sunag)
- Support MSAA for texture render targets. #26451 (@aardgoose)
- Add iridescence support. #26489, #26492 (@sunag)
- Fix background. #26493 (@sunag)
Editor
r154
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r153--r154
https://github.com/mrdoob/three.js/milestone/67?closed=1
- Global
- Loader
- Material
- Add
alphaHash
transparency mode. #24271, #26341, #26344 (@donmccurdy)
- Add
- MeshPhysicalMaterial
- WebGLObjects
- WebGLProgram
- Don't use tangents when flat shading. #26197 (@WestLangley)
- WebGLRenderer
- Rename
encodings_fragment
tocolorspace_fragment
. #26206, #26269 (@WestLangley) - Rename
output_fragment
toopaque_fragment
. #26278 (@WestLangley) - Fix incorrect argument passed to
clearBufferuiv
. #26249 (@gkjohnson) - Fix shadow update when object is culled. #26293, #26299 (@OndrejSpanel, @Mugen87)
- Test that
WebGLRenderingContext
exists. #26306 (@linev) - Fix feedback loop in transmission pass for WebGL 2. #26177 (@Mugen87)
- Rename
- WebXRManager
Documentation
- Improve
Color
page. #26210 (@donmccurdy) - Improve
LineBasicMaterial
page. #26228 (@Mugen87) - Improve
PlaneGeometry
page. #26248 (@tomhsiao1260) - Improve number and code formatting. #26147, #26181 (@afilahkle)
- Improve Arabic translation. #26176, #26182, #26195, #26194, #26202, #26209, #26226, #26230, #26250, #26263, #26277, #26297, #26323 (@afilahkle)
- Improve Chinese translation. #26215, #26216, #26223, #26273 (@appache163, @supan0228)
- Improve French translation. #26310 (@Patzi275)
- Dedent code node content correctly. #26115 (@ycw)
- Use
useLegacyLights=false
in browsers. #26291 (@Mugen87)
Manual
Examples
- Clean up. #26193, #26238, #26260 (@Mugen87, @sunag)
- More usage of
WebGLRenderer.useLegacyLights = false
. #26218, #26267, #26274, #26275, #26280, #26284, #26286, #26288, #26290 (@Mugen87, @sunag) - Update BVH and CSG library versions. #26203 (@gkjohnson)
- Update from
GammaCorrectionShader
toOutputPass
. #26129 (@donmccurdy) - Change how after-image effect is toggled. #26321 (@Mugen87)
- Fix displacement map usage of velocity shader. #26324 (@Mugen87)
- Use
construct()
inwebgpu_instance_uniform
example. #26336 (@sunag) - Added
blurred
option inwebgpu_backdrop_area
example. #26342 (@sunag)
-
ArcballControls
-
CopyShader
-
FlyControls
-
GLTFLoader
- Refactor animation methods to be accessible from extensions on parser. #26126 (@hybridherbst)
-
MeshSurfaceSampler
-
NodeMaterial
- Clean up. #26271 (@sunag)
- Fix
uv
attributes. #26220 (@sunag) - Fix
cacheKey
. #26227 (@sunag) - Fix default
forceSinglePass
andalphaMap
. #26231 (@sunag) - Add two missing shader functions. #26237 (@aardgoose)
- Fix
VideoTexture
inWebGPUBackend
andColorSpaceNode
. #26261 (@sunag) - Simplify
Node.getChildren()
. (@LeviPesin) UVEditor
revision and remove nodes for programmers. #26345 (@sunag)UVEditor
and fix selection of nodes by keyboard in playground. #26349 (@sunag)
-
OculusHandPointerModel
- Cleanup on disconnect, implement
dispose()
. #26262 (@CodyJasonBennett)
- Cleanup on disconnect, implement
-
PLYLoader
- Add vertex colors back. #26214 (@Mugen87)
- Fix handling binary files with
\n\r
line endings in header. #26232 (@aardgoose)
-
TAARenderPass
-
TSL
-
WebGPURenderer
- Don't set redundant state. #26186 (@sunag)
- Backdrop Node - Part 2/3. #26196 (@sunag)
- Add clear coat support. #26211 (@sunag)
- Support
Material.blending = NoBlending
. #26295 (@aardgoose) - Handle interleaved instanced buffers correctly. #26304 (@aardgoose)
- Improve reuse programs in
WebGPUPipelines
. #26305 (@sunag) - MorphNode 1/2 and updates. #26325 (@sunag)
- Add
readRenderTargetPixelsAsync()
. #26326 (@aardgoose) - Add sheen support. #26329 (@sunag)
- Render Pass ID and Double Pass. #26333 (@sunag)
Tests
- Use new
headless
mode for E2E tests. #25982 (@LeviPesin) - Replace
BrowserFetcher
with@puppeteer/browsers
. #26282 (@LeviPesin) - Fix WebGL on Mac ARM. #26343 (@LeviPesin)
Editor
r153
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r152--r153
https://github.com/mrdoob/three.js/milestone/66?closed=1
- Global
- Fix sourcemaps in dev builds. #25901 (@donmccurdy)
- Introduce
coordinateSystem
. #26140 (@sunag)
- BufferAttribute
- Add
gpuType
. #26084 (@CodyJasonBennett)
- Add
- Color
- CubeTextureLoader
- DepthTexture
- Support texture depth comparison. #25958 (@RenaudRohlinger)
- FramebufferTexture
- InstancedMesh
- MathUtils
- Add support for
Uint32
andInt32
to normalize / denormalize functions. #25984 (@gkjohnson)
- Add support for
- Matrix3
- Constructor has now parameters. #26021 (@Mugen87)
- Make
makeTranslation()
acceptVector2
. #26054 (@chenyy101)
- Matrix4
- Mesh
- Add deprecation comment in
checkGeometryIntersection()
. #25971 (@LeviPesin)
- Add deprecation comment in
- MeshPhysicalMaterial
- PositionalAudio
- Shaders
- Add
name
property. #26101 (@WestLangley)
- Add
- SkinnedMesh
- Source
- WebGLGeometries
- WebGLInfo
- Decouple
info.render.frame
frominfo.autoReset
. #25978 (@RenaudRohlinger)
- Decouple
- WebGLProgram
- Add define for
MeshGouraudMaterial
. #26075 (@WestLangley)
- Add define for
- WebGLPrograms
- Simplify
getChannel()
. #25972 (@LeviPesin)
- Simplify
- WebGLRenderer
- Use correct bounding volume for depth sorting. #25974 (@Mugen87)
- Allow for clearing integer render targets. #22351 (@gkjohnson)
- Deprecate WebGL 1 support. #25959 (@Mugen87)
- Improve integer attribute support. #21606 (@Mugen87)
- Improved transparent rendering. #25819, 79cc93c (@elalish, @WestLangley, @mrdoob)
- Fix alpha map rendering for points and sprites. #26128 (@Mugen87)
- Revert to drawingbuffer sized
transmissionRenderTarget
. #26138 (@mrdoob) - Ensure tone mapped value is in-range. #26130 (@WestLangley)
- WebXRManager
Documentation
- Improve
BoxGeometry
page. #26156 (@afilahkle) - Improve
MeshSurfaceSampler
page. #26031 (@makc) - Improve
PerspectiveCamera
page. #26105, #26117 (@afilahkle) - Improve
ShaderMaterial
page. #26116 (@ycw) - Improve
Vector4
page. #26151 (@afilahkle) - Improve
WebGLRenderer
page. #26002 (@ycw) - Accept multiline callargs in
page.js
. #26030 (@ycw) - Fix redirect exception in Firefox. #26033 (@ycw)
- Improve light pages. #26064 (@Mugen87)
- Improved Arabic translation. #26088, #26100, #26123, #26132, #26141, #26149, #26155, #26174 (@afilahkle)
- Improve Chinese translation. #26077, #26074, #26081, #26073, #26083, #26086, #26089, #26093 (@appache163, @l123wx, @LJNaN)
Manual
Examples
- More usage of sRGB and color management. #25986, #25988, #25991, #25994, #26018, #26070, #26082, #26085, #26090, #26092, #26094, #26097, #26111, #26119, #26120, #26121, #26135, #26144, #26150 (@Mugen87)
- ββFix broken GPU picking demo. #25952 (@Mugen87)
- Update GPU picking to use integer Ids, render target. #25983, #26001 (@gkjohnson)
- Remove
webgl_skinning_simple
. #25992 (@Mugen87) - Improve
webgl2_multisampled_renderbuffers
example. #26005 (@WestLangley) - Replaced custom physics code with Rapier in
webxr_xr_ballshooter
. #26032 (@mrdoob) - Improved
webgl_loader_gltf_anisotropy
example. #26051, #26058 (@sunag, @mrdoob) - Added mediapipe face landmark detection example. #26080, 1f75a58 (@mrdoob)
- Define
renderOrder
inwebgl_loader_svg
. #26114 (@ycw) - Fix
webxr_xr_sculpt
example. a55e5a3 (@mrdoob) - Improve
webgl_materials_car
. d4116b5 (@mrdoob) - Removed obsolete/outdated examples. 8d52742, d13f49c, 37f90dd, f355d37, 5021832, e289dce, 0db7383,
d666ff8, 5a408a8, dc630b0, bf1da65, 973d751, 45ef934, dd8a722 (@mrdoob) - Introduce
ExposureShader
. #26136 (@WestLangley) - Added
webgpu_cubemap_dynamic
example. #26152 (@sunag)
-
CSM
-
DracoLoader
-
EffectComposer
-
GLTFExporter
- Export from compressed texture data. #23321 (@hybridherbst)
-
GLTFLoader
-
KTX2Loader
- Return LODs through
DataTexture
's mipmaps field. #25871 (@emmanueljl) - Support compressed cubemaps. #25909 (@donmccurdy)
- Fix regression in mipmap chain upload. #26095 (@donmccurdy)
- Return LODs through
-
MeshGouraudMaterial
- Add
LEGACY_LIGHTS
define. #26075 (@WestLangley)
- Add
-
MeshSurfaceSampler
- Add
sampleFaceIndex()
function. #25970 (@gkjohnson)
- Add
-
MMDLoader
- Catch parser exceptions. #25966 (@YusakuNo1)
-
NodeMaterial
- Rework
ConvertType()
. #26025 (@LeviPesin) - Fix circular dependency. #26163 (@sunag)
- Rework
-
OrbitControls
-
PLYLoader
- Add support for files with face color definitions. #26014 (@SindreYang)
-
RapierPhysics
- Clean up. #26042 (@LeviPesin)
-
TSL
-
USDZExporter
- Add
Texture.channel
support. #25996 (@mrdoob) - Add
MaterialBindingAPI
schema, fixprimvars:st
data type, add colorspace for normal map. #26009 (@hybridherbst) - Add basic
Texture.colorSpace
support. #26011 (@mrdoob) - Support
Texture.wrapS
andTexture.wrapT
. #26012 (@mrdoob) - Add
Texture.rotation
support. #26013 (@mrdoob) - Remove redundant
Texture.format
check. #26017 (@mrdoob) - Use scale input to tint the texture. #26019, cea7a35 (@mrdoob)
- Improve
UsdTransform2d
. #26023 (@hybridherbst) - Clean up. 44ab823 (@mrdoob)
- Add
-
ViewHelper
-
WebGPURenderer
- Prevent duplicated init requests. #25964 (@takahirox)
- Fix skinning bone multiplication order. #25987 (@sunag)
- Static adapter for
hasFeature()
. #26006 (@sunag) - Added
BufferAttributeNode
. #26016, #26022 (@sunag) - Fix
clear()
. #26046 (@sunag) - Universal renderer and
WebGPUBackend
. #26079 (@sunag) - Move
TextureRenderer
toRenderTarget
approach. #26142 (@sunag) CubeRenderTarget
andCubeCamera
. #26152 (@sunag)
-
XRHandPrimitiveModel
Editor
r152
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r151--r152
https://github.com/mrdoob/three.js/milestone/65?closed=1
- Global
- Add
three.module.min.js
to npm package. #25778, #25828 (@Beilinson, @marcofugaro)
- Add
- AudioLoader
- Trigger error callback when
decodeAudioData
fails. #25784 (@luisfonsivevo)
- Trigger error callback when
- BufferGeometry
- Color
- Clean up. #25833 (@LeviPesin)
- Fix rounding errors in
getHex()
andgetStyle()
. #25832 (@LeviPesin)
- ColorManagement
- Enable by default. #25866 (@donmccurdy)
- MaterialLoader
- Honor
clipping
andlights
properties. #25891 (@tfreifeld)
- Honor
- Object3D
- Shaders
- SkinnedMesh
- Texture
- Replace
encoding
withcolorSpace
. #25771 (@donmccurdy)
- Replace
- WebGLMultipleRenderTargets
- WebGLRenderer
- Remove inline sRGB decode of video textures. #25752 (@donmccurdy)
- Replace
outputEncoding
withoutputColorSpace
. #25756 (@donmccurdy) - Default output to sRGB. #25783 (@donmccurdy)
- Sort on bounding sphere center, not origin. #25913 (@donmccurdy)
- Add support for
uv3
anduv4
. #25788 (@mrdoob) - Only update skeletons in frustum. #25937 (@ashconnell)
- WebGLRenderTarget
- Replace
encoding
withcolorSpace
. #25771 (@donmccurdy) - Honor
scissor
properties incopy()
. #25805 (@Mugen87)
- Replace
- WebGLShadowMap
- Fix shadow map types changes. #25847, #25863 (@digitalArt3DTobias, @jostschmithals, @Mugen87)
- WebGLState
- Fix
bindTexture()
does not have fallback for 2D array and 3D textures. #25758 (@RenaudRohlinger)
- Fix
- WebXRManager
Documentation
- Clean up. #25795, #25799, #25808, #25814, #25817, #25827, #25931, 12e6b0b (@vinaykulk621, @Mugen87, @mrdoob)
- Improve
BufferGeometry
page. #25824, #25834 (@abernier, @Mugen87) - Improve
BufferGeometryUtils
page. #25813 (@makc) - Improve
Triangle
page. #25749 (@donmccurdy) - Improve
WebGLRenderer
page. #25745 (@Mugen87) - Improve
Creating a scene
guide. #25806 (@Mugen87) - Improve
Updating resources
guide. #25804 (@Mugen87) - Improve
WebGL compatibility
guide. #25761, #25762 (@0xAxiome, @Mugen87) - Improve Chinese translation. #25775, #25777, #25794, #25896 (@newstart0514, @Gerocer)
- Update Color Management related pages. #25792 (@Mugen87)
- Remove
Testing with npm
guide. #25807 (@Mugen87) - Use color management in scene browsers. #25816 (@Mugen87)
- Clean up color space references. #25922 (@donmccurdy)
- Improve color space constant documentation. #25939 (@donmccurdy)
Manual
Examples
- Clean up. #25753, #25739, 50993b2 (@timgates42, @hybridherbst, @mrdoob)
- Refactor
webgl_loader_bvh
example. #25763, #25811 (@Mugen87, @mattrossman) - Added
XRButton
. #25781 (@mrdoob) - Update
webgpu_loader_gltf
to matchwebgl_loader_gltf
. #25812 (@mrdoob) - Fix wireframe toggle in
webgl_loader_md2
example. #25838 (@NFSS10) - Remove redundant event listener in
webgl_camera_cinematic
example. #25869 (@TheRedLancer) - Upgrade
three-gpu-pathtracer
inwebgl_renderer_pathtracer
example. #25879 (@gkjohnson) - Adjust lego pathtraced materials in
webgl_renderer_pathtracer
example. #25883 (@gkjohnson) - Add
physics_rapier_instancing
example. #25892, 39936f7 (@mrdoob) - Remove
physics_oimo_instancing
example. #25895 (@mrdoob) - Use color management in more examples. #25818, #25844, #25851, #25849, #25858, #25868, #25873, #25882, #25889, #25907, #25912 (@donmccurdy, @Mugen87)
- Improve WebGPU error message. 124e7cc, db4d089, f9035d8 (@mrdoob)
- Improve dragging, paint and sculpt WebXR examples. 3977930 (@mrdoob)
- Improve
webxr_xr_haptics
example. e0a631f, 443cb7d (@mrdoob) - Add floor clipping to
webxr_xr_dragging
example. 724b00b (@mrdoob) - Implement simpler floor clipping technique in XR examples. 0f81064 (@mrdoob)
-
BufferGeometryUtils
-
EffectComposer
-
EXRLoader
- Default to Linear-sRGB. #25854 (@donmccurdy)
-
Flow
-
GLTFExporter
- Support multiple UV sets. #25843 (@donmccurdy)
-
HDRCubeTextureLoader
- Default to Linear-sRGB. #25856 (@donmccurdy)
-
HTMLMesh
- Render image at the correct position. #25916, #25930 (@vincentfretin)
-
KTX2Loader
- Add WebGPU support. #25867 (@Mugen87)
- Prefer traditional
for
loop. #25929 (@RenaudRohlinger)
-
NodeMaterial
- Clean up. #25768, #25860 (@LeviPesin)
- Fix equirectUV background. #25842 (@sunag)
-
NRRDLoader
- Fix spacing issue when loading 16 bit images. #25767 (@LinkunGao)
-
OBJLoader
- Clarify comment skips. #25906 (@hamirmahal)
-
PLYLoader
-
RGBELoader
- Default to Linear-sRGB. #25853 (@donmccurdy)
-
SkeletonUtils
-
WebGPURenderer
- New cache system. #25750 (@sunag)
- Set labels of some WebGPU objects. #25773, #25785, #25801 (@takahirox)
- Add
DepthTexture
support. #25766, #25886, #25890 (@sunag, @Mugen87) - Upload texture in the same frame if possible and clean up. #25821 (@sunag)
- Shadows node-based. #25822 (@sunag)
- Add basic support for ETC2 compressed textures. #25864 (@Mugen87)
- Add basic support for ASTC compressed textures. #25865, #25876 (@Mugen87)
- Request all supported GPU features. #25875, #25885 (@Mugen87)
- Introduce
hasFeature()
. #25878 (@Mugen87) - Make work without
three/nodes
. #25904 (@sunag) - Backdrop Node - Part 1/3. #25903 (@sunag)
- Improve vertex format support and revisions. #25924, #25934 (@sunag)
Editor
Tests
- Add missing constants to unit test. #25810 (@Mugen87)
- Update sizes message of CI. #25826 (@marcofugaro)
- Update Chromium version of E2E tests. #25840 (@LeviPesin)
- Increase E2E timeout from 15 to 20 minutes. #25880 (@LeviPesin)
r151
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r150--r151
https://github.com/mrdoob/three.js/milestone/64?closed=1
- Global
- More usage of strict equality operators. #25574 (@ycw)
- Add missing
/*@__PURE__*/
statements. #25604 (@ycw) - Improve deprecation comments. #25643 (@LeviPesin)
- Add minified version of ESM build. #25714, #25719 (@Beilinson, @marcofugaro)
- AnimationAction
- Ensure class is exported. #25676 (@linbingquan)
- Box3
- Color
- ColorManagement
- Clean up. #25709 (@WestLangley)
- Float16BufferAttribute
- Unpack/pack float16's in getters/setters. #25519 (@simondevyoutube)
- InstancedMesh
- LineBasicMaterial
- Material
- Math
- Add convenience methods. #25637 (@WestLangley)
- Mesh
- Simplify function name. #25651 (@WestLangley)
- MeshDistanceMaterial
- Remove light related properties. #25695 (@Mugen87, @WestLangley)
- Object3D
- PointsMaterial
- Quaternion
- Raycaster
- SkinnedMesh
- Rename
boneTransform()
toapplyBoneTransform()
. #25586 (@WestLangley) - Add bounding volumes. #25612 (@Mugen87)
- Rename
- ShaderMaterial
- Disable two-pass rendering by default. #25720 (@WestLangley)
- Shaders
- Make inline comments more explicit. #25575 (@WestLangley)
- Refactor PBR shaders. #25693 (@elalish)
- UniformsUtils
- Skip cloning textures of render targets and report warning. #25560 (@simondevyoutube)
- Vector2
- WebGLPrograms
- WebGLRenderer
- WebXRManager
Documentation
- Add
MapControls
page. #25621 (@Mugen87 - Improve
3DMLoader
page. #25616 (@dgrcode) - Improve
Color
page. #25577 (@Mugen87) - Improve
Material
page. #25614 (@towhare) - Improve
SkeletonUtils
page. #25649 (@Legionses) - Improve Chinese translation. #25628, #25672, #25677, #25706, #25713 (@towhare, @newstart0514)
- Improve French translation. #25644 (@Mael-Kehl)
- Update
Installation
guide with clearer guidance on build tools and CDNs. #25468 (@donmccurdy)
Manual
- Updated
monaco-editor
to0.36.0
. #25583 (@linbingquan) - Clean up. #25716 (@DavidDufour)
Examples
- Clean up. #25605, #25633, #25640 (@LeviPesin, @Mugen87)
- Fix invalid
Object3D
ctor usage incss3d_molecules
. #25587 (@Methuselah96) - Update
Tween.js
. #25607 (@Methuselah96) - Update
FBXLoader
examples to.outputEncoding = sRGBEncoding
. #25441 (@donmccurdy) - Update
webgl_morphtargets_*
, use physically-based lights. #25537 (@donmccurdy) - Rename
GroundProjectedEnv
toGroundProjectedSkybox
. #25645 (@Mugen87) - Added damping to
webgl_loader_ldraw
example. #25656 (@WestLangley) - Change skinned model asset in some examples. #25654 (@greggman)
- Fix GUI in
webgl_loader_md2
example. #25670 (@llzen44) - Add missing
render()
towebgl_geometry_spline_editor
example. #25690 (@puqeko) - Update model in glTF AVIF demo. #25708, #25712 (@Mugen87)
- Clean up
webgl_materials_texture_rotation
example. #25711 (@WestLangley)
-
3DMLoader
- Clean up. #25423 (@LeviPesi)
-
BufferGeometryUtils
- Simplify function names. #25652, #25657 (@WestLangley)
-
CSS2DRenderer
- Introduce
CSS2DObject.center
. #25673 (@WestLangley)
- Introduce
-
FBXLoader
- Fix
DeformPercent
regex. #25689 (@FXTD-ODYSSEY)
- Fix
-
GLTFLoader
-
HTMLMesh
-
MapControls
- Move implementation in its own file. #25608 (@WestLangley)
- Clean up. #25622 (@LeviPesin)
-
NodeEditor
-
NodeMaterial
- Added
InputNode.setPrecision()
. #25561 (@sunag) - Rework
NodeUtils.getNodesKeys()
. #25581 (@LeviPesin) - Fix if
timeNode
is not anodeObject()
inOscNode
. #25588 (@sunag) - Deserialize sub-properties and fixes in
NodeLoader
. #25590 (@sunag) - TSL: if, elseif, else syntax. #25653 (@sunag)
- TSL: Different params order if method chaining is used. #25683 (@sunag)
- TSL: Add
ScriptableNode
. #25685 (@sunag) - Fix specular color node in
MeshStandardNodeMaterial
. #25700 (@sunag) - Rename
invert()
->oneMinus()
. #25725 (@sunag)
- Added
-
OrbitControls
-
PLYLoader
- Fix comments. #25578 (@girumasfaw)
-
PointerLockControls
-
SkeletonUtils
- Fix
retargetClip()
final keyframe. #25589 (@kate-grant)
- Fix
-
TrackballControls
-
USDZExporter
-
WebGPURenderer
Editor
- Rename
physicallyCorrectLights
touseLegacyLights
. #25556 (@linbingquan) - Use selected camera when playing the scene. #25641 (@Mugen87)
- Fix broken material tab when
Texture.image
isnull
. #25703 (@Mugen87)
Tests
- Convert some todos to done. #25567 (@epreston)
- Update versions of used actions. #25585 (@marcofugaro)
- Report tree-shaking size in PRs. #25615, #25625, #25627, #25630 (@marcofugaro, @donmccurdy)