Class: SyncedQuaternion
Defined in: packages/core/src/transform/synced-quaternion.ts:21
Quaternion whose internal _x/_y/_z/_w are backed by a Float32Array.
Remarks
- Three.js quaternion math reads/writes the internal fields; by replacing those with array‑backed accessors, all operations become zero‑copy against the ECS component buffer.
- When no target is set, it behaves like a normal
Quaternion.
Extends
Quaternion
Constructors
Constructor
new SyncedQuaternion(
x,y,z,w):SyncedQuaternion
Defined in: packages/core/src/transform/synced-quaternion.ts:30
Parameters
x
number = 0
y
number = 0
z
number = 0
w
number = 1
Returns
SyncedQuaternion
Overrides
Quaternion.constructor
Methods
_onChangeWithSuppression()
_onChangeWithSuppression(
callback):void
Defined in: packages/core/src/transform/synced-quaternion.ts:142
Register a callback that will be called when quaternion changes from external sources. The callback is suppressed when changes originate from rotation to prevent loops.
Parameters
callback
() => void
Returns
void
_withSuppressedOnChange()
_withSuppressedOnChange(
fn):void
Defined in: packages/core/src/transform/synced-quaternion.ts:154
Temporarily suppress onChange callbacks while executing a function. Used when rotation updates quaternion to prevent circular updates.
Parameters
fn
() => void
Returns
void
setTarget()
setTarget(
target,offset):this
Defined in: packages/core/src/transform/synced-quaternion.ts:132
Bind this quaternion to a packed float array.
Parameters
target
Float32Array
Float32Array to read/write (xyzw at consecutive indices).
offset
number = 0
Starting index within the array (x at offset).
Returns
this