Three.js r183

r183

https://github.com/mrdoob/three.js/wiki/Migration-Guide#182--183 https://github.com/mrdoob/three.js/milestone/96?closed=1

  • Global
    • Remove deprecated code. #32569 (@Mugen87)
    • Replace eslint-plugin-import with eslint-plugin-import-x. #32651 (@mrdoob)
    • Removed eslint-plugin-import-x. #32653 (@mrdoob)
    • Update package.json. 4c280ff9c2599baba7afe262e434a1449d6f67d4 (@Mugen87)
    • Update package.json. 3332b33bea214d2033de83272ec56bd08dca4a00 (@Mugen87)
  • Animation
    • Add BezierInterpolant. #32829 (@mrdoob, @claude)
  • AnimationAction
    • Fixed typos in /src folder. #32629 (@mrdoob)
  • AnimationMixer
    • DEVTOOLS access to AnimationMixer + Loaders. #32616 (@marwie)
  • AudioListener
    • Remove reference to Clock. #33026 (@Mugen87)
  • BatchedMesh
    • correctly set the nextIndexStart, nextVertexStart. #32744 (@gkjohnson)
    • Enable per-instance opacity. #32725 (@vanruesc, @gkjohnson)
    • Add support for wireframe materials. #32948 (@gkjohnson)
  • BindGroup
    • Remove bindingsReference. #32910 (@Mugen87)
  • Cache
    • Don't cache Blobs. #32989 (@Mugen87)
  • Camera
    • Exclude scale from view matrix. #32805 (@Mugen87)
  • Clock
    • Deprecated module. #32798 (@Mugen87)
  • Core
    • Add ReversedDepthFuncs dictionary. #32983 (@Mugen87)
  • GLSLNodeBuilder
    • Fix CubeDepthTexture sampler. #32857 (@Mugen87)
    • Fix array texture layer support for filtered sampling. #33008 (@RenaudRohlinger)
  • Helpers
    • Clarify the usage of update(). #32717 (@Mugen87)
  • InstanceNode
    • Support velocity. #32586 (@Mugen87)
    • Fix UBO size and attribute update. #32615 (@Mugen87)
  • Lighting
    • Refactor camera usage. #32557 (@sunag)
  • LightShadow
    • Introduce biasNode. #32811 (@Mugen87)
  • Line2NodeMaterial
    • Avoid performance degradation with viewportSharedTexture(). #32639 (@Mugen87, @sunag)
    • Rename useColor property to vertexColors. #32670 (@sunag)
  • Line3
    • Fix closest point in distanceSqToLine3(). #32878 (@Mugen87)
  • Matrix4
    • Cache determinant result in decompose(). #32658 (@mrdoob, @microsoftcopilot)
    • Optimize invert() calculation. #32657 (@mrdoob)
  • MeshLambertMaterial
    • Add support for scene.environment IBL. #32791 (@mrdoob, @claude)
  • MeshPhongMaterial
    • Add support for scene.environment IBL. #32795 (@mrdoob, @claude)
  • MeshPhysicalMaterial
    • Added clearcoat support for rect area lights. #32809 (@TobiasNoell)
  • MeshPhysicalNodeMaterial
    • Fix missing iorNode in MeshPhysicalNodeMaterial copy method. #32821 (@TobiasNoell)
  • NodeBuilder
    • Fix shared group detection. #32913 (@Mugen87)
    • Fix update nodes sequence. #32991 (@sunag)
  • NodeBuilders
    • Unifies uniform groups of different shader stages. #32534 (@sunag)
  • NodeMaterial
    • Add maskShadowNode. #32598 (@sunag)
    • Remove shadowPositionNode fallback to reduce CPU load. #32699 (@Mugen87)
  • NodeMaterialObeserver
    • Fix detection of replaced attribute/index. #32933 (@Mugen87)
  • Nodes
    • Update exports. #32783 (@Mugen87)
    • Fix PMREM cache. #32941 (@Mugen87)
  • Object3D
    • Document static, add support in copy() and JSON. #32679 (@Mugen87)
  • ObjectLoader
    • Wrap JSON.parse() in try/catch for consistent error handling. #32947 (@glowsenior)
  • Playground
    • Archived playground. #32771 (@mrdoob)
  • PMREM
    • Simplify GGX VNDF importance sampling. #32737 (@Mugen87)
  • Quaternion
    • Quaternion - Support extrapolation in slerp methods. #32541 (@WestLangley)
  • RenderContext
    • Refactor context key. #32546 (@Mugen87)
  • Renderer
    • Rename shadowMap.color to shadowMap.colored. #32608 (@Mugen87)
    • Rename shadowMap.colored -> shadowMap.transmitted. #32611 (@sunag)
    • Shadow map improvements. #32705 (@Mugen87)
  • RenderObject
    • Fix ID assignment bug. #32700 (@Mugen87)
    • Update bundle reference at correct point. #32901 (@Mugen87)
  • RenderTarget
    • minor formatting. #32988 (@epreston)
  • ShadowFilterNode
    • Fix TSL warning in VSMShadowFilter. #32836 (@Mugen87)
  • ShadowMaterial
    • Respect "premultiplied alpha". #32550 (@gkjohnson)
  • SkinningNode
    • Fix tangent transformation. #32718 (@Mugen87)
  • SpriteSheetUVNode
    • Transform to TSL function and fix countNode access. #32693 (@gayanMatch)
  • StorageTextureNode
    • Add TSL read/write support. #32734 (@NateSmyth)
  • Texture3DNode
    • Remove outdated setupUV(). #32630 (@Mugen87)
  • TextureNode
    • Use compareNode for Android if compareStepNode is not compatible. #32956 (@sunag)
  • TorusGeometry
    • Update TorusGeometry with thetaStart and thetaLength. #32760 (@3dpk-interactive)
  • TSL
    • Introduce clipSpace. #32594 (@sunag)
    • Introduce TSL.md (TSL Spec). #32601 (@sunag)
    • Remove exports for removed TSL methods. #32635 (@Methuselah96)
    • use raw data for DebugNode callback. #32638 (@linbingquan)
    • Add exponentialHeightFogFactor(). #32659 (@Mugen87)
    • Check if the stack has a valid output. #32669 (@sunag)
    • Fix positionView sub-build. #32691 (@sunag)
    • Revert positionWorld re-computation. #32710 (@sunag)
    • Fixing invalid GLSL using nested structures. #32724 (@sunag)
    • Move SceneNode to TSL functions. #32838 (@sunag)
    • Support switching StorageBufferAttribute when using storage(). #32847 (@sunag)
    • Force flat shading for geometries without normals for normal* nodes. #32848 (@sunag)
    • Avoid side effect of getTextureLevel() in normals. #32877 (@Mugen87)
    • Remove scriptable node. #32925 (@sunag)
    • Introduce StackTrace. #32914 (@sunag)
    • Add RenderPipeline for TSL Spec. #32928 (@sunag)
    • Add retroPassand example. #32930 (@sunag)
    • Remove ScriptableNodeResources export. #32945 (@Methuselah96)
    • Cache camera* uniform nodes. #32938 (@sunag)
    • Fix instancedArray() bufferCount property. #32977 (@sunag)
  • UniformGroups
    • Partially updates. #32558 (@sunag)
  • UniformsGroup
    • Add range cache and fix clear old update ranges. #32561 (@sunag)
  • ViewportDepthNode
    • Support reversed depth in viewZ functions. #33001 (@Mugen87)
  • ViewportTextureNode
    • Change update type to RENDER. #32664 (@Mugen87)
  • WebGLRenderer
    • Allow InstancedMesh provide a unique ID for WebGLBindingStates. #32556 (@OndrejSpanel)
    • Consider skinning / instancing when sorting objects. #28125 (@OndrejSpanel)
    • Fix shadow map uniform management. #32590 (@Mugen87)
    • Fix PCFSoftShadowMap check. #32593 (@Mugen87)
    • Ensure readback checks work on correct attachment state. #32506 (@andredsm)
    • Fix pointlight shadows with reversed depth buffer. #32749 (@Mugen87)
    • Fix remaining shadow issues with reversed depth. #32751 (@Mugen87)
    • Fix shadow bias with reversed depth buffer. #32770 (@Mugen87)
    • Unify cubemaps and cubeuvmaps into WebGLEnvironments. #32792 (@mrdoob, @claude)
    • Force flat shading for geometries without normals. #32831 (@mrdoob, @claude)
    • Only clear when bit mask is set. #33010 (@Philipp-M)
  • WebGLShadowMap
    • Fix wrong camera state. #32777 (@Mugen87)
  • WebGLState
    • Fix polygon offset with reversed depth buffer. #32832 (@Mugen87)
  • WebGPURenderer
    • Fix compileAsync() with target scenes. #32530 (@Mugen87)
    • Prevent translation of skybox. #32537 (@Mugen87)
    • Prevent undefined GPUShaderStage. #32539 (@verekia)
    • Fix shadow comparison on Adreno GPUs. #32548 (@sunag)
    • Introduce shadowMap.color. #32596 (@sunag)
    • Unify uniformGroup bindings across shader stages. #32602 (@sunag)
    • Add per-attachment MRT blending support. #32636 (@sunag)
    • Fix depth/stencil format out-of-sync bug. #32731 (@Mugen87)
    • Use @interpolate(flat, either) for all cases. #32761 (@greggman)
    • Rename Nodes to NodeManager. #32786 (@sunag)
    • Rename RenderPipeline to RenderObjectPipeline. #32785 (@sunag)
    • Rename PostProcessing to RenderPipeline. #32789 (@sunag)
    • Always request compatibility mode and upgrade to core. #32762 (@greggman, @Mugen87)
    • Optimize chain key array reset. #32833 (@Mugen87)
    • Fall back to default texture when texture creation fails. #32853 (@ycw)
    • Introduce initRenderTarget(). #32867 (@Mugen87)
    • Export CubeRenderTarget and use it in examples. #32871 (@Mugen87)
    • WebGL viewport / scissors not working correctly with PostProcessing. #32883 (@TobiasNoell)
    • Fix overrideMaterial node assignments. #32896 (@Mugen87)
    • Turn off antialiasing in compat mode. #32902 (@greggman)
    • Make wireframe update more flexible. #32908 (@Mugen87)
    • Make generateMipmap work in compatibility mode. #32906 (@greggman)
    • Fix flipY and cache key when generateMipmap. #32922 (@sunag)
    • Improve checks for uniform buffer limits. #32949 (@sunag)
    • Fix wireframe rendering for BatchedMesh. #32955 (@Mugen87)
    • Improve compatibilityMode support for MRT. #32973 (@sunag)
    • Add basic reversed depth buffer support. #32967 (@Mugen87)
    • Add shared BindGroup via hash. #32936 (@sunag)
    • Use all visibility for shared BindingGroup. #32997 (@sunag)
    • Minor improvements for shared BindingGroup. #32998 (@sunag)
    • Reversed depth buffer fixes. #33000 (@Mugen87)
    • Fix stencilBack not matching stencilFront in pipeline. #33002 (@jpt)
    • Remove outdated bind groups. #33011 (@Mugen87)
    • Fix binding update after dispose a StorageTexture. #33028 (@sunag)
  • WebGPUTexturePassUtils
    • Cleanup generateMipmaps. #32915 (@greggman)
  • WGSLNodeBuilder
    • Fix array texture layer support for filtered sampling. #32990 (@RenaudRohlinger)
    • Introduce generateStorageTextureLoad. #33029 (@sunag)
  • XRManager
    • Fix XR camera layers inheritance. #32626 (@wrangelvid)

