Three.js r180

r180

https://github.com/mrdoob/three.js/wiki/Migration-Guide#179--180 https://github.com/mrdoob/three.js/milestone/93?closed=1

  • Global
    • Clean up. #31719, #31564, #31671, #31732, #31734, #31726 (@Methuselah96, @WestLangley, @s-rigaud)
    • Remove deprecated code. #31632, #31555 (@Mugen87)
  • AnimationClip
    • Add userData and honor in glTF loader and exporter. #31586 (@repalash)
  • Bindings
    • Fix caching of texture bindings. #31755 (@Mugen87)
  • ClippingNode
    • Move uniforms into render group. #31716 (@Mugen87)
  • ExternalTexture
    • Support copy(), clone(). #31731 (@donmccurdy)
  • GLSLNodeBuilder
    • Fix texelFetch*() code generation with depth textures. #31760 (@shotamatsuda)
    • Fix texture() code generation for depth texture. #31770 (@shotamatsuda)
  • Material
    • Add missing map properties to toJSON(). #31578 (@Mugen87)
  • NodeBuilderState
    • Fix type of bindingsReference in createBindings(). #31678 (@cmhhelgeson)
  • PointsNodeMaterial
    • Fix scaling bugs. #31627, #31707 (@WestLangley)
    • Fix broken point primitive rendering. #31702 (@Mugen87)
    • Improve JSDoc. #31703 (@Mugen87, @WestLangley)
  • Renderer
    • Make dispose() more robust. #31681 (@Mugen87)
  • RenderObject
    • Honor sampler data in material cache key. #31633 (@Mugen87)
    • Fix cache key for instanced meshes. #31783 (@Mugen87)
  • Sampler
    • Fix dispose. #31751 (@Mugen87)
  • Sprite
    • Improve JSDoc. #31642 (@cmhhelgeson)
  • SpriteNodeMaterial
    • Honor sizeAttenuation for perspective camera only. #31628 (@WestLangley)
  • TSL
    • Add texture offset feature. #31715 (@shotamatsuda)
    • Refine pow2/3/4 and remove polyfill for Windows. #31720 (@shotamatsuda)
    • Improve camera array support and introduce cameraViewport. #31615 (@RenaudRohlinger)
    • Replace Proxy approach with prototypes. #31691 (@sunag)
    • Fix update type of screenDPR. #31706 (@Mugen87)
    • Fix type propagation in members. #31699 (@sunag)
    • Fix member type in function layout. #31609 (@sunag)
    • Fixed persistent reference of the first stack. #31717 (@sunag)
    • Uniformly implement resolution scale. #31697 (@Mugen87)
    • Fix performance of viewportTexture(). #31591, #31599 (@sunag, @Mugen87)
    • Add SubgroupFunctionNode with compute reduction demo. #31378 (@cmhhelgeson)
    • Introduce uniformFlow(). #31531 (@cmhhelgeson)
    • Fix instance buffer size in instance(). #31608 (@ahaensler)
    • Fix missing getMemberType() in context(). #31601 (@sunag)
    • Use dynamic parameters eval for Fn(). #31592 (@sunag)
    • Improve error message for operators with void values. #31593 (@sunag)
    • Improve warnings. #31562 (@sunag)
    • Add AA-samples parameter to reflector-node. #31542 (@NoxDawnsong)
    • Improve Fn() warning if not invoked. #31552 (@sunag)
    • Fix assignment to swizzled for var intent. #31647 (@sunag)
    • Show an error message if no stack defined for assign operation. #31756 (@sunag)
    • Fix bitcast type resolver. #31746 (@cmhhelgeson)
    • Fix primitive vector conversion, vec* with ivec*. #31793 (@sunag)
    • Add bitcast functions and transpiler support. #31781 (@cmhhelgeson)
    • Export screenDPR. #31809 (@shotamatsuda)
  • WebGLBackend
    • Fix manual clear with MSAA render targets. #31705 (@Mugen87)
    • Cache WebGL buffer when updating UBOs. #31684 (@Mugen87)
    • Honor layerUpdates for array textures. #31582 (@ahaensler)
  • WebGPUBackend
    • Remove redundant dispose handlers. #31603 (@Mugen87)
  • WebGPURenderer
    • Fix broken worker support. #31607 (@Mugen87)
    • Fix rgb9e5ufloat usage and rg11b10ufloat constant value. #31698 (@Mugen87)
    • Add HDR support. #29573 (@RenaudRohlinger, @donmccurdy)
    • Support ExternalTexture with GPUTexture #31653 (@donmccurdy)
    • Fix rendering into mips. #31645 (@Mugen87)
    • Add support for manual mipmaps for regular textures. #31637 (@Mugen87)
    • Add support for manual mipmaps for cube textures. #31639 (@Mugen87)
    • Add warning when video textures with invalid color spaces are used. #31569 (@ycw)
    • Fix MSAA using mipmap levels. #31544 (@NoxDawnsong)
    • Add missing rgba8unorm-srgb to WebGPUTextureUtils. #31655 (@Mugen87)
    • Add support for BC4 and BC5 texture compression. #31737 (@Mugen87)
    • Fix Texture.onUpdate() call. #31752 (@Berthur)
    • Fix timestamp query conflict. #31762 (@sunag)
    • Align frontFace and cullMode setup. #31784, #31769 (@sunag, @Mugen87)
  • WebGPUTextureUtils
    • Fix readback buffer size. #31765, 6c7d8077a36efe80e1bb4b42fa5c2846fcd965a4 (@Mugen87, @greggman)
  • XRManager
    • Lazily initialise XRWebGLBinding in XR managers. #31648 (@harryhjsh)
    • Fix typo in getBinding JSDoc. #31656 (@vincentfretin)

