You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For consistency with DOM APIs like CSS 3D transforms, and in order to be able to eventually be able to provide alternative Lume renderers that may have different coordinate systems, we need to make a standardize on using DOMMatrix for transforms of the elements, then we'll map these to the underlying renderer (f.e. currently we'll map this to Three.js Matrix4 underneath).
We will then also provide an additional math lib that provides parity with Three.js Matrix4, but for DOMMatrix.
Once these are in place, people will have a standard DOM-based way to modify matrices of the elements, regardless if we (later) swap out Three.js for Babylon, PlayCanvas, Unity for web, Unreal for web, or etc.
Eventually we once can are ready to compile to WebAssembly, we'll need to finish converting our fork of Three.js to TypeScript compatible for Wasm, and then we can replace Matrix4 with DOMMatrix to make the ideal DOM-standard 3D library.
The text was updated successfully, but these errors were encountered:
trusktr
changed the title
Standardize on using DOMMatrix for element transforms, along with a new math library.
Use DOMMatrix for element transforms, map them to THREE.Matrix4, provide a new math library.
Jul 2, 2023
For consistency with DOM APIs like CSS 3D transforms, and in order to be able to eventually be able to provide alternative Lume renderers that may have different coordinate systems, we need to make a standardize on using DOMMatrix for transforms of the elements, then we'll map these to the underlying renderer (f.e. currently we'll map this to Three.js
Matrix4
underneath).We will then also provide an additional math lib that provides parity with Three.js
Matrix4
, but forDOMMatrix
.Once these are in place, people will have a standard DOM-based way to modify matrices of the elements, regardless if we (later) swap out Three.js for Babylon, PlayCanvas, Unity for web, Unreal for web, or etc.
Eventually we once can are ready to compile to WebAssembly, we'll need to finish converting our fork of Three.js to TypeScript compatible for Wasm, and then we can replace
Matrix4
withDOMMatrix
to make the ideal DOM-standard 3D library.The text was updated successfully, but these errors were encountered: