@aura3d/scene 4.0.3 → 4.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/Layers.d.ts CHANGED
@@ -2,7 +2,12 @@ export declare class Layers {
2
2
  mask: number;
3
3
  set(channel: number): void;
4
4
  enable(channel: number): void;
5
+ enableAll(): void;
6
+ toggle(channel: number): void;
5
7
  disable(channel: number): void;
8
+ disableAll(): void;
9
+ /** three's `layers.isEnabled` is spelled `test` per channel here. */
10
+ isEnabled(channel: number): boolean;
6
11
  test(other: Layers): boolean;
7
12
  }
8
13
  //# sourceMappingURL=Layers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Layers.d.ts","sourceRoot":"","sources":["../../../../packages/scene/src/Layers.ts"],"names":[],"mappings":"AAAA,qBAAa,MAAM;IACjB,IAAI,SAAK;IAET,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI1B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI7B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI9B,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAG7B"}
1
+ {"version":3,"file":"Layers.d.ts","sourceRoot":"","sources":["../../../../packages/scene/src/Layers.ts"],"names":[],"mappings":"AAAA,qBAAa,MAAM;IACjB,IAAI,SAAK;IAET,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI1B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI7B,SAAS,IAAI,IAAI;IAIjB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI7B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI9B,UAAU,IAAI,IAAI;IAIlB,qEAAqE;IACrE,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAInC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAG7B"}
package/dist/Layers.js CHANGED
@@ -6,9 +6,22 @@ export class Layers {
6
6
  enable(channel) {
7
7
  this.mask |= 1 << validateChannel(channel);
8
8
  }
9
+ enableAll() {
10
+ this.mask = 0xffffffff;
11
+ }
12
+ toggle(channel) {
13
+ this.mask ^= 1 << validateChannel(channel);
14
+ }
9
15
  disable(channel) {
10
16
  this.mask &= ~(1 << validateChannel(channel));
11
17
  }
18
+ disableAll() {
19
+ this.mask = 0;
20
+ }
21
+ /** three's `layers.isEnabled` is spelled `test` per channel here. */
22
+ isEnabled(channel) {
23
+ return (this.mask & (1 << validateChannel(channel))) !== 0;
24
+ }
12
25
  test(other) {
13
26
  return (this.mask & other.mask) !== 0;
14
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Layers.js","sourceRoot":"","sources":["../../../../packages/scene/src/Layers.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,MAAM;IACjB,IAAI,GAAG,CAAC,CAAC;IAET,GAAG,CAAC,OAAe;QACjB,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,OAAe;QACpB,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,CAAC,OAAe;QACrB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,CAAC,KAAa;QAChB,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;CACF;AAED,SAAS,eAAe,CAAC,OAAe;IACtC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC/H,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"Layers.js","sourceRoot":"","sources":["../../../../packages/scene/src/Layers.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,MAAM;IACjB,IAAI,GAAG,CAAC,CAAC;IAET,GAAG,CAAC,OAAe;QACjB,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,OAAe;QACpB,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,SAAS;QACP,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,OAAe;QACpB,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,CAAC,OAAe;QACrB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,UAAU;QACR,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;IAChB,CAAC;IAED,qEAAqE;IACrE,SAAS,CAAC,OAAe;QACvB,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,KAAa;QAChB,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;CACF;AAED,SAAS,eAAe,CAAC,OAAe;IACtC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC/H,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Bounds3 } from "./Bounds.js";
2
+ import { Layers } from "./Layers.js";
2
3
  import type { Renderable } from "./Renderable.js";
3
4
  import { TransformNode } from "./TransformNode.js";
4
5
  export interface SceneNodeOptions {
@@ -15,8 +16,25 @@ export declare class SceneNode {
15
16
  readonly id: string;
16
17
  name: string;
17
18
  visible: boolean;
18
- layerMask: number;
19
+ /**
20
+ * threejs-parity L7/SG-10: the node's layer set. `layerMask` stays the
21
+ * numeric view (back-compat with SceneQuery/SceneSerializer); `layers`
22
+ * gives three's `object.layers` API — `set`/`enable`/`disable`/`test`.
23
+ */
24
+ readonly layers: Layers;
19
25
  renderOrder: number;
26
+ /**
27
+ * threejs-parity L7/SG-09: when false the node is never frustum-culled
28
+ * (three's `object.frustumCulled = false` — used for skinned bounds and
29
+ * intentionally always-drawn overlays).
30
+ */
31
+ frustumCulled: boolean;
32
+ /**
33
+ * threejs-parity L7 (P2): three's `object.onBeforeRender` — invoked by the
34
+ * renderer just before the item's draw submits. `renderer` is intentionally
35
+ * opaque here so `@aura3d/scene` does not import the rendering package.
36
+ */
37
+ onBeforeRender?: (renderer: unknown, node: SceneNode) => void;
20
38
  disposed: boolean;
21
39
  userData: Record<string, unknown>;
22
40
  renderable?: Renderable;
@@ -25,10 +43,18 @@ export declare class SceneNode {
25
43
  worldBounds: Bounds3;
26
44
  readonly children: SceneNode[];
27
45
  parent: SceneNode | null;
46
+ get layerMask(): number;
47
+ set layerMask(mask: number);
28
48
  constructor(options?: SceneNodeOptions);
29
49
  addChild(child: SceneNode, options?: AddChildOptions): this;
30
50
  removeChild(child: SceneNode): boolean;
31
51
  removeFromParent(): boolean;
52
+ /**
53
+ * threejs-parity L7: three's `object.attach(child)` — reparent while keeping
54
+ * the child's world transform. Equivalent to `addChild(child, {
55
+ * preserveWorldTransform: true })`.
56
+ */
57
+ attach(child: SceneNode): this;
32
58
  isAncestorOf(candidate: SceneNode): boolean;
33
59
  traverse(visitor: (node: SceneNode) => void): void;
34
60
  updateWorldTransform(force?: boolean): void;
@@ -1 +1 @@
1
- {"version":3,"file":"SceneNode.d.ts","sourceRoot":"","sources":["../../../../packages/scene/src/SceneNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,SAAS;IACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,UAAQ;IACf,SAAS,SAAK;IACd,WAAW,SAAK;IAChB,QAAQ,UAAS;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACvC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,SAAS,gBAAuB;IACzC,WAAW,EAAE,OAAO,GAAG,IAAI,CAAQ;IACnC,WAAW,UAAiB;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAM;IACpC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAQ;gBAEpB,OAAO,GAAE,gBAAqB;IAM1C,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,GAAE,eAAoB,GAAG,IAAI;IAe/D,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAUtC,gBAAgB,IAAI,OAAO;IAI3B,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO;IAS3C,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAAG,IAAI;IAKlD,oBAAoB,CAAC,KAAK,UAAQ,GAAG,IAAI;IAKzC,iBAAiB,IAAI,OAAO;IAO5B,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI;IAO5C,OAAO,CAAC,OAAO,GAAE,kBAAuB,GAAG,IAAI;IAmB/C,cAAc,IAAI,IAAI;IAOtB,SAAS,CAAC,WAAW,IAAI,IAAI;CAG9B;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAGzE"}
1
+ {"version":3,"file":"SceneNode.d.ts","sourceRoot":"","sources":["../../../../packages/scene/src/SceneNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,SAAS;IACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,UAAQ;IACf;;;;OAIG;IACH,QAAQ,CAAC,MAAM,SAAgB;IAC/B,WAAW,SAAK;IAChB;;;;OAIG;IACH,aAAa,UAAQ;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IAC9D,QAAQ,UAAS;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACvC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,SAAS,gBAAuB;IACzC,WAAW,EAAE,OAAO,GAAG,IAAI,CAAQ;IACnC,WAAW,UAAiB;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAM;IACpC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAQ;IAEhC,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,EAEzB;gBAEW,OAAO,GAAE,gBAAqB;IAM1C,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,GAAE,eAAoB,GAAG,IAAI;IAe/D,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAUtC,gBAAgB,IAAI,OAAO;IAI3B;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAI9B,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO;IAS3C,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAAG,IAAI;IAKlD,oBAAoB,CAAC,KAAK,UAAQ,GAAG,IAAI;IAKzC,iBAAiB,IAAI,OAAO;IAO5B,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI;IAO5C,OAAO,CAAC,OAAO,GAAE,kBAAuB,GAAG,IAAI;IAmB/C,cAAc,IAAI,IAAI;IAOtB,SAAS,CAAC,WAAW,IAAI,IAAI;CAG9B;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAGzE"}
package/dist/SceneNode.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { ValidationError } from "@aura3d/core";
2
2
  import { Bounds3 } from "./Bounds.js";
3
+ import { Layers } from "./Layers.js";
3
4
  import { cloneMat4, invertMat4, multiplyMat4 } from "./MathTypes.js";
4
5
  import { TransformNode } from "./TransformNode.js";
5
6
  let nextSceneNodeId = 1;
@@ -7,8 +8,25 @@ export class SceneNode {
7
8
  id;
8
9
  name;
9
10
  visible = true;
10
- layerMask = 1;
11
+ /**
12
+ * threejs-parity L7/SG-10: the node's layer set. `layerMask` stays the
13
+ * numeric view (back-compat with SceneQuery/SceneSerializer); `layers`
14
+ * gives three's `object.layers` API — `set`/`enable`/`disable`/`test`.
15
+ */
16
+ layers = new Layers();
11
17
  renderOrder = 0;
18
+ /**
19
+ * threejs-parity L7/SG-09: when false the node is never frustum-culled
20
+ * (three's `object.frustumCulled = false` — used for skinned bounds and
21
+ * intentionally always-drawn overlays).
22
+ */
23
+ frustumCulled = true;
24
+ /**
25
+ * threejs-parity L7 (P2): three's `object.onBeforeRender` — invoked by the
26
+ * renderer just before the item's draw submits. `renderer` is intentionally
27
+ * opaque here so `@aura3d/scene` does not import the rendering package.
28
+ */
29
+ onBeforeRender;
12
30
  disposed = false;
13
31
  userData = {};
14
32
  renderable;
@@ -17,6 +35,12 @@ export class SceneNode {
17
35
  worldBounds = new Bounds3();
18
36
  children = [];
19
37
  parent = null;
38
+ get layerMask() {
39
+ return this.layers.mask;
40
+ }
41
+ set layerMask(mask) {
42
+ this.layers.mask = mask;
43
+ }
20
44
  constructor(options = {}) {
21
45
  this.id = options.id ?? `node-${nextSceneNodeId++}`;
22
46
  this.name = options.name ?? this.id;
@@ -52,6 +76,14 @@ export class SceneNode {
52
76
  removeFromParent() {
53
77
  return this.parent?.removeChild(this) ?? false;
54
78
  }
79
+ /**
80
+ * threejs-parity L7: three's `object.attach(child)` — reparent while keeping
81
+ * the child's world transform. Equivalent to `addChild(child, {
82
+ * preserveWorldTransform: true })`.
83
+ */
84
+ attach(child) {
85
+ return this.addChild(child, { preserveWorldTransform: true });
86
+ }
55
87
  isAncestorOf(candidate) {
56
88
  let current = candidate.parent;
57
89
  while (current) {
@@ -1 +1 @@
1
- {"version":3,"file":"SceneNode.js","sourceRoot":"","sources":["../../../../packages/scene/src/SceneNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SceneNode.js","sourceRoot":"","sources":["../../../../packages/scene/src/SceneNode.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aura3d/scene",
3
- "version": "4.0.3",
3
+ "version": "4.0.4",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -16,8 +16,8 @@
16
16
  },
17
17
  "sideEffects": false,
18
18
  "dependencies": {
19
- "@aura3d/core": "4.0.3",
20
- "@aura3d/math": "4.0.3"
19
+ "@aura3d/core": "4.0.4",
20
+ "@aura3d/math": "4.0.4"
21
21
  },
22
22
  "description": "Transform hierarchy, scene nodes, bounds, traversal, queries, cameras, lights, renderable descriptors, scene registry, and serialization for Aura3D.",
23
23
  "keywords": [