Skip to content

[2026-10-17] v3.9.11

Choose a tag to compare

@Singtaa Singtaa released this 17 Oct 23:01
· 29 commits to main since this release

Shader programs can now read what another program drew this frame, for bloom, blur and other effects in passes, and can show a low resolution as crisp pixels. An app holding a play.onejs.com cart moves to the project root with one button, and on WebGL a second JSRunner no longer breaks the first.

  • Shader programs read other programs' output this frame through passes (usePass)
  • ShaderEffect and ShaderProgram take pixelated for hard-edged pixels at a low resolution
  • Move to Project Root on an app whose ~ holds an oj.json makes it a root cart
  • On WebGL, each JSRunner runs in its own realm, so a second no longer takes over the first (#140)
  • On WebGL, an animation frame cancelled in the same pass no longer runs after its runner is destroyed (#142)
  • An app's watcher stops when the editor quits, even after a domain reload with its scene closed (#143)
  • Set Up and one-shot builds finish in an unfocused editor
  • New projects get onejs-react 0.4.2 and ojplay 0.12