@hology/core 0.0.248 → 0.0.250

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.
Files changed (57) hide show
  1. package/dist/effects/sequence/sequence-data.d.ts +24 -3
  2. package/dist/effects/sequence/sequence-data.js +1 -1
  3. package/dist/effects/sequence/sequence-definitions.d.ts +2 -1
  4. package/dist/effects/sequence/sequence-definitions.js +1 -1
  5. package/dist/effects/sequence/sequence-ops.js +1 -1
  6. package/dist/effects/sequence/sequence-player.d.ts +6 -0
  7. package/dist/effects/sequence/sequence-player.js +1 -1
  8. package/dist/effects/vfx/gpu-sprite-compiler.js +1 -1
  9. package/dist/effects/vfx/seeded-random.d.ts +4 -0
  10. package/dist/effects/vfx/seeded-random.js +4 -0
  11. package/dist/effects/vfx/vfx-actor.d.ts +1 -1
  12. package/dist/effects/vfx/vfx-actor.js +1 -1
  13. package/dist/effects/vfx/vfx-gpu-material.d.ts +9 -0
  14. package/dist/effects/vfx/vfx-gpu-material.js +4 -0
  15. package/dist/effects/vfx/vfx-materializer.js +1 -1
  16. package/dist/gameplay/actors/actor.d.ts +6 -0
  17. package/dist/gameplay/actors/actor.js +1 -1
  18. package/dist/gameplay/actors/builtin/camera-actor.js +1 -1
  19. package/dist/gameplay/actors/builtin/navmesh-actor.js +1 -1
  20. package/dist/gameplay/actors/builtin/positional-audio-actor.js +1 -1
  21. package/dist/gameplay/actors/builtin/spawn-point.js +1 -1
  22. package/dist/gameplay/actors/builtin/spline-actor.js +1 -1
  23. package/dist/gameplay/actors/builtin/trigger-volume.js +1 -1
  24. package/dist/gameplay/actors/builtin/water-spline-volume-actor.js +1 -1
  25. package/dist/gameplay/actors/builtin/water-volume-actor.js +1 -1
  26. package/dist/gameplay/actors/component.d.ts +1 -0
  27. package/dist/gameplay/actors/component.js +1 -1
  28. package/dist/gameplay/actors/internal/component-init.d.ts +1 -1
  29. package/dist/gameplay/actors/internal/component-init.js +1 -1
  30. package/dist/gameplay/actors/tabler-icon.d.ts +2 -0
  31. package/dist/gameplay/actors/tabler-icon.js +4 -0
  32. package/dist/gameplay/index.d.ts +1 -1
  33. package/dist/gameplay/index.js +1 -1
  34. package/dist/gameplay/initiate.d.ts +2 -1
  35. package/dist/gameplay/initiate.js +1 -1
  36. package/dist/gameplay/inject.js +1 -1
  37. package/dist/gameplay/net/service/rpc-decorator.js +1 -1
  38. package/dist/gameplay/services/render.d.ts +0 -1
  39. package/dist/gameplay/services/render.js +1 -1
  40. package/dist/gameplay/services/world.js +1 -1
  41. package/dist/rendering/webgpu-experimental-backend.d.ts +2 -0
  42. package/dist/rendering/webgpu-experimental-backend.js +1 -1
  43. package/dist/rendering.d.ts +10 -0
  44. package/dist/rendering.js +1 -1
  45. package/dist/scene/materializer.js +1 -1
  46. package/dist/test/gpu-sprite-compiler.test.js +1 -1
  47. package/dist/test/sequence-light.test.d.ts +2 -0
  48. package/dist/test/sequence-light.test.js +4 -0
  49. package/dist/test/sequence-vfx.test.js +1 -1
  50. package/dist/test/vfx-seeded-random.test.d.ts +2 -0
  51. package/dist/test/vfx-seeded-random.test.js +4 -0
  52. package/package.json +1 -1
  53. package/tsconfig.tsbuildinfo +1 -1
  54. package/dist/gameplay/services/actor-update-registry.d.ts +0 -13
  55. package/dist/gameplay/services/actor-update-registry.js +0 -4
  56. package/dist/test/view-controller-updates.test.d.ts +0 -2
  57. package/dist/test/view-controller-updates.test.js +0 -4
@@ -1,13 +0,0 @@
1
- import type { BaseActor } from '../actors/actor.js';
2
- /** Direct, allocation-free-per-frame dispatch for framework-managed actor updates. */
3
- export declare class ActorUpdateRegistry {
4
- private readonly updatePhase;
5
- private readonly lateUpdatePhase;
6
- private readonly registrationsByActor;
7
- register(actor: BaseActor, update: (deltaTime: number) => void, late?: boolean): void;
8
- unregister(actor: BaseActor): void;
9
- update(deltaTime: number): void;
10
- lateUpdate(deltaTime: number): void;
11
- dispose(): void;
12
- }
13
- //# sourceMappingURL=actor-update-registry.d.ts.map
@@ -1,4 +0,0 @@
1
- class t{constructor(){this.registrations=[],this.needsCompaction=!1}add(t){const s={update:t,phase:this,index:this.registrations.length};return this.registrations.push(s),s}remove(t){this.registrations[t.index]===t&&(this.registrations[t.index]=null,t.index=-1,this.needsCompaction=!0)}dispatch(t){for(let s=0,e=this.registrations.length;s<e;s++){const e=this.registrations[s];null!==e&&e.update(t)}this.needsCompaction&&this.compact()}clear(){this.registrations.length=0,this.needsCompaction=!1}compact(){let t=0;for(let s=0;s<this.registrations.length;s++){const e=this.registrations[s];null!=e&&(this.registrations[t]=e,e.index=t++)}this.registrations.length=t,this.needsCompaction=!1}}export class ActorUpdateRegistry{constructor(){this.updatePhase=new t,this.lateUpdatePhase=new t,this.registrationsByActor=new Map}register(t,s,e=!1){const i=(e?this.lateUpdatePhase:this.updatePhase).add(s);let r=this.registrationsByActor.get(t);null==r&&(r={registrations:[],disposal:t.disposed.subscribe(()=>this.unregister(t))},this.registrationsByActor.set(t,r)),r.registrations.push(i)}unregister(t){const s=this.registrationsByActor.get(t);if(null!=s){for(const t of s.registrations)t.phase.remove(t);s.disposal.unsubscribe(),this.registrationsByActor.delete(t)}}update(t){this.updatePhase.dispatch(t)}lateUpdate(t){this.lateUpdatePhase.dispatch(t)}dispose(){this.updatePhase.clear(),this.lateUpdatePhase.clear();for(const t of this.registrationsByActor.values())t.disposal.unsubscribe();this.registrationsByActor.clear()}}/*
2
- * Copyright (©) 2026 Hology Interactive AB. All rights reserved.
3
- * See the LICENSE.md file for details.
4
- */
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=view-controller-updates.test.d.ts.map
@@ -1,4 +0,0 @@
1
- import{describe as e,expect as t,it as o,vi as r}from"vitest";import*as n from"three";import{Subject as s}from"rxjs";import{ViewController as a}from"../gameplay/services/render.js";function i(){let e;const t={camera:new n.PerspectiveCamera,running:!1,paused:!1,simulationTimeScale:1,onLoop(t){e=t},stop:r.fn()};return{viewController:new a(t),stepFrame(t){e?.(t)}}}r.hoisted(()=>{if("undefined"!=typeof HTMLCanvasElement){HTMLCanvasElement.prototype.getContext=r.fn(()=>new Proxy({},{get:(e,t)=>(t in e||(e[t]=r.fn()),e[t]),set:(e,t,o)=>(e[t]=o,!0)}));class e{constructor(){this.currentTime=0,this.destination={},this.listener=Object.fromEntries(["positionX","positionY","positionZ","forwardX","forwardY","forwardZ","upX","upY","upZ"].map(e=>[e,{linearRampToValueAtTime:r.fn(),setValueAtTime:r.fn()}]))}createGain(){return{connect:r.fn(),disconnect:r.fn(),gain:{value:1,setValueAtTime:r.fn()}}}}Object.defineProperty(window,"AudioContext",{configurable:!0,value:e}),Object.defineProperty(window,"webkitAudioContext",{configurable:!0,value:e})}}),e("ViewController actor updates",()=>{o("dispatches framework updates directly and preserves observable updates",()=>{const{viewController:e,stepFrame:o}=i(),r={disposed:new s},n=[];e.onUpdate().subscribe(()=>n.push("observable")),e.registerActorUpdate(r,()=>n.push("actor")),e.registerActorUpdate(r,()=>n.push("late"),!0),o(1/60),t(n).toEqual(["observable","actor","late"])}),o("stops actor-scoped observable and direct updates when disposed",()=>{const{viewController:e,stepFrame:o}=i(),n={disposed:new s},a=r.fn(),p=r.fn();e.onUpdate(n).subscribe(a),e.registerActorUpdate(n,p),o(1/60),n.disposed.next(!0),o(1/60),t(a).toHaveBeenCalledTimes(1),t(p).toHaveBeenCalledTimes(1)})});/*
2
- * Copyright (©) 2026 Hology Interactive AB. All rights reserved.
3
- * See the LICENSE.md file for details.
4
- */