Skip to content

v3.0.5

Choose a tag to compare

@kvvasuu kvvasuu released this 09 Aug 14:51
· 68 commits to master since this release
dfbdbfc

Fixed

  • EffectComposer: the composer was created in useMemo, which React may discard without running cleanup. Creation moved into a proper effect lifecycle instead. (#353) by @kvvasuu
  • EffectComposer: renderer.autoClear and renderer.toneMapping were force-set and never restored. They're now restored on unmount. (#358) by @kvvasuu
  • ChromaticAberration: moved off the generic wrapEffect onto a manual construct/dispose pattern so the tuple offset prop is correctly coerced. (#355) by @kvvasuu
  • Selection: fixed an infinite update loop caused by Select's effect depending on its own write; it now diffs newly-claimed/released objects against what it previously claimed instead of clearing and re-adding unconditionally. (#359) by @kvvasuu
  • Selection: object detection now covers Mesh/Line/Points subclasses (isMesh/isLine/isPoints), not just an exact type === 'Mesh' check - custom mesh subclasses are now selectable. (#359) by @kvvasuu
  • SelectiveBloom: light refs that haven't attached yet are now resolved and filtered instead of crashing addLight/removeLight on a null object. (#360) by @kvvasuu
  • Outline, SelectiveBloom: selection sync unified behind a shared useSelectionSync hook, which also stops the selection effect from re-running on every render (it previously depended on an unstable spread props object). (#360) by @kvvasuu
  • Outline: patternScale, multisampling, resolutionScale, resolutionX, resolutionY are now wired up as live constructor options. (#360) by @kvvasuu
  • SelectiveBloom: radius, levels, resolutionScale, resolutionX, resolutionY are now wired up as live constructor options. (#360) by @kvvasuu
  • All <primitive>-based effects now dispose themselves (new useDispose hook). (#355) by @kvvasuu
  • Corrected npm package metadata (added bugs/homepage fields). (#347) by @2lll5

Changed

  • wrapEffect split out of util.tsx into its own module; Effect components dropped forwardRef in favor of ref as a plain, optional prop. (#352) by @kvvasuu
  • @react-three/fiber peer floor raised to >=9.7.0. (#353) by @kvvasuu
  • postprocessing moved from a pinned dependencies entry to a peerDependencies range (^6.36.0); three peer floor raised to >= 0.182.0. (#351) by @kvvasuu
  • Migrated ESLint config to flat config; updated dependencies. (#351) by @kvvasuu
  • Updated tone mapping docs (examples and props table). (#345) by @vis-prime

Added

  • Smoke test coverage for every effect component, plus new regression tests for Selection, Outline, SelectiveBloom, ChromaticAberration, EffectComposer, and wrapEffect. (#355, #356, #359, #360) by @kvvasuu
  • GitHub Action for publishing releases to npm from master, by @krispya

New Contributors

Full Changelog: v3.0.4...v3.0.5