Docs

  • Update URL in VignetteShader.js documentation. #32573 (@jwheare)
  • Update documentation for ImageBitmapLoader options. #32574 (@jwheare)
  • Improved search results. #32577 (@mrdoob)
  • Remove .is properties from search results. #32578 (@mrdoob)
  • Fix JSDoc Example. #32603 (@leannepepper)
  • worldToLocal typo. #32647 (@satelllte)
  • Update documentation to include KHR_meshopt_compression. #32661 (@donmccurdy)
  • improve JSDoc documentation in utils.js. #32743 (@Achieve3318)
  • Improve documentation for edge cases in MathUtils functions. #32806 (@sharpenteeth, @Mugen87)
  • Prevent translators from aggressively translating parameter names. #32868 (@ycw)
  • KTX2Loader. Fix typo in TYPE_MAP. #32899 (@epreston)
  • Clarify auto update flags. #32909 (@Mugen87)
  • Add missing JSDoc. #32921 (@Mugen87)
  • Fix typo in JSDoc. #32946 (@glowsenior)
  • Added llms.txt, llms-full.txt and llms/build.js script. #32673 (@mrdoob)
  • build-docs: Clean up stale .html files before generating new ones. ed98cc4aa1f5decd9b23f54aa5ca2865e95fa56a (@mrdoob, @claude)
  • Fix typo and link in Installation manual. #32972 (@pavan-sh)
  • utils : update probeAsync jsdoc. #32995 (@epreston)
  • Fix typo. #33024 (@Mugen87)

