@babylonjs/core 8.0.2 → 8.0.3
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/AudioV2/abstractAudio/subNodes/audioAnalyzerSubNode.d.ts +0 -2
- package/AudioV2/abstractAudio/subNodes/audioAnalyzerSubNode.js +0 -4
- package/AudioV2/abstractAudio/subNodes/audioAnalyzerSubNode.js.map +1 -1
- package/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.d.ts +0 -2
- package/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.js +0 -4
- package/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.js.map +1 -1
- package/AudioV2/abstractAudio/subNodes/stereoAudioSubNode.d.ts +0 -2
- package/AudioV2/abstractAudio/subNodes/stereoAudioSubNode.js +0 -4
- package/AudioV2/abstractAudio/subNodes/stereoAudioSubNode.js.map +1 -1
- package/AudioV2/abstractAudio/subProperties/audioAnalyzer.d.ts +4 -0
- package/AudioV2/abstractAudio/subProperties/audioAnalyzer.js +14 -6
- package/AudioV2/abstractAudio/subProperties/audioAnalyzer.js.map +1 -1
- package/AudioV2/abstractAudio/subProperties/spatialAudio.d.ts +8 -0
- package/AudioV2/abstractAudio/subProperties/spatialAudio.js +25 -9
- package/AudioV2/abstractAudio/subProperties/spatialAudio.js.map +1 -1
- package/AudioV2/abstractAudio/subProperties/stereoAudio.d.ts +1 -0
- package/AudioV2/abstractAudio/subProperties/stereoAudio.js +5 -3
- package/AudioV2/abstractAudio/subProperties/stereoAudio.js.map +1 -1
- package/Cameras/arcRotateCamera.d.ts +13 -3
- package/Cameras/arcRotateCamera.js +121 -46
- package/Cameras/arcRotateCamera.js.map +1 -1
- package/Engines/ICanvas.d.ts +4 -0
- package/Engines/ICanvas.js.map +1 -1
- package/Engines/abstractEngine.js +2 -2
- package/Engines/abstractEngine.js.map +1 -1
- package/Materials/Node/Blocks/colorConverterBlock.d.ts +1 -0
- package/Materials/Node/Blocks/colorConverterBlock.js +9 -0
- package/Materials/Node/Blocks/colorConverterBlock.js.map +1 -1
- package/Materials/Node/Blocks/colorMergerBlock.d.ts +1 -0
- package/Materials/Node/Blocks/colorMergerBlock.js +6 -0
- package/Materials/Node/Blocks/colorMergerBlock.js.map +1 -1
- package/Materials/Textures/renderTargetTexture.d.ts +2 -2
- package/Materials/Textures/renderTargetTexture.js.map +1 -1
- package/Materials/uniformBuffer.js +3 -0
- package/Materials/uniformBuffer.js.map +1 -1
- package/Rendering/objectRenderer.d.ts +4 -3
- package/Rendering/objectRenderer.js +10 -5
- package/Rendering/objectRenderer.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -19,6 +19,4 @@ export declare abstract class _AudioAnalyzerSubNode extends _AbstractAudioSubNod
|
|
|
19
19
|
/** @internal */
|
|
20
20
|
export declare function _GetAudioAnalyzerSubNode(subGraph: _AbstractAudioSubGraph): Nullable<_AudioAnalyzerSubNode>;
|
|
21
21
|
/** @internal */
|
|
22
|
-
export declare function _GetAudioAnalyzerProperty<K extends keyof typeof _AudioAnalyzerDefaults>(subGraph: _AbstractAudioSubGraph, property: K): (typeof _AudioAnalyzerDefaults)[K];
|
|
23
|
-
/** @internal */
|
|
24
22
|
export declare function _SetAudioAnalyzerProperty<K extends keyof typeof _AudioAnalyzerDefaults>(subGraph: _AbstractAudioSubGraph, property: K, value: _AudioAnalyzerSubNode[K]): void;
|
|
@@ -18,10 +18,6 @@ export function _GetAudioAnalyzerSubNode(subGraph) {
|
|
|
18
18
|
return subGraph.getSubNode("Analyzer" /* AudioSubNode.ANALYZER */);
|
|
19
19
|
}
|
|
20
20
|
/** @internal */
|
|
21
|
-
export function _GetAudioAnalyzerProperty(subGraph, property) {
|
|
22
|
-
return _GetAudioAnalyzerSubNode(subGraph)?.[property] ?? _AudioAnalyzerDefaults[property];
|
|
23
|
-
}
|
|
24
|
-
/** @internal */
|
|
25
21
|
export function _SetAudioAnalyzerProperty(subGraph, property, value) {
|
|
26
22
|
subGraph.callOnSubNode("Analyzer" /* AudioSubNode.ANALYZER */, (node) => {
|
|
27
23
|
node[property] = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audioAnalyzerSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subNodes/audioAnalyzerSubNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,gBAAgB;AAChB,MAAM,OAAgB,qBAAsB,SAAQ,qBAAqB;IACrE,YAAsB,MAAqB;QACvC,KAAK,yCAAwB,MAAM,CAAC,CAAC;IACzC,CAAC;IAUD,gBAAgB;IACT,UAAU,CAAC,OAAuC;QACrD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,eAAe,IAAI,sBAAsB,CAAC,OAAO,CAAC;QACzE,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,mBAAmB,IAAI,sBAAsB,CAAC,WAAW,CAAC;QACrF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,mBAAmB,IAAI,sBAAsB,CAAC,WAAW,CAAC;QACrF,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,iBAAiB,IAAI,sBAAsB,CAAC,SAAS,CAAC;IACnF,CAAC;CACJ;AAED,gBAAgB;AAChB,MAAM,UAAU,wBAAwB,CAAC,QAAgC;IACrE,OAAO,QAAQ,CAAC,UAAU,wCAA8C,CAAC;AAC7E,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,yBAAyB,CAAgD,QAAgC,EAAE,QAAW
|
|
1
|
+
{"version":3,"file":"audioAnalyzerSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subNodes/audioAnalyzerSubNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,gBAAgB;AAChB,MAAM,OAAgB,qBAAsB,SAAQ,qBAAqB;IACrE,YAAsB,MAAqB;QACvC,KAAK,yCAAwB,MAAM,CAAC,CAAC;IACzC,CAAC;IAUD,gBAAgB;IACT,UAAU,CAAC,OAAuC;QACrD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,eAAe,IAAI,sBAAsB,CAAC,OAAO,CAAC;QACzE,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,mBAAmB,IAAI,sBAAsB,CAAC,WAAW,CAAC;QACrF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,mBAAmB,IAAI,sBAAsB,CAAC,WAAW,CAAC;QACrF,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,iBAAiB,IAAI,sBAAsB,CAAC,SAAS,CAAC;IACnF,CAAC;CACJ;AAED,gBAAgB;AAChB,MAAM,UAAU,wBAAwB,CAAC,QAAgC;IACrE,OAAO,QAAQ,CAAC,UAAU,wCAA8C,CAAC;AAC7E,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,yBAAyB,CAAgD,QAAgC,EAAE,QAAW,EAAE,KAA+B;IACnK,QAAQ,CAAC,aAAa,yCAA+C,CAAC,IAAI,EAAE,EAAE;QAC1E,IAAI,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;IAC3B,CAAC,CAAC,CAAC;AACP,CAAC","sourcesContent":["import type { Nullable } from \"../../../types\";\nimport type { AudioEngineV2 } from \"../audioEngineV2\";\nimport type { AudioAnalyzerFFTSizeType, IAudioAnalyzerOptions } from \"../subProperties/abstractAudioAnalyzer\";\nimport { _AudioAnalyzerDefaults } from \"../subProperties/abstractAudioAnalyzer\";\nimport type { _AbstractAudioSubGraph } from \"./abstractAudioSubGraph\";\nimport { _AbstractAudioSubNode } from \"./abstractAudioSubNode\";\nimport { AudioSubNode } from \"./audioSubNode\";\n\n/** @internal */\nexport abstract class _AudioAnalyzerSubNode extends _AbstractAudioSubNode {\n protected constructor(engine: AudioEngineV2) {\n super(AudioSubNode.ANALYZER, engine);\n }\n\n public abstract fftSize: AudioAnalyzerFFTSizeType;\n public abstract minDecibels: number;\n public abstract maxDecibels: number;\n public abstract smoothing: number;\n\n public abstract getByteFrequencyData(): Uint8Array;\n public abstract getFloatFrequencyData(): Float32Array;\n\n /** @internal */\n public setOptions(options: Partial<IAudioAnalyzerOptions>): void {\n this.fftSize = options.analyzerFFTSize ?? _AudioAnalyzerDefaults.fftSize;\n this.minDecibels = options.analyzerMinDecibels ?? _AudioAnalyzerDefaults.minDecibels;\n this.maxDecibels = options.analyzerMaxDecibels ?? _AudioAnalyzerDefaults.maxDecibels;\n this.smoothing = options.analyzerSmoothing ?? _AudioAnalyzerDefaults.smoothing;\n }\n}\n\n/** @internal */\nexport function _GetAudioAnalyzerSubNode(subGraph: _AbstractAudioSubGraph): Nullable<_AudioAnalyzerSubNode> {\n return subGraph.getSubNode<_AudioAnalyzerSubNode>(AudioSubNode.ANALYZER);\n}\n\n/** @internal */\nexport function _SetAudioAnalyzerProperty<K extends keyof typeof _AudioAnalyzerDefaults>(subGraph: _AbstractAudioSubGraph, property: K, value: _AudioAnalyzerSubNode[K]): void {\n subGraph.callOnSubNode<_AudioAnalyzerSubNode>(AudioSubNode.ANALYZER, (node) => {\n node[property] = value;\n });\n}\n"]}
|
|
@@ -41,6 +41,4 @@ export declare abstract class _SpatialAudioSubNode extends _AbstractAudioSubNode
|
|
|
41
41
|
/** @internal */
|
|
42
42
|
export declare function _GetSpatialAudioSubNode(subGraph: _AbstractAudioSubGraph): Nullable<_SpatialAudioSubNode>;
|
|
43
43
|
/** @internal */
|
|
44
|
-
export declare function _GetSpatialAudioProperty<K extends keyof typeof _SpatialAudioDefaults>(subGraph: _AbstractAudioSubGraph, property: K): (typeof _SpatialAudioDefaults)[K];
|
|
45
|
-
/** @internal */
|
|
46
44
|
export declare function _SetSpatialAudioProperty<K extends keyof typeof _SpatialAudioDefaults>(subGraph: _AbstractAudioSubGraph, property: K, value: _SpatialAudioSubNode[K]): void;
|
|
@@ -69,10 +69,6 @@ export function _GetSpatialAudioSubNode(subGraph) {
|
|
|
69
69
|
return subGraph.getSubNode("Spatial" /* AudioSubNode.SPATIAL */);
|
|
70
70
|
}
|
|
71
71
|
/** @internal */
|
|
72
|
-
export function _GetSpatialAudioProperty(subGraph, property) {
|
|
73
|
-
return _GetSpatialAudioSubNode(subGraph)?.[property] ?? _SpatialAudioDefaults[property];
|
|
74
|
-
}
|
|
75
|
-
/** @internal */
|
|
76
72
|
export function _SetSpatialAudioProperty(subGraph, property, value) {
|
|
77
73
|
subGraph.callOnSubNode("Spatial" /* AudioSubNode.SPATIAL */, (node) => {
|
|
78
74
|
node[property] = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spatialAudioSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,8BAA8B,EAAE,MAAM,6CAA6C,CAAC;AAE7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAE9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,gBAAgB;AAChB,MAAM,OAAgB,oBAAqB,SAAQ,qBAAqB;IAGpE,YAAsB,MAAqB;QACvC,KAAK,uCAAuB,MAAM,CAAC,CAAC;QAHhC,uBAAkB,GAA6C,IAAI,CAAC;IAI5E,CAAC;IAeD,gBAAgB;IAChB,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,kBAAkB,KAAK,IAAI,IAAI,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;IAClF,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,SAAyB,EAAE,cAAuB,EAAE,cAA0C;QACxG,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,IAAI,CAAC,kBAAkB,GAAG,IAAI,8BAA8B,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IAC9E,CAAC;IAED,gBAAgB;IACT,MAAM;QACT,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IACtC,CAAC;IAED,gBAAgB;IACA,OAAO;QACnB,KAAK,CAAC,OAAO,EAAE,CAAC;QAEhB,IAAI,CAAC,kBAAkB,EAAE,OAAO,EAAE,CAAC;QACnC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACnC,CAAC;IAED,gBAAgB;IACT,UAAU,CAAC,OAAsC;QACpD,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,qBAAqB,IAAI,qBAAqB,CAAC,cAAc,CAAC;QAC5F,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,qBAAqB,IAAI,qBAAqB,CAAC,cAAc,CAAC;QAC5F,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,sBAAsB,IAAI,qBAAqB,CAAC,eAAe,CAAC;QAC/F,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,oBAAoB,IAAI,qBAAqB,CAAC,aAAa,CAAC;QACzF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,kBAAkB,IAAI,qBAAqB,CAAC,WAAW,CAAC;QACnF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,kBAAkB,IAAI,qBAAqB,CAAC,WAAW,CAAC;QACnF,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,mBAAmB,IAAI,qBAAqB,CAAC,YAAY,CAAC;QACtF,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,oBAAoB,IAAI,qBAAqB,CAAC,aAAa,CAAC;QAEzF,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QACpD,CAAC;QAED,IAAI,OAAO,CAAC,yBAAyB,EAAE,CAAC;YACpC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,yBAAyB,CAAC,KAAK,EAAE,CAAC;QACxE,CAAC;aAAM,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QACpD,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAC/E,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,gBAAgB;IACT,MAAM;QACT,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;QACtC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;CAIJ;AAED,gBAAgB;AAChB,MAAM,UAAU,uBAAuB,CAAC,QAAgC;IACpE,OAAO,QAAQ,CAAC,UAAU,sCAA4C,CAAC;AAC3E,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,wBAAwB,CAA+C,QAAgC,EAAE,QAAW
|
|
1
|
+
{"version":3,"file":"spatialAudioSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Quaternion, Vector3 } from \"../../../Maths/math.vector\";\nimport type { Node } from \"../../../node\";\nimport type { Nullable } from \"../../../types\";\nimport type { SpatialAudioAttachmentType } from \"../../spatialAudioAttachmentType\";\nimport type { AudioEngineV2 } from \"../audioEngineV2\";\nimport { _SpatialAudioAttacherComponent } from \"../components/spatialAudioAttacherComponent\";\nimport type { ISpatialAudioOptions } from \"../subProperties/abstractSpatialAudio\";\nimport { _SpatialAudioDefaults } from \"../subProperties/abstractSpatialAudio\";\nimport type { _AbstractAudioSubGraph } from \"./abstractAudioSubGraph\";\nimport { _AbstractAudioSubNode } from \"./abstractAudioSubNode\";\nimport { AudioSubNode } from \"./audioSubNode\";\n\n/** @internal */\nexport abstract class _SpatialAudioSubNode extends _AbstractAudioSubNode {\n private _attacherComponent: Nullable<_SpatialAudioAttacherComponent> = null;\n\n protected constructor(engine: AudioEngineV2) {\n super(AudioSubNode.SPATIAL, engine);\n }\n\n public abstract coneInnerAngle: number;\n public abstract coneOuterAngle: number;\n public abstract coneOuterVolume: number;\n public abstract distanceModel: DistanceModelType;\n public abstract maxDistance: number;\n public abstract minDistance: number;\n public abstract panningModel: PanningModelType;\n public abstract position: Vector3;\n public abstract rolloffFactor: number;\n public abstract rotation: Vector3;\n public abstract rotationQuaternion: Quaternion;\n public abstract _inNode: AudioNode;\n\n /** @internal */\n public get isAttached(): boolean {\n return this._attacherComponent !== null && this._attacherComponent.isAttached;\n }\n\n /** @internal */\n public attach(sceneNode: Nullable<Node>, useBoundingBox: boolean, attachmentType: SpatialAudioAttachmentType): void {\n this.detach();\n\n if (!this._attacherComponent) {\n this._attacherComponent = new _SpatialAudioAttacherComponent(this);\n }\n\n this._attacherComponent.attach(sceneNode, useBoundingBox, attachmentType);\n }\n\n /** @internal */\n public detach(): void {\n this._attacherComponent?.detach();\n }\n\n /** @internal */\n public override dispose(): void {\n super.dispose();\n\n this._attacherComponent?.dispose();\n this._attacherComponent = null;\n }\n\n /** @internal */\n public setOptions(options: Partial<ISpatialAudioOptions>): void {\n this.coneInnerAngle = options.spatialConeInnerAngle ?? _SpatialAudioDefaults.coneInnerAngle;\n this.coneOuterAngle = options.spatialConeOuterAngle ?? _SpatialAudioDefaults.coneOuterAngle;\n this.coneOuterVolume = options.spatialConeOuterVolume ?? _SpatialAudioDefaults.coneOuterVolume;\n this.distanceModel = options.spatialDistanceModel ?? _SpatialAudioDefaults.distanceModel;\n this.maxDistance = options.spatialMaxDistance ?? _SpatialAudioDefaults.maxDistance;\n this.minDistance = options.spatialMinDistance ?? _SpatialAudioDefaults.minDistance;\n this.panningModel = options.spatialPanningModel ?? _SpatialAudioDefaults.panningModel;\n this.rolloffFactor = options.spatialRolloffFactor ?? _SpatialAudioDefaults.rolloffFactor;\n\n if (options.spatialPosition) {\n this.position = options.spatialPosition.clone();\n }\n\n if (options.spatialRotationQuaternion) {\n this.rotationQuaternion = options.spatialRotationQuaternion.clone();\n } else if (options.spatialRotation) {\n this.rotation = options.spatialRotation.clone();\n } else {\n this.rotationQuaternion = _SpatialAudioDefaults.rotationQuaternion.clone();\n }\n\n this.update();\n }\n\n /** @internal */\n public update(): void {\n if (this.isAttached) {\n this._attacherComponent?.update();\n } else {\n this._updatePosition();\n this._updateRotation();\n }\n }\n\n public abstract _updatePosition(): void;\n public abstract _updateRotation(): void;\n}\n\n/** @internal */\nexport function _GetSpatialAudioSubNode(subGraph: _AbstractAudioSubGraph): Nullable<_SpatialAudioSubNode> {\n return subGraph.getSubNode<_SpatialAudioSubNode>(AudioSubNode.SPATIAL);\n}\n\n/** @internal */\nexport function _SetSpatialAudioProperty<K extends keyof typeof _SpatialAudioDefaults>(subGraph: _AbstractAudioSubGraph, property: K, value: _SpatialAudioSubNode[K]): void {\n subGraph.callOnSubNode<_SpatialAudioSubNode>(AudioSubNode.SPATIAL, (node) => {\n node[property] = value;\n });\n}\n"]}
|
|
@@ -14,6 +14,4 @@ export declare abstract class _StereoAudioSubNode extends _AbstractAudioSubNode
|
|
|
14
14
|
/** @internal */
|
|
15
15
|
export declare function _GetStereoAudioSubNode(subGraph: _AbstractAudioSubGraph): Nullable<_StereoAudioSubNode>;
|
|
16
16
|
/** @internal */
|
|
17
|
-
export declare function _GetStereoAudioProperty<K extends keyof typeof _StereoAudioDefaults>(subGraph: _AbstractAudioSubGraph, property: K): (typeof _StereoAudioDefaults)[K];
|
|
18
|
-
/** @internal */
|
|
19
17
|
export declare function _SetStereoAudioProperty<K extends keyof typeof _StereoAudioDefaults>(subGraph: _AbstractAudioSubGraph, property: K, value: _StereoAudioSubNode[K]): void;
|
|
@@ -15,10 +15,6 @@ export function _GetStereoAudioSubNode(subGraph) {
|
|
|
15
15
|
return subGraph.getSubNode("Stereo" /* AudioSubNode.STEREO */);
|
|
16
16
|
}
|
|
17
17
|
/** @internal */
|
|
18
|
-
export function _GetStereoAudioProperty(subGraph, property) {
|
|
19
|
-
return _GetStereoAudioSubNode(subGraph)?.[property] ?? _StereoAudioDefaults[property];
|
|
20
|
-
}
|
|
21
|
-
/** @internal */
|
|
22
18
|
export function _SetStereoAudioProperty(subGraph, property, value) {
|
|
23
19
|
subGraph.callOnSubNode("Stereo" /* AudioSubNode.STEREO */, (node) => {
|
|
24
20
|
node[property] = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stereoAudioSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subNodes/stereoAudioSubNode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAG1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAG7F,gBAAgB;AAChB,MAAM,OAAgB,mBAAoB,SAAQ,qBAAqB;IACnE,YAAsB,MAAqB;QACvC,KAAK,qCAAsB,MAAM,CAAC,CAAC;IACvC,CAAC;IAID,gBAAgB;IACT,UAAU,CAAC,OAAqC;QACnD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,oBAAoB,CAAC,GAAG,CAAC;IAC7D,CAAC;CACJ;AAED,gBAAgB;AAChB,MAAM,UAAU,sBAAsB,CAAC,QAAgC;IACnE,OAAO,QAAQ,CAAC,UAAU,oCAA0C,CAAC;AACzE,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,uBAAuB,CAA8C,QAAgC,EAAE,QAAW
|
|
1
|
+
{"version":3,"file":"stereoAudioSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subNodes/stereoAudioSubNode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAG1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAG7F,gBAAgB;AAChB,MAAM,OAAgB,mBAAoB,SAAQ,qBAAqB;IACnE,YAAsB,MAAqB;QACvC,KAAK,qCAAsB,MAAM,CAAC,CAAC;IACvC,CAAC;IAID,gBAAgB;IACT,UAAU,CAAC,OAAqC;QACnD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,oBAAoB,CAAC,GAAG,CAAC;IAC7D,CAAC;CACJ;AAED,gBAAgB;AAChB,MAAM,UAAU,sBAAsB,CAAC,QAAgC;IACnE,OAAO,QAAQ,CAAC,UAAU,oCAA0C,CAAC;AACzE,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,uBAAuB,CAA8C,QAAgC,EAAE,QAAW,EAAE,KAA6B;IAC7J,QAAQ,CAAC,aAAa,qCAA2C,CAAC,IAAI,EAAE,EAAE;QACtE,IAAI,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;IAC3B,CAAC,CAAC,CAAC;AACP,CAAC","sourcesContent":["import type { Nullable } from \"../../../types\";\nimport type { AudioEngineV2 } from \"../../abstractAudio/audioEngineV2\";\nimport { _AbstractAudioSubNode } from \"../../abstractAudio/subNodes/abstractAudioSubNode\";\nimport { AudioSubNode } from \"../../abstractAudio/subNodes/audioSubNode\";\nimport type { IStereoAudioOptions } from \"../../abstractAudio/subProperties/abstractStereoAudio\";\nimport { _StereoAudioDefaults } from \"../../abstractAudio/subProperties/abstractStereoAudio\";\nimport type { _AbstractAudioSubGraph } from \"./abstractAudioSubGraph\";\n\n/** @internal */\nexport abstract class _StereoAudioSubNode extends _AbstractAudioSubNode {\n protected constructor(engine: AudioEngineV2) {\n super(AudioSubNode.STEREO, engine);\n }\n\n public abstract pan: number;\n\n /** @internal */\n public setOptions(options: Partial<IStereoAudioOptions>): void {\n this.pan = options.stereoPan ?? _StereoAudioDefaults.pan;\n }\n}\n\n/** @internal */\nexport function _GetStereoAudioSubNode(subGraph: _AbstractAudioSubGraph): Nullable<_StereoAudioSubNode> {\n return subGraph.getSubNode<_StereoAudioSubNode>(AudioSubNode.STEREO);\n}\n\n/** @internal */\nexport function _SetStereoAudioProperty<K extends keyof typeof _StereoAudioDefaults>(subGraph: _AbstractAudioSubGraph, property: K, value: _StereoAudioSubNode[K]): void {\n subGraph.callOnSubNode<_StereoAudioSubNode>(AudioSubNode.STEREO, (node) => {\n node[property] = value;\n });\n}\n"]}
|
|
@@ -7,6 +7,10 @@ export declare function _GetEmptyByteFrequencyData(): Uint8Array;
|
|
|
7
7
|
export declare function _GetEmptyFloatFrequencyData(): Float32Array;
|
|
8
8
|
/** @internal */
|
|
9
9
|
export declare class _AudioAnalyzer extends AbstractAudioAnalyzer {
|
|
10
|
+
private _fftSize;
|
|
11
|
+
private _maxDecibels;
|
|
12
|
+
private _minDecibels;
|
|
13
|
+
private _smoothing;
|
|
10
14
|
private _subGraph;
|
|
11
15
|
/** @internal */
|
|
12
16
|
constructor(subGraph: _AbstractAudioSubGraph);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Logger } from "../../../Misc/logger.js";
|
|
2
|
-
import { AbstractAudioAnalyzer } from "../../abstractAudio/subProperties/abstractAudioAnalyzer.js";
|
|
3
|
-
import {
|
|
2
|
+
import { _AudioAnalyzerDefaults, AbstractAudioAnalyzer } from "../../abstractAudio/subProperties/abstractAudioAnalyzer.js";
|
|
3
|
+
import { _GetAudioAnalyzerSubNode, _SetAudioAnalyzerProperty } from "../subNodes/audioAnalyzerSubNode.js";
|
|
4
4
|
let _emptyByteFrequencyData = null;
|
|
5
5
|
let _emptyFloatFrequencyData = null;
|
|
6
6
|
/** @internal */
|
|
@@ -22,13 +22,18 @@ export class _AudioAnalyzer extends AbstractAudioAnalyzer {
|
|
|
22
22
|
/** @internal */
|
|
23
23
|
constructor(subGraph) {
|
|
24
24
|
super();
|
|
25
|
+
this._fftSize = _AudioAnalyzerDefaults.fftSize;
|
|
26
|
+
this._maxDecibels = _AudioAnalyzerDefaults.maxDecibels;
|
|
27
|
+
this._minDecibels = _AudioAnalyzerDefaults.minDecibels;
|
|
28
|
+
this._smoothing = _AudioAnalyzerDefaults.smoothing;
|
|
25
29
|
this._subGraph = subGraph;
|
|
26
30
|
}
|
|
27
31
|
/** @internal */
|
|
28
32
|
get fftSize() {
|
|
29
|
-
return
|
|
33
|
+
return this._fftSize;
|
|
30
34
|
}
|
|
31
35
|
set fftSize(value) {
|
|
36
|
+
this._fftSize = value;
|
|
32
37
|
_SetAudioAnalyzerProperty(this._subGraph, "fftSize", value);
|
|
33
38
|
}
|
|
34
39
|
/** @internal */
|
|
@@ -37,23 +42,26 @@ export class _AudioAnalyzer extends AbstractAudioAnalyzer {
|
|
|
37
42
|
}
|
|
38
43
|
/** @internal */
|
|
39
44
|
get minDecibels() {
|
|
40
|
-
return
|
|
45
|
+
return this._minDecibels;
|
|
41
46
|
}
|
|
42
47
|
set minDecibels(value) {
|
|
48
|
+
this._minDecibels = value;
|
|
43
49
|
_SetAudioAnalyzerProperty(this._subGraph, "minDecibels", value);
|
|
44
50
|
}
|
|
45
51
|
/** @internal */
|
|
46
52
|
get maxDecibels() {
|
|
47
|
-
return
|
|
53
|
+
return this._maxDecibels;
|
|
48
54
|
}
|
|
49
55
|
set maxDecibels(value) {
|
|
56
|
+
this._maxDecibels = value;
|
|
50
57
|
_SetAudioAnalyzerProperty(this._subGraph, "maxDecibels", value);
|
|
51
58
|
}
|
|
52
59
|
/** @internal */
|
|
53
60
|
get smoothing() {
|
|
54
|
-
return
|
|
61
|
+
return this._smoothing;
|
|
55
62
|
}
|
|
56
63
|
set smoothing(value) {
|
|
64
|
+
this._smoothing = value;
|
|
57
65
|
_SetAudioAnalyzerProperty(this._subGraph, "smoothing", value);
|
|
58
66
|
}
|
|
59
67
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audioAnalyzer.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subProperties/audioAnalyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;
|
|
1
|
+
{"version":3,"file":"audioAnalyzer.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subProperties/audioAnalyzer.ts"],"names":[],"mappings":"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","sourcesContent":["import { Logger } from \"../../../Misc/logger\";\nimport type { Nullable } from \"../../../types\";\nimport type { AudioAnalyzerFFTSizeType } from \"../../abstractAudio/subProperties/abstractAudioAnalyzer\";\nimport { _AudioAnalyzerDefaults, AbstractAudioAnalyzer } from \"../../abstractAudio/subProperties/abstractAudioAnalyzer\";\nimport type { _AbstractAudioSubGraph } from \"../subNodes/abstractAudioSubGraph\";\nimport { _GetAudioAnalyzerSubNode, _SetAudioAnalyzerProperty } from \"../subNodes/audioAnalyzerSubNode\";\nimport { AudioSubNode } from \"../subNodes/audioSubNode\";\n\nlet _emptyByteFrequencyData: Nullable<Uint8Array> = null;\nlet _emptyFloatFrequencyData: Nullable<Float32Array> = null;\n\n/** @internal */\nexport function _GetEmptyByteFrequencyData(): Uint8Array {\n if (!_emptyByteFrequencyData) {\n _emptyByteFrequencyData = new Uint8Array();\n }\n return _emptyByteFrequencyData;\n}\n\n/** @internal */\nexport function _GetEmptyFloatFrequencyData(): Float32Array {\n if (!_emptyFloatFrequencyData) {\n _emptyFloatFrequencyData = new Float32Array();\n }\n return _emptyFloatFrequencyData;\n}\n\n/** @internal */\nexport class _AudioAnalyzer extends AbstractAudioAnalyzer {\n private _fftSize: AudioAnalyzerFFTSizeType = _AudioAnalyzerDefaults.fftSize;\n private _maxDecibels: number = _AudioAnalyzerDefaults.maxDecibels;\n private _minDecibels: number = _AudioAnalyzerDefaults.minDecibels;\n private _smoothing: number = _AudioAnalyzerDefaults.smoothing;\n private _subGraph: _AbstractAudioSubGraph;\n\n /** @internal */\n public constructor(subGraph: _AbstractAudioSubGraph) {\n super();\n this._subGraph = subGraph;\n }\n\n /** @internal */\n public get fftSize(): AudioAnalyzerFFTSizeType {\n return this._fftSize;\n }\n\n public set fftSize(value: AudioAnalyzerFFTSizeType) {\n this._fftSize = value;\n _SetAudioAnalyzerProperty(this._subGraph, \"fftSize\", value);\n }\n\n /** @internal */\n public get isEnabled(): boolean {\n return _GetAudioAnalyzerSubNode(this._subGraph) !== null;\n }\n\n /** @internal */\n public get minDecibels(): number {\n return this._minDecibels;\n }\n\n public set minDecibels(value: number) {\n this._minDecibels = value;\n _SetAudioAnalyzerProperty(this._subGraph, \"minDecibels\", value);\n }\n\n /** @internal */\n public get maxDecibels(): number {\n return this._maxDecibels;\n }\n\n public set maxDecibels(value: number) {\n this._maxDecibels = value;\n _SetAudioAnalyzerProperty(this._subGraph, \"maxDecibels\", value);\n }\n\n /** @internal */\n public get smoothing(): number {\n return this._smoothing;\n }\n\n public set smoothing(value: number) {\n this._smoothing = value;\n _SetAudioAnalyzerProperty(this._subGraph, \"smoothing\", value);\n }\n\n /** @internal */\n public dispose(): void {\n const subNode = _GetAudioAnalyzerSubNode(this._subGraph);\n if (subNode) {\n this._subGraph.removeSubNode(subNode);\n subNode.dispose();\n }\n }\n\n /** @internal */\n public async enableAsync(): Promise<void> {\n const subNode = _GetAudioAnalyzerSubNode(this._subGraph);\n if (!subNode) {\n await this._subGraph.createAndAddSubNode(AudioSubNode.ANALYZER);\n }\n return Promise.resolve();\n }\n\n /** @internal */\n public getByteFrequencyData(): Uint8Array {\n const subNode = _GetAudioAnalyzerSubNode(this._subGraph);\n if (!subNode) {\n Logger.Warn(\"AudioAnalyzer not enabled\");\n this.enableAsync();\n return _GetEmptyByteFrequencyData();\n }\n return subNode.getByteFrequencyData();\n }\n\n /** @internal */\n public getFloatFrequencyData(): Float32Array {\n const subNode = _GetAudioAnalyzerSubNode(this._subGraph);\n if (!subNode) {\n Logger.Warn(\"AudioAnalyzer not enabled\");\n this.enableAsync();\n return _GetEmptyFloatFrequencyData();\n }\n return subNode.getFloatFrequencyData();\n }\n}\n"]}
|
|
@@ -6,7 +6,15 @@ import type { _AbstractAudioSubGraph } from "../subNodes/abstractAudioSubGraph";
|
|
|
6
6
|
import { AbstractSpatialAudio } from "./abstractSpatialAudio";
|
|
7
7
|
/** @internal */
|
|
8
8
|
export declare abstract class _SpatialAudio extends AbstractSpatialAudio {
|
|
9
|
+
private _coneInnerAngle;
|
|
10
|
+
private _coneOuterAngle;
|
|
11
|
+
private _coneOuterVolume;
|
|
12
|
+
private _distanceModel;
|
|
13
|
+
private _maxDistance;
|
|
14
|
+
private _minDistance;
|
|
15
|
+
private _panningModel;
|
|
9
16
|
private _position;
|
|
17
|
+
private _rolloffFactor;
|
|
10
18
|
private _rotation;
|
|
11
19
|
private _rotationQuaternion;
|
|
12
20
|
private _subGraph;
|
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { _GetSpatialAudioSubNode, _SetSpatialAudioProperty } from "../subNodes/spatialAudioSubNode.js";
|
|
2
2
|
import { _SpatialAudioDefaults, AbstractSpatialAudio } from "./abstractSpatialAudio.js";
|
|
3
3
|
/** @internal */
|
|
4
4
|
export class _SpatialAudio extends AbstractSpatialAudio {
|
|
5
5
|
/** @internal */
|
|
6
6
|
constructor(subGraph) {
|
|
7
7
|
super();
|
|
8
|
+
this._coneInnerAngle = _SpatialAudioDefaults.coneInnerAngle;
|
|
9
|
+
this._coneOuterAngle = _SpatialAudioDefaults.coneOuterAngle;
|
|
10
|
+
this._coneOuterVolume = _SpatialAudioDefaults.coneOuterVolume;
|
|
11
|
+
this._distanceModel = _SpatialAudioDefaults.distanceModel;
|
|
12
|
+
this._maxDistance = _SpatialAudioDefaults.maxDistance;
|
|
13
|
+
this._minDistance = _SpatialAudioDefaults.minDistance;
|
|
14
|
+
this._panningModel = _SpatialAudioDefaults.panningModel;
|
|
15
|
+
this._rolloffFactor = _SpatialAudioDefaults.rolloffFactor;
|
|
8
16
|
const subNode = _GetSpatialAudioSubNode(subGraph);
|
|
9
17
|
if (subNode) {
|
|
10
18
|
this._position = subNode.position.clone();
|
|
@@ -21,30 +29,34 @@ export class _SpatialAudio extends AbstractSpatialAudio {
|
|
|
21
29
|
}
|
|
22
30
|
/** @internal */
|
|
23
31
|
get coneInnerAngle() {
|
|
24
|
-
return
|
|
32
|
+
return this._coneInnerAngle;
|
|
25
33
|
}
|
|
26
34
|
set coneInnerAngle(value) {
|
|
35
|
+
this._coneInnerAngle = value;
|
|
27
36
|
_SetSpatialAudioProperty(this._subGraph, "coneInnerAngle", value);
|
|
28
37
|
}
|
|
29
38
|
/** @internal */
|
|
30
39
|
get coneOuterAngle() {
|
|
31
|
-
return
|
|
40
|
+
return this._coneOuterAngle;
|
|
32
41
|
}
|
|
33
42
|
set coneOuterAngle(value) {
|
|
43
|
+
this._coneOuterAngle = value;
|
|
34
44
|
_SetSpatialAudioProperty(this._subGraph, "coneOuterAngle", value);
|
|
35
45
|
}
|
|
36
46
|
/** @internal */
|
|
37
47
|
get coneOuterVolume() {
|
|
38
|
-
return
|
|
48
|
+
return this._coneOuterVolume;
|
|
39
49
|
}
|
|
40
50
|
set coneOuterVolume(value) {
|
|
51
|
+
this._coneOuterVolume = value;
|
|
41
52
|
_SetSpatialAudioProperty(this._subGraph, "coneOuterVolume", value);
|
|
42
53
|
}
|
|
43
54
|
/** @internal */
|
|
44
55
|
get distanceModel() {
|
|
45
|
-
return
|
|
56
|
+
return this._distanceModel;
|
|
46
57
|
}
|
|
47
58
|
set distanceModel(value) {
|
|
59
|
+
this._distanceModel = value;
|
|
48
60
|
_SetSpatialAudioProperty(this._subGraph, "distanceModel", value);
|
|
49
61
|
}
|
|
50
62
|
/** @internal */
|
|
@@ -53,26 +65,29 @@ export class _SpatialAudio extends AbstractSpatialAudio {
|
|
|
53
65
|
}
|
|
54
66
|
/** @internal */
|
|
55
67
|
get maxDistance() {
|
|
56
|
-
return
|
|
68
|
+
return this._maxDistance;
|
|
57
69
|
}
|
|
58
70
|
set maxDistance(value) {
|
|
59
71
|
if (value <= 0) {
|
|
60
72
|
value = 0.000001;
|
|
61
73
|
}
|
|
74
|
+
this._maxDistance = value;
|
|
62
75
|
_SetSpatialAudioProperty(this._subGraph, "maxDistance", value);
|
|
63
76
|
}
|
|
64
77
|
/** @internal */
|
|
65
78
|
get minDistance() {
|
|
66
|
-
return
|
|
79
|
+
return this._minDistance;
|
|
67
80
|
}
|
|
68
81
|
set minDistance(value) {
|
|
82
|
+
this._minDistance = value;
|
|
69
83
|
_SetSpatialAudioProperty(this._subGraph, "minDistance", value);
|
|
70
84
|
}
|
|
71
85
|
/** @internal */
|
|
72
86
|
get panningModel() {
|
|
73
|
-
return
|
|
87
|
+
return this._panningModel;
|
|
74
88
|
}
|
|
75
89
|
set panningModel(value) {
|
|
90
|
+
this._panningModel = value;
|
|
76
91
|
_SetSpatialAudioProperty(this._subGraph, "panningModel", value);
|
|
77
92
|
}
|
|
78
93
|
/** @internal */
|
|
@@ -85,9 +100,10 @@ export class _SpatialAudio extends AbstractSpatialAudio {
|
|
|
85
100
|
}
|
|
86
101
|
/** @internal */
|
|
87
102
|
get rolloffFactor() {
|
|
88
|
-
return
|
|
103
|
+
return this._rolloffFactor;
|
|
89
104
|
}
|
|
90
105
|
set rolloffFactor(value) {
|
|
106
|
+
this._rolloffFactor = value;
|
|
91
107
|
_SetSpatialAudioProperty(this._subGraph, "rolloffFactor", value);
|
|
92
108
|
}
|
|
93
109
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spatialAudio.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subProperties/spatialAudio.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Quaternion, Vector3 } from \"../../../Maths/math.vector\";\nimport type { Node } from \"../../../node\";\nimport type { Nullable } from \"../../../types\";\nimport { SpatialAudioAttachmentType } from \"../../spatialAudioAttachmentType\";\nimport type { _AbstractAudioSubGraph } from \"../subNodes/abstractAudioSubGraph\";\nimport { AudioSubNode } from \"../subNodes/audioSubNode\";\nimport type { _SpatialAudioSubNode } from \"../subNodes/spatialAudioSubNode\";\nimport { _GetSpatialAudioProperty, _GetSpatialAudioSubNode, _SetSpatialAudioProperty } from \"../subNodes/spatialAudioSubNode\";\nimport { _SpatialAudioDefaults, AbstractSpatialAudio } from \"./abstractSpatialAudio\";\n\n/** @internal */\nexport abstract class _SpatialAudio extends AbstractSpatialAudio {\n private _position: Vector3;\n private _rotation: Vector3;\n private _rotationQuaternion: Quaternion;\n private _subGraph: _AbstractAudioSubGraph;\n\n /** @internal */\n public constructor(subGraph: _AbstractAudioSubGraph) {\n super();\n\n const subNode = _GetSpatialAudioSubNode(subGraph);\n if (subNode) {\n this._position = subNode.position.clone();\n this._rotation = subNode.rotation.clone();\n this._rotationQuaternion = subNode.rotationQuaternion.clone();\n } else {\n this._position = _SpatialAudioDefaults.position.clone();\n this._rotation = _SpatialAudioDefaults.rotation.clone();\n this._rotationQuaternion = _SpatialAudioDefaults.rotationQuaternion.clone();\n\n subGraph.createAndAddSubNode(AudioSubNode.SPATIAL);\n }\n\n this._subGraph = subGraph;\n }\n\n /** @internal */\n public get coneInnerAngle(): number {\n return _GetSpatialAudioProperty(this._subGraph, \"coneInnerAngle\") ?? _SpatialAudioDefaults.coneInnerAngle;\n }\n\n public set coneInnerAngle(value: number) {\n _SetSpatialAudioProperty(this._subGraph, \"coneInnerAngle\", value);\n }\n\n /** @internal */\n public get coneOuterAngle(): number {\n return _GetSpatialAudioProperty(this._subGraph, \"coneOuterAngle\");\n }\n\n public set coneOuterAngle(value: number) {\n _SetSpatialAudioProperty(this._subGraph, \"coneOuterAngle\", value);\n }\n\n /** @internal */\n public get coneOuterVolume(): number {\n return _GetSpatialAudioProperty(this._subGraph, \"coneOuterVolume\");\n }\n\n public set coneOuterVolume(value: number) {\n _SetSpatialAudioProperty(this._subGraph, \"coneOuterVolume\", value);\n }\n\n /** @internal */\n public get distanceModel(): DistanceModelType {\n return _GetSpatialAudioProperty(this._subGraph, \"distanceModel\");\n }\n\n public set distanceModel(value: DistanceModelType) {\n _SetSpatialAudioProperty(this._subGraph, \"distanceModel\", value);\n }\n\n /** @internal */\n public get isAttached(): boolean {\n return this._subGraph.getSubNode<_SpatialAudioSubNode>(AudioSubNode.SPATIAL)?.isAttached ?? false;\n }\n\n /** @internal */\n public get maxDistance(): number {\n return _GetSpatialAudioProperty(this._subGraph, \"maxDistance\") ?? _SpatialAudioDefaults.maxDistance;\n }\n\n public set maxDistance(value: number) {\n if (value <= 0) {\n value = 0.000001;\n }\n\n _SetSpatialAudioProperty(this._subGraph, \"maxDistance\", value);\n }\n\n /** @internal */\n public get minDistance(): number {\n return _GetSpatialAudioProperty(this._subGraph, \"minDistance\");\n }\n\n public set minDistance(value: number) {\n _SetSpatialAudioProperty(this._subGraph, \"minDistance\", value);\n }\n\n /** @internal */\n public get panningModel(): PanningModelType {\n return _GetSpatialAudioProperty(this._subGraph, \"panningModel\");\n }\n\n public set panningModel(value: PanningModelType) {\n _SetSpatialAudioProperty(this._subGraph, \"panningModel\", value);\n }\n\n /** @internal */\n public get position(): Vector3 {\n return this._position;\n }\n\n public set position(value: Vector3) {\n this._position = value;\n this._updatePosition();\n }\n\n /** @internal */\n public get rolloffFactor(): number {\n return _GetSpatialAudioProperty(this._subGraph, \"rolloffFactor\");\n }\n\n public set rolloffFactor(value: number) {\n _SetSpatialAudioProperty(this._subGraph, \"rolloffFactor\", value);\n }\n\n /** @internal */\n public get rotation(): Vector3 {\n return this._rotation;\n }\n\n public set rotation(value: Vector3) {\n this._rotation = value;\n this._updateRotation();\n }\n\n /** @internal */\n public get rotationQuaternion(): Quaternion {\n return this._rotationQuaternion;\n }\n\n public set rotationQuaternion(value: Quaternion) {\n this._rotationQuaternion = value;\n this._updateRotation();\n }\n\n /**\n * Attaches to a scene node.\n *\n * Detaches automatically before attaching to the given scene node.\n * If `sceneNode` is `null` it is the same as calling `detach()`.\n *\n * @param sceneNode The scene node to attach to, or `null` to detach.\n * @param useBoundingBox Whether to use the bounding box of the node for positioning. Defaults to `false`.\n * @param attachmentType Whether to attach to the node's position and/or rotation. Defaults to `PositionAndRotation`.\n */\n public attach(sceneNode: Nullable<Node>, useBoundingBox: boolean = false, attachmentType: SpatialAudioAttachmentType = SpatialAudioAttachmentType.PositionAndRotation): void {\n _GetSpatialAudioSubNode(this._subGraph)?.attach(sceneNode, useBoundingBox, attachmentType);\n }\n\n /**\n * Detaches from the scene node if attached.\n */\n public detach(): void {\n _GetSpatialAudioSubNode(this._subGraph)?.detach();\n }\n\n /** @internal */\n public update(): void {\n const subNode = _GetSpatialAudioSubNode(this._subGraph);\n\n if (!subNode) {\n return;\n }\n\n if (subNode.isAttached) {\n subNode.update();\n } else {\n this._updatePosition(subNode);\n this._updateRotation(subNode);\n }\n }\n\n private _updatePosition(subNode: Nullable<_SpatialAudioSubNode> = null): void {\n if (!subNode) {\n subNode = _GetSpatialAudioSubNode(this._subGraph);\n\n if (!subNode) {\n return;\n }\n }\n\n const position = subNode.position;\n if (!position.equalsWithEpsilon(this._position)) {\n subNode.position.copyFrom(this._position);\n subNode._updatePosition();\n }\n }\n\n private _updateRotation(subNode: Nullable<_SpatialAudioSubNode> = null): void {\n if (!subNode) {\n subNode = _GetSpatialAudioSubNode(this._subGraph);\n\n if (!subNode) {\n return;\n }\n }\n\n if (!subNode.rotationQuaternion.equalsWithEpsilon(this._rotationQuaternion)) {\n subNode.rotationQuaternion.copyFrom(this._rotationQuaternion);\n subNode._updateRotation();\n } else if (!subNode.rotation.equalsWithEpsilon(this._rotation)) {\n subNode.rotation.copyFrom(this._rotation);\n subNode._updateRotation();\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"spatialAudio.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subProperties/spatialAudio.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAErF,gBAAgB;AAChB,MAAM,OAAgB,aAAc,SAAQ,oBAAoB;IAc5D,gBAAgB;IAChB,YAAmB,QAAgC;QAC/C,KAAK,EAAE,CAAC;QAfJ,oBAAe,GAAW,qBAAqB,CAAC,cAAc,CAAC;QAC/D,oBAAe,GAAW,qBAAqB,CAAC,cAAc,CAAC;QAC/D,qBAAgB,GAAW,qBAAqB,CAAC,eAAe,CAAC;QACjE,mBAAc,GAAsB,qBAAqB,CAAC,aAAa,CAAC;QACxE,iBAAY,GAAW,qBAAqB,CAAC,WAAW,CAAC;QACzD,iBAAY,GAAW,qBAAqB,CAAC,WAAW,CAAC;QACzD,kBAAa,GAAqB,qBAAqB,CAAC,YAAY,CAAC;QAErE,mBAAc,GAAW,qBAAqB,CAAC,aAAa,CAAC;QASjE,MAAM,OAAO,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC1C,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAClE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACxD,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACxD,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAE5E,QAAQ,CAAC,mBAAmB,sCAAsB,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAED,gBAAgB;IAChB,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,IAAW,cAAc,CAAC,KAAa;QACnC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;IACtE,CAAC;IAED,gBAAgB;IAChB,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,IAAW,cAAc,CAAC,KAAa;QACnC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;IACtE,CAAC;IAED,gBAAgB;IAChB,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED,IAAW,eAAe,CAAC,KAAa;QACpC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC;IACvE,CAAC;IAED,gBAAgB;IAChB,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAW,aAAa,CAAC,KAAwB;QAC7C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IAED,gBAAgB;IAChB,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,sCAA4C,EAAE,UAAU,IAAI,KAAK,CAAC;IACtG,CAAC;IAED,gBAAgB;IAChB,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,IAAW,WAAW,CAAC,KAAa;QAChC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACb,KAAK,GAAG,QAAQ,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAED,gBAAgB;IAChB,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,IAAW,WAAW,CAAC,KAAa;QAChC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAED,gBAAgB;IAChB,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAW,YAAY,CAAC,KAAuB;QAC3C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IAED,gBAAgB;IAChB,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,QAAQ,CAAC,KAAc;QAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,eAAe,EAAE,CAAC;IAC3B,CAAC;IAED,gBAAgB;IAChB,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAW,aAAa,CAAC,KAAa;QAClC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IAED,gBAAgB;IAChB,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,QAAQ,CAAC,KAAc;QAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,eAAe,EAAE,CAAC;IAC3B,CAAC;IAED,gBAAgB;IAChB,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED,IAAW,kBAAkB,CAAC,KAAiB;QAC3C,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACjC,IAAI,CAAC,eAAe,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;;;;OASG;IACI,MAAM,CAAC,SAAyB,EAAE,iBAA0B,KAAK,EAAE,uEAA2F;QACjK,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IAC/F,CAAC;IAED;;OAEG;IACI,MAAM;QACT,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACtD,CAAC;IAED,gBAAgB;IACT,MAAM;QACT,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAExD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO;QACX,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,CAAC,MAAM,EAAE,CAAC;QACrB,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;IACL,CAAC;IAEO,eAAe,CAAC,UAA0C,IAAI;QAClE,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAElD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,OAAO;YACX,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1C,OAAO,CAAC,eAAe,EAAE,CAAC;QAC9B,CAAC;IACL,CAAC;IAEO,eAAe,CAAC,UAA0C,IAAI;QAClE,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAElD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,OAAO;YACX,CAAC;QACL,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC1E,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC9D,OAAO,CAAC,eAAe,EAAE,CAAC;QAC9B,CAAC;aAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1C,OAAO,CAAC,eAAe,EAAE,CAAC;QAC9B,CAAC;IACL,CAAC;CACJ","sourcesContent":["import type { Quaternion, Vector3 } from \"../../../Maths/math.vector\";\nimport type { Node } from \"../../../node\";\nimport type { Nullable } from \"../../../types\";\nimport { SpatialAudioAttachmentType } from \"../../spatialAudioAttachmentType\";\nimport type { _AbstractAudioSubGraph } from \"../subNodes/abstractAudioSubGraph\";\nimport { AudioSubNode } from \"../subNodes/audioSubNode\";\nimport type { _SpatialAudioSubNode } from \"../subNodes/spatialAudioSubNode\";\nimport { _GetSpatialAudioSubNode, _SetSpatialAudioProperty } from \"../subNodes/spatialAudioSubNode\";\nimport { _SpatialAudioDefaults, AbstractSpatialAudio } from \"./abstractSpatialAudio\";\n\n/** @internal */\nexport abstract class _SpatialAudio extends AbstractSpatialAudio {\n private _coneInnerAngle: number = _SpatialAudioDefaults.coneInnerAngle;\n private _coneOuterAngle: number = _SpatialAudioDefaults.coneOuterAngle;\n private _coneOuterVolume: number = _SpatialAudioDefaults.coneOuterVolume;\n private _distanceModel: DistanceModelType = _SpatialAudioDefaults.distanceModel;\n private _maxDistance: number = _SpatialAudioDefaults.maxDistance;\n private _minDistance: number = _SpatialAudioDefaults.minDistance;\n private _panningModel: PanningModelType = _SpatialAudioDefaults.panningModel;\n private _position: Vector3;\n private _rolloffFactor: number = _SpatialAudioDefaults.rolloffFactor;\n private _rotation: Vector3;\n private _rotationQuaternion: Quaternion;\n private _subGraph: _AbstractAudioSubGraph;\n\n /** @internal */\n public constructor(subGraph: _AbstractAudioSubGraph) {\n super();\n\n const subNode = _GetSpatialAudioSubNode(subGraph);\n if (subNode) {\n this._position = subNode.position.clone();\n this._rotation = subNode.rotation.clone();\n this._rotationQuaternion = subNode.rotationQuaternion.clone();\n } else {\n this._position = _SpatialAudioDefaults.position.clone();\n this._rotation = _SpatialAudioDefaults.rotation.clone();\n this._rotationQuaternion = _SpatialAudioDefaults.rotationQuaternion.clone();\n\n subGraph.createAndAddSubNode(AudioSubNode.SPATIAL);\n }\n\n this._subGraph = subGraph;\n }\n\n /** @internal */\n public get coneInnerAngle(): number {\n return this._coneInnerAngle;\n }\n\n public set coneInnerAngle(value: number) {\n this._coneInnerAngle = value;\n _SetSpatialAudioProperty(this._subGraph, \"coneInnerAngle\", value);\n }\n\n /** @internal */\n public get coneOuterAngle(): number {\n return this._coneOuterAngle;\n }\n\n public set coneOuterAngle(value: number) {\n this._coneOuterAngle = value;\n _SetSpatialAudioProperty(this._subGraph, \"coneOuterAngle\", value);\n }\n\n /** @internal */\n public get coneOuterVolume(): number {\n return this._coneOuterVolume;\n }\n\n public set coneOuterVolume(value: number) {\n this._coneOuterVolume = value;\n _SetSpatialAudioProperty(this._subGraph, \"coneOuterVolume\", value);\n }\n\n /** @internal */\n public get distanceModel(): DistanceModelType {\n return this._distanceModel;\n }\n\n public set distanceModel(value: DistanceModelType) {\n this._distanceModel = value;\n _SetSpatialAudioProperty(this._subGraph, \"distanceModel\", value);\n }\n\n /** @internal */\n public get isAttached(): boolean {\n return this._subGraph.getSubNode<_SpatialAudioSubNode>(AudioSubNode.SPATIAL)?.isAttached ?? false;\n }\n\n /** @internal */\n public get maxDistance(): number {\n return this._maxDistance;\n }\n\n public set maxDistance(value: number) {\n if (value <= 0) {\n value = 0.000001;\n }\n\n this._maxDistance = value;\n _SetSpatialAudioProperty(this._subGraph, \"maxDistance\", value);\n }\n\n /** @internal */\n public get minDistance(): number {\n return this._minDistance;\n }\n\n public set minDistance(value: number) {\n this._minDistance = value;\n _SetSpatialAudioProperty(this._subGraph, \"minDistance\", value);\n }\n\n /** @internal */\n public get panningModel(): PanningModelType {\n return this._panningModel;\n }\n\n public set panningModel(value: PanningModelType) {\n this._panningModel = value;\n _SetSpatialAudioProperty(this._subGraph, \"panningModel\", value);\n }\n\n /** @internal */\n public get position(): Vector3 {\n return this._position;\n }\n\n public set position(value: Vector3) {\n this._position = value;\n this._updatePosition();\n }\n\n /** @internal */\n public get rolloffFactor(): number {\n return this._rolloffFactor;\n }\n\n public set rolloffFactor(value: number) {\n this._rolloffFactor = value;\n _SetSpatialAudioProperty(this._subGraph, \"rolloffFactor\", value);\n }\n\n /** @internal */\n public get rotation(): Vector3 {\n return this._rotation;\n }\n\n public set rotation(value: Vector3) {\n this._rotation = value;\n this._updateRotation();\n }\n\n /** @internal */\n public get rotationQuaternion(): Quaternion {\n return this._rotationQuaternion;\n }\n\n public set rotationQuaternion(value: Quaternion) {\n this._rotationQuaternion = value;\n this._updateRotation();\n }\n\n /**\n * Attaches to a scene node.\n *\n * Detaches automatically before attaching to the given scene node.\n * If `sceneNode` is `null` it is the same as calling `detach()`.\n *\n * @param sceneNode The scene node to attach to, or `null` to detach.\n * @param useBoundingBox Whether to use the bounding box of the node for positioning. Defaults to `false`.\n * @param attachmentType Whether to attach to the node's position and/or rotation. Defaults to `PositionAndRotation`.\n */\n public attach(sceneNode: Nullable<Node>, useBoundingBox: boolean = false, attachmentType: SpatialAudioAttachmentType = SpatialAudioAttachmentType.PositionAndRotation): void {\n _GetSpatialAudioSubNode(this._subGraph)?.attach(sceneNode, useBoundingBox, attachmentType);\n }\n\n /**\n * Detaches from the scene node if attached.\n */\n public detach(): void {\n _GetSpatialAudioSubNode(this._subGraph)?.detach();\n }\n\n /** @internal */\n public update(): void {\n const subNode = _GetSpatialAudioSubNode(this._subGraph);\n\n if (!subNode) {\n return;\n }\n\n if (subNode.isAttached) {\n subNode.update();\n } else {\n this._updatePosition(subNode);\n this._updateRotation(subNode);\n }\n }\n\n private _updatePosition(subNode: Nullable<_SpatialAudioSubNode> = null): void {\n if (!subNode) {\n subNode = _GetSpatialAudioSubNode(this._subGraph);\n\n if (!subNode) {\n return;\n }\n }\n\n const position = subNode.position;\n if (!position.equalsWithEpsilon(this._position)) {\n subNode.position.copyFrom(this._position);\n subNode._updatePosition();\n }\n }\n\n private _updateRotation(subNode: Nullable<_SpatialAudioSubNode> = null): void {\n if (!subNode) {\n subNode = _GetSpatialAudioSubNode(this._subGraph);\n\n if (!subNode) {\n return;\n }\n }\n\n if (!subNode.rotationQuaternion.equalsWithEpsilon(this._rotationQuaternion)) {\n subNode.rotationQuaternion.copyFrom(this._rotationQuaternion);\n subNode._updateRotation();\n } else if (!subNode.rotation.equalsWithEpsilon(this._rotation)) {\n subNode.rotation.copyFrom(this._rotation);\n subNode._updateRotation();\n }\n }\n}\n"]}
|
|
@@ -2,6 +2,7 @@ import { AbstractStereoAudio } from "../../abstractAudio/subProperties/abstractS
|
|
|
2
2
|
import type { _AbstractAudioSubGraph } from "../subNodes/abstractAudioSubGraph";
|
|
3
3
|
/** @internal */
|
|
4
4
|
export declare class _StereoAudio extends AbstractStereoAudio {
|
|
5
|
+
private _pan;
|
|
5
6
|
private _subGraph;
|
|
6
7
|
/** @internal */
|
|
7
8
|
constructor(subGraph: _AbstractAudioSubGraph);
|
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import { AbstractStereoAudio } from "../../abstractAudio/subProperties/abstractStereoAudio.js";
|
|
2
|
-
import {
|
|
1
|
+
import { _StereoAudioDefaults, AbstractStereoAudio } from "../../abstractAudio/subProperties/abstractStereoAudio.js";
|
|
2
|
+
import { _SetStereoAudioProperty } from "../subNodes/stereoAudioSubNode.js";
|
|
3
3
|
/** @internal */
|
|
4
4
|
export class _StereoAudio extends AbstractStereoAudio {
|
|
5
5
|
/** @internal */
|
|
6
6
|
constructor(subGraph) {
|
|
7
7
|
super();
|
|
8
|
+
this._pan = _StereoAudioDefaults.pan;
|
|
8
9
|
this._subGraph = subGraph;
|
|
9
10
|
}
|
|
10
11
|
/** @internal */
|
|
11
12
|
get pan() {
|
|
12
|
-
return
|
|
13
|
+
return this._pan;
|
|
13
14
|
}
|
|
14
15
|
set pan(value) {
|
|
16
|
+
this._pan = value;
|
|
15
17
|
_SetStereoAudioProperty(this._subGraph, "pan", value);
|
|
16
18
|
}
|
|
17
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stereoAudio.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subProperties/stereoAudio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;
|
|
1
|
+
{"version":3,"file":"stereoAudio.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/abstractAudio/subProperties/stereoAudio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAElH,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAEzE,gBAAgB;AAChB,MAAM,OAAO,YAAa,SAAQ,mBAAmB;IAIjD,gBAAgB;IAChB,YAAmB,QAAgC;QAC/C,KAAK,EAAE,CAAC;QALJ,SAAI,GAAW,oBAAoB,CAAC,GAAG,CAAC;QAM5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAED,gBAAgB;IAChB,IAAW,GAAG;QACV,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,IAAW,GAAG,CAAC,KAAa;QACxB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,uBAAuB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;CACJ","sourcesContent":["import { _StereoAudioDefaults, AbstractStereoAudio } from \"../../abstractAudio/subProperties/abstractStereoAudio\";\nimport type { _AbstractAudioSubGraph } from \"../subNodes/abstractAudioSubGraph\";\nimport { _SetStereoAudioProperty } from \"../subNodes/stereoAudioSubNode\";\n\n/** @internal */\nexport class _StereoAudio extends AbstractStereoAudio {\n private _pan: number = _StereoAudioDefaults.pan;\n private _subGraph: _AbstractAudioSubGraph;\n\n /** @internal */\n public constructor(subGraph: _AbstractAudioSubGraph) {\n super();\n this._subGraph = subGraph;\n }\n\n /** @internal */\n public get pan(): number {\n return this._pan;\n }\n\n public set pan(value: number) {\n this._pan = value;\n _SetStereoAudioProperty(this._subGraph, \"pan\", value);\n }\n}\n"]}
|
|
@@ -283,7 +283,11 @@ export declare class ArcRotateCamera extends TargetCamera {
|
|
|
283
283
|
*/
|
|
284
284
|
mapPanning: boolean;
|
|
285
285
|
private _bouncingBehavior;
|
|
286
|
-
private
|
|
286
|
+
private _isInterpolating;
|
|
287
|
+
/**
|
|
288
|
+
* If true, indicates the camera is currently interpolating to a new pose.
|
|
289
|
+
*/
|
|
290
|
+
get isInterpolating(): boolean;
|
|
287
291
|
/**
|
|
288
292
|
* Gets the bouncing behavior of the camera if it has been enabled.
|
|
289
293
|
* @see https://doc.babylonjs.com/features/featuresDeepDive/behaviors/cameraBehaviors#bouncing-behavior
|
|
@@ -374,8 +378,8 @@ export declare class ArcRotateCamera extends TargetCamera {
|
|
|
374
378
|
private _goalAlpha;
|
|
375
379
|
private _goalBeta;
|
|
376
380
|
private _goalRadius;
|
|
377
|
-
private _goalTarget;
|
|
378
|
-
private _goalTargetScreenOffset;
|
|
381
|
+
private readonly _goalTarget;
|
|
382
|
+
private readonly _goalTargetScreenOffset;
|
|
379
383
|
/**
|
|
380
384
|
* Stores the current state of the camera (alpha, beta, radius and target)
|
|
381
385
|
* @returns the camera itself
|
|
@@ -386,6 +390,10 @@ export declare class ArcRotateCamera extends TargetCamera {
|
|
|
386
390
|
* Restored camera state. You must call storeState() first
|
|
387
391
|
*/
|
|
388
392
|
_restoreStateValues(): boolean;
|
|
393
|
+
/**
|
|
394
|
+
* Stops any in-progress interpolation.
|
|
395
|
+
*/
|
|
396
|
+
stopInterpolation(): void;
|
|
389
397
|
/**
|
|
390
398
|
* Interpolates the camera to a goal state.
|
|
391
399
|
* @param alpha Defines the goal alpha.
|
|
@@ -394,6 +402,8 @@ export declare class ArcRotateCamera extends TargetCamera {
|
|
|
394
402
|
* @param target Defines the goal target.
|
|
395
403
|
* @param targetScreenOffset Defines the goal target screen offset.
|
|
396
404
|
* @param interpolationFactor A value between 0 and 1 that determines the speed of the interpolation.
|
|
405
|
+
* @remarks Passing undefined for any of the parameters will use the current value (effectively stopping any in-progress interpolation for that parameter).
|
|
406
|
+
* Passing NaN will not start or stop any interpolation for that parameter (effectively allowing multiple interpolations of different parameters to overlap).
|
|
397
407
|
*/
|
|
398
408
|
interpolateTo(alpha?: number, beta?: number, radius?: number, target?: Vector3, targetScreenOffset?: Vector2, interpolationFactor?: number): void;
|
|
399
409
|
/** @internal */
|