Docs

  • Improve JSDoc. #31733, #31742, #31754, #31773, #31772 (@s-rigaud, @Mugen87)
  • Improve Chinese translation. #31616, #31795, #31797 (@IanDingMing, @mmjinglin163)
  • Improve WebXRManager page. #31657 (@harryhjsh)

Manual

  • Improve Chinese translation. #31635, #31574, #31575, #31589, #31590 (@HappyColour, @yuangang123)
  • Fix missing href parameters for manual/#xx/lights. #31763 (@Rikahei)
  • Fix double open hyperlink by open in new tab. #31780 (@Rikahei)

Examples

  • Clean up. #31725, #31700, #31696, #31643, #31623, #31651, #31736, #31738 (@Methuselah96, @linbingquan, @Mugen87, @WestLangley)
  • Add webgpu_multiple_elements example. #31724, #31782 (@sunag)
  • Add WebGPU KTX2 test demo. #31714 (@Mugen87)
  • Add reflector resolutionScale to webgl_mirror example. #31692 (@WestLangley)
  • Add GLTF progressive example. #31625 (@marwie)
  • Add WebGPU check to some compute demos. #31685 (@Mugen87)
  • Improve comments in webgpu_custom_fog_background example. #31626 (@WestLangley)
  • Fix webgpu_compute_particles_fluid GUI. #31570 (@ycw)
  • Rename reversed depth buffer example. #31563 (@WestLangley)
  • Align webgpu_camera with WebGL demo. #31594 (@WestLangley)
  • Add TSL Procedural Wood Material. #31640, #31786 (@SeeleyLogan, @bhouston)
  • Add KHR animation pointer example page. #31761 (@marwie)
  • Added CSS3D + WebGL example. #31572 (@mrdoob)
  • Add FastHDR environment example page #31749 (@marwie)

Addons

  • DepthOfFieldNode

    • New implementation. #31547, #31554 (@Mugen87)
  • DragControls

    • Fix firing events when actions are disabled. #31612 (@ahaensler)
  • FirstPersonControls

    • Fix dispose not release listener. #31606 (@314159265358x)
  • GLTFExporter

    • Make getToBlobPromise() more robust. #31598 (@boggan)
  • GTAONode

    • Add comments to TSL. #31676 (@Mugen87)
  • KTX2Loader

    • Fix WebGPU feature detection. #31721 (@Mugen87)
    • Add VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT. #31689 (@hybridherbst)
    • Support generateMipmaps=true. #31621 (@donmccurdy)
    • Support RGB9E5. #31611 (@donmccurdy)
    • Support R11G11B10 in loader and renderers. #31613 (@donmccurdy)
    • Support for BC4, BC5. #31713 (@donmccurdy)
    • Add PVRTC1 RGBA support. #31771 (@donmccurdy)
  • RGBELoader

    • Rename to HDRLoader. #31604 (@mrdoob)
  • RGBMLoader

    • Removal. #31566 (@mrdoob)
  • ShadowMapViewerGPU

    • Fix DepthTexture usage. #31673 (@sunag)
  • SSRPass

    • Add resolutionScale. #31629 (@Mugen87)
  • SSRNode

    • Use linear filtering and half float for reflection buffer. #31646 (@Mugen87)
    • Improve performance and add quality setting. #31576 (@Mugen87)
    • Add blurred mipmaps and honor roughness. #31649, #31663 (@Mugen87, @sunag)
  • TSL

    • Add boxBlur(). #31556 (@Mugen87)
    • Align API of blur filters and deprecated premultipliedGaussianBlur(). #31557, #31559, #31741 (@Mugen87, @sunag, @s-rigaud)
  • TSL Transpiler

    • Add grouped precedence levels. #31581 (@sunag)
    • Remove the need for toVar(). #31580 (@sunag)
    • Fix addition of Before for non ++ or . #31579 (@sunag)

Tests

  • Run addons unit tests. #31664 (@mkeblx)
  • Add an USDZ E2E test. #31662 (@mkeblx)
View original

Upgraded? How did it go?

Discussion