I’ve recently added support for building declarative user interfaces inside Three.js panels.
The implementation is based on PhaserJSX, which renders interactive components into textures that can be attached to meshes. This makes it possible to build in-scene UI without relying on HTML overlays while keeping a familiar component-based programming model.
The example includes interactive buttons, sliders, checkboxes and text updates, all rendered directly inside the Three.js scene.