Manual

  • Frame-rate independent cube rotation example. #32627 (@satelllte)
  • Update rendering-on-demand.html. 4bbae20d6759dd0bd160fede992dd5d82e0b8294 (@Mugen87)
  • Improve Chinese translation. #32804 (@guo-weijie)
  • Update WebGPU guide. #32846 (@Mugen87)
  • docs(zh): translate "Getting Started" manual pages into Chinese. #32996 (@DDDDD12138)
  • Add Physics page. #33004 (@Mugen87, @walcht)
  • Replace the template literal with string concat in lights page. #33012 (@v-stamenova)
  • Improve Chinese translation. #33021 (@DDDDD12138)

Examples

  • Cleanup examples. #32528 (@Methuselah96)
  • Add external example for Polyslice G-code slicer. #32502 (@jgphilpott, @microsoftcopilot, @Mugen87)
  • Remove material AO demo. #32579 (@Mugen87)
  • Update webgpu_shadowmap. #32610 (@sunag)
  • Add basic fog scattering demo. #32613 (@Mugen87)
  • Add shadow tag to webgpu_postprocessing_sss. e85890ebc870883c4147fefd472cb13542bc9e4b (@mrdoob)
  • Clean up. 15cbc8c6f2b104835082cf08dadfdd1a72fcf5b0 (@mrdoob)
  • Improved grid in webgpu_loader_materialx. 5cde3c7ec5af65456dfc1c29d3e592be6051400f (@mrdoob)
  • Cleanup examples. #32634 (@Methuselah96)
  • Improved examples. 0168a66eaebd0cd5a5ae5dc85ad20ed34b03827a (@mrdoob)
  • Added bloom to ocean examples. #32680 (@mrdoob)
  • Improved webgl_animation_keyframes. #32685 (@mrdoob)
  • Remove obsolete shadow bias from WebGPU demos. #32715 (@Mugen87)
  • Add missing UnrealBloomPass parameters. #32736 (@Methuselah96)
  • Add support for reversed depth to post processing modules. #32773 (@Mugen87)
  • Replace Clock with Timer. #32782 (@Mugen87)
  • Update Godrays demo. #32801 (@Mugen87)
  • Improved draco example and re-encode bunny.drc with 2.2 (cl7) reducing file size from 96KB to 47KB. 89c278c26286bfb223a2c82ec388b094b69d2a94 (@mrdoob)
  • Update webgpu_postprocessing_godrays.html. d167b69e3c0b7157ac96ca9eda3c5a0c351cfa2b (@Mugen87)
  • Various fixes for WebGPU compatibility mode. #32907 (@greggman)
  • Add Volumetric Lighting using TRAA. #32953 (@sunag)
  • Update webgpu_parallax_uv, and webgpu_cubemap_adjustments examples using .hdr file. #32976 (@sunag)
  • Scroll sidebar to selected example. #32980 (@sunag)
  • Clean up. #32994 (@Mugen87)
  • Improve birds compute demo. #33016 (@Mugen87)
  • Fix sidebar scrolling to selected example. #33023 (@sunag)

Addons

  • AnaglyphEffect

    • Use frameCorners() for physically-correct stereo. #32929 (@zalo, @claude)
    • Rename screenDistance to planeDistance. #32943 (@Mugen87)
  • CCDIKSolver

    • Fixed typos in /examples/jsm folder. #32631 (@mrdoob)
  • ColladaLoader

    • Split into modular files. #32796 (@mrdoob, @claude)
    • Improve animation support. #32830 (@mrdoob, @claude)
    • Apply falloff angle to spot lights. 17529114983185f1266b40e36933d306badfd5f5 (@mrdoob, @claude)
  • Exporters

    • Add Object3D.pivot support. #32769 (@mrdoob)
  • GCodeLoader

    • Add support for M82/M83 commands. #32687 (@Mugen87)
  • GLTFExporter

    • Fix skinIndex export for InterleavedBufferAttribute. #32607 (@querielo, @Mugen87)
  • GLTFExporter/GLTFLoader

    • Add Object3D.pivot support. #32774 (@mrdoob)
  • GLTFLoader

    • Fix empty groups when multiple scenes reference same nodes. #32567 (@YusakuNo1)
    • GLTFLoader and KTX2Loader: Add a sanity check for navigator.userAgent before using it. #32633 (@leonmetthez)
    • Implement support for KHR_meshopt_compression. #32163 (@zeux)
    • Add getMaterialExtension helper. #32748 (@mrdoob, @claude)
  • Global

    • Remove deprecated code. #32572 (@Mugen87)
    • Replace Clock with Timer. #32793 (@Mugen87)
  • HalftoneShader

    • Add diamond shape option. #32942 (@NateWr)
  • Inspector

    • Store parameters object+key. #32507 (@marwie)
    • Add "Copy All" button to Console tab. #32825 (@seantai, @sunag)
    • Fix compatibility with WebGLBackend if used as a fallback. #33019 (@sunag)
  • JoltPhysics

    • Fix dynamic import Vite warning. e796263ee25703290d920d958888061b799c7ded (@mrdoob)
  • KTX2Loader

    • Fix alpha for BC3 textures. #32772 (@donmccurdy)
  • LDrawConditionalLineNodeMaterial

    • fix import. #32861 (@gkjohnson)
  • LDrawLoader

    • De‑magic condition. #32886 (@ycw)
  • LensflareMesh

    • Fix DPR usage. #32625 (@Mugen87)
  • LineMaterial

    • Set needsupdate when changing worldUnits property. #32952 (@dsafa)
  • Loaders

    • Use named fflate imports and native TextDecoder. #32765 (@mrdoob)
  • Nodes

    • Removing unnecessary nodesObject. #33014 (@sunag)
  • Object3D

    • Added pivot property. #32745 (@mrdoob)
  • OrbitControls

    • Expose pan, rotate and dolly methods. #32810 (@TobiasNoell)
    • Add cursorStyle property. #32981 (@Mugen87)
  • PCDLoader

    • Fix label parsing. #32683 (@Mugen87)
  • RapierPhysics

    • Fix dynamic import Vite warning. #32565 (@mrdoob, @claude)
  • RoomEnvironment

    • Adjust scene position. #32646 (@mrdoob)
  • SSRNode

    • Performance optimizations. #32637 (@mrdoob)
    • Add distance-aware blur for roughness. #32834 (@mrdoob, @claude)
    • Use squared roughness for blur LOD and simplify pointPlaneDistance. #32993 (@mrdoob, @claude)
  • Sky/SkyMesh

    • Remove legacy gamma correction curve. #32677 (@mrdoob)
    • Added procedural clouds. #32682 (@mrdoob)
  • TSL

    • Improve retroPass and example. #32954 (@sunag)
  • USDAParser

    • Improve text parsing robustness. #32747 (@mrdoob, @claude)
  • USDAParser/USDComposer

    • Clean up. 3cd3e5b87e4a75aa14cf43958ddcaf9c6edebebc (@mrdoob)
  • USDCParser

    • Fixed scalar handling. 43166fcb2c5378a3cdd4c782175d0daf136a10d1 (@mrdoob)
  • USDComposer

    • Fix color space handling for material colors. 73636e35bfc1800f0242cbd0a5c488b184546943 (@mrdoob)
    • Clean up. e3f4523ed8d11e538cdbfbe573514a7fe01ed64a (@mrdoob)
    • Added primvars:displayOpacity support. 27f2f4eb5fbf78f42d0447a7b7f1879445b96111 (@mrdoob)
    • Fixed variant composition. 9a711cc1f452a917fe92eab3b4538fd34f45687a (@mrdoob)
    • Support variant overrides on ancestor prims. 96432fc0bd1a4a44afea6ebed27f65e9ed342c9e (@mrdoob)
  • USDLoader

    • Added USDC file support. #32704 (@mrdoob)
    • Refactored into USDComposer and added animation support. #32740 (@mrdoob)
    • Improve material and UV support. #32746 (@mrdoob)
    • Unify USD format handling and add .usd support. 5532147c692e1ec3c34e8d6455a598945011223e (@mrdoob)
    • Add OpenPBR Surface shader and polygon hole support. #32764 (@mrdoob)
    • Various bug fixes and improvements. #32766 (@mrdoob)
    • Performance improvements and external texture support. #32790 (@mrdoob, @claude)
    • Improve transform handling, skinning, and image loading. #32828 (@mrdoob, @claude)
    • Fix material binding lookup for variants. 43c8ff7e8966b1a359b104915290b8d4619e80cc (@mrdoob, @claude)
    • Apply UsdUVTexture scale to material colors. 585b578fb735485a95b651ff9d9e001601d3090f (@mrdoob, @claude)
    • Fix skin binding fallback when geomBindTransform is missing. 608f75712d745b76d02a13441b4b428fbdd6eafa (@mrdoob)
    • Align USDZ root-layer handling with core spec. ee01f32583d15adf56c828c82fa63dabb9eec1b9 (@mrdoob)
    • simplify asset parsing and avoid redundant work. 80587e802b6104083c56f70d9d4275620b4d7915 (@mrdoob)
  • UltraHDRLoader

    • Add support for ISO 21496-1 gainmap metadata. #32862 (@mrdoob)
  • VRMLLoader

    • Add camera support. #32580 (@Mugen87)
  • VTKLoader

    • Fix ReDoS vulnerability. #32622 (@mrdoob)
  • ViewHelper

    • Add location property for positioning. 22afab942a46cd9f6b7310e3c210a6a19655ca0d (@mrdoob, @claude)
  • Water

    • Use HalfFloatType for reflection render target. #32678 (@mrdoob)
  • Water/WaterMesh

    • Improve realism. #32681 (@mrdoob)
  • WaterMesh

    • Remove unneeded Lambert material. 40d7441aee16fc0bc0839ba597b2f7ec84324045 (@mrdoob)
  • WebGLRenderer

    • More fixes for reversed depth buffer. #32799 (@Mugen87)
  • WebGPURenderer

    • Add GodraysNode. #32888 (@Mugen87)
  • WebGPU_Display_StereoExample

    • Add new Anaglyph Techniques. #32905 (@zalo)
  • examples

    • jolt-physics@1.0.0. #32711 (@linbingquan)

Editor

  • Modernized ui.js. #32545 (@mrdoob)
  • use ES6 const/let for app.js. #32712 (@linbingquan)
  • Move render options from sidebar to menubar. #32727 (@mrdoob)
  • Replace FFmpeg with WebCodecs for video rendering. #32728 (@mrdoob)
  • Use parseAsync when rendering image. f02c6851af95be4d2ca655521a6928bd7e35d297 (@mrdoob)
  • Add Resources panel to Project sidebar. #32729 (@mrdoob)
  • UI css scope. #32714 (@linbingquan)
  • Enable logarithmic depth buffer. #32732 (@mrdoob)
  • Debounce Resources panel updates. 8084de7640e5b7794754f8bad3b53b9641840493 (@mrdoob)
  • Add default environment. #32752 (@mrdoob)
  • ESLint: migrate to flat config, note missing eqeqeq rule. #32754 (@ycw)
  • Simplify environment handling. #32757 (@mrdoob)
  • Clean up sw.js. d9b39f4ea88d1b87d91c7f1f6cb43c04670658cd (@mrdoob)
  • Improve service worker caching and activation. c36ae33e09de7cb788ad098c6778ac2b8d10249b (@mrdoob)
  • Add dialog for glTF import. #32784 (@Mugen87)
  • Improve geometry sidebar with interleaved and instanced support. 86c5b3e9afb9a910909f06e6086ffccb519cc7dc (@mrdoob, @claude)
  • Change default tone mapping to Neutral. ceda42c71f661585fa16282536695ef0c18e781f (@mrdoob, @claude)
  • Added WebGPURenderer support. #32842 (@mrdoob, @claude)
  • Improve UI layout. 293ed86238d8563af70a4ddab51067891c7188ee (@mrdoob, @claude)
  • Fix camera move error. #32843 (@linbingquan)
  • Clean up Viewport.Controls. a97401bca9c0bbacbb931aa0f8a446ad161c1ae2 (@mrdoob, @claude)
  • Add morph target support. #32844 (@Mugen87)
  • Fix canvas reference for video rendering. #32864 (@ycw)
  • Retain viewport color when rendering images/videos. #32866 (@Mugen87)
  • Deprecate ServiceWorker. 3ab79b8334a6c905f7ab54ef02ed3e82884aad6a (@mrdoob, @claude)
  • fix app publishing for project using WebGPURenderer. #32897 (@ycw)
  • Refine eslint config: limited exclusion and lint fixes. #32917 (@ycw)
  • Cleanup. #32965 (@linbingquan)
  • Add Animation panel. #32869 (@mrdoob, @claude)
  • fallback viewport camera to default camera. f4f07b2b4a5b5bb0fb0be723b19dc0641ba7f8b7 (@mrdoob)

Tests

  • Puppeteer: Remove express dependency. #32649 (@mrdoob)
  • Removed rollup-plugin-filesize dependency. #32650 (@mrdoob)
  • Puppeteer: Replaced jimp with jpeg-js and pngjs. #32652 (@mrdoob, @claude)
  • Replaced servez with custom server.js. #32654 (@mrdoob)
  • Puppeteer: Removed pixelmatch dependency. #32656 (@mrdoob)
  • Test: Remove servez reference. adfc78595273c614f1e0557131644924a039c322 (@mrdoob)
  • remove jshint remnants. #32885 (@ycw)

Utils

  • Replaced concurrently with custom preview.js. #32655 (@mrdoob)
  • Update utils/server.js to selfsigned 5.0.0. 5b5594a161c3c41f6e1fc9aa58e96949bbc5c2d8 (@mrdoob)
  • server.js: removed redundant call to path.normalize(). 7cc18054c7fa5e438b9a6cd648b1d4296282920d (@mrdoob)
  • server.js: simplified code. 7cd43e066a725ea6b2349e52911a01613a9cbeaa (@mrdoob)
  • Remove dev-ssl and preview-ssl. #32672 (@mrdoob)
  • utils/server.js: cross-platform isMain check. #32674 (@ycw)
  • Add changelog generator. #32781 (@mrdoob, @claude)
  • Fix loading of sites without .html extension. #32970 (@Mugen87)
  • build-llms: Clean up stale .md files before generating new ones. f45d6f94de70d6f8351a0e0a17628979718044dc (@mrdoob, @claude)
  • Improve changelog.js. 2cc37c2bdab8318bdb14033bdbe6763b695d21b2 (@mrdoob, @claude)
  • Improve changelog.js. 8863cdbd3aa3f66df4c5e5385f717adaf8b06ada (@mrdoob, @claude)
View original

Upgraded? How did it go?

Discussion