@needle-tools/engine 2.51.0-pre → 2.52.0-pre

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 (54) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/needle-engine.d.ts +56 -20
  3. package/dist/needle-engine.js +376 -377
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +26 -27
  6. package/dist/needle-engine.min.js.map +4 -4
  7. package/lib/engine/engine_utils.d.ts +2 -0
  8. package/lib/engine/engine_utils.js +9 -0
  9. package/lib/engine/engine_utils.js.map +1 -1
  10. package/lib/engine/extensions/NEEDLE_deferred_texture.js +4 -3
  11. package/lib/engine/extensions/NEEDLE_deferred_texture.js.map +1 -1
  12. package/lib/engine-components/Camera.d.ts +8 -2
  13. package/lib/engine-components/Camera.js +39 -2
  14. package/lib/engine-components/Camera.js.map +1 -1
  15. package/lib/engine-components/EventTrigger.d.ts +10 -1
  16. package/lib/engine-components/EventTrigger.js +47 -0
  17. package/lib/engine-components/EventTrigger.js.map +1 -1
  18. package/lib/engine-components/Light.js +5 -2
  19. package/lib/engine-components/Light.js.map +1 -1
  20. package/lib/engine-components/ParticleSystemModules.js +0 -1
  21. package/lib/engine-components/ParticleSystemModules.js.map +1 -1
  22. package/lib/engine-components/Renderer.d.ts +1 -0
  23. package/lib/engine-components/Renderer.js +10 -3
  24. package/lib/engine-components/Renderer.js.map +1 -1
  25. package/lib/engine-components/ShadowCatcher.js +5 -6
  26. package/lib/engine-components/ShadowCatcher.js.map +1 -1
  27. package/lib/engine-components/Skybox.d.ts +1 -0
  28. package/lib/engine-components/Skybox.js +5 -0
  29. package/lib/engine-components/Skybox.js.map +1 -1
  30. package/lib/engine-components/SpriteRenderer.d.ts +19 -3
  31. package/lib/engine-components/SpriteRenderer.js +154 -41
  32. package/lib/engine-components/SpriteRenderer.js.map +1 -1
  33. package/lib/engine-components/WebXRRig.js +12 -0
  34. package/lib/engine-components/WebXRRig.js.map +1 -1
  35. package/lib/engine-components/codegen/components.d.ts +1 -0
  36. package/lib/engine-components/codegen/components.js +1 -0
  37. package/lib/engine-components/codegen/components.js.map +1 -1
  38. package/lib/engine-components/timeline/PlayableDirector.js +6 -0
  39. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  40. package/package.json +1 -1
  41. package/src/engine/codegen/register_types.js +2 -0
  42. package/src/engine/engine_utils.ts +13 -2
  43. package/src/engine/extensions/NEEDLE_deferred_texture.ts +9 -6
  44. package/src/engine-components/Camera.ts +36 -2
  45. package/src/engine-components/EventTrigger.ts +39 -19
  46. package/src/engine-components/Light.ts +4 -2
  47. package/src/engine-components/ParticleSystemModules.ts +0 -3
  48. package/src/engine-components/Renderer.ts +10 -4
  49. package/src/engine-components/ShadowCatcher.ts +5 -6
  50. package/src/engine-components/Skybox.ts +4 -0
  51. package/src/engine-components/SpriteRenderer.ts +140 -44
  52. package/src/engine-components/WebXRRig.ts +14 -1
  53. package/src/engine-components/codegen/components.ts +1 -0
  54. package/src/engine-components/timeline/PlayableDirector.ts +5 -0
package/CHANGELOG.md CHANGED
@@ -4,6 +4,15 @@ All notable changes to this package will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [2.52.0-pre] - 2022-12-05
8
+ - Add iOS platform util methods
9
+ - Add ``?debugrig`` to render XRRig gizmo
10
+ - Add support for Spritesheet Animation
11
+ - Add: EventTrigger implementations for onPointerClick, onPointerEnter, onPointerExit, onPointerDown, onPointerUp
12
+ - Add: RemoteSkybox environmentBlurriness setting
13
+ - Fix: Renderer reflection probe event order issue not applying reflection probes when enabling/disabling object because reflection probes have not been enabled
14
+ - Fix: remove log in ParticleSystemModules
15
+
7
16
  ## [2.51.0-pre] - 2022-11-30
8
17
  - Change: remove nebula, dat.gui and symlink package dependencies
9
18
  - Change: Light does not change renderer shadowtype anymore
@@ -308,6 +308,8 @@ declare module "engine/engine_utils" {
308
308
  }
309
309
  export function isMobileDevice(): boolean;
310
310
  export function isMozillaXR(): boolean;
311
+ export function isiOS(): boolean;
312
+ export function isSafari(): boolean;
311
313
  }
312
314
  declare module "engine/engine_networking_utils" {
313
315
  export function isLocalNetwork(hostname?: string): boolean;
@@ -2677,8 +2679,10 @@ declare module "engine-components/Camera" {
2677
2679
  set fieldOfView(val: number);
2678
2680
  get nearClipPlane(): number;
2679
2681
  set nearClipPlane(val: number);
2682
+ private _nearClipPlane;
2680
2683
  get farClipPlane(): number;
2681
2684
  set farClipPlane(val: number);
2685
+ private _farClipPlane;
2682
2686
  get clearFlags(): ClearFlags;
2683
2687
  set clearFlags(val: ClearFlags);
2684
2688
  orthographic: boolean;
@@ -2687,8 +2691,12 @@ declare module "engine-components/Camera" {
2687
2691
  set cullingMask(val: number);
2688
2692
  get cullingMask(): number;
2689
2693
  private _cullingMask;
2690
- private _nearClipPlane;
2691
- private _farClipPlane;
2694
+ set backgroundBlurriness(val: number | undefined);
2695
+ get backgroundBlurriness(): number | undefined;
2696
+ private _backgroundBlurriness?;
2697
+ set backgroundIntensity(val: number | undefined);
2698
+ get backgroundIntensity(): number | undefined;
2699
+ private _backgroundIntensity?;
2692
2700
  get backgroundColor(): RGBAColor | null;
2693
2701
  set backgroundColor(val: RGBAColor | null);
2694
2702
  private _backgroundColor?;
@@ -3593,6 +3601,7 @@ declare module "engine-components/Renderer" {
3593
3601
  private applySettings;
3594
3602
  private _reflectionProbe;
3595
3603
  private updateReflectionProbe;
3604
+ private _updateReflectionProbe;
3596
3605
  private setVisibility;
3597
3606
  private isMultiMaterialObject;
3598
3607
  private isMeshOrSkinnedMesh;
@@ -3798,6 +3807,20 @@ declare module "engine-components/WebXRController" {
3798
3807
  update(): void;
3799
3808
  }
3800
3809
  }
3810
+ declare module "engine-components/Gizmos" {
3811
+ import { Behaviour } from "engine-components/Component";
3812
+ import * as THREE from "three";
3813
+ export class BoxGizmo extends Behaviour {
3814
+ objectBounds: boolean;
3815
+ color?: THREE.Color;
3816
+ isGizmo: boolean;
3817
+ private _gizmoObject;
3818
+ private _boxHelper;
3819
+ onEnable(): void;
3820
+ onDisable(): void;
3821
+ private syncObjectBounds;
3822
+ }
3823
+ }
3801
3824
  declare module "engine-components/WebXRRig" {
3802
3825
  import { Behaviour } from "engine-components/Component";
3803
3826
  export class XRRig extends Behaviour {
@@ -4022,8 +4045,17 @@ declare module "engine-components/EventType" {
4022
4045
  }
4023
4046
  }
4024
4047
  declare module "engine-components/EventTrigger" {
4048
+ import { IPointerEventHandler, PointerEventData } from "engine-components/ui/PointerEvents";
4025
4049
  import { Behaviour } from "engine-components/Component";
4026
- export class EventTrigger extends Behaviour {
4050
+ import { EventType } from "engine-components/EventType";
4051
+ export class EventTrigger extends Behaviour implements IPointerEventHandler {
4052
+ private triggers?;
4053
+ invoke(type: EventType): void;
4054
+ onPointerClick(_: PointerEventData): void;
4055
+ onPointerEnter(_: PointerEventData): void;
4056
+ onPointerExit(_: PointerEventData): void;
4057
+ onPointerDown(_: PointerEventData): void;
4058
+ onPointerUp(_: PointerEventData): void;
4027
4059
  }
4028
4060
  }
4029
4061
  declare module "engine-components/FlyControls" {
@@ -4035,20 +4067,6 @@ declare module "engine-components/FlyControls" {
4035
4067
  update(): void;
4036
4068
  }
4037
4069
  }
4038
- declare module "engine-components/Gizmos" {
4039
- import { Behaviour } from "engine-components/Component";
4040
- import * as THREE from "three";
4041
- export class BoxGizmo extends Behaviour {
4042
- objectBounds: boolean;
4043
- color?: THREE.Color;
4044
- isGizmo: boolean;
4045
- private _gizmoObject;
4046
- private _boxHelper;
4047
- onEnable(): void;
4048
- onDisable(): void;
4049
- private syncObjectBounds;
4050
- }
4051
- }
4052
4070
  declare module "engine-components/GridHelper" {
4053
4071
  import { Behaviour } from "engine-components/Component";
4054
4072
  export class GridHelper extends Behaviour {
@@ -5013,6 +5031,7 @@ declare module "engine-components/Skybox" {
5013
5031
  url?: string;
5014
5032
  allowDrop: boolean;
5015
5033
  background: boolean;
5034
+ backgroundBlurriness: number;
5016
5035
  environment: boolean;
5017
5036
  private _loader?;
5018
5037
  private _prevLoadedEnvironment?;
@@ -5120,6 +5139,7 @@ declare module "engine-components/SpectatorCamera" {
5120
5139
  declare module "engine-components/SpriteRenderer" {
5121
5140
  import { Behaviour } from "engine-components/Component";
5122
5141
  import * as THREE from "three";
5142
+ import { Vector2 } from "three";
5123
5143
  import { RGBAColor } from "engine-components/js-extensions/RGBAColor";
5124
5144
  export enum SpriteDrawMode {
5125
5145
  Simple = 0,
@@ -5131,20 +5151,35 @@ declare module "engine-components/SpriteRenderer" {
5131
5151
  y: number;
5132
5152
  }
5133
5153
  export class Sprite {
5154
+ guid?: string;
5134
5155
  texture?: THREE.Texture;
5135
5156
  triangles: Array<number>;
5136
5157
  uv: Array<Vec2>;
5137
5158
  vertices: Array<Vec2>;
5138
5159
  _geometry?: THREE.BufferGeometry;
5139
5160
  }
5161
+ class Slice {
5162
+ name: string;
5163
+ offset: Vector2;
5164
+ size: Vector2;
5165
+ }
5166
+ export class SpriteSheet {
5167
+ sprite?: Sprite;
5168
+ index: number;
5169
+ slices: Slice[];
5170
+ update(): void;
5171
+ }
5140
5172
  export class SpriteRenderer extends Behaviour {
5141
5173
  drawMode: SpriteDrawMode;
5142
5174
  size: Vec2;
5143
5175
  color?: RGBAColor;
5144
5176
  sharedMaterial?: THREE.Material;
5145
- get sprite(): Sprite | undefined;
5146
- set sprite(value: Sprite | undefined);
5147
- private _sprite?;
5177
+ get sprite(): SpriteSheet | undefined;
5178
+ set sprite(value: SpriteSheet | undefined | number);
5179
+ set spriteIndex(value: number);
5180
+ get spriteIndex(): number;
5181
+ get spriteFrames(): number;
5182
+ private _spriteSheet?;
5148
5183
  private _currentSprite?;
5149
5184
  awake(): void;
5150
5185
  start(): void;
@@ -6156,6 +6191,7 @@ declare module "engine-components/codegen/components" {
6156
6191
  export { SpatialTrigger } from "engine-components/SpatialTrigger";
6157
6192
  export { SpectatorCamera } from "engine-components/SpectatorCamera";
6158
6193
  export { Sprite } from "engine-components/SpriteRenderer";
6194
+ export { SpriteSheet } from "engine-components/SpriteRenderer";
6159
6195
  export { SpriteRenderer } from "engine-components/SpriteRenderer";
6160
6196
  export { SyncedCamera } from "engine-components/SyncedCamera";
6161
6197
  export { SyncedRoom } from "engine-components/SyncedRoom";