JavaScript 3D Library.
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r162--r163 https://github.com/mrdoob/three.js/milestone/76?closed=1
unpkg
with jsdelivr
. #28006 (@0b5vr)morphTexture
. #27952 (@RenaudRohlinger)attach()
. #27917 (@Mugen87, @ycw)getPointShadow()
like in getShadow()
. #27922 (@Mugen87)environmentIntensity
. #27903 (@WestLangley)pmremVersion
. #27963 (@sunag)getUnlitUniformColorSpace()
. #27869 (@mrxz)sampler2DArray
precision qualifier. #27854 (@Mugen87)EXT_color_buffer_float
for transmission. #27761 (@susiwen8)stencil
to false
by default. #27900, #27908 (@Mugen87, @RenaudRohlinger)WEBGL_render_shared_exponent
. #27992 (@Mugen87)Documentation
AnimationMixer
page. #27914 (@trusktr)BatchedMesh
page. #28004 (@marwie)InstancedMesh
page. #27946 (@seantai)Material
page. #27923 (@atul-mourya)Manual
Examples
webgpu_parallax_uv
example. #27874 (@donmccurdy)fflate
. #27883 (@Methuselah96)misc_controls_transform
. #27959 (@Mugen87)webgl_loader_texture_hdrjpg
example. 156cb35aa2b9bd75a638ba9aa188bf937ce4f278 (@mrdoob)physics_rapier_instancing
example. 8416704d2eb2df5cfdbc0c473458f24632b2c12c (@mrdoob)webgpu_multiple_rendertargets
example. #28015 (@sunag)pmremTexture()
instead of cubeTexture()
in WebGPU examples. #27829, #27951 (@sunag, @RenaudRohlinger)3MFLoader
rels
. #27955 (@nmattia)EXRLoader
GLTFExporter
OffscreenCanvas
as image source. #27872 (@strunkie30)GLTFLoader
onLoad()
. #27877 (@Mugen87)HTMLMesh
script
tag. #27953 (@Elettrotecnica)LUTPass
Node
needsUpdate=true
. #27904 (@sunag)onUpdate
callbacks. #27964 (@sunag)setReference()
to updateReference()
and use reference in renderMap/frameMap. #28010 (@sunag)NodeMaterial
Renderer
renderAsync()
. #27939 (@RenaudRohlinger)RenderObject
getMaterialCacheKey()
.. #27995 (@sunag)ShaderNode
cacheMaps.int
to cacheMaps.ints
. #27911 (@susiwen8)TextGeometry
height
to depth
. #27949 (@zz85)TextureNode
referenceNode
. #27986 (@sunag)TextureUtils
frustrum
to frustum
. #27970 (@RenaudRohlinger)TransformControls
updateMatrixWorld()
override. #27960 (@Mugen87)USDZExporter
WebGPURenderer
QuadMesh
extended from Mesh
. #27875 (@sunag)copyTextureToTexture()
support. #27888 (@RenaudRohlinger)renderAsync()
as fallback. #27894 (@sunag)Scene.backgroundIntensity
. #27918 (@susiwen8)InstancedMesh
. #27928 (@RenaudRohlinger)BatchedMesh
. #27937 (@RenaudRohlinger)Scene.environmentIntensity
. #27958 (@susiwen8)PMREMGenerator
and pmremVersion
logic. #27988 (@sunag)Node Editor
Editor
UTF-8
. #27938, c96c6bd091c6eab663130a7ac81d5529a5571fde (@ycw, @mrdoob)center
command. #27940 (@Mugen87)three/addons/*
alias. #27967 (@Kalinundefined)https://github.com/mrdoob/three.js/wiki/Migration-Guide#r161--r162 https://github.com/mrdoob/three.js/milestone/75?closed=1
BufferAttribute
API in computeTangents()
. #27825 (@Mugen87)getPoint()
. #27677 (@linbingquan)emissiveIntensity
not persisting. #27769 (@connorgmeehan)childadded
and childremoved
events. #16934, #27754 (@gkjohnson)random()
. #27724 (@WestLangley)setFromXRController()
. #27801 (@mrdoob)count
option for MRT. Deprecate WebGLMultipleRenderTargets
. #26427 (@CodyJasonBennett)randomDirection()
. #27725 (@WestLangley)__hasExternalTextures
check. #27684 (@susiwen8)round()
instead of floor()
. #27703 (@gkjohnson)texture3D
. #27771 (@RenaudRohlinger)WEBGL_draw_buffers
extension before calling drawBuffersWEBGL()
. #27693 (@susiwen8)RGIntegerFormat
is supported in getInternalFormat()
. #27688 (@Aloalo)Documentation
GLTFLoader
page. #27676, #27678 (@aardvarkk, @Mugen87)GridHelper
page. #27817, #27830 (@trusktr, @Mugen87)Matrix Transformations
guide. #27714 (@jo-chemla)MeshPhysicalMaterial
page. #27740 (@Mugen87)Object3D
page. #27755 (@Mugen87)Manual
Examples
clear()
in webgl_camera
example. #27665 (@WestLangley)tween.js
. #27670 (@Methuselah96)webgl_lights_spotlight
example. #27721 (@Mugen87)webgl_morphtargets_webcam
example. #27781 (@vis-prime)webxr_xr_controls_transform
example. #27845 (@mrdoob)3DMLoader
rhino3dm
to 8.4.0. #27833 (@fraguada)BlendModeNode
CondNode
DragControls
rotate
mode. #27689 (@lewibs)GLTFExporter
InteractiveGroup
MorphNode
Node
increaseUsage()
. #27672 (@sunag)tangentView
and move TBNViewMatrix
to AccessorsUtils
. #27696 (@sunag)ArrayUniformNode
. #27705 (@sunag)OrbitControls
pointerId
. #27748 (@sciecode)interceptControlDown()
listener is removed in dispose()
. #27778 (@IvanLi-CN)ProgressiveLightMap
SkeletonUtils
retargetClip()
duration and last frame handling. #27653 (@AlaricBaraou)StorageArrayElementNode
StorageInstancedBufferAttribute
TSL
uniforms
syntax. #27706 (@sunag)return
, Continue
, Break
- Part 1. #27726 (@sunag)parallaxUV
syntax. #27739 (@sunag)all
, any
and equals
syntax. #27821 (@sunag)tslFn
generate in isolated cache. #27844 (@sunag)VOXLoader
VRMLLoader
WebGPURenderer
vec2
and vec3
for storageObject
in StorageBufferNode
. #27697 (@RenaudRohlinger)vec3
in WebGPU. #27708 (@RenaudRohlinger)StorageBuffer
. #27712 (@RenaudRohlinger)isStorageInstancedBufferAttribute
usage. #27737 (@sunag)Data*Texture
. #27815 (@sunag)getTextureLevel()
of background should multiply maxMipLevel
. #27820 (@susiwen8)clear()
before rendering. #27835 (@sunag)setAnimationLoop()
as default in examples. #27839 (@sunag)render()
/clear()
. #27840 (@sunag)WebXR
hand-tracking
feature by default. #27699, #27715 (@Mugen87)WGLSLNodeBuilder
equals()
. #27826 (@sunag)XRControllerModelFactory
setPath()
.#27816 (@ferminLR)Node Editor
Car
WebGL example. #27757 (@abc013)Editor
EditorControls
to Pointer Events. #27745, #27749 (@Mugen87)App.js
. #27772 (@mrdoob)offerSession()
. when available. #27773 (@mrdoob)signals.transformModeChanged
calls render()
now. #27777 (@linbingquan)UITexture
. 74d7dc8a5fb92e40758ec6b8fd08502c5ca019b3 (@mrdoob)menubar/edit/clear_history
to sidebar/history/clear
. 8a321b5194e5b793c477b4a933819b2cfa241380 (@mrdoob)UINumber
and UIInteger
behavior. f9a97ef7814a67bf84048cfc42a78c21a77281ed (@mrdoob)Viewport.Info
. 4654223c3ebe6e21b9c14986d5dddb6accc14ca7 (@mrdoob)https://github.com/mrdoob/three.js/wiki/Migration-Guide#r160--r161 https://github.com/mrdoob/three.js/milestone/74?closed=1
setDetune()
more robust. #27479 (@Mugen87)warnOnce()
for deprecated methods. #27595 (@hybridherbst)getViewBounds()
and getViewSize()
. #27574, #27605 (@Bug-Reaper, @WestLangley)dataReady
flag. #27649 (@Mugen87).updateRange
deprecation comment. #27550 (@LeviPesin)fogExp2
parameter. #27430 (@vanruesc)AgXToneMapping
. #27413 (@WestLangley)multi_draw
/ gl_DrawID
in vertex shader. #27630 (@vegarringdal)Documentation
DirectionalLightShadow
page. #27519 (@zsombok)Installation
page. #27499 (@a0m0rajab)Libraries and Plugins
page. #27646 (@ASproson)LOD
page. #27554 (@tomhsiao1260)RingGeometry
page. #27495 (@xxhls)WebGLRenderer
page. #27532 (@aardgoose)Manual
Fundamentals
guide. #27521 (@susiwen8)Examples
FloatType
and add docs to LUT loaders. #27431 (@vanruesc)webgpu_backdrop_water
example. #27455 (@sunag)webgpu_morphtargets_face
example. #27489 (@RenaudRohlinger)onLoad()
callback when loading hands or controllers for WebXR. #27544 (@hybridherbst)webgpu_custom_fog
example and TriNoise3D
. #27599 (@sunag)webgpu_postprocessing_anamorphic
example and AnamorphicNode
. #27621 (@sunag)webgl_camera
example. #27644 (@WestLangley)3DMLoader
AfterImageNode
BufferGeometryUtils
mergeAttributes()
. #27591 (@gkjohnson)CameraNode
cameraProjectionMatrixInverse
. #27578, #27579 (@RenaudRohlinger)GaussianBlurNode:
GroundedSkybox
GroundProjectedSkybox
. #27448 (@elalish)GTAOPass
PERSPECTIVE_CAMERA
define. #27436 (@Rabbid76)Line2NodeMaterial
MaterialXLoader
onError
handling. #27433 (@hybridherbst)MathNode
cbrt
function for easy cube root calculations. #27497 (@RenaudRohlinger)lengthSq
. #27568 (@RenaudRohlinger)MathUtilsNode
MathUtils
. #27629 (@sunag)MeshPostProcessingMaterial
MeshSSSNodeMaterial
NodeBuilder
createNodeMaterial()
usage. #27580 (@sunag)getComponentType()
instead of getPrimitiveType()
. #27617 (@sunag)NURBSVolume
OperatorNode
OrbitControls
onPointerUp()
. #27445 (@sciecode)ReflectorNode
Renderer
dispose()
. #27471 (@RenaudRohlinger)RotateNode
ShaderNode
.isArrayInput
. #27428 (@sunag)SVGLoader
Timer
TSL
mod
method. #27517 (@sunag)ToneMappingNode
AgXToneMapping
. #27549 (@RenaudRohlinger)USDZExporter
maxTextureSize
option. #27528 (@Sov3rain)ViewportNode
setup()
. #27566 (@sunag)VRMLLoader
Water2
flowSpeed
and other parameters are 0
. #27536 (@gitplus)WebGLTextureUtils
WebGPURenderer
Renderer
. #27472 (@RenaudRohlinger)renderContext
tracking in WebGL backend. #27490 (@aardgoose)WebGLCubeRenderTarget
. #27071 (@aardgoose)WebGLBackend
clea nup RTT buffers when dispose texture. #27513 (@RenaudRohlinger)renderPassDesciptors
and associated views. #27518 (@aardgoose)clear()
. #27551 (@aardgoose)BachedMesh
coordinate system in case of WebGLBackend
. #27567 (@sunag)WebGPUBackend
. #27537 (@sunag)copyTextureToBuffer
support. #27569 (@RenaudRohlinger)forceWebGL
parameter. #27589, #27596 (@RenaudRohlinger)copyFramebufferToTexture
wrong framebuffer binding in WebGLBackend
. #27593 (@RenaudRohlinger)clearAsync()
clear[color|depth|stencil]Async(). #27613 (@aardgoose)mat2()
and extend RotateNode
to support vec2
rotation. #27612 (@aardgoose)compileAsync()
. #27098 (@aardgoose)shadowNode
to NodeMaterial
. #27625 (@RenaudRohlinger)XRButton
Editor
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r159--r160 https://github.com/mrdoob/three.js/milestone/73?closed=1
_onChangeCallback()
to fromBufferAttribute()
. #27363 (@Mugen87)setFromEuler()
. #27364 (@Mugen87)_onChangeCallback()
in slerp()
. #27365 (@Mugen87)isSphere
flag. #27395 (@Mugen87)null
in getBarycoord()
if triangle is degenerated. #27311 (@gkjohnson)null
l in getInterpolation()
if triangle is degenerate. #27331 (@gkjohnson)CompressedArrayTexture
in copyTextureToTexture3D()
. #27313 (@RenaudRohlinger)WEBGL_clip_cull_distance
support. #27371 (@RenaudRohlinger, @Mugen87)AgX
Tone Mapping. #27366, #27403, #27409 (@gkjohnson, @donmccurdy, @Mugen87)capabilities
. #27340 (@Mugen87)Documentation
Material
page. #27416 (@LR17)SceneUtils
page. #27372 (@linbingquan)SkinnedMesh
page. #27303 (@Mugen87)Examples
webgpu_compute_particles_rain
example. #27286 (@sunag)3DMLoader
docs and example CDN script. #27289 (@ianpetrarca)webgpu_backdrop_water
example. #27397, #27404, caf8c1f40161a419ae8c88b0706d94002684289f (@sunag, @mrdoob)webgpu_compute_particles_snow
example. #27400, #27404, de3d5ff3d0451f94d545210e8532a74d7eae067e (@sunag, @mrdoob)examples/jsm
. #27381 (@hybridherbst)webgl_tonemapping
example. 3a5de8c8b8b03e39a7c5f6343f4d4884a9a7a71d (@mrdoob)webgpu_compute_particles
example. b7ebd00a51717dfd8e01b21989a4e84c23fbce03 (@mrdoob)CSM
CurveModifier
DracoLoader
onError()
. #27306, #27308 (@Benjythebee)GTAOPass
HBAOPass
). #27317 (@Rabbid76)LineMaterial
MaterialXLoader
normalNode
and emissiveNode
. #27356 (@hybridherbst)NodeMaterial
OrbitControls
zoom-to-cursor
with touch events. #27384 (@sciecode)StorageTexture
Timer
Clock
alternative. #17912, #27394, #27421, #27423 (@Mugen87, @vanruesc, @mrdoob)TSL
texture_depth_2d
in wgslFn
. #27323 (@sunag)USDZExporter
WebGPURenderer
MaterialX
. #27294 (@sunag)getArrayBufferAsync()
for WebGL backend. #27355 (@aardgoose)GaussianBlurNode
and QuadMesh
. #27369 (@sunag)WebGLBackend
. #27410 (@aardgoose)XRButton
offerSession()
. #27359, #27368 (@cabanier)Editor
manager
to GLTFLoader
. #27336, #27337 (@Mugen87)AgXToneMapping
support. edb0af355799bb48c18e9bcdaa113cf6fdebc7dd (@mrdoob)https://github.com/mrdoob/three.js/wiki/Migration-Guide#r158--r159 https://github.com/mrdoob/three.js/milestone/72?closed=1
DOMException
in promise. #27237 (@Mugen87)MeshBasicMaterial
. #27074 (@gkjohnson)texelFetch
and textureSize
. #27077 (@gkjohnson)setGeometryAt()
and addGeometry()
methods. #27078, #27099 (@gkjohnson)copy()
support. #27131, #27179, #27201 (@gkjohnson)getObjectsByProperty()
. #27225 (@agargaro)onBeforeShadow()
and onAfterShadow()
callbacks. #27250 (@RenaudRohlinger)textureSize
function. #27117, #27127 (@gkjohnson, @Mugen87)options
in constructor. #27249 (@RenaudRohlinger)sampler2DShadow
support. #27252 (@RenaudRohlinger)Documentation
BatchedMesh
page. #27175, #27209 (@gkjohnson, @Methuselah96)DirectionalLightHelper
page. #27122, #27135 (@amin-da, @Mugen87)Libraries and Plugins
page. #27182 (@JaimeTorrealba)LineDashedMaterial
page. #27278, #27276 (@Mugen87, @WestLangley)MeshPhysicalMaterial
page. #27281, #27282 (@gkjohnson, @Mugen87)Object3D
page. #27257 (@Mugen87)Examples
webgpu_tsl_editor
example. #27113 (@WestLangley)webgl_postprocessing_hbao
example. #27114, #27185 (@Rabbid76)glsl
tag and format fragment shaders with tabs. #27206 (@linbingquan)webgl_loader_texture_hdrjpg
example. #27183, #27277, 90ee2efbb00944f97b7c59e8ee47d2e2047e57be, c15506e8e7ffa9eebe594eccae692a07cd7f21c9, 9bcf8ab6d62edd8d38819b78643fd91f30b79326 (@daniele-pelagatti, @mrdoob)OffscreenCanvas
in webgl_worker_offscreencanvas
example. #27283 (@RenaudRohlinger)webgpu_tsl_transpiler
example. b5e44dae9f3a80f666fdacc4225c2df29a40eef4 (@mrdoob)ColladaLoader
FBXLoader
UnitScaleFactor
to scene's userData
. #27187 (@Mugen87)GLTFExporter
GLTFMaterialsSpecularExtension
. #27152 (@elalish)EXT_materials_bump
. #27036 (@bhouston)GLTFLoader
setPath()
with external resources. #27106 (@Archimagus)EXT_materials_bump
. #27036 (@bhouston)HTMLMesh
(0,0)
. #27091 (@Elettrotecnica)NodeMaterial
ViewportNode
revision. #27096 (@sunag)onBuild()
uses the correct material reference. #27097 (@Mugen87)ColorAdjustmentNode
. #27197 (@sunag)vec3
when getting color attribute. #27210 (@andreasrosdal)colorSpace
to colorSpaced
property. #27238 (@sunag)depthNode
. #27244 (@sunag)NRRDLoader
scan()
always returns a typed array. #27212 (@Mugen87)Octree
clear()
. #27160 (@CahierX)OrbitControls
SVGLoader
TextureHelper
TextureUtils
forceContextLoss()
to decompress()
. #27136 (@Mugen87)TSL
TSLEncoder
. #27075 (@khalid586)varyingProperty
. #27198 (@sunag)fragmentNode
. #27239 (@sunag)USDZExporter
buildVector2Array()
. #27264 (@Mugen87)USDZLoader
parseNextLine()
. #27169 (@Mugen87)WebGPURenderer
setRenderObjectFunction()
. #27068 (@sunag)WebGLBackend.copyFramebufferToTexture()
. #27083 (@aardgoose)DataArrayTexture
. #27190 (@sunag)Color4
support. #27222 (@sunag)readRenderTargetPixelsAsync()
for WebGL backend. #27006 (@aardgoose)webgpu
string in data-engine
. d4f278c4df1b4861e035883ecfc6fb957cc2fa35 (@mrdoob)Tests
Editor
GLTFLoader
. #27193 (@Mugen87)Viewport.Camera
and Viewport.Shading
. 1151545d676d9e1ac57d7bc71deb8ac2f910cebd (@mrdoob)Viewport.Controls
. e0d329dd164de9f24256076dbe6a32a0abb81e51 (@mrdoob)UINumber
mobile UX. a45cf54f5cfb98f095553673c490a8b1230a5238 (@mrdoob)https://github.com/mrdoob/three.js/wiki/Migration-Guide#r157--r158 https://github.com/mrdoob/three.js/milestone/71?closed=1
test-circular-deps
script. #26926 (@marcofugaro)three/addons
target for npm. #26910, #27003 (@CodyJasonBennett)expandByObject()
in precise
mode. #26919 (@Mugen87)needsUpdate
in context of alphaHash
. #26900 (@donmccurdy)toJSON()
. #26947 (@Mugen87)geometryClearcoatNormal
to suppress OpenGL warning. #27002 (@c-smile)getVertexPosition()
in bounding volume methods. #26913 (@Mugen87)bindMode
. #26985 (@Mugen87)applyQuaternion()
. #26456, #27025 (@infusion, @WestLangley)Documentation
list.json
. #26867 (@Mugen87)CapsuleGeometry
page. #27005 (@Mugen87)Creating a scene
page. #26895 (@ycw)Lensflare
page. #27008 (@devXprite)Material
page. #27000 (@fleroviux)Matrix4
page. #26893 (@ycw)Quaternion
page. #26936 (@Mugen87)WebGLRenderer
page. #26961, #26963, #26972 (@Mugen87)XREstimatedLight
. #27041 (@snowzurferExamples
misc_exporter_exr
example. #26890 (@WestLangley)OutputPass
in webgl_postprocessing_fxaa
example. #26927 (@Mugen87)webgl_postprocessing_smaa
example more configurable. #26934 (@Mugen87)webgl_animation_multiple
. #26995 (@Mugen87)webgpu_compute_particles_rain
example. #27053 (@sunag)addScene()
to AmmoPhysics
and RapierPhysics
. 2bd56174d69b05ec37e729413446cd368ac8859a, 92c71d7c12dbd652f8cfe3f60ad24b6806efb243 (@mrdoob)BatchedMesh
BokehPass
aspect
uniform in setSize()
. #27063 (@Mugen87)Capsule
lineToLineClosestPoints()
function to Octree
. #27044 (@gkjohnson)CSS3DRenderer
FilmShader
FlyControls
pointercancel
event. #26973 (@Mugen87)FullScreenQuad
GLTFExporter
count=Infinity
in processAccessor()
. #26898 (@Dadibom)EXT_mesh_gpu_instancing
to export InstancedMesh
. #26854 (@repalash)GLTFLoader
IFFParser
InstancedPoints
Lensflare
LottieLoader
LUTImageLoader
NodeMaterial
TextureNode
and UVNode
in BumpMapNode
. #26865 (@sunag)stack.assign()
as default. #26881 (@sunag)VarNode
. #26821 (@LeviPesin)PhysicalLightingModel
. #26885 (@sunag)AssignNode
. #26795 (@LeviPesin)Line2NodeMaterial
. #26970 (@WestLangley)*MaterialNode
into singular MaterialNode
, fix exports, some cleanup. #26976 (@LeviPesin)PropertyNode
exports. #26975 (@LeviPesin)UVNode
if the context includes forceUVContext=true
. #27031 (@sunag)OrbitControls
OutputShader
#include
instead of ShaderChunk
. #26990 (@CodyJasonBennett)SAOPass
depthMaterial
reference from dispose()
. #26946 (@paradoxxxzero)SDFGeometryGenerator
SimplifyModifier
SMAAPass
SVGRenderer
.outputColorSpace=DisplayP3ColorSpace
support. #26914 (@donmccurdy)TAARenderPass
dispose()
. #26991 (@Archimagus)TessellateModifier
TransformControls
TSL
VRButton
WebGPURenderer
isWeb*Backend
flags. #26877 (@WestLangley)compute()
. #26906 (@sunag)WebGLBackend
. #26974 (@aardgoose)getInstanceIndex()
for GLSLNodeBuilder
. #26978 (@aardgoose)GLSLNodeBuilder
. #26987 (@aardgoose)buffer()
in GLSLNodeBuilder
and WebGLSLBackend
#26988 (@aardgoose)WebGLBackend
. #27009 (@aardgoose)WebGLBackend
copyFramebufferToTexture()
. #27012 (@aardgoose)WebGLBackend
. #27026 (@aardgoose)WebGLBackend
. #27023 (@aardgoose)HTMLImage
to OffscreenCanvas
conversion. #27021 (@aardgoose)WebGLBackend
. #27065 (@aardgoose)XRButton
Editor
timeScale
. #26984 (@Mugen87)Fix Color Maps
script. #27033 (@Mugen87)SRGBColorSpace
only to color maps. #27042 (@Mugen87)https://github.com/mrdoob/three.js/wiki/Migration-Guide#r156--r157 https://github.com/mrdoob/three.js/milestone/70?closed=1
rollup.config.js
. #26803 (@ycw)arraySlice()
. #26756 (@ycw)getWorldDirection()
. #26743 (@ycw)offsetHSL()
. #26817 (@ycw)activeMipmapLevel
. #26770 (@sunag)this
in closePath()
. #26697 (@Mugen87)closePath()
. #26850 (@GuoBinyong)name
can be serialized/deserialized. (@ycw)AmbientLightProbe
and HemisphereLightProbe
. #26715 (@WestLangley)toJSON()
. #26791 (@ycw)linewidth
property. #26707 (@epreston)GeometricContext
to improve Adreno GPU support. #26805 (@Mugen87)USE_ANISOTROPY
to prefixVertex
. (@uma-neko)USE_LIGHT_PROBES
define. #26768 (@Mugen87)Documentation
Fog
page. #26792 (@ycw)Material
page. #26664 (@donmccurdy)MeshPhysicalMaterial
page. #26753 (@Ameobea)Libraries and Plugins
guide. #26723, #26722, #26819, #26828 (@marwie, @trusktr, @isaac-mason)userData
properties. #26799 (@tim-we)Examples
3DMLoader
BufferGeometryUtils
mergeVertices()
. #26746 (@gkjohnson)DragControls
GLTFExporter
GLTFLoader
afterRoot()
. #26852 (@MtBlue81)LDrawLoader
WeakMap
instead of userData
for indexing materials. #26700 (@Mugen87)LightProbeGenerator
LineMaterial
NodeMaterial
HashNode
, cite original authorship. #26695 (@LeviPesin)Line2
support. #26704 (@aardgoose)labels()
when used, to prevent duplicate uniform names. #26822 (@aardgoose)context.material
reference in RenderNodes
. #26838 (@sunag)TextureNode.getTextureMatrix()
to getTransformedUV()
. #26839 (@sunag)construct()
to setup()
. #26840 (@sunag)StorageTexture
. #26842 (@sunag)addNodeClass()
and addNodeMaterial()
in case of renaming classes. #26846, #26858 (@LeviPesin)RGBELoader
Sky
cameraPosition
uniform instead of world origin in sky shader. #26766 (@StrandedKitty)TSL
negate()
. #26804 (@sunag)SetNode
. #26785 (@sunag)ShaderCallNode
& tslFn
improvements. #26824 (@sunag)USDZLoader
MeshPhysicalMaterial
and add initial clearcoat/clearcoatRoughness/ior support. #26713 (@hybridherbst)WebGPURenderer
StorageTexture
. #26769 (@sunag)textureCompare()
operations in WebGL backend. #26823 (@aardgoose)flipY
example. #26843 (@sunag)WebGLNodeBuilder
. #26841 (@sunag)Editor
clearcoatMap
and clearcoatRoughnessMap
. #26712 (@hybridherbst)modelviewer
environment. #26718 (@Mugen87)CapsuleGeometry
parameter. #26794 (@Mugen87)https://github.com/mrdoob/three.js/wiki/Migration-Guide#r155--r156 https://github.com/mrdoob/three.js/milestone/69?closed=1
es-module-shims
. #26605, #26606 (@linbingquan)createCanvasElement()
as a utility method. #26601 (@linbingquan)Math.trunc()
in roundToZero()
vector methods. #26643 (@ycw)null
source error in disconnect()
. #26597 (@takahirox)clear()
emitting removed events too early. #26625 (@ycw)autoClear
in XR. #26428 (@CodyJasonBennett)updateMatrixWorld()
calls. #26201 (@mrxz)Documentation
CameraUtils
page. #26591 (@Mugen87)Matrix3
page. #26617, #26627 (@mgroth0, @Mugen87)MeshPhysicalMaterial
page. #26543 (@mjurczyk)OBB
page. #26522 (@balraj-johal)Object3D
page. #26636 (@alone-as-a-god)OrbitControls page
. #26541, #26547 (@Mugen87, @WestLangley)SpotLight
page. #26645 (@ycw)WebGLRenderer
page. #26670 (@alone-as-a-god)ColladaExporter
page. #26592 (@skyclouds2001)page.js
to handle inline code with newline chars. #26622 (@ycw)Manual
0.40.0
. #26503 (@linbingquan)Examples
webgl_materials_alphahash
example. #26519 (@Mugen87)PMREMGenerator
usage in webgl_shaders_ocean
example. #26580 (@skyclouds2001)webgl_decals
example. #26593 (@Mugen87)misc_exporter_usdz
example. #26607 (@Mugen87)webgpu_compute_texture
. #26651 (@WestLangley)webgpu_compute_particles
example. #26665 (@linbingquan)tween.module.js
to 21.0.0
. #26669 (@linbingquan)CSMShader
DDSLoader
FBXLoader
Object3D.userData
. #26641 (@janulis)FilmPass
GLTFLoader
KTX2Loader
MMDLoader
NodeMaterial
construct()
node data in NodeBuilder
. #26533 (@sunag)LineDashedNodeMaterial
. #26528, #26542 (@aardgoose, @sunag)ViewportNode.VIEWPORT
. #26540 (@aardgoose)context.tempWrite=false
for conditionals in TextureNode
. #26574 (@sunag).getNodeType()
if .construct()
return some Node. #26631 (@sunag)HashNode
. #26663 (@sunag, @LeviPesin)OrbitControls
autoRotate
. #26472 (@Issung)zoomToCursor
when objects are changed. #26549 (@xiaowangxu)RenderPass
SAOPass
SSAOPass
STLLoader
TSL
extureStore()
and example. #26648, #26653, #26654 (@sunag)WebGLNodeBuilder
WebGPURenderer
alphaToCoverage
. #26513 (@aardgoose)clear()
inheriting state from previous render()
& clear()
passes. #26514 (@aardgoose)data-engine
attribute to canvas. #26544 (@linbingquan)DataTexture
with FloatType
. #26585 (@sunag)Backend.generateMipmaps()
. #26609 (@sunag)https://github.com/mrdoob/three.js/wiki/Migration-Guide#r154--r155 https://github.com/mrdoob/three.js/milestone/68?closed=1
length
property name in parameters. #26405 (@tdanlin)animations
in copy()
. #26416 (@luisfonsivevo)undefined
in setSize()
. #26418 (@CodyJasonBennett)useLegacyLights
, change default to false
. #26392 (@Mugen87)activeMipmapLevel
parameter in setRenderTarget()
. #26347 (@makovkins)RenderTarget
class. #26468 (@sunag)RED_INTEGER
texture support. #26450 (@RenaudRohlinger)Documentation
BufferAttribute
page. #26365 (@Mugen87)BufferGeometryUtils
page. #26454 (@gkjohnson)OrbitControls
page. #26404 (@Mugen87)ShapePath
page. #26401 (@atul-mourya)TrackballControls
page. #26459 (@vaughnrichard)Manual
Examples
webgl_materials_video_webcam
. #26364 (@Mugen87)webgpu_tsl_editor
example. #26368 (@sunag)FirstPersonControls.noFly
. #26374 (@Methuselah96)backgroundIntensity
GUI to webgl_tonemapping
example. #26411 (@vis-prime)webgl_postprocessing_procedural
example. #26434 (@Methuselah96)webgl_postprocessing_ssaa
example. #26433 (@Methuselah96)Group.material
in webgl_postprocessing_godrays
example. #26431 (@Methuselah96)requestAnimationFrame()
in webgl_postprocessing_godrays
example. #26432 (@Methuselah96)setSize()
in webgl_raymarching_reflect
example. #26438 (@Methuselah96)customProgramCacheKey()
in webgl_materials_modified
example. #26437 (@Methuselah96)webgl_gpgpu_water
example. #26436 (@Methuselah96)OrbitControls
change event listeners. #26475 (@WestLangley)BufferGeometryUtils
toNonIndexed()
for indexed geometries only in toCreasedNormals()
. #26379 (@kpvhn)GLTFLoader
loadAnimation()
refactor. #26477 (@hybridherbst)MaskPass
NodeMaterial
tslFn()
. #26383 (@aardgoose)unlit
property. #26429 (@sunag)construct()
call in HemisphereLightNode
. #26441 (@sunag)specularStrength
to MaterialNode
. #26444 (@sunag)fog
and colorSpace
properties. #26440 (@sunag)backgroundIntensity
to SceneNode
. #26447 (@sunag)MeshLambertNodeMaterial
. #26448 (@sunag)BumpMapNode
. #26449 (@sunag)getTextureMatrix()
to TextureNode
. #26461 (@sunag)isToneMappingState
to RendererNodes
. #26463 (@sunag)LightingModel
. #26486 (@sunag)EnvironmentNode
. #26491 (@sunag)OculusHandPointerModel
_onDisconnected()
more robust. #26387 (@hybridherbst)OrbitControls
OutputPass
SelectionHelper
TGALoader
TSL
material.outputNode
. #26419 (@sunag)UnrealBloomPass
USDZExporter
defaultPrim
to make usdchecker
happy. #26495 (@hybridherbst)WebGPUBackend
WebGPUPipelines
ComputeNode
dispose. #26361 (@sunag)WebGPURenderer
Texture.onUpdate()
callback. #26375 (@aardgoose)Node.updateBefore()
sequence call. #26391 (@sunag)getArrayBuffer()
to getArrayBufferAsync()
. #26393 (@sunag)Object3D
as parameter in render()
. #26400 (@sunag)updateBefore()
. #26417, #26422 (@sunag)ColorSpace
. #26424 (@sunag)DepthTexture.compareFunction
. #26420 (@sunag)Editor
GLTFLoader
with KTX2 and Meshopt. #26414 (@Mugen87)https://github.com/mrdoob/three.js/wiki/Migration-Guide#r153--r154 https://github.com/mrdoob/three.js/milestone/67?closed=1
DEFAULT_MATERIAL_NAME
. #26188 (@kovacsv)alphaHash
transparency mode. #24271, #26341, #26344 (@donmccurdy)InstancedMesh
updates. #26300 (@Mugen87)encodings_fragment
to colorspace_fragment
. #26206, #26269 (@WestLangley)output_fragment
to opaque_fragment
. #26278 (@WestLangley)clearBufferuiv
. #26249 (@gkjohnson)WebGLRenderingContext
exists. #26306 (@linev)getCamera()
removal. #26350 (@mrdoob)Documentation
Color
page. #26210 (@donmccurdy)LineBasicMaterial
page. #26228 (@Mugen87)PlaneGeometry
page. #26248 (@tomhsiao1260)useLegacyLights=false
in browsers. #26291 (@Mugen87)Manual
prerequisites.html
. #26315 (@DrejT)Examples
WebGLRenderer.useLegacyLights = false
. #26218, #26267, #26274, #26275, #26280, #26284, #26286, #26288, #26290 (@Mugen87, @sunag)GammaCorrectionShader
to OutputPass
. #26129 (@donmccurdy)construct()
in webgpu_instance_uniform
example. #26336 (@sunag)blurred
option in webgpu_backdrop_area
example. #26342 (@sunag)ArcballControls
rotateSpeed
. #26332 (@begmec)CopyShader
FlyControls
enabled
property. #26154, #26339 (@andredsm, @Mugen87)GLTFLoader
MeshSurfaceSampler
uv
support. #26207 (@makc)NodeMaterial
uv
attributes. #26220 (@sunag)cacheKey
. #26227 (@sunag)forceSinglePass
and alphaMap
. #26231 (@sunag)VideoTexture
in WebGPUBackend
and ColorSpaceNode
. #26261 (@sunag)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
dispose()
. #26262 (@CodyJasonBennett)PLYLoader
\n\r
line endings in header. #26232 (@aardgoose)TAARenderPass
TSL
ShaderNode
to tslFn()
. #26311 (@sunag)WebGPURenderer
Material.blending = NoBlending
. #26295 (@aardgoose)WebGPUPipelines
. #26305 (@sunag)readRenderTargetPixelsAsync()
. #26326 (@aardgoose)Tests
headless
mode for E2E tests. #25982 (@LeviPesin)BrowserFetcher
with @puppeteer/browsers
. #26282 (@LeviPesin)Editor
ColladaExporter
. #26243 (@Mugen87)LDrawLoader
usage. #26294 (@Mugen87)