Releases: mrdoob/three.js
r142
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r141--r142
https://github.com/mrdoob/three.js/milestone/55?closed=1
- Global
- Improve tree shaking. #24207, #24209, #24210, #24218, #24221, #24094 (@pschroen, @marcofugaro)
- Make vector and matrix
.is*
property non-enumerable. #24219 (@marcofugaro)
- CameraHelper
- InterleavedBufferAttribute
- Fix typos. #24195 (@Dannie226)
- Material
- Remove deprecated
vertexTangents
. #24136 (@LeviPesin)
- Remove deprecated
- WebGLRenderer
- Support more texture types in
initTexture()
. #24245 (@action-script)
- Support more texture types in
- WebGLShadowMap
- WebXRManager
Documentation
- Improve
AmbientLight
page. #24273 (@hanisko) - Improve
BufferGeometry
page. #24254, #24256 (@Mugen87, @WestLangley) - Improve
How to update things
guide. #24192 (@Mugen87) - Improve
Matrix4
page. #24279 (@hanisko) - Improve
Path
page. #24224 (@dummyx) - Improve
WebGLRenderer
page. #24161 (@Strepto) - Improve
WebGLRenderTarget
page. #24230 (@tomhsiao1260) - Improve Chinese translation. #24166, #24244, #24282 (@jovey-zheng, @linbingquan, @luoxuhai)
- Improve
map
description of materials. #24134 (@ggPeti)
Manual
Examples
- Clean up. #24181, #24190, #24270 (@LeviPesin)
- Fix
webgl2_multiple_rendertargets
example for iOS. #24141 (@RenaudRohlinger) - Fix URL in
webgl_loader_gltf_iridescence
example. #24138 (@cx20) - Improve molecule demos. #24153 (@Mugen87)
- Improve
webgl_raycast_texture
example. #24157 (@Mugen87) - Remove
CameraControls
. #24185, #24232 (@Mugen87) - Add
webgpu_cubemap_adjustments
example. #24206 (@sunag) - Add
webgpu_particles
example. #24247, #24275 (@sunag) - Add
webgl_raycaster_bvh
example. #23907 (@gkjohnson) - Renamed some raycaster examples. #24280 (@mrdoob)
- Added external tag. #24281 (@mrdoob)
-
ArcballControls
- Use
dispose()
inmakeGizmos()
. #24241 (@Mugen87, @Vlad-Apostolov)
- Use
-
GLTFExporter
-
KTX2Loader
- Support loading uncompressed
DataTexture
andData3DTexture
. #24129, #24260, #24260 (@donmccurdy)
- Support loading uncompressed
-
LDrawLoader
- Fix two bugs and add seven improvements. #24257 (@yomboprime)
-
MaterialLoader
-
MMDToonShader
-
NodeMaterial
- Add
.scaleNode
property and support tosprite.center
forSpriteNodeMaterial
. #24158 (@sunag) - Fix unnecessary swizzle in
SplitNode
. #24170 (@sunag) - Fix native
renderer.toneMapping
usage inWebGLNodeBuilder
. #24211 (@sunag) - Add
RangeNode
. #24240 (@sunag)
-Fix and improveReflectVectorNode
. #24265 (@sunag)
- Add
-
OBJLoader
-
OculusHandPointerModel
-
OutlinePass
-
PCDLoader
-
PLYLoader
- Fix for line splitting on universal newlines. #24264 (@05gash)
-
ShadowMesh
-
SimplifyModifier
-
SVGLoader
-
TransformControls
- Improve gizmo rendering with orthographic cameras. #24242 (@Mugen87, @WestLangley)
-
USDZExporter
-
WebGPURenderer
r141
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r140--r141
https://github.com/mrdoob/three.js/milestone/54?closed=1
- Global
- DepthTexture
- Change default
type
toUnsignedIntType
. #24019 (@wmcmurray)
- Change default
- ExtrudeGeometry
- Interpolant
- MeshPhysicalMaterial
- Support iridescence / thin-film materials. #23869, e60a802 (@PascalSchoen, @mrdoob)
- Object3D
- ObjectLoader
- WebGLRenderer
- Stop checking for
FramebufferTexture
in.copyFramebufferToTexture()
. #23964 (@chubei-oppen) - Listen to
webglcontextcreationerror
event. #24091 (@mrdoob)
- Stop checking for
- WebGLMultipleRenderTargets
- Add multisampling support. #24001(@RenaudRohlinger)
- WebGLProgram
- Improve error logging.#24130, #24131 (@LeviPesin, @marcofugaro)
- WebGLTextures
- WebXRManager
- Add
undefined
check inonSessionEnd()
. #23984, #24015 (@kalegd, @Mugen87) - Fix caching of
baseReferenceFrame
and teleport example. #24058 (@richardanaya) - Support more than two views. #23972 (@CodyJasonBennett)
- Add
Documentation
- Add support for code highlighting. #24079 (@sunag)
- Improve Chinese translation. #23985, #24070 (@linbingquan, @qq284590533)
- Improve
Texture
page. #24041 (@dghez) - Improve
WebGLRenderer
page. #24008, #24054 (@Mugen87) - Improve
Creating a scene
guide. #24120, #24126 (@oskar1233, @Mugen87) - Improve
How to run things locally
guide. #24097 (@donmccurdy) - Improve FAQ. #24116 (@Mugen87, @looeee)
Manual
- Improve
Responsive
page. #24023 (@exxnnonymous) - Improve
Primitives
page. #24026 (@taenykim) - Improve Chinese translation. #24000, #24012, #24063, #24132 (@writey, @MongooseSong)
- Improve Korean translation. #23977 (@nerdchanii)
Examples
- Clean up. #23993, #24121, #24118, b5ec276 (@jkristensen, @LeviPesin, @Mugen87, @mrdoob)
- Added
webgpu_cubemap_mix
example. #24059 (@sunag) - Remove deprecated
Geometr
y class and all legacy checks. #24009 (@Mugen87) - Added
webgl_loader_gltf_iridescence
example. c26896d (@mrdoob) - Unified MRT examples. 764cf0f (@mrdoob)
-
3DMLoader
-
CSS2DRenderer
- Remove position rounding for Safari. #24122 (@fanciful-marmot)
-
DDSLoader
- Remove
FourCC
header check. #24124 (@LeviPesin)
- Remove
-
EXRLoader
-
GLTFExporter
-
GPUStatsPanel
- Prevent infinite loop when WebGL context is lost. #23990 (@wmcmurray)
-
HTMLMesh
- Add some more input types and support rounded rectangles. #24030 (@AdaRoseCannon)
-
KTX2Exporter
- Add new exporter. #24102 (@donmccurdy)
-
NodeMaterial
- Add support for IBLs + PBR. #24038 (@sunag)
nodeType
ofAttributeNode
is now optional. #24050 (@sunag)- Add
.customProgramCacheKey()
. #24096 (@sunag) - Fix
dpdx
anddpdy
called from non-uniform control flow inNormalMapNode
. #24062 (@sunag) - Add
.construct()
and some architectural changes. #24110 (@sunag) - Add sprites and support for
InterleavedBufferAttribute
. #24117 (@sunag)
-
RGBELoader
- Simplify texture configuration. #24032 (@deepkolos)
-
SelectionHelper
- Remove unused parameter from constructor. #24057 (@CarlBateman)
-
WebGPURenderer
Editor
r140
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r139--r140
https://github.com/mrdoob/three.js/milestone/53?closed=1
- Global
- CubeCamera
- Material
- MeshDepthMaterial
- PMREMGenerator
- SkinnedMesh
- WebGLBackground
- WebGLBindingsStates
- WebGLLights
- Remove redundant computation. #23893 (@Mugen87, @WestLangley)
- WebGLMultipleRenderTargets
- Fix
copy()
. #23781 (@RenaudRohlinger)
- Fix
- WebGLProgram
- Support logging errors with no line numbers. #23843 (@gkjohnson)
- WebGLRenderer
- Fix transmission render target type check. #23885 (@chubei-oppen)
- Make
context
check more safe. #23969 (@soadzoor)
- WebGLRenderTarget
- Fix regression when cloning / copying after
Source
API addition. #23997 (@gkjohnson)
- Fix regression when cloning / copying after
- WebGLTextures
- Ensure
texStorage2D()
is called whenforceUpload
istrue
. #23808 (@Mugen87) - Fix memory allocation of
DepthTexture
andFramebufferTexture
. #23854, #23868 (@chubei-oppen)
- Ensure
- WebGLUniforms
- Remove unused function. #23911 (@RenaudRohlinger)
- WebXRManager
Documentation
- Clean up. #23804 (@zeh)
- Move
Color management
underNext steps
. #23794 (@donmccurdy) - Improve
BufferAttribute
page. #23960 (@gsimone) - Improve
CCDIKSolver
page. #23449 (@abernier) - Improve
DirectionalLightShadow
page. #23952 (@kryzodoze) - Improve
FontLoader
page. #23899 (@jynxio) - Improve
Installation
guide. #23788 (@HossamAbdelNasser) - Improve
Libraries and Plugins
guide. #23876 (@gkjohnson) - Improve
Matrix4
page. #23825 (@makc) - Improve
MeshPhysicalMaterial
page. #23831 (@Mugen87) - Improve
PointsMaterial
page. #23892 (@Mugen87) - Improve
Useful links
guide. #23839 (@Ahlecss) - Improve
WebGLRenderer
page. #23851 (@gkjohnson) - Improve
WebGLRenderTarget
page. #23844 (@OndrejSpanel) - Switch to gender neutral terms. #23816 (@inclusive-coding-bot)
- Fix color values in material browser. #23948 (@Mugen87)
- Mentioned the need for
ImageBitmap.close()
. #23959 (@Mugen87, @WestLangley)
Manual
- Improve Chinese translation. #23811, #23850, #23878, #23938 (@MongooseSong, @BinarySky10)
- Improve Korean translation. #23949 (@nerdchanii)
- Improve Russian translation. #23942 (@Borodin)
Examples
- Clean up. #23860, #23861 (@Mugen87, @sunag)
- Add missing encodings fragment to default shader of
Reflector
andRefractor
. #23863 (@Mugen87) - Expose virtual camera of
Reflector
andRefractor
as a property. #23890 (@LR17) - Port
webgpu_compute
to use node classes. #23931 (@LeviPesin)
-
ArcballControls
-
BufferGeometryUtils
- Rename and improve warnings for MikkTSpace tangents. #23815 (@donmccurdy)
- Add
deinterleaveAttribute()
,deinterleaveGeometry()
functions. #23814 (@gkjohnson) - Remove use of old
Material.morphTargets
property. #23955 (@willstott101)
-
FBXLoader
- Fix uv translation being ignored. #23834 (@hybridherbst)
-
GLTFExporter
- Add WebWorker support. #23857, 340d588 (@robertlong, @mrdoob)
- Check for
document
before creatingOffscreenCanvas
. #24035 (@robertlong, @CodyJasonBennett)
-
GLTFLoader
-
MarchingCubes
- Add
update()
. #23934 (@gkjohnson)
- Add
-
MMDLoader
- Handle shininess properly. #23889 (@takahirox)
-
NodeMaterial
- Don't convert type of node if it is not needed. #23786 (@LeviPesin)
- Rework build and make other updates. #23797 (@LeviPesin)
- Fix uint usage in
ShaderNodeUtils
. #23817 (@sunag) - Cleanup
ShaderNode
. #23820 (@LeviPesin) - Fix cache. #23828 (@sunag)
- Updates and revision. #23872 (@sunag)
- Add missing
InstanceNode
toNodes
. #23880 (@LeviPesin) - Fix uniform function in
ShaderNodeElements
. #23879 (@LeviPesin) - Add
ComputeNode
. #23905, #23944 (@sunag) - Add more exports to
ShaderNode
. #23901 (@LeviPesin) - Add two sides support to
NormalMapNode
. #23971, #23982 (@sunag)
-
TTFLoader
-
UnrealBloomPass
-
VRButton
- Add workaround for
WebXRViewer
. #23805, 149069f (@hybridherbst, @mrdoob)
- Add workaround for
-
WebGPURenderer
Editor
- Fix broken compute vertex normals button. #23865 (@Mugen87)
- Add
CapsuleGeometry
. #23914 (@linbingquan) - Add support for
Material.userData
. #23967 (@Mugen87)- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
r139
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r138--r139
https://github.com/mrdoob/three.js/milestone/52?closed=1
- Global
- Improve ESLint setup. #23603, #23763, #23767 (@gsimone, @CodyJasonBennett)
- Fix inheritance in
Three.Legacy.js
. #23621 (@Mugen87) - More usage of
fromBufferAttribute()
. #23769 (@LeviPesin)
- CapsuleGeometry
- Color
- Clamp values in
getHex()
. #23582 (@mrdoob) - Add
colorSpace
argument for getters/setters. #23392 (@donmccurdy)
- Clamp values in
- CubeCamera
- DataUtils
- Material
- Remove docstrings. #23651, #23661 (@deepansh96, @Mugen87)
- MathUtils
- ββMeshStandardMaterial
- PMREMGenerator
- PositionalAudio
- Source
- VideoTexture
- WebGLBindingStates
- WebGLMaterials
- WebGLMorphtargets
- Fix normalized morph color attribute. #23654 (@donmccurdy)
- Use
texelFetch()
to sample morph target texture. #23727 (@Mugen87)
- WebGLProgram
- WebGLRenderer
- WebGLRenderTarget
- Set
texture.flipY
tofalse
. #23607 (@WestLangley) - Fix
copy()
. #23732 (@Mugen87)
- Set
- WebGLShaderCache
- WebGLTexture
- WebGLUtils
Documentation
- Improve
BufferAttribute
page. #23620, #23772 (@Mugen87, @donmccurdy) - Improve
BufferGeometry
page. #23740 (@Mugen87) - Improve
Clock
page. #23739 (@Mugen87) - Improve
DepthTexture
page. #23626 (@stevinz) - Improve
Quaternion.multiplyQuaternionsFlat()
. #23577 (@Mugen87) - Improve
TransformControls
page. #23718 (@deepansh96) - Improve Chinese translation. #23623, #23643, #23709, #23749, #23778 (@towhare, @jovey-zheng, @1337816495)
- Improve
Creating text
guide. #23584 (@r00ster91) - Improve
Useful links
guide. #23746 (@linbingquan) - New property description for
is*
flags. #23583 (@ycw) - Fix transparency in material browser. #23576 (@Mugen87)
- Mentioned Import Maps in
Installation
guide. #23595 (@Mugen87) - Add
OBJExporter
page. #23674 (@Mugen87) - Fix typos. #23723, #23722, #23725 (@jasonsturges)
- Add documentation for color management. #23430 (@donmccurdy)
- Escape strings in regex search. #23729 (@Mugen87)
Manual
- Improve Chinese translation. #23721, #23715 (@maslke)
- Fix typos. #23726 (@jasonsturges)
Examples
- Clean up. #23632 (@WestLangley)
- Remove
ββwebgl_postprocessing_ssrr
example andSSRrPass
. #23569 (@mrdoob) - Orient objects normal to hittest in
webxr_ar_hittest
. #23573 (@nosy-b) - Simplify some render target setups. #23669 (@Mugen87)
- Fix opacity in copy and blend shaders. #23671 (@Mugen87)
- Add
webgpu_depth_texture
example. #23665 (@sunag) - Add canvas
font
property order fix. #23685 (@mkeblx)
-
BloomPass
-
BufferGeometryUtils
-
CSM
- Directional light without a shadow breaks shaders. #23631 (@OndrejSpanel)
-
FXAAShader
- Simplify and add support for transparent backgrounds. #23768 (@bhouston, @DanielSturk)
-
GLTFExporter
-
GLTFLoader
- Simplify
loadImageSource()
. #23633 (@donmccurdy) - Reorganize texture encoding assignment. #23645 (@donmccurdy)
- Allow
ImageBitmapLoader
with Firefox. #23742 (@aardgoose) - Fix
EXT_TEXTURE_WEBP
extension. #23823 (@gernotziegler)
- Simplify
-
HtmlMesh
-
LineSegments2
- Add world units raycasting and
webgl_lines_fat_raycasting
example. (@bergden-resonai)
- Add world units raycasting and
-
Lut
-
NodeEditor
-
NodeMaterial
- Various fixes and updates. #23600, #23647, #23648 (@sunag)
- Add
FogNode
. #23606 (@sunag) - Add label and temp functions to
ShaderNode
. #23546 (@LeviPesin) - Unify type conversion functions in
ShaderNode
. #23601 (@LeviPesin) - Prevent
ShaderNodeObjecting
aShaderNodeObject
. #23629 (@LeviPesin) - Add
BoolNode
andUintNode
. #23636 (@LeviPesin) - Refactor
NodeBuilder.format()
. #23638 (@LeviPesin) - Add
buffer()
function. #23656 (@LeviPesin) - Add ivec, uvec, bvec, imat, umat, and bmat. #23646 (@LeviPesin)
- Fix properties shared across instances. #23706 (@wmcmurray)
- Split
InputNode
intoConstNode
andUniformNode
. #23663 (@LeviPesin) - Fix support for extended classes. #23724 (@sunag)
- Add
CubeTexture
for WebGPU and WebGL. #23743 (@sunag) - Update
ConvertType
. #23635 (@LeviPesin) - Remove unneeded constants from
ShaderNode
. #23765 (@LeviPesin) - Keywords support in
FunctionNode
. #23766 (@sunag)
-
PCDLoader
- Fix ASCII RGB parsing. #23735 (@segments-tobias)
-
SceneUtils
-
TrackballControls
-
USDZExporter
- Support opacity materials. #23588 (@yuta-hayashi)
-
ViewHelper
- Fixed
container
is not defined. #23605 (@linbingquan)
- Fixed
-
VTKLoader
-
WebGPURenderer
Editor
- Clean up. #23618 (@linbingquan)
- Fix deprecated error for
matchMedia.addListener
. #23610 (@linbingquan) - Fix
getIntersects()
for objects with invisible parents. #23617 (@mrdoob) - Refactor animations panel. #23714 (@mrdoob)
- Add support for
vtp
files. f133613 (@mrdoob)
r138
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r137--r138
https://github.com/mrdoob/three.js/milestone/51?closed=1
- Global
- FileLoader
- Added workaround for Alipay browser's bug. #23548 (@neciszhang)
- Material
- Clean up
toJSON()
. #23438 (@linbingquan)
- Clean up
- PMREMGenerator
- Texture
- Vector3
- Add
setFromEuler()
, removeEuler.toVector3()
. #23494 (@WestLangley)
- Add
- WebGLCubeRenderTarget
- WebGLMultipleRenderTargets
- WebGLRenderer
- Enable blending when
Material.blending
is not set toNormalBlending
. #23416 (@gkjohnson) - Refactor creation of transmission render target. #23450, #23452, #23460, #23465 (@Mugen87, @mrdoob, @haxiomic, @marcofugaro)
- Remove
WebGLMultisampleRenderTarget
. #23455, #23611, #23644 (@Mugen87) - Fixed transmission rendering when using
ArrayCamera
. #23491 (@mrdoob) - Honor alpha definition in custom rendering context. #23504 (@Mugen87)
- Add support for morphing vertex colors. #23523 (@Mugen87)
- Enable blending when
- WebGLRenderTarget
- WebGLTextures
Documentation
- Clean up. #23345, #23383, #23553, #23532, #23529, #23557 (@Mugen87, @bergden-resonai, @ycw)
- Improve
BoxGeometry
page. #23530 (@Mugen87 - Improve
Color
page. #23369 (@stevinz) - Improve
CSS3DRenderer
page. #23567 (@SadmanYasar) - Improve
GLTFLoader
page. #23417 (@takahirox) - Improve
Raycaster
page. #23500 (@linbingquan) - Improve
RectAreaLight
page. #23469 (@puxiao) - Improved
SkinnedMesh
page. #23423, #23422 (@makc) - Improve
Useful-links
page. #23396, 23409 (@PratikDev, @Mugen87) - Improve
Vector*
pages. #23437 (@Mugen87) - Improve Chinese translation. #23445, #23457, #23487, #23518, #23545 (@jovey-zheng)
- Add missing Korean pages to
list.json
. #23391 (@Mugen87) - Add some missing API. #23510 (@Mugen87)
- Use
<p>
for supporting paragraphs. #23522 (@ycw) - Add missing
.is*
flag. #23565 (@ycw)
Manual
- Don't use
GammaEncoding
. #23364 (@Mugen87) - Remove outdated patterns in code examples. #23377, #23387, #23388, #23390 (@Mugen87)
- Refactor import maps support in live editor. #23373 (@greggman)
- Avoid usage of minimum pixel ratio. #23489 (@Mugen87)
- Remove outdated
OrbitControls.enableKeys
. #23472 (@r00ster91) - Improve Chinese translation. #23501 (@ZacharyQin)
Examples
- Clean up. #23395, #23426, #23485, #23503, #23535 (@Mugen87, @sunag, @WestLangley, @vHeemstra)
- Add vertex colors to
misc_exporter_ply
example. #23375 (@gkjohnson) - Add vertex colors to
misc_exporter_collada
example. #23384 (@gkjohnson) - Allow tree-shaking for curves. #23402 (@marcofugaro)
- Ensure
CCDIKHelper
is exported. #23404 (@abernier) - Rework UI of exporter examples. #23405 (@Mugen87)
- Remove
VRMLoader
. #23414 (@mrdoob) - Remove old node material. #23418, #23454 (@Mugen87)
- Properly set draw range in
webgl_gpgpu_birds_gltf
example. #23435 (@jure) - Fix style issue in
flow
. #23439 (@Mugen87) - Fix
DOMException
when trying to use XR inside an iframe. #23174 (@hybridherbst) - Add multisampling support to
Reflector
/Refractor
. #23444 (@Mugen87) - Add
OctreeHelper
. #23481 (@carlssonk, @Mugen87) - Add
EXRExporter
. #23541 (@sciecode) - Fix GUI in wide line examples. #23540 (@bergden-resonai)
- Move new node material to
./jsm/nodes/
. #23560 (@sunag) - Improve
webgl_cubemap_dynamic
example. 944aeb1 (@mrdoob)
-
3MFLoader
-
ColladaExporter
- Convert linear vertex and material colors to sRGB. #23400 (@gkjohnson)
-
ColladaLoader
- Add sRGB support. #23401 (@gkjohnson)
-
CSS2DRenderer
- Fix sorting regression. #23360, #23594 (@bergden-resonai, @Mugen87)
- Add support for
renderOrder
. #23456 (@brucedjones)
-
GLTFExporter
- Always use
image/png
as mime type. #23385 (@donmccurdy) - Fix
buildORMTexture()
. #23463 (@takahirox)
- Always use
-
GLTFLoader
- Allow textures which share the image source. #23420 (@takahirox)
- Fix color space for certain texture types. #23630 (@Mugen87)
-
HTMLMesh
-
NodeEditor
-
NodeMaterial
- Add support for serialization/deserialization. #23314 (@sunag)
- Add
analyze()
to optimization and validation. #23475 (@sunag) - Add more functions to
ShaderNode
. #23539 (@LeviPesin) - Add type conversions to
ShaderNode
. #23544 (@LeviPesin)
-
OBJExporter
- Convert vertex colors to sRGB. #23374 (@gkjohnson)
-
OBJLoader
- Convert vertex colors to linear. #23340 (@gkjohnson)
-
PointerLockControls
- Add
.pointerSpeed
. #23516 (@ChrisCrossCrash)
- Add
-
PLYExporter
- Convert vertex colors to sRGB. #23399 (@gkjohnson)
-
PLYLoader
- Convert vertex colors to linear. #23342 (@gkjohnson)
-
SVGLoader
-
WebGPURenderer
- Remove deprecated WGSL syntax. #23393, #23394 (@webglzhang, @takahirox)
- Fix
Texture.image !== null
inWebGPUTextures
. #23436 (@sunag) - Update to latest WebGPU API. #23483 (@sunag)
Editor
- Clean up. #23477 (@linbingquan)
Tests
r137
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r136--r137
https://github.com/mrdoob/three.js/milestone/50?closed=1
- AnimationMixer
- Fix wrong reference count in
_bindAction()
. #23102 (@walton007)
- Fix wrong reference count in
- Box3
- BufferGeometry
- FileLoader
- LatheGeometry
- Change index order. #23291 (@Chrissie-AI)
- Material
- Removed
.format
. #23166 #23361, dfca2bd (@donmccurdy, @mrdoob)
- Removed
- MeshMatcapMaterial
- Update default matcap. #23126 (@WestLangley)
- PMREMGenerator
- Quaternion
- Fix return value of
.slerpQuaternions()
. #23114 (@OldStarchy)
- Fix return value of
- ShaderLib
- Texture
- WebGLCubeUVMaps
- WebGLMorphtargets
- Dispose morph textures when corresponding geometry is disposed. #23104 (@0b5vr)
- Allow negative morph influence values. #23264 (@willstott101)
- WebGLRenderer
- Auto-detect sRGB compressed texture formats. #23124 (@Mugen87)
- Remove inline sRGB decode. #23129, #23192, #23271 (@Mugen87)
- Simplify env map generation. #23150 (@Mugen87)
- Implement draw buffers setup in WebGLState. #23194, #23200 (@Mugen87)
- Create WebGL context with
alpha: true
. #23230, #23241, #23243, #23246 (@mrdoob, @Mugen87) - Only use sRGB shader encode for default framebuffer and WebXR. #23253, #23288, #23289 (@Mugen87)
- WebGLRenderTarget
- WebGLTextures
- WebXRManager
Documentation
- Refactor URL generation in geometry browser. #23087, #23161 (@gero3)
- Improve
Box3
page. #23320 (@skuteli) - Improved
BufferAttribute
page. #23249, #23263 (@garciadelcastillo, @Mugen87) - Improved
CubeCamera
page. #23179, #23193 (@oerol, @Mugen87) - Improved
Installation
page. #23277 (@fabiobarcelona) - Improved
LoadingManager
page. #23236 (@kryzodoze) - Improved
MeshPhongMaterial
page. #23338 (@AdaRoseCannon) - Improved
MeshPhysicalMaterial
page. #23261 (@chubei-oppen) - Improved
Raycaster page
. #23132 (@Mugen87) - Improved loader pages. #23180 (@mistic100)
- Improved Chinese translation. #23084, #23209, #23239, #23262 (@521qq, @Torlinone, @moshuying, @sooia)
- Only load trusted iframe. #23245 (@r0hanSH)
Manual
- Fix link highlighting in manual. #23113 (@greggman)
- Improve style of modified code listings. #23142 (@Mugen87)
Examples
- Clean up. #23092, #23091, #23105, #23133, #23151, #23162, #23222, #23175, #23276, #23294, #23301, #23365, e23cd92, ab21bee, ea80c21, 9d551a2 (@linbingquan, @Mugen87, @WestLangley, @vojty, @marcofugaro, @tomhsiao1260, @mrdoob)
- Demonstrate loading flat colors in
webgl_loader_ldraw
to match instruction booklet style. #23098 (@gkjohnson) - Upgrade
lil-gui
. #23130 (@georgealways) - Throw errors instead of strings. #23137 (@gero3)
- Removed
RoughnessMipmapper
. #23143 (@mrdoob) - Added
ImportMaps
availability script. #23148 (@mrdoob) - Use import maps + polyfill. #23255, #23163, #23214, #23256, #23282, #23293, #23370 (@marcofugaro, @mrdoob, @sunag, @Mugen87)
- Add 3dl asset to
webgl_postprocessing_3dlut
example. #23202 (@gkjohnson) - Simplify
Reflector
,Refractor
andWater
render targets. #23206 (@Mugen87) - Use PBR material in
webxr_ar_lighting
example again. #23171 (@Mugen87) - Optimize icon image. #23238 (@chuntington)
- Use sRGB output in
webgl_loader_svg
example. #23280 (@gkjohnson) - Add
Layers
support to CSS renderers. #23316 (@thisGH) - Improve
webxr_vr_haptics
example. #23307 (@zz85) - Fixed duplicated ARKit button. 464a5f0 (@mrdoob)
- Simplified
webgl_loader_obj_mtl
example. d9a9066 (@mrdoob) - Always use
FloatType
in GPGPU examples with WebGL 2. #23337 (@Mugen87)
-
BasisTextureLoader
- Add deprecation warning. #23123 (@donmccurdy)
-
ConvexGeometry
-
EXRLoader
-
GlitchPass
-
GLTFExporter
-
GLTFLoader
-
HTMLTexture
-
LDrawLoader
- Make normal smoothing condition more explicit. #23093 (@gkjohnson)
fileMap
should exist when parsing. #23097 (@gero3)- Throw errors instead of strings #23135 (@gkjohnson)
- Start removing stored derivative data during initial parse. #23139 (@gkjohnson)
- Check if a face edge is a sub segment of a long edge when smoothing normals. #23077 (@gkjohnson)
- Remove
separateobjects
flag. #23147 (@gkjohnson) - Refactor, cache pre-parsed file contents. #23157 (@gkjohnson)
- Rename colour to color. #23168 (@gkjohnson)
- Fix a corner case when smoothing normals. #23169 (@gkjohnson)
- Add option to merge geometries after loading. #23173 (@yomboprime)
- Cleanup and docs improvement. #23231, #23233 (@yomboprime, @gkjohnson)
- Cache geometry versions of parts, reduce geometry redundancy, improve parse time. #23232 (@gkjohnson)
- Convert to linear colors when parsing models. #23272 (@gkjohnson)
- Fix
getMainEdgeMaterial()
. #23334 (@yomboprime)
-
LUT3dlLoader
- Use
RGBAFormat
. #23208 (@gkjohnson)
- Use
-
MTLLoader
- Label and convert textures and colors correctly. #23296 (@gkjohnson)
-
NodeEditor
-
NodeMaterial
-
PCDLoader
- Fix RGB loading order for binary compressed files. #23286 (@LeoPapais)
-
SSAOPass
-
SVGLoader
-
TextGeometry
-
VRButton
- Add
sessiongranted
support to enable in-VR navigation. #23110 (@hybridherbst)
- Add
-
WebGPURenderer
Editor
- Clean up. #23275, c15bbe1 (@linbingquan, @mrdoob)
- Upgrade signals.min.js #23044 (@linbingquan)
- Compute precise AABB selection box. #23298 (@mrdoob)
Tests
- Add
isObject3D
unit test. #23121 (@gero3) - Add three arguments test case for
Matrix4.set()
. #23227 (@linbingquan) - Fixed
getTypedArray()
unit test. #23258 (@takahirox) - Use ES modules. #23315, #23325 (@marcofugaro)
r136
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r135--r136
https://github.com/mrdoob/three.js/milestone/49?closed=1
- Global
- FileLoader
- Fix incorrect error handling. #22925 (@leyiang)
- Support environments without
ReadableStream
. #23032 (@gkjohnson)
- LatheGeometry
- Improve normal generation. #22927 (@Chrissie-AI)
- MeshPhysicalMaterial
- MeshToonMaterial
- PMREMGenerator
- Sphere
- WebGLProgram
- Add layout-qualifier to
pc_fragColor
. #22931 (@ligaofeng0901)
- Add layout-qualifier to
- WebGLPrograms
- WebGLRenderer
- Clean up. #22902 (@Mugen87)
- Refactor usage of
.copyFramebufferToTexture()
. #22916, #22917, #22985, #22994 (@Mugen87, @elalish) - Enable usage of
SRGB8_ALPHA8
again. #22952 (@Mugen87) - Remove
RGBM7Encoding
andRGBM16Encoding
. #23046 (@Mugen87) - Remove
RGBDEncoding
. #23049 (@Mugen87) - Remove
RGBEEncoding
andRGBEFormat
. #23060 (@Mugen87) - Remove
.gammaFactor
andGammaEncoding
. #23080, #23082 (@Mugen87, @donmccurdy)
- WebGLTextures
- WebXRManager
Documentation
- Clean up. #22906, #22904, #22941 (@1337816495, @GoodnessEzeh, @gero3)
- Improved
ArcballControls
page. #22949 (@danielefornari) - Improved
Creating a scene
page. #22921 (@ayushmXn) - Improved
Matrix4
page. #22969 (@webglzhang) - Improved
Raycaster
page. #22908 (@DolphinIQ) - Improved
SkinnedMesh
page. #23079 (@Mugen87) - Improved
Texture
page. #22986 (@Mugen87) - Make headers stand out in API reference. #22948 (@orta)
- Add missing
load()
progress behaviour. #22990 (@dweremeichik) - Remove
Polyfills
page. #23036 (@Mugen87)
Manual
- Add Korean translation for WebXR articles. #22893 (@greggman)
- Add Chinese translation for multiple-scenes article. #22894 (@greggman)
- Fix fullscreen mode. #22953 (@makc)
- Fix exponential backtracking in
lessons-helper.js
. #23026 (@gero3) - Clean up. #22905 (@mjurczyk)
Examples
- Clean up. #22910, #22942, #23001, #23002, #23029, 0090643, 5eedcdb (@Tirzono, @gero3, @Mugen87, @mrdoob)
- Added
webgpu_nodes_playground
example. #22901 (@sunag) - Improve render order in
webgl_loader_svg
. #22912 (@tangobravo) - Added
.dispose()
method toReflector
andRefractor
. #22932 (@LR17) - Improve
webgl_loader_svg
example. #23040 (@linbingquan) - Sort presets in
βwebgl_materials_nodes
example. #23041 (@gero3) - Use half float EXR textures in
webgl_materials_matcap
example. #23059 (@WestLangley) - Simplify
webgl_animation_multiple
example. #23066 (@Mugen87) - Improve
webgl_instancing_raycast
example. #23000 (@WestLangley) - Add a placeholder text to the exampleβs landing page. #23045, #23075 (@gero3, @WestLangley)
- Simplified
webgl_geometry_teapot
example. 08b4975 (@mrdoob) - Improved
webgl_loader_gltf_sheen
example. 80afa23, 0e53dfb (@mrdoob)
-
ArcballControls
-
ColladaLoader
-
EXRLoader
-
GLTFLoader
-
KTX2Loader
- Don't select ETC1 for textures with alpha. #22974 (@donmccurdy)
- Don't transcode to ETC1 in WebGL2. #22982 (@donmccurdy)
-
LDrawLoader
- Fail gracefully if an object could not be loaded, improve file compatibility. #22957 (@gkjohnson)
- Remove phong material use. #22973 (@gkjohnson)
- Initialize
parseScope.groupObject
even when!LDRAW_ORG
is not specified. #23076 (@gkjohnson)
-
NodeMaterial
-
NRRDLoader
- Ensure that
headerObject.vectors
is an array of arrays. #22987 (@sonisourabh)
- Ensure that
-
PLYLoader
-
SelectionBox
- Honor transformation of
InstancedMesh
. #22962 (@chiguaboy)
- Honor transformation of
-
SelectionHelper
- Add
.dispose()
. #22977, #22979 (@chiguaboy, @Mugen87)
- Add
-
StandardMaterialEditor
-
SVGLoader
-
TransformControls
- Added
.reset()
method. #22972 (@vHeemstra) - Don't attempt to capture pointer if pointerlock is active. #23057 (@jbaicoianu)
- Added
-
VRMLLoader
-
Water2
-
WebGLNodeBuilder
- Move
sizeNode
underpositionNode
. #23043 (@wmcmurray)
- Move
-
WebGPURenderer
Editor
- Clean up. a759644 (@mrdoob)
- Dispose
DracoLoader
after loading an asset. #22950 (@gero3) - Preview pure skeleton. #22858 (@gonnavis)
- Add support for
pic
extension. 5340bf3 (@mrdoob)
Tests
r135
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r134--r135
https://github.com/mrdoob/three.js/milestone/48?closed=1
- Layers
- Add
isEnabled()
. #22825 (@felixmariotto, @Mugen87) - Fix internal mask when using
.set()
. #22867 (@1337816495)
- Add
- MathUtils
- MeshPhysicalMaterial
- Use
0
asthickness
default. #22762 (@Mugen87) - Fix clearcoat shader computation. #22839 (@WestLangley)
- Use
- StereoCamera
- Avoid unnecessary call of
.clone()
. #22830 (@WestLangley)
- Avoid unnecessary call of
- WebGLProgram
- WebGLRenderer
- Remove
__maxMipLevel
. #22788 (@Mugen87) - Add
data-engine="three.js r${REVISION}"
to the canvas element. #22792 (@mrdoob) - Disable usage of
SRGB8_ALPHA8
. #22759 (@Mugen87) - Check if
_canvas
hassetAttribute()
before calling it. fe71b47 (@mrdoob) - Remove LogLuv encoding from the shaders. #22876 (@WestLangley)
- Remove
- WebGLTexture
- WebGLUniforms
- Add setters for arrays of 3D textures and 2D texture arrays. #22847 (@jonaskordt)
- WebXRManager
Documentation
- Remove pages about internals. #22775 (@Mugen87)
- Explain flatness of
values
parameter of keyframe tracks. #22766 (@jcamp0x2a) - Clarify
Object3D.attach()
limitations. #22821 (@WestLangley) - Improved Chinese translation. #22831 (@moshuying)
- Fix typo in
TransformControls
page. #22840 (@tonybfox)
Manual
Examples
- Clean up. #22763, #22768, #22798, #22832, #22829, #22835, #22834, #22880 (@linbingquan, @Mugen87, @moshuying, @WestLangley)
- Rename CSM frustum class. #22752 (@Mugen87)
- Replaced
dat.gui
withlil-gui
. #22765 (@georgealways) - Use
undefined
instead ofvoid
ornull
. #22794, #22796, #22797 (@Mugen87) - Consistent documentation of
return this
. #22799 (@Mugen87) - Fix WebXR hand pointer examples. #22815 (@dmliao)
- Add out of bounds check to
games_fps
example. #22877 (@Uueuuuuu)
-
3DMLoader
-
3MFLoader
-
ArcballControls
-
DragControls
- Added .getRaycaster(). #22851, #22855, c547a74 (@draibolit, @Mugen87)
-
GLTFExporter
- Add
.parseAsync()
#22755 (@marcofugaro) - Add
KHR_materials_clearcoat support
. #22761 (@Mugen87) - Add
onError
parameter to.parse()
. #22774 (@marcofugaro)
- Add
-
GLTFLoader
- Add
.parseAsync()
. #22754 (@marcofugaro) - Honor morph targets when using lines. #22771 (@mfernba)
- Add
-
Line2
- Support raycasting with orthographic cameras. #22791 (@gkjohnson)
-
LineMaterial
-
LogLuvLoader
-
LWOLoader
-
NodeMaterial
-
OrbitControls
-
PLYLoader
-
SVGLoader
- Make
createShapes()
retain curves. #22778 (@georgpukk)
- Make
-
USDZExporter
-
WebGPURenderer
- Fix
bgra
constants. #22795 (@takahirox) - More efficient texture updates. #22869 (@Mugen87)
- Fix
Editor
r134
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r133--r134
https://github.com/mrdoob/three.js/milestone/47?closed=1
- FileLoader
- Use
fetch
API. #22510 (@DefinitelyMaybe, @gkjohnson)
- Use
- ImageLoader
- Clean up. #22666 (@linbingquan)
- LoaderUtils
- Add
resolveURL()
. #22707 (@robertlong)
- Add
- MeshPhysicalMaterial
- PMREMGenerator
- Texture
- WebGLRenderer
- WebGLShadowMap
Documentation
- Clean up. #22672 (@raghav-wd)
- Improved Curve page. #22747 (@Mugen87)
- Improved
InstancedMesh
page. #22639 (@Mugen87) - Improved
WebGLRenderer
page. #22706 (@Mugen87) - Fix redirect condition for
*BufferGeometry
. #22680 (@inokawa) - Improved Chinese translation. #22746 (@obf1313)
Examples
- Clean up. #22617, #22629, #22739 (@linbingquan, @Mugen87)
- Improved
webgl_geometry_spline_editor
example. #22616 (@linbingquan) - Add possibility to pass in the HTML container of CSS renderers. #22635 (@pimdewit)
- Use loop unroll in
webgl_shadowmap_pcss
example. #22646 (@Mugen87) - Removed
DeviceOrientationControls
. #22654 (@Mugen87) - Fix tile glitch in
webgl_geometry_minecraft
example. #22657 (@Mugen87) - Fix clipping in
webgl2_materials_texture3d
example. #22649 (@rlschuller) - Added
webgpu_skinning_points
example. #22695 (@sunag) - Use phong material in
webxr_ar_lighting
example. #22724 (@Mugen87) - Simplified
webgl_marchingcubes
example. 296e07f (@mrdoob)
-
3MFLoader
-
ArcballControls
-
ColladaLoader
- Re-added normal map parsing. #22647, 418d19b (@jbaicoianu, @mrdoob)
- Set material opacity when
transparent.opaque
isnull
orundefined
. #22679 (@BSpolantis)
-
FBXLoader
-
GLTFLoader
-
KTX2Loader
- Warn when multiple instances in use. #22621 (@donmccurdy)
-
LineMaterial
-
MarchingCubes
-
NodeMaterial
-
OrbitControls
-
RoughnessMipmapper
-
TDSLoader
- Refactor
readString()
method. #22651 (@tomsoftware)
- Refactor
-
TrackballControls
-
USDZExporter
-
WebGPURenderer
r133
https://github.com/mrdoob/three.js/wiki/Migration-Guide#r132--r133
https://github.com/mrdoob/three.js/milestone/46?closed=1
- Global
- Create
createElementNS()
helper inutils.js
. #22488 (@linbingquan) - Move
TextGeometry
,FontLoader
andFont
to examples. #22560 (@Mugen87) - Introduce generators to make vector classes iterable. #22548 (@B3epBo0p)
- Create
- BufferGeometry
- Curve
- CurvePath
- DataUtils
- ExtrudeGeometry
- Frustum
- Fix wrong test in
split()
. #22496 (@OndrejSpanel)
- Fix wrong test in
- LatheGeometry
- MathUtils
- Mesh
- Prevent infinite loop in
raycast()
. #22068 (@artificial-jon)
- Prevent infinite loop in
- MeshPhysicalMaterial
- Refactored sheen BRDF. #22455 (@WestLangley)
- Use roughness-squared in sheen BRDF #22456 (@WestLangley)
- Added
sheenRoughness
property. #22457 (@WestLangley) - Implement sheen as a layer on top of the base later. #22463 (@WestLangley)
- Remove duplicate
transmission
property. #22464 (@WestLangley) - Added
sheen
property. #22466 (@WestLangley) - Modulate
transmission.a
withtransmissionFactor
. #22473 (@mrdoob)
- Object3D
- Clean up. #22602 (@linbingquan)
- ParametricGeometry
- Quaternion
- Added
random()
. #22494 (@brianpeiris)
- Added
- Raycaster
- Set
recursive
default value totrue
. #22460, #22500 (@WestLangley)
- Set
- ShadowMaterial
- ShapeGeometry
- SkinnedMesh
- Triangle
- TubeGeometry
- Vector3
- Added
randomDirection()
. #22494 (@brianpeiris)
- Added
- WebGLRenderer
- Refactoring GLSL. #22471, #22475 (@WestLangley)
- Unified
glsl.js
files. #22493 (@mrdoob) - Support more than eight morph targets with WebGL 2. #22293, #22516, #22573, #22624 (@Mugen87)
- Add support for
SRGB8_ALPHA8
with WebGL 2. #22551 (@Mugen87) - Compute
vertexTangents
consistently. #22564 (@donmccurdy)
Documentation
- Clarify vector
equal()
methods. #22446 (@Mugen87) - Improve
HemisphereLight
page. #22450 (@Mugen87) - Improve
Material
page. #22459 (@Mugen87) - Improved
ShapeUtils
page. #22547 (@wolzenbug) - Retain filter when switching between docs and examples. #22507 (@octopoulos)
- Fixed broken links in Korean manual. #22587 (@gandis0713)
- Improved Chinese translation. #22599 (@peiyu7921)
Examples
- Clean up. #22521, #22526, #22570 (@Mugen87)
- Honor 16 bit limit in
webgpu_compute
. #22440 (@sunag) - Improved
games_fps
example. #22506 (@octopoulos) - Added
ArcballControls
andmisc_controls_arcball
example. #21989 (@danielefornari, @cignoni) - Added
webgl_materials_instance_uniform_nodes
example. #22504 (@sunag) - Added
webgl_morphtargets_face
example. #22514 (@looeee) - Fix broken
PackedPhongMaterial
. #22569 (@Mugen87)
-
GLTFLoader
- Allow multiple associations. #21737 (@takahirox)
- Fix missing associations. #22583 (@timmmeh)
- Clean up normalScale workaround. #22584 (@donmccurdy)
-
KTX2Loader
- Add
examples/js
build. #22485 (@donmccurdy) - Warn on missing call to
detectSupport()
. #22519 (@donmccurdy)
- Add
-
NodeBuilder
-
NodeMaterial
- Add support for arrays of uniforms. #22497 (@sunag)
- Add
Material.onBeforeRender()
. #22417 (@sunag) - Rename
SwitchNode
toSplitNode
#22509 (@sunag) - Introduce new material classes. #22518 (@sunag)
- Added classes to enable particle effects. #22538 (@sunag)
- Accessing modules from Node lib. #22554 (@sunag)
- Enhance
TimerNode
. #22567 (@sunag) - Rename
Node.type
toNode.nodeType
and introduceNode.type
with new semantics. #22572 (@sunag) - Fix
sRGBEncoding
map using WebGL2. #22585 (@sunag) - Static and dynamic output type for extended nodes. #22590 (@sunag)
- Add
CheckerNode
. #22592 (@sunag) - Add
ShaderNode
. #22603 (@sunag)
-
RGBELoader
- Clamp prior to converting to half float. #22451 (@WestLangley)
-
RGBMLoader
-
SAOPass
- Fix
depthTexture
initialization. #22502 (@twastvedt)
- Fix
-
SVGLoader
-
TextureNode
-
TransformControls
-
USDZExporter
-
WebGPURenderer
Editor
- Use pointer events for ViewHelper. #22480 (@Mugen87)
- Upgrade codemirror to
5.63.0
. #22568 (@linbingquan) - Optimize drag range for resizer. #22576 (@linbingquan)
- Support resizer for script/player panels. #22593 (@Mugen87)
- Limit the min-width style for .Panels and .Tabs #22600 (@linbingquan)
- Fix CRLF problem #22601 (@linbingquan)