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
Float16Array
in renderers. #31305 (@Mugen87)
- Clock
- Inline
performance.now()
. #31295 (@linbingquan)
- Inline
- Frustum
- Honor sprite offset in
intersectsSprite()
. #31307 (@Mugen87)
- Honor sprite offset in
- GLBufferAttribute
- Add
normalized
property. #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.premultipliedAlpha
in 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
Fn
as parameter. #31214 (@sunag) - Introduce
sample()
. #31287 (@sunag) - Introduce
textureBicubicLevel()
. #31288 (@sunag) - Move
TriplanarTexturesNode
totriplanarTextures()
Fn. #31285 (@sunag) - Move
EquirectUVNode
toequirectUV()
Fn. #31283 (@sunag) - Move
MatcapUVNode
tomatcapUV
Fn constant. #31284 (@sunag) - Remove transformed* prefix. #31271 (@sunag)
- Fix
convertToTexture()
auto resize. #31277 (@sunag) - Fix
outgoingLight
redeclaration. #31266 (@sunag) - Introduce Chromatic Aberration. #31236 (@pashaydev)
- Fix inconsistent chaining for
step()
(Parameter order). #31241 (@sunag) - Rename
premult
topremultiplyAlpha
. #31240 (@sunag) - Introduce
tangentViewFrame
andbitangentViewFrame
. #31282 (@sunag) - Use
node.nodeType
instead 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
Storage3DTexture
andStorageArrayTexture
. #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_cloth
example. #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: false
for 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
switch
statements. #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
normalView
tonormalWorld
. #31074 (@vitro-mod)
- Change
- ImageBitmapLoader
- Make error handling more robust. #31088 (@Mugen87)
- LightsNode
- Fix
castShadow
regression. #31106 (@Mugen87)
- Fix
- MaterialNode
- Fix
dashOffset
withLineDashedMaterial
. #31008 (@Mugen87)
- Fix
- Mesh
- Add
count
property. #31091 (@sunag)
- Add
- NodeMaterial
- Cleanup
alphaTest
. #31147 (@sunag) - Introduce
maskNode
and improveshapeCircle()
. #31127 (@sunag) - Execute
setupVertex()
ifvertexNode
is 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
aspect
property. #31020 (@sunag)
- Introduce
- Sprite
- Add
count
property. #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
mat2
boundary 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.enabled
isfalse
. #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.premultiplyAlpha
in 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
LoaderUtils
page. #31082 (@ycw) - Improve
SkeletonHelper
JSDoc. #31113 (@upisfree) - Improve
XRManager
JSDoc. #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_water
GUI. #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
damp
accessor. #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
webp
MIME 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()
,ObjectLoader
integration. #30965 (@gkjohnson)
- Fix
- CapsuleGeometry
- Add
heightSegments
parameter. #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
frontFacing
when usingmaterial.flatShading
. #30828 (@sunag) - Add
dFdx
anddFdy
warnings. #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
Fn
parameters. #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
bvec
operators. #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
__webglFramebuffer
when mipmaps are used. #30746 (@haxiomic) - Support
alphaToCoverage
with 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.transparen
t 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
InstancedMesh
inwebgl_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_caustics
example 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
frontDeceleration
attribute 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
null
check. #30694 (@Mugen87)
- Fix
- Backend
- Move
trackTimestamp
to parent class. #30714 (@s-rigaud)
- Move
- BufferGeometry
- Fix clone index data copy. #30680 (@s-rigaud)
- Controls
- Require
element
inconnect()
. #30772 (@mrdoob)
- Require
- Earcut
- Copy mapbox/earcut file into core libs. #30756 (@gkjohnson)
- ExtrudeGeometry
- Automatically clean shape data. #30750 (@mlasala45)
- FileLoader
- Avoid
undefined
for members. #30622 (@Mugen87)
- Avoid
- ImageUtils
- Add optional
type
parameter 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: true
works. #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.outputNode
if 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_geometry
example. #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
unadjustedMovementoption
tolock()
. #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
frame
parameter 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=true
as default. #30435 (@sunag) - Fix
scaleNode
type conversion. #30545 (@sunag)
- Set
- StructTypeNode
- Fix inclusion when added to the layout. #30439 (@sunag)
- TSL
- Introduce
RaymarchingBox
andraymarchingTexture3D
. #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
currentRenderState
inrenderer.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
Mattercraft
toWrappers and Frameworks
guide. #30465 (@nyan-left) - Improve Chinese translation. #30475 (@haiyoucuv)
- Improve
LOD
page. #30591 (@guiseek) - Improve
Raycaster
page. #30478 (@trusktr) - Improve
displacementBias
description. #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
blendFactor
support. #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
raymarchingTexture3D
to 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)
r173
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r172--r173 https://github.com/mrdoob/three.js/milestone/86?closed=1
- Global
- Clean up. #30383 (@s-rigaud)
- BatchedMesh
- Fix bug in
deleteGeometry()
. #30304 (@jonathanzopes)
- Fix bug in
- ChainMap
- Avoid a redundant internal weak map. #30258 (@ycw)
- ConstNode
- Optimize indexes. #30388 (@sunag)
- EventDispatcher
- Obtain
_listeners
beforeif
block. #30328 (@erasta)
- Obtain
- Geometries
- Reuse
arrayNeedsUint32()
from core. #30408 (@Mugen87)
- Reuse
- ImageUtils
- Always use
image/png
ingetDataURL()
. #30336 (@Mugen87)
- Always use
- Line
- Fix index on intersection. #30424 (@jonathanzopes)
- NodeBuilder
- Rename
.monitor
to.observer
. #30354 (@sunag)
- Rename
- NodeBuilderState
- Update description. #30355 (@sunag)
- Nodes
- Optimize
getCacheKey()
. #30259 (@Mugen87) - Fix recursion with environment nodes. #30277 (@Mugen87, @sunag)
- Optimize
- NodeMaterialObserver
- Detect geometry exchange. #30409 (@Mugen87)
- NodeUtils
- Simplify
getCacheKey()
. #30303 (@Mugen87)
- Simplify
- PMREMGenerator
- Don't pollute node material scope. #30324 (@Mugen87)
- PointsNodeMaterial
- Improve implementation, replace
InstancedPointsNodeMaterial
. #30300 (@sunag)
- Improve implementation, replace
- PostProcessing
- Allow usage with more than one instance. #30279 (@Mugen87)
- RenderContexts
- Introduce
getForClear()
. #30256 (@Mugen87) - Add missing properties. #30286 (@Mugen87)
- Introduce
- Renderer
- Fix viewport configuration of
ArrayCamera
. #30298 (@Mugen87) - Remove outdated comment. #30306 (@Mugen87)
- Introduce
colorBufferType
. #30425 (@Mugen87)
- Fix viewport configuration of
- RenderObject
- Fix geometry key for morph targets. #30302 (@Mugen87)
- Improve cache key computation when rendering shadows. #30316 (@Mugen87)
- TSL
- Fix optional parameter in
Fn()
. #30293 (@sunag) - Rename
varying()
totoVarying()
,vertexStage()
totoVertexStage()
. #30356 (@sunag) - Add
mat2
support. #30364, #30368 (@RenaudRohlinger) - Add missing
atomicLoad
support. #30371 (@RenaudRohlinger) - Add matrix operations support for floats. #30370 (@RenaudRohlinger)
- Introduce
array()
. #30386 (@sunag) - Introduce
struct()
. #30394, #30426 (@sunag, @Spiri0)
- Fix optional parameter in
- VarNode
- Fix
getMemberType()
reference. #30427 (@sunag)
- Fix
- VideoFrameTexture
- Add new class for WebCodecs API. #30270 (@Mugen87, @maddanio)
- Add
isVideoFrameTexture
flag. #30381 (@ycw)
- WebGLBackend
- Fix
ArrayCamera
pixel ratio. #30338 (@sunag) - Fix context parameter. #30413 (@Mugen87)
- Fix depth formats. #30422 (@Mugen87, @cabanier)
- Fix
- WebGLBackground
- Reset meshes in
dispose()
. #30257 (@Mugen87)
- Reset meshes in
- WebGPUAttributeUtils
- Fix i16a/u16a patch. #30264 (@ycw)
- WebGPUBackend
- Fix Timestamp Query. #30299 (@ycw)
- WebGPURenderer
- Reduce memory churn when using chain maps. #30249 (@Mugen87)
- Introduce
.toConst()
,Const()
,Var()
. #30251 (@RenaudRohlinger, @sunag) - Rename
timeStampQuerySet
totimestampQuerySet
. #30289 (@ycw) - Derives timestamp buffer size from
BigUint64Array
. #30290 (@ycw) - Fix Occlusion Query logic. #30288 (@ycw, @sunag)
- Fix shadow regression. #30307 (@RenaudRohlinger)
- Add
.outputType
backend parameter. #30320 (@donmccurdy) - Fix clear alpha in
WebGLBackend
. #30329 (@RenaudRohlinger) - Improve
ArrayCamera
performance and fix uniforms. #30313, #30337 (@sunag) - Enable dynamic resizing of the cameras array of
ArrayCamera
. #30353 (@sunag) - Introduce
TimestampQueryPool
. #30359, #30375, #30393 (@RenaudRohlinger)
- WebGPUTextureUtils
- Improve
_copyImageToTexture()
. #30260 (@ycw)
- Improve
- WebXRManager
- Do not try to init
WebXRDepthSensing
with cpu-optimized depth. #30241 (@dli7319) - Further improvements to WebXR layers feature testing. #30282 (@toji)
- Safely check for
XRWebGLBinding
. #30319 (@zonkypop)
- Do not try to init
- XRManager
- Add XR manager for
WebGPURenderer
. #30346, #30348, #30349, #30358 (@Mugen87) - Add layers support. #30365, #30417 (@Mugen87)
- Add MSAA support. #30378, #30418 (@Mugen87)
- Add XR manager for
- XRRenderTarget
- Add new render target type for XR. #30369 (@Mugen87)
Manual
- Fix
OrbitControls
usage in Offscreen Canvas demo. #29983 (@Arecsu) - Improve Chinese translation. #30294 (@evolify)
Docs
- Add documentation of
WebGPURenderer
and related modules. #30244, #30246, #30250 (@Mugen87) - Improve
BatchedMesh
andInstancedMesh
page. #30362 (@gkjohnson) - Improve
BlendModes
module. #30322 (@Mugen87) - Improve
ConvexGeometry
page. #30399 (@erasta) - Improve
LineMaterial
page. #29864 (@nyan-left) - Improve
Matrix4
page. #30276 (@Mugen87) - Improve
Scene
page. #30357 (@Serum0017) - Improve
Texture
page. #30285 (@jirihon) - Improve
Color Management
guide. #30281 (@donmccurdy) - Make use of
@deprecated
tag in JSDoc. #30284 (@s-rigaud) - Improve JSDoc types. #30271, #30272, #30317, #30318, #30323, #30325, #30280, #30372, #30287, #30382 (@Mugen87, @s-rigaud)
Examples
- Clean up. #30248, #30331, #30332, #30419 (@Methuselah96, @Mugen87)
- Improve
webgpu_lights_ies_spotlight
example. #30243 (@mrdoob, @sunag) - Fix glossy material in
webgl_geometry_teapot
example. #30253 (@erich666) - Add raycaster helper external demo. #30262 (@Mugen87, @abernier, @gsimone)
- Add
webgpu_camera_array
example. #30296, #30297 (@Mugen87) - Fix video decoder stalls issue in
webgpu_video_frame
example. #30385 (@ycw) - Combine LUT with coffee smoke demo. #30390 (@Mugen87)
Addons
-
CCDIKSolver
- Fix algorithm broken link. #30266 (@satelllte)
-
GLTFLoader
- Remove redundant decay assignment. #30411 (@s-rigaud)
- Improve existing JSDoc. #30412 (@s-rigaud)
-
InteractiveGroup
- Add
disconnect()
. #29975 (@bbsimong, @Mugen87)
- Add
-
MeshGouraudMaterial
- Deprecate module. #30314 (@Mugen87)
-
OutputPass
- Support
THREE.CustomToneMapping
. #30335 (@samposoft)
- Support
-
TextGeometry
- Remove deprecated code. #30315 (@Mugen87)
-
TSLEncoder
- Fix transpilation issues. #30410 (@Mugen87)
-
WaterMesh
- Improve lighting support. #30247 (@sunag)
r172
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r171--r172 https://github.com/mrdoob/three.js/milestone/85?closed=1
- Global
- Remove deprecated code. #30004 (@Mugen87)
- Clean up. #30078, #30119, #30138, #30143, #30176 (@s-rigaud, @ycw)
- CameraHelper
- Fix usage with WebGPU. #30136 (@AlaricBaraou)
- PropertyBinding
- Fix versioning scheme determination. #30054 (@Mugen87)
- LightsNode
- Fix cache key. #30045 (@Mugen87, @sunag)
- Line2NodeMaterial
- Fix usage of optional nodes. #30107 (@s-rigaud)
- LineDashedNodeMaterial
- Fix node references. #30175 (@ycw)
- Node
- Add
customCacheKey()
. #30062 (@sunag)
- Add
- Nodes
- Ensure
getBackgroundNode()
andgetEnvironmentNode()
only return nodes. #30169 (@Mugen87)
- Ensure
- NodeUtils
- Add
getDataFromObject()
. #30171 (@sunag)
- Add
- PMREMGenerator
- Fix
fromScene()
back-side materials. #30063 (@sunag)
- Fix
- ReflectorNode
- Force
autoClear
. #30199 (@sunag)
- Force
- RendererUtils
- Honor fog. #30178 (@Mugen87)
- ShadowBaseNode
- Fix CSM
shadowWorldPosition
. #30060 (@sunag)
- Fix CSM
- ShadowNode
- Fix
updateMatrices
sequence. #30064 (@sunag) - Ensure background does not influence shadow map. #30170 (@Mugen87)
- Fix
- SkinningNode
- Fix previousBoneMatrices. #30161 (@sunag)
- TextureNode
- Rename
uv()
tosample()
. #30061 (@sunag) - Fix matrix update. #30200 (@sunag)
- Improve error message. #30215 (@sunag)
- Rename
- TSL
- Improve fog approach. #30080, #30092 (@sunag)
- Add
texture_depth_multisampled_2d
forwgslFn
. #30082 (@sunag) - Fix
positionWorld
used inmaterial.positionNode
andfragment-stage
. #30105 (@sunag) - Vertex shader revision. #30108, #30147 (@sunag)
- Add missing export. #30129 (@Methuselah96)
- Overloaded
atan2
toatan
. #30131 (@sunag) - More consistent names
shadowPositionWorld
,materialAO
. #30152 (@sunag) - GLSL alias functions. #30150 (@sunag)
- Add
vertexStage()
function. #30173 (@sunag)
- UniformArrayNode
- Add support for
mat2
,mat3
andmat4
types. #30051 (@holtsetio) - Fix
getNodeType()
. #30058 (@sunag)
- Add support for
- UniformGroup
- Delete unused file. #30002 (@Mugen87)
- WebGLRenderer
- Add transmission render target scale. #30018 (@michaeldll)
- Allow for binding and rendering into a 2d render target mipmap. #29844 (@gkjohnson)
- WebGPURenderer
- Fix filterable depth textures. #30023 (@sunag)
- Revert
onSubmittedWorkDone
usage in timestamp queries. #30031 (@RenaudRohlinger) - Add
onBeforeShadow()
andonAfterShadow()
. #30032 (@RenaudRohlinger) - Fix blending opacity in shadows. #30081 (@sunag)
- Fix support for non-indexed
BatchedMesh
. #30084 (@RenaudRohlinger) - Fix hardware clipping issues. #30083 (@RenaudRohlinger)
- Fix
getArrayBufferAsync()
inWebGPUBackend
. #30132 (@RenaudRohlinger) - Rename
PostProcessingUtils
toRendererUtils
. #30172 (@sunag) - Fix and improve the dynamic updating of the scene nodes cache. #30180 (@sunag)
- Introduce
RenderTarget3D
andRenderTargetArray
. #30155 (@RenaudRohlinger) - Disable fog in shadow-material. #30204 (@sunag)
- Fix
depthTest
with enabled logarithmic depth buffer. #30214 (@sunag) - Respect TypedArray in
StorageInstancedBufferAttribute
. #30218 (@RenaudRohlinger)
- WebXRManager
- Improve WebXR layers feature testing. #30112 (@toji)
- WGSLNodeBuilder
- Sampler for compute shader. #30033 (@Spiri0)
Manual
- Improve post processing guide. #30098 (@ChenKuan1110)
- Update material feature table. #30164 (@s-rigaud)
Docs
- Add JSDoc config. #29984, #30076 (@Mugen87, @s-rigaud)
- Improve documentation of the new node material. #29984, #30000, #30001, #30009, #30013, #30012, #30020, #30025, #30027, #30037, #30041, #30038, #30046, #30049, #30055, #30067, #30075, #30079, #30087, #30093, #30095, #30100, #30103, #30109, #30110, #30115, #30117, #30123, #30135, #30137, #30142, #30153, #30157, #30159, #30163, #30167, #30162 (@Mugen87, @s-rigaud, @sunag, @cmhhelgeson)
- Improve documentation of
WebGPURenderer
and related modules. #30182, #30188, #30194, #30213, #30221, #30224 (@Mugen87) - Improve
Loader
page. #29999 (@NeelDigonto) - Improve
Material
page. #30043, #30059, #30121, #30118 (@borisghidaglia, @Mugen87) - Improve Chinese translation. #30205 (@puxiao)
- Improve French translation. #30019 (@s-rigaud)
- Fix code blocks occasionally lacking white-space in Firefox. #30036 (@mrxz)
Examples
- Clean up. #29997, #30015, #30106, #30146, #30145, #30144 (@s-rigaud)
- Remove MMD modules. #30003 (@Mugen87)
- Add
webgpu_lines_fat_raycasting
example. #30030 (@RenaudRohlinger) - Add background to
webgpu_pmrem_scene
. #30116 (@Spiri0) - Restore
webgpu_compute_audio
. #30139 (@sunag) - Removing antialias from
webgpu_backdrop_water
. #30206 (@sunag)
Addons
-
DDSLoader
- Add 24 bit uncompressed RGB support. #30010 (@sam6321)
-
LineSegments2
- Fix
raycast()
. #30016 (@Samsy)
- Fix
-
OrbitControls
- Add
keyRotateSpeed
. #29988 (@bbsimong)
- Add
-
TiledLightsNode
- Fix cache-key performance. #30130 (@sunag)
Tests
Node Editor
- Improve imports. #29998 (@linbingquan)
Editor
- Editor: Fix vertex normals helper regression. #30069 (@Mugen87)
r171
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r170--r171 https://github.com/mrdoob/three.js/milestone/84?closed=1
- Global
- Codesplit WebGL/WebGPU entrypoints. #29404, #29644 (@CodyJasonBennett, @RenaudRohlinger)
- Introduce
three.tsl.js
. #29948 (@sunag) - Improve import style of
MathUtils
. #29943 (@WestLangley)
- AnalyticLightNode
- Reset
shadowNode
after dispose. #29939 (@sunag)
- Reset
- Audio
- Ensure progress is reset in
onEnded()
. #29930 (@Jian-Nam) - Override
copy()
andclone()
to include missing properties. #2996 (@Byongho96)
- Ensure progress is reset in
- BatchedMesh
- Better error handling. #29790 (@Makio64)
- BlendModes
- Added
blend*
prefix. #29897 (@sunag)
- Added
- BufferGeometry
- Fix
setFromPoints()
when updating with smaller point sets. #29956 (@rotu)
- Fix
- ColorManagement
- Support treeshaking. #29816 (@linbingquan)
- GLSLNodeBuilder
- Fix color space regression. #29945 (@Mugen87)
- Fix varying
color
type. #29950 (@sunag)
- Line2NodeMaterial
- Fix broken dash. #29835 (@Mugen87)
- Add opacity support using backdrop. #29979 (@sunag)
- Materials
- Revert static types of builtins materials. #29789 (@RenaudRohlinger)
- NodeMaterial
- Only call
setupDepth()
with active depth buffer. #29799 (@Mugen87) - Add
.castShadowNode
and.receivedShadowNode
. #29840 (@sunag) - Fix
getAlphaHashThreshold()
properties conflict. #29977 (@sunag)
- Only call
- PMREMGenerator
- Add
fromSceneAsync()
. #29951 (@sunag) - Add optional renderTarget in
fromScene()
. #29959 (@sunag)
- Add
- PostProcessing
- Fix
PostProcessingUtils
import. #29801 (@Mugen87) - Harmonize node type. #29823 (@Mugen87)
- Fix
- Renderer
- Fix
getShaderAsync()
. #29832 (@Mugen87) - Add
hasInitialized()
. #29937 (@Mugen87) - Add
initTexture()
. #29947 (@Mugen87)
- Fix
- RenderObjects
- Force update if geometry has changed. #29807, #29836, #29873 (@sunag)
- Spherical
- Use
MathUtils.clamp()
formakeSafe()
. #29824 (@linbingquan)
- Use
- TSL
- Add
shadows
. #29838 (@sunag) - Introduce
instance()
for custom use #29911 (@sunag) - Introduce
attributeArray()
andinstancedArray()
. #29881 (@sunag) - Return
pass()
texture if available inconvertToTexture()
. #29957 (@sunag) - Deprecated
storageObject()
. #29982 (@sunag)
- Add
- Vector2/3/4
- Use
MathUtils.clamp()
internally. #29812, #29929 (@satelllte, @mrdoob)
- Use
- WebGLBackground
- Add
dispose()
. #29858 (@Mugen87)
- Add
- WebGLGeometries
- Don't upload morph target attributes. #29915 (@mrxz)
- WebGLRenderer
- Add support for copying mipmap data between textures. #29769 (@gkjohnson)
- WebGPUAttributeUtils
- Fix
updateAttribute()
when using range. #29967 (@holtsetio)
- Fix
- WebGPUBackend
- Simplify Timestamp Queries and ensure work done. #29970 (@RenaudRohlinger)
- WebGPURenderer
- Make sure default instance of
CompressedTexture
works. #29788 (@Mugen87) - Implement
ClippingGroup
object. #28237, #29833 (@aardgoose) - Make
Animation
WebXR compatible. #29783 (@Mugen87) - Hardware clipping support. #28578 (@aardgoose)
- Added support for
.wrap*
usingbiquadraticTexture
. #29828, #29846 (@sunag) - Handle
OutOfMemory
in timestamp tracking. #29857 (@RenaudRohlinger) - Fix
OffscreenCanvas
support in WebGL. #29867 (@RenaudRohlinger) - Per "texture set" bindGroup caching. #29845 (@aardgoose)
- Logarithmic Depth Buffer rename/revision. #29870 (@PoseidonEnergy)
- Fix
ImageBitmap
flip inWebGLBackend
. #29866 (@RenaudRohlinger, @sunag) - Fix
shadowPositionNode
cache. #29921 (@sunag) - Add
PointShadowNode
. #29849 (@sunag) - Fix globals usage to improve node support. #29919 (@whatisor)
- Fix integer uniforms. #29976 (@holtsetio)
- Fix viewport/scissor after
copyFramebufferToTexture()
. #29978 (@sunag)
- Make sure default instance of
- WebGPUTextureUtils
- Fix
dispose()
ofVideoTexture
. #29944 (@Mugen87)
- Fix
- WGSLNodeBuilder
- Improve
NearestFilter
support. #29910 (@sunag)
- Improve
Documentation
- Improve
BatchedMesh
page. #29803 (@s-rigaud) - Improve
Clock
page. #29805 (@s-rigaud) - Improve
GLTFExporter
page. #29809 (@Mugen87) - Improve
Renderer
page. #29804 (@s-rigaud) - Fix typo in loader pages. #29848 (@satelllte)
- Improve French translation. #29901, #29902 (@satelllte)
- Improve Korean translation. #29885, #29918 (@mmjinglin163)
Manual
- Fix
loaderArrayLoadRE
regex to allow spaces before square bracket. #29820 (@mrxz)
Examples
- Clean up. #29792, #29877, #29932, #29936, #29972 (@linbingquan, @Mugen87)
- Improve DOM building in
index.html
. #29791 (@linbingquan) - Improve
webgpu_postprocessing_ao
example. #29843 (@Mugen87) - Improve
webgpu_postprocessing_ssr
example. #29878 (@Mugen87) - Improve
webgpu_postprocessing_sobel
example. #29934 (@Mugen87)
Addons
-
ArcballControls
- Add
enableFocus
. #29871 (@kxxhan)
- Add
-
CSMShadowNode
- Remove name collision. #29811 (@Mugen87)
-
DecalGeometry
- Add default parameters. #29868 (@Mugen87)
-
GTAONode
- Add
resolutionScale
. #29826 (@Mugen87)
- Add
-
KTX2Loader
- Fix
minFilter
default for untranscoded compressed textures. #29904 (@donmccurdy)
- Fix
-
LineGeometry
- Override
setFromPoints()
. #29681 (@felixwri)
- Override
-
OrbitControl
- Fixed rotation toggle in
KeyDown
handler. #29834 (@i3ene, @Mugen87)
- Fixed rotation toggle in
-
PointerLockControls
- Remove vendor prefixes for
MouseEvent.movement
props. #29802 (@satelllte)
- Remove vendor prefixes for
-
SceneOptimizer
- Fix
toBatchedMesh()
materials. #29935 (@AlaricBaraou)
- Fix
-
SSRNode
- Add temporary fix for Chrome. #29875 (@Mugen87)
- Support logarithmic depth. #29941 (@Mugen87)
-
StereoCompositePassNode
- Fix state reset/restore. #29806 (@Mugen87)
-
TiledLightsNode
- Fix reflectedLight declaration sequence. #29874 (@sunag)
-
TSL Transpiler
- Adding various fixes. #29958 (@sunag)
-
UVsDebug
- Clean up. #29794 (@linbingquan)
-
WebGPU
- Remove
GPUShaderStage
hack. #29933 (@Mugen87) - Fix navigator usage. #29965 (@Mugen87)
- Remove
Tests
- Use absolute delta value when comparing against tolerance. #29946 (@mrxz)
r170
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r169--r170 https://github.com/mrdoob/three.js/milestone/83?closed=1
- Global
- Move some WebGPU modules from core to addons. #29511 (@Mugen87)
- BatchedMesh
- Add
deleteGeometry()
. #29523 (@gkjohnson) - Add
optimize()
. #29527 (@gkjohnson) - Fix
renderer.info.render
when using multidraw. #29532 (@agargaro) - Add support for resizing instance count, geometry size. #29577 (@gkjohnson)
- Fix cases where calling
optimize()
can result in inconsistent state. #29624 (@gkjohnson) - Consolidate internal geometry information. #29687 (@gkjohnson)
- More cleanup. #29695 (@gkjohnson)
- Add
- BufferGeometry
- Check for existing attribute in
setFromPoints()
. #29696 (@Mugen87)
- Check for existing attribute in
- CDLNode
- Add node class for ASC Color Decision List (CDL) v1.2. #29510 (@donmccurdy)
- ColorManagement
- Add
ColorManagement.define( { ... } )
. #29450 (@donmccurdy) - Fix rendering to linear spaces. #29543 (@donmccurdy)
- Add
- CompressedArrayTexture
- Fix failing on Android and Meta Quest. #29566 (@RenaudRohlinger)
- CylinderGeometry
- Fix case where triangles are missing with multiple height segments. #29728 (@gkjohnson)
- Nodes
- Avoid vector reuse in
luminance()
input. #29540 (@donmccurdy) - Fixes and improvements for
reflector
andgaussianBlur
. #29619 (@sunag)
- Avoid vector reuse in
- NodeMaterial
- Introduce
.geometryNode
and jelly example. #29551 (@sunag) - Add support for
alphaHash
. #29757 (@Mugen87)
- Introduce
- NodeMaterialObserver
- Fix buffer resize when transmission is used. #29735, #29737 (@sunag)
- PassNode
- Clean up. #29733 (@linbingquan)
- PostProcessing
- Only request depth buffer when necessary. #29563 (@Mugen87)
- Harmonize node update type. #29564 (@Mugen87)
- Add
getScreenPosition()
. #29599 (@Mugen87) - Add method for normal reconstruction. #29703 (@Mugen87)
- PhysicalLightingModel
- Cleanup
evalIridescence
. #29702 (@sunag)
- Cleanup
- RectAreaLightNode
- Fix
update()
. #29771 (@Mugen87)
- Fix
- ReflectorNode
- Remove
getTextureNode()
. #29609 (@Mugen87) - Add
getDepthNode()
. #29621 (@Mugen87) - Added missing
nodeObject
. #29627 (@sunag) - Fix projection matrix computation for WebGL. #29630 (@Mugen87)
- Remove
- Renderer
- Added sync
compute()
support. #29547 (@sunag)
- Added sync
- ScriptableNode
- Rename
global
toScriptableNodeResources
. #29736 (@scottmas, @sunag)
- Rename
- ShadowNode
- Separate the shadow map creation and use from
AnalyticLightNode
. #29567 (@aardgoose)
- Separate the shadow map creation and use from
- SpriteNodeMaterial
- Size attenuation support orthographic camera. #29517 (@RenaudRohlinger)
- Texture
- Always generate mipmaps when
generateMipmaps
istrue
. #29677 (@gkjohnson)
- Always generate mipmaps when
- TSL
- Deprecated
temp()
. #29516 (@sunag) - Introduce pointer | WGSL ptr support. #29552 (@sunag)
- Introduce
time
. #29557 (@sunag) - Fix exponential float conversion. #29562 (@sunag)
- Support defined color spaces in
ColorSpaceNode
. #29694 (@donmccurdy) - Add function for BPCEM. #29773 (@Mugen87)
- Deprecated
- Vector4
- Add
divide()
. #29759 (@Mugen87)
- Add
- WebGLBackend
- Fix type conversion in transform feedback. #29554 (@sunag)
- WebGLRenderer
- sRGB decoding for
VideoTexture
emissiveMap
. #29657 (@donmccurdy) - Correctly generate mipmaps for 3D & Array RenderTargets. #29678 (@gkjohnson)
- Support render target textures in
copyTextureToTexture()
. #29662 (@Mugen87) - Copy set of layers when copying 3d texture data. #29699 (@gkjohnson)
- Stable reversed Z buffer implementation. #29579 (@eXponenta)
- Allow for copying 2d targets to and from layers of 3d textures. #29710 (@gkjohnson)
- sRGB decoding for
- WebGLTextures
- Ensure depth texture properties are deleted. #29697 (@Mugen87)
- WebGPURenderer
- Fix
NodeLibrary
logic for minified builds. #29501 (@RenaudRohlinger) - Fixed shadows not rendering correctly with
logarithmicDepthBuffer
. #29447, #29561 (@PoseidonEnergy) - Instance sprite example. #29503 (@RenaudRohlinger)
- Ignore
diagnostic()
method in Deno. #29522 (@Mutefish0) - Add support for renderer without depth and stencil buffers. #29533 (@RenaudRohlinger)
- Fix premultiplied alpha with clear colors. #29538 (@Mugen87)
- Add support for geometry without attributes. #29576 (@RenaudRohlinger)
- Introduce
PostProcessingUtils
. #29595, #29598 (@sunag) - Remove obsolete code. #29596 (@aardgoose)
- Fix missing updates to geometry attributes. #29589 (@RenaudRohlinger)
- Introducing
IndirectStorageBufferAttribute
. #29594 (@Spiri0, @sunag) - Introduce indirect drawing support. #29615 (@sunag)
- Fix uniform/texture index allocation for WebGL backend. #29622 (@aardgoose)
- Remove useless call in WebGL fallback. #29631 (@aardgoose)
- Introduce
TiledLighting
. #29642, #29701, #29722, #29723 (@sunag) - Fix pipeline cache key. #29685 (@sunag)
- Introduce waitForGPU. #29686 (@RenaudRohlinger)
- Add double-side transmission. #29705, #29718 (@sunag)
- Add
wgsl
comment tag. #29709 (@linbingquan) - Support
Scene.backgroundRotation
. #29762 (@Mugen87) - Improve post-rendering usage of
copyFramebufferToTexture()
. #29729 (@sunag)
- Fix
- WebGPUTextureUtils
- Fix usage of
Texture.anisotropy
. #29654 (@Mugen87)
- Fix usage of
- WGSLNodeFunction
- Ignore convertion of unknown types. #29724 (@sunag)
- WebXRManager
- Inherit active layers from camera. #29742 (@mrxz)
Documentation
- Improve documentation about color management. #29545 (@donmccurdy)
- Improve Chinese translation. #29620, #29643 (@ShanHaiSiLu, @puxiao)
- Improve Korean translation. #29649, #29731 (@sungpaks, @seopyoon)
- Docs: Improve Japanese translation. #29665 (@sawa-zen)
- Upgrade
prettify.js
. #29633 (@Mugen87) - Fix typos. #29716 (@s-rigaud)
- Add copy button to non-inline code snippets. #29700 (@snowiewdev)
Manual
- Improve
Prerequisites
page. #29616 (@DevinCLane) - Improve
Lights
page. #29756 (@Nokic233)
Examples
- Clean up. #29513, #29600, #29672, #29738, #29743, #29748 (@linbingquan, @Mugen87)
- Fix shadow map enabled in
webgpu_shadowmap
example. #29520 (@sunag) - Improve
webgl_postprocessing_fxaa
example. #29525 (@linbingquan) - Fix shadow map enabled in
webgpu_instancing_morph
example. #29553 (@sunag) - Fix node imports. #29556 (@sunag)
- Fix
webgpu_particles
example. #29555 (@sunag) - Improve anti-aliasing quality of FXAA implementations. #29524 (@swift502)
- Fix shadows in outline demo. #29565 (@Mugen87)
- Fix
webgpu_tsl_procedural_terrain
warning. #29574 (@sunag) - Added hashBlur and improve
webgpu_backdrop_area
example. #29606, #29614 (@sunag) - Removed unused textures. #29618 (@mrdoob)
- Clean up TSL editor example. #29669 (@donmccurdy)
- Add
*Node
suffix. #29719 (@sunag) - Deprecate MMD modules. #29698 (@Mugen87)
- Remove
CinematicCamera
. #29750 (@Mugen87) - Remove raymarching GLSL demo. #29774 (@Mugen87)
Addons
-
3MFLoader
- Add preliminary support for loading Implicit Functions. #29667 (@zalo)
-
AfterimagePass
- Use copy shader. #29691 (@Mugen87)
-
BloomNode
- Remove redundant clears. #29704 (@Mugen87)
-
CSM
- Add WebGPU version. #29610 (@aardgoose, @Mugen87)
-
CSSRenderer
- Ensure removing CSS objects works within iFrames. #29663 (@yomotsu)
-
DecalGeometry
- Support geometries without normals. #29536 (@Mugen87)
-
FBXLoader
- Improve transparency handling. #29544 (@Mugen87)
-
GaussianBlurNode
- Introduce
premultipliedGaussianBlur
. #29604 (@sunag) - Remove useless check. #29611 (@Mugen87)
- Introduce
-
GLTFExporter
- Add support for
WebGPURenderer
. #29509 (@donmccurdy) - Better defaults for metallic and roughness factors. #29692, 48e6e2ee4e769013b911a079a433aecc2686d5b2 (@Mugen87, @mrdoob)
- Add support for
-
GLTFLoader
- Add KTX2 mime type support in
getImageURIMimeType()
. #29746 (@puxiao)
- Add KTX2 mime type support in
-
GTAONode
- Fix AO with WebGL backend. #29593 (@Mugen87)
-
KTX2Exporter
- Fix metadata, add example. #29541 (@donmccurdy)
-
KTX2Loader
- Support transcoding UASTC HDR to BC6H and RGBA16. #29730 (@donmccurdy)
-
LDrawLoader
- Add WebGPU support. #29752 (@Mugen87)
-
LensflareNode
- Add FX class for bloom-based lens flare effects. #29715 (@Mugen87)
-
NURBSCurve
- Add
toJSON()
andfromJSON()
. #29514 (@canxerian)
- Add
-
OutlineNode
- Add FX class for rendering selective outlines. #29575, #29583 (@Mugen87, @sunag)
-
ProgressiveLightMap
- Remove usage of
THREE
namespace. #29747 (@Mugen87) - Add WebGPU version. #29749 (@Mugen87)
- Remove usage of
-
RectAreaLightTextureLib
- Fix
DataTexture
usage. #29717 (@s-rigaud)
- Fix
-
SMAANode
- Add FX class for Subpixel Morphological Anti-Aliasing. #29559 (@Mugen87)
-
SSAAPassNode
- Clean up. #29647 (@Mugen87)
-
SSRNode
- Add FX class for Screen Space Reflections. #29597, #29605 (@Mugen87)
-
SSRPass
- Ensure metalness pass is not affected by fog and background. #29585 (@Mugen87)
-
TextureHelper
- Add WebGPU version. #29518 (@Mugen87)
-
TRAAPassNode
- Add FX class for Temporal Reprojection Anti-Aliasing. #29636, #29671 (@Mugen87)
-
TransformControls
- Fix
dispose()
. #29512 (@Mugen87) - Add min/max constraints. #29602 (@Makio64)
- Fix
-
USDZExporter
- Add support for WebGPURenderer. #29507 (@Mugen87)
-
WaterMesh
- Fix planar offset - WebGPU. #29626 (@sunag)
-
WebGPUTextureUtils
- Disable uv transform. #29680, #29684 (@Mugen87)
-
Wireframe
- Add WebGPU version. #29534 (@Mugen87)
Node Editor
- Update
flow.module.js
- fix zoom. #29508 (@sunag) - Add
normalMap
node. #29652 (@hybridherbst)
Editor
- Fixed editor not loading on Chrome 129.0.6668.100 due to import maps definitions location. e754fce13603bd7c6d982cb76374722df7e37ce2 (@mrdoob)
r169
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r168--r169 https://github.com/mrdoob/three.js/milestone/82?closed=1
- Global
- Clean up. #29355, #29383 (@linbingquan, @s-rigaud)
- Audio
- Add
delay
parameter tostop()
. #29376 (@tatsmaki)
- Add
- BatchedMesh
- Add
setGeometryIdAt()
andgetGeometryIdAt()
. #29343 (@Makio64) - Add
deleteInstance()
. #29449 (@JordanLane-Veerum) - Add
getGeometryRangeAt()
. #29409 (@agargaro)
- Add
- CacheNode
- Fix parent reference. #29369 (@Mugen87)
- Clock
- Drop fallback to
Date.now()
. #29233 (@satelllte)
- Drop fallback to
- Controls
- Add
null
as default parameter fordomElement
. #29368 (@Mugen87)
- Add
- CylinderGeometry
- Don't add degenerate triangles. #29460 (@gkjohnson)
- InstancedPoints
- Fix texture coordinates. #29396 (@RenaudRohlinger)
- Loader
- Unpack colors to working color space. #29448 (@donmccurdy)
- LOD
- Add
removeLevel()
. #29359 (@JaimeTorrealba, @Mugen87)
- Add
- Node
- Introduce static type. #29282 (@sunag)
- Add
AtomicFunctionNode
. #29385 (@cmhhelgeson) - Access remaining compute builtins. #29469 (@cmhhelgeson)
- NodeBuilder
- Introduce
addFlowCodeHierarchy()
/NodeBlock
. #29495 (@sunag)
- Introduce
- NodeMaterial
- Clean up
Line2NodeMaterial
andInstancedPointsNodeMaterial
. #29319 (@aardgoose)
- Clean up
- PMREMGenerator
- Fix compile methods and background usage. #29297 (@Mugen87)
- Raycaster
- Add barycoord to intersection result, make attribution interpolation more convenient. #29340 (@gkjohnson)
- ReferenceNode
- Fix
null
reference usinggetNodeType()
. #29498 (@sunag)
- Fix
- SpriteMaterial
- Simplify shader. #29397 (@WestLangley)
- SpriteNodeMaterial
- Add
sizeAttenuation
. #29394 (@RenaudRohlinger)
- Add
- StorageArrayElementNode
- Remove check for non-existent property. #29276 (@cmhhelgeson)
- ToonOutlinePassNode
- Add FX pass for toon outlines. #29483 (@Mugen87)
- TSL
- Export color space, tone mapping methods. #29288 (@sunag)
- Remove redundancy in
Normal.js
. #29300 (@sunag) - Introduce
screenUV
,screenSize
,screenCoordinate
andviewport
revision. #29347 (@sunag) - Add
workingToColorSpace
,colorSpaceToWorking
. #29378 (@sunag) - Support
uniformArrays
fromuserData()
and.label()
foruserData()
andreference()
. #29430 (@aardgoose)
- WebGPURenderer
- Sort objects in clip space. #29271 (@RenaudRohlinger)
- Added basic
three.webgpu.nodes.js
. #29273 (@sunag) - Add
BundleGroup
. #29277 (@aardgoose) - Fix material arrays and geometry groups. #29278 (@RenaudRohlinger)
- Fix
normalView
normalize applied at vertex stage. #29280 (@sunag) - Fix
getArrayBufferAsync()
race condition and ensure proper buffer sequencing. #29293 (@RenaudRohlinger) - Sort bind groups and minimize
setBindGroup()
commands. #29256 (@aardgoose) - Compute
modelViewMatrix
using GPU. #29299, #29312 (@sunag) - Ignore
diagnostic()
method in Firefox. #29306 (@sunag) - Add cube face to
readRenderTargetPixelsAsync()
parameters. #29323 (@aardgoose) - Fix
viewportCoordinate
inWebGLBackend
. #29326 (@sunag) - Add support for VSM. #29225 (@Mugen87, @sunag)
- Extract common draw call logic from backends. #29358 (@aardgoose)
- Add depth/layer support to
copyTextureToTexture()
. #29364 (@Spiri0) - Support stencil and depth config parameters. #29371 (@aardgoose)
- Workgroup Arrays and Barrier support. #29192 (@cmhhelgeson)
- Fix
InstancedMesh
init with zero instance. #29399 (@RenaudRohlinger) - Introduce
NodeMaterialObserver
and updates. #29386, #29421 (@sunag, @aardgoose) - Fix
renderGroup.needsUpdate
logic. #29402 (@aardgoose) - Fallback for
alphaToCoverage
ifantialias
is disabled #29395 (@RenaudRohlinger) - Use shared UBOs for common uniform groups for WebGL fallback. #29420 (@aardgoose)
- Add geometry in material cache key. #29427, #29465 (@sunag)
- Add rectangle parameter to
copyFrameBufferTexture()
. #29384 (@aardgoose) - Correct
texelFetch()
texel coordinates in WebGL fallback. #29400 (@aardgoose) - Prevent out of bounds textureLoad access in WGSL. #29470 (@aardgoose)
- Reuse
LightNode
when available. #29480 (@RenaudRohlinger) - Introduce hash-based cache key. #29479 (@sunag)
- Respect the
renderer.shadowMap.enabled
property. #29492 (@aardgoose)
- WebGLRenderer
- Merge update ranges before issuing updates to the GPU. #29189 (@HunterLarco)
- Remove deprecated code. #29298 (@aardgoose)
- Fix feedback loop with RTT read pixels async. #29320 (@gkjohnson)
- Reduce
readRenderTargetPixelsAsync()
latency. #29339 (@aardgoose) - Only compile renderable objects. #29345 (@vanruesc)
- Improve support of integer formats. #29392 (@Mugen87)
- Add reverse-z depth buffer via
EXT_clip_control
. #29445, #29461 (@CodyJasonBennett)
Documentation
- Clean up. #29296 (@Mugen87)
- Add Giro3D to libraries and plugins. #29304 (@vpicavet)
- Improve Chinese translation. #29314, #29406, #29506 (@puxiao, @fengT-T)
- Improve French translation. #29305 (@vpicavet)
- Improve Korean translation. #29290, #29316, #29313 (@appache163, @mym0404)
- Improve
How to update things
guide. #29318 (@Red1C3) - Improve VR guide. #29456 (@Mugen87)
- Improve
WebGLRenderer
page. #29459 (@Mugen87) - Add pages for wide line modules. #29381 (@tommie)
- Fix white flash on iframe load for Safari. #29419 (@JeremyJaydan)
- Added pointer cursor to summary tags. #27837 (@Therobo77)
Manual
- Improve French translation. #29329 (@lhapaipai)
Examples
- Clean up. #29310, #29422, #29431, #29209, #29438, #29473 (@linbingquan, @Mugen87, @WestLangley)
- Improve
webgpu_lights_custom
example. #29279 (@sunag) - Clean up
webgpu_performance_renderbundle
example. #29289 (@sunag) - Fix
webgpu_materials
example using node materials lib. #29291 (@sunag) - Fix some warning messages in physics addons. #29315 (@puxiao)
- Add exposure control to
webgl_tonemapping
example. #29311 (@WestLangley) - Added helpers to light probe examples. #29309 (@WestLangley)
- Improve
webgpu_compute_birds
example. #29334, #29366, #29380 (@mrdoob) - Add
webgpu_animation_retargeting
example. #29338, #29387 (@sunag) - Add
webgpu_compute_water
example. #29147 (@cmhhelgeson) - Add
webgpu_tsl_vfx_linkedparticles
example. #29354 (@ULuIQ12) - Add
webgpu_tonemapping
example. #29363 (@WestLangley) - Remove WebGPU modules from
Addons.js
. #29373 (@Mugen87) - Add underwater transition
webgpu_backdrop_water
example. #29377 (@sunag) - Add
webgpu_animation_retargeting_readyplayer
example. #29428, #29485 (@sunag) - Fix
NodeMaterial
imports. #29477 (@donmccurdy) - Add decal as a child of mesh in
webgl_decals
example. #29486 (@WestLangley) - Improve shadow map size in
webgpu_tsl_angular_slicing
. #29499 (@sunag)
Addons
-
CurveModifier
- Add WebGPU version. #29453 (@aardgoose)
-
DecalGeometry
- Transform normal with normal matrix. #29476 (@WestLangley)
-
Exporters
- Convert from working color space. #29472 (@donmccurdy)
-
EXRExporter
- Add support for
WebGPURenderer
. #29302 (@Mugen87)
- Add support for
-
FBXLoader
- Fix incorrect joint orientation for animated FBX models exported from Maya. #29307 (@mwhirls)
- Remove support for orthographic cameras. #29425 (@Mugen87)
-
GLTFLoader
- Fix sparse normalized. #29330 (@stephomi)
- Remove deprecated code. #29502 (@Mugen87)
-
GPUStatsPanel
- Remove addon. #29317 (@Mugen87)
-
KTX2Exporter
- Add support for WebGPURenderer. #29308 (@Mugen87)
-
KTX2Loader
- Update
ktx-parse
dependency to v0.7.1. #29060 (@yue4u) - Upgrade to Basis Universal v1.50. #29418 (@donmccurdy)
- Add support for
VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT
. #29441 (@donmccurdy)
- Update
-
Lensflare
- Add WebGPU version. #29451, #29458 (@aardgoose, @Mugen87)
-
LightProbeGenerator
- Add support for WebGPURenderer. #29335 (@aardgoose)
-
LightProbeHelper
- Add WebGPU version. #29301, #29303 (@Mugen87)
-
MaterialXLoader
- Implement separate(2|3|4) nodes. #29437 (@aardgoose)
- Add
invert
implementation. #29433 (@beersandrew) - Add
extract
implementation #29443 (@beersandrew)
-
PackedPhongMaterial
- Remove addon. #29382, #29493 (@Mugen87, @eugenehp)
-
SDFGeometryGenerator
- Remove addon. #29281 (@Mugen87)
-
ShadowMapViewer
- Simplify code. #29322 (@Mugen87)
- Add WebGPU version. #29331 (@Mugen87)
-
SkeletonUtils
- Add
getBoneName()
. #29416 (@sunag) - Add
hipInfluence
. #29423 (@sunag) - Add
trim
. #29424 (@sunag)
- Add
-
TextureUtils
- Add WebGPU version. #29348 (@Mugen87)
-
TiltLoader
- Remove addon. #29471 (@Mugen87)
-
Timer
- Drop fallback to
Date.now()
. #29233 (@satelllte)
- Drop fallback to
-
TrackballControls
- Separate mouse action and state logic. #29442 (@Mugen87)
-
TransformControls
- Derive from
Controls
. #29146, #29398 (@Mugen87)
- Derive from
-
XRControllerModelFactory
- Prevent hand input source processing. #29179 (@jorodi)