iwer 2.1.1 → 2.2.1
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/build/iwer.js +1760 -5
- package/build/iwer.min.js +12 -12
- package/build/iwer.module.js +1751 -6
- package/build/iwer.module.min.js +12 -12
- package/lib/depth/XRDepthInformation.d.ts +38 -0
- package/lib/depth/XRDepthInformation.d.ts.map +1 -0
- package/lib/depth/XRDepthInformation.js +55 -0
- package/lib/depth/XRDepthInformation.js.map +1 -0
- package/lib/device/XRController.d.ts +20 -0
- package/lib/device/XRController.d.ts.map +1 -1
- package/lib/device/XRController.js +56 -0
- package/lib/device/XRController.js.map +1 -1
- package/lib/device/XRDevice.d.ts +45 -1
- package/lib/device/XRDevice.d.ts.map +1 -1
- package/lib/device/XRDevice.js +88 -0
- package/lib/device/XRDevice.js.map +1 -1
- package/lib/frameloop/XRFrame.d.ts +4 -0
- package/lib/frameloop/XRFrame.d.ts.map +1 -1
- package/lib/frameloop/XRFrame.js +12 -1
- package/lib/frameloop/XRFrame.js.map +1 -1
- package/lib/index.d.ts +5 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +6 -0
- package/lib/index.js.map +1 -1
- package/lib/private.d.ts +1 -0
- package/lib/private.d.ts.map +1 -1
- package/lib/private.js +1 -0
- package/lib/private.js.map +1 -1
- package/lib/remote/RemoteControlInterface.d.ts +172 -0
- package/lib/remote/RemoteControlInterface.d.ts.map +1 -0
- package/lib/remote/RemoteControlInterface.js +1240 -0
- package/lib/remote/RemoteControlInterface.js.map +1 -0
- package/lib/remote/index.d.ts +9 -0
- package/lib/remote/index.d.ts.map +1 -0
- package/lib/remote/index.js +8 -0
- package/lib/remote/index.js.map +1 -0
- package/lib/remote/types.d.ts +348 -0
- package/lib/remote/types.d.ts.map +1 -0
- package/lib/remote/types.js +8 -0
- package/lib/remote/types.js.map +1 -0
- package/lib/session/XRSession.d.ts +7 -0
- package/lib/session/XRSession.d.ts.map +1 -1
- package/lib/session/XRSession.js +42 -0
- package/lib/session/XRSession.js.map +1 -1
- package/lib/types/state.d.ts +46 -0
- package/lib/types/state.d.ts.map +1 -0
- package/lib/types/state.js +8 -0
- package/lib/types/state.js.map +1 -0
- package/lib/utils/control-math.d.ts +64 -0
- package/lib/utils/control-math.d.ts.map +1 -0
- package/lib/utils/control-math.js +238 -0
- package/lib/utils/control-math.js.map +1 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +10 -5
- package/lib/layers/XRWebGLBinding.d.ts +0 -92
- package/lib/layers/XRWebGLBinding.d.ts.map +0 -1
- package/lib/layers/XRWebGLBinding.js +0 -186
- package/lib/layers/XRWebGLBinding.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoteControlInterface.js","sourceRoot":"","sources":["../../src/remote/RemoteControlInterface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
export { RemoteControlInterface } from './RemoteControlInterface.js';
|
|
8
|
+
export type { DeviceId, InputDeviceId, ControllerId, Action, DiscreteAction, DurationAction, OrientationInput, GetTransformParams, GetTransformResult, SetTransformParams, SetTransformResult, LookAtParams, LookAtResult, AnimateToParams, AnimateToResult, SetInputModeParams, SetInputModeResult, SetConnectedParams, SetConnectedResult, GetSelectValueParams, GetSelectValueResult, SetSelectValueParams, SetSelectValueResult, SelectParams, SelectResult, GamepadButtonInfo, GamepadAxisInfo, GetGamepadStateParams, GetGamepadStateResult, GamepadButtonInput, GamepadAxisInput, SetGamepadStateParams, SetGamepadStateResult, CaptureCanvasParams, CaptureCanvasResult, RemoteSessionStatus, AcceptSessionResult, EndSessionResult, RemoteDeviceState, SetDeviceStateParams, SetDeviceStateResult, } from './types.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/remote/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,YAAY,EACX,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,MAAM,EACN,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,GACpB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
export { RemoteControlInterface } from './RemoteControlInterface.js';
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/remote/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,348 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import type { Vec3, Quat, EulerRotation, InputMode } from '../types/state.js';
|
|
8
|
+
/**
|
|
9
|
+
* Unified identifier for all tracked devices
|
|
10
|
+
*/
|
|
11
|
+
export type DeviceId = 'headset' | 'controller-left' | 'controller-right' | 'hand-left' | 'hand-right';
|
|
12
|
+
/**
|
|
13
|
+
* Device identifiers that support input (not headset)
|
|
14
|
+
*/
|
|
15
|
+
export type InputDeviceId = Exclude<DeviceId, 'headset'>;
|
|
16
|
+
/**
|
|
17
|
+
* Controller device identifiers
|
|
18
|
+
*/
|
|
19
|
+
export type ControllerId = 'controller-left' | 'controller-right';
|
|
20
|
+
/**
|
|
21
|
+
* Base action interface with common properties
|
|
22
|
+
*/
|
|
23
|
+
interface BaseAction {
|
|
24
|
+
id: string;
|
|
25
|
+
method: string;
|
|
26
|
+
params: Record<string, unknown>;
|
|
27
|
+
resolve: (result: unknown) => void;
|
|
28
|
+
reject: (error: Error) => void;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Discrete action - executes immediately when processed
|
|
32
|
+
*/
|
|
33
|
+
export interface DiscreteAction extends BaseAction {
|
|
34
|
+
type: 'discrete';
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Duration action - lerps over multiple frames
|
|
38
|
+
*/
|
|
39
|
+
export interface DurationAction extends BaseAction {
|
|
40
|
+
type: 'duration';
|
|
41
|
+
durationMs: number;
|
|
42
|
+
elapsedMs: number;
|
|
43
|
+
startState: {
|
|
44
|
+
position?: Vec3;
|
|
45
|
+
orientation?: Quat;
|
|
46
|
+
};
|
|
47
|
+
targetState: {
|
|
48
|
+
position?: Vec3;
|
|
49
|
+
orientation?: Quat;
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Union of all action types
|
|
54
|
+
*/
|
|
55
|
+
export type Action = DiscreteAction | DurationAction;
|
|
56
|
+
/**
|
|
57
|
+
* Orientation can be specified as quaternion or euler angles (partial euler angles allowed, missing default to 0)
|
|
58
|
+
*/
|
|
59
|
+
export type OrientationInput = Quat | Partial<EulerRotation>;
|
|
60
|
+
/**
|
|
61
|
+
* Parameters for get_transform tool
|
|
62
|
+
*/
|
|
63
|
+
export interface GetTransformParams {
|
|
64
|
+
device: DeviceId;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Result of get_transform tool
|
|
68
|
+
*/
|
|
69
|
+
export interface GetTransformResult {
|
|
70
|
+
device: DeviceId;
|
|
71
|
+
position: Vec3;
|
|
72
|
+
orientation: Quat;
|
|
73
|
+
euler: EulerRotation;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Parameters for set_transform tool
|
|
77
|
+
*/
|
|
78
|
+
export interface SetTransformParams {
|
|
79
|
+
device: DeviceId;
|
|
80
|
+
position?: Vec3;
|
|
81
|
+
orientation?: OrientationInput;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Result of set_transform tool
|
|
85
|
+
*/
|
|
86
|
+
export interface SetTransformResult {
|
|
87
|
+
device: DeviceId;
|
|
88
|
+
position: Vec3;
|
|
89
|
+
orientation: Quat;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Parameters for look_at tool
|
|
93
|
+
*/
|
|
94
|
+
export interface LookAtParams {
|
|
95
|
+
device: DeviceId;
|
|
96
|
+
target: Vec3;
|
|
97
|
+
moveToDistance?: number;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Result of look_at tool
|
|
101
|
+
*/
|
|
102
|
+
export interface LookAtResult {
|
|
103
|
+
device: DeviceId;
|
|
104
|
+
position: Vec3;
|
|
105
|
+
orientation: Quat;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Parameters for animate_to tool
|
|
109
|
+
*/
|
|
110
|
+
export interface AnimateToParams {
|
|
111
|
+
device: DeviceId;
|
|
112
|
+
position?: Vec3;
|
|
113
|
+
orientation?: OrientationInput;
|
|
114
|
+
duration?: number;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Result of animate_to tool
|
|
118
|
+
*/
|
|
119
|
+
export interface AnimateToResult {
|
|
120
|
+
device: DeviceId;
|
|
121
|
+
position: Vec3;
|
|
122
|
+
orientation: Quat;
|
|
123
|
+
actualDuration: number;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Parameters for set_input_mode tool
|
|
127
|
+
*/
|
|
128
|
+
export interface SetInputModeParams {
|
|
129
|
+
mode: InputMode;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Result of set_input_mode tool
|
|
133
|
+
*/
|
|
134
|
+
export interface SetInputModeResult {
|
|
135
|
+
mode: InputMode;
|
|
136
|
+
activeDevices: DeviceId[];
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Parameters for set_connected tool
|
|
140
|
+
*/
|
|
141
|
+
export interface SetConnectedParams {
|
|
142
|
+
device: InputDeviceId;
|
|
143
|
+
connected: boolean;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Result of set_connected tool
|
|
147
|
+
*/
|
|
148
|
+
export interface SetConnectedResult {
|
|
149
|
+
device: InputDeviceId;
|
|
150
|
+
connected: boolean;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Parameters for get_select_value tool
|
|
154
|
+
*/
|
|
155
|
+
export interface GetSelectValueParams {
|
|
156
|
+
device: InputDeviceId;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Result of get_select_value tool
|
|
160
|
+
*/
|
|
161
|
+
export interface GetSelectValueResult {
|
|
162
|
+
device: InputDeviceId;
|
|
163
|
+
value: number;
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Parameters for set_select_value tool
|
|
167
|
+
*/
|
|
168
|
+
export interface SetSelectValueParams {
|
|
169
|
+
device: InputDeviceId;
|
|
170
|
+
value: number;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Result of set_select_value tool
|
|
174
|
+
*/
|
|
175
|
+
export interface SetSelectValueResult {
|
|
176
|
+
device: InputDeviceId;
|
|
177
|
+
value: number;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Parameters for select tool
|
|
181
|
+
*/
|
|
182
|
+
export interface SelectParams {
|
|
183
|
+
device: InputDeviceId;
|
|
184
|
+
duration?: number;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Result of select tool
|
|
188
|
+
*/
|
|
189
|
+
export interface SelectResult {
|
|
190
|
+
device: InputDeviceId;
|
|
191
|
+
duration: number;
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Button info for gamepad state
|
|
195
|
+
*/
|
|
196
|
+
export interface GamepadButtonInfo {
|
|
197
|
+
index: number;
|
|
198
|
+
name: string;
|
|
199
|
+
value: number;
|
|
200
|
+
touched: boolean;
|
|
201
|
+
pressed: boolean;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Axis info for gamepad state
|
|
205
|
+
*/
|
|
206
|
+
export interface GamepadAxisInfo {
|
|
207
|
+
index: number;
|
|
208
|
+
name: string;
|
|
209
|
+
value: number;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Parameters for get_gamepad_state tool
|
|
213
|
+
*/
|
|
214
|
+
export interface GetGamepadStateParams {
|
|
215
|
+
device: ControllerId;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Result of get_gamepad_state tool
|
|
219
|
+
*/
|
|
220
|
+
export interface GetGamepadStateResult {
|
|
221
|
+
device: ControllerId;
|
|
222
|
+
connected: boolean;
|
|
223
|
+
buttons: GamepadButtonInfo[];
|
|
224
|
+
axes: GamepadAxisInfo[];
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Button input for set_gamepad_state
|
|
228
|
+
*/
|
|
229
|
+
export interface GamepadButtonInput {
|
|
230
|
+
index: number;
|
|
231
|
+
value: number;
|
|
232
|
+
touched?: boolean;
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Axis input for set_gamepad_state
|
|
236
|
+
*/
|
|
237
|
+
export interface GamepadAxisInput {
|
|
238
|
+
index: number;
|
|
239
|
+
value: number;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Parameters for set_gamepad_state tool
|
|
243
|
+
*/
|
|
244
|
+
export interface SetGamepadStateParams {
|
|
245
|
+
device: ControllerId;
|
|
246
|
+
buttons?: GamepadButtonInput[];
|
|
247
|
+
axes?: GamepadAxisInput[];
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Result of set_gamepad_state tool
|
|
251
|
+
*/
|
|
252
|
+
export interface SetGamepadStateResult {
|
|
253
|
+
device: ControllerId;
|
|
254
|
+
buttonsSet: number;
|
|
255
|
+
axesSet: number;
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Parameters for capture_canvas tool
|
|
259
|
+
*/
|
|
260
|
+
export interface CaptureCanvasParams {
|
|
261
|
+
maxWidth?: number;
|
|
262
|
+
format?: 'png' | 'jpeg' | 'webp';
|
|
263
|
+
quality?: number;
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Result of capture_canvas tool
|
|
267
|
+
*/
|
|
268
|
+
export interface CaptureCanvasResult {
|
|
269
|
+
imageData: string;
|
|
270
|
+
width: number;
|
|
271
|
+
height: number;
|
|
272
|
+
format: string;
|
|
273
|
+
timestamp: number;
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Session status for get_session_status
|
|
277
|
+
*/
|
|
278
|
+
export interface RemoteSessionStatus {
|
|
279
|
+
deviceName: string;
|
|
280
|
+
isRuntimeInstalled: boolean;
|
|
281
|
+
sessionActive: boolean;
|
|
282
|
+
sessionOffered: boolean;
|
|
283
|
+
sessionMode: 'immersive-vr' | 'immersive-ar' | 'inline' | null;
|
|
284
|
+
enabledFeatures: string[];
|
|
285
|
+
visibilityState: 'visible' | 'visible-blurred' | 'hidden';
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Result of accept_session
|
|
289
|
+
*/
|
|
290
|
+
export interface AcceptSessionResult {
|
|
291
|
+
success: boolean;
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Result of end_session
|
|
295
|
+
*/
|
|
296
|
+
export interface EndSessionResult {
|
|
297
|
+
success: boolean;
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Full device state for get_device_state
|
|
301
|
+
*/
|
|
302
|
+
export interface RemoteDeviceState {
|
|
303
|
+
headset: {
|
|
304
|
+
position: Vec3;
|
|
305
|
+
orientation: Quat;
|
|
306
|
+
};
|
|
307
|
+
inputMode: InputMode;
|
|
308
|
+
controllers: {
|
|
309
|
+
left: {
|
|
310
|
+
connected: boolean;
|
|
311
|
+
position: Vec3;
|
|
312
|
+
orientation: Quat;
|
|
313
|
+
};
|
|
314
|
+
right: {
|
|
315
|
+
connected: boolean;
|
|
316
|
+
position: Vec3;
|
|
317
|
+
orientation: Quat;
|
|
318
|
+
};
|
|
319
|
+
};
|
|
320
|
+
hands: {
|
|
321
|
+
left: {
|
|
322
|
+
connected: boolean;
|
|
323
|
+
position: Vec3;
|
|
324
|
+
orientation: Quat;
|
|
325
|
+
};
|
|
326
|
+
right: {
|
|
327
|
+
connected: boolean;
|
|
328
|
+
position: Vec3;
|
|
329
|
+
orientation: Quat;
|
|
330
|
+
};
|
|
331
|
+
};
|
|
332
|
+
stereoEnabled: boolean;
|
|
333
|
+
fov: number;
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Parameters for set_device_state
|
|
337
|
+
*/
|
|
338
|
+
export interface SetDeviceStateParams {
|
|
339
|
+
state?: Partial<RemoteDeviceState>;
|
|
340
|
+
}
|
|
341
|
+
/**
|
|
342
|
+
* Result of set_device_state
|
|
343
|
+
*/
|
|
344
|
+
export interface SetDeviceStateResult {
|
|
345
|
+
state: RemoteDeviceState;
|
|
346
|
+
}
|
|
347
|
+
export {};
|
|
348
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/remote/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAM9E;;GAEG;AACH,MAAM,MAAM,QAAQ,GACjB,SAAS,GACT,iBAAiB,GACjB,kBAAkB,GAClB,WAAW,GACX,YAAY,CAAC;AAEhB;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAMlE;;GAEG;AACH,UAAU,UAAU;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,UAAU;IACjD,IAAI,EAAE,UAAU,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,UAAU;IACjD,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE;QACX,QAAQ,CAAC,EAAE,IAAI,CAAC;QAChB,WAAW,CAAC,EAAE,IAAI,CAAC;KACnB,CAAC;IACF,WAAW,EAAE;QACZ,QAAQ,CAAC,EAAE,IAAI,CAAC;QAChB,WAAW,CAAC,EAAE,IAAI,CAAC;KACnB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,cAAc,GAAG,cAAc,CAAC;AAMrD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,QAAQ,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,IAAI,CAAC;IACf,WAAW,EAAE,IAAI,CAAC;IAClB,KAAK,EAAE,aAAa,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,IAAI,CAAC;IACf,WAAW,EAAE,IAAI,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,QAAQ,CAAC;IACjB,MAAM,EAAE,IAAI,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,IAAI,CAAC;IACf,WAAW,EAAE,IAAI,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,IAAI,CAAC;IACf,WAAW,EAAE,IAAI,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,SAAS,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,QAAQ,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,aAAa,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,MAAM,EAAE,YAAY,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,IAAI,EAAE,eAAe,EAAE,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CAClB;AAMD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,cAAc,GAAG,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;IAC/D,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,SAAS,GAAG,iBAAiB,GAAG,QAAQ,CAAC;CAC1D;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,OAAO,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,OAAO,CAAC;CACjB;AAMD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE;QACR,QAAQ,EAAE,IAAI,CAAC;QACf,WAAW,EAAE,IAAI,CAAC;KAClB,CAAC;IACF,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE;QACZ,IAAI,EAAE;YAAE,SAAS,EAAE,OAAO,CAAC;YAAC,QAAQ,EAAE,IAAI,CAAC;YAAC,WAAW,EAAE,IAAI,CAAA;SAAE,CAAC;QAChE,KAAK,EAAE;YAAE,SAAS,EAAE,OAAO,CAAC;YAAC,QAAQ,EAAE,IAAI,CAAC;YAAC,WAAW,EAAE,IAAI,CAAA;SAAE,CAAC;KACjE,CAAC;IACF,KAAK,EAAE;QACN,IAAI,EAAE;YAAE,SAAS,EAAE,OAAO,CAAC;YAAC,QAAQ,EAAE,IAAI,CAAC;YAAC,WAAW,EAAE,IAAI,CAAA;SAAE,CAAC;QAChE,KAAK,EAAE;YAAE,SAAS,EAAE,OAAO,CAAC;YAAC,QAAQ,EAAE,IAAI,CAAC;YAAC,WAAW,EAAE,IAAI,CAAA;SAAE,CAAC;KACjE,CAAC;IACF,aAAa,EAAE,OAAO,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,iBAAiB,CAAC;CACzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/remote/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import { NativeMesh, XRMesh } from '../meshes/XRMesh.js';
|
|
8
8
|
import { NativePlane, XRPlane } from '../planes/XRPlane.js';
|
|
9
9
|
import { P_SESSION } from '../private.js';
|
|
10
|
+
import { XRDepthDataFormat, XRDepthStateInit, XRDepthUsage } from '../depth/XRDepthInformation.js';
|
|
10
11
|
import type { WebXRFeature, XRDevice } from '../device/XRDevice.js';
|
|
11
12
|
import { XRAnchor, XRAnchorSet } from '../anchors/XRAnchor.js';
|
|
12
13
|
import { XRHitTestOptionsInit, XRHitTestSource } from '../hittest/XRHitTest.js';
|
|
@@ -24,6 +25,7 @@ export type XRSessionMode = 'inline' | 'immersive-vr' | 'immersive-ar';
|
|
|
24
25
|
export type XRSessionInit = {
|
|
25
26
|
requiredFeatures?: WebXRFeature[];
|
|
26
27
|
optionalFeatures?: WebXRFeature[];
|
|
28
|
+
depthSensing?: XRDepthStateInit;
|
|
27
29
|
};
|
|
28
30
|
export declare enum XREnvironmentBlendMode {
|
|
29
31
|
Opaque = "opaque",
|
|
@@ -78,6 +80,9 @@ export declare class XRSession extends EventTarget {
|
|
|
78
80
|
updateTrackedMeshes: (frame: XRFrame) => void;
|
|
79
81
|
hitTestSources: Set<XRHitTestSource>;
|
|
80
82
|
computeHitTestResults: (frame: XRFrame) => void;
|
|
83
|
+
depthSensingUsage: XRDepthUsage;
|
|
84
|
+
depthSensingDataFormat: XRDepthDataFormat;
|
|
85
|
+
computeDepthSensing: (frame: XRFrame) => void;
|
|
81
86
|
onend: XRSessionEventHandler | null;
|
|
82
87
|
oninputsourceschange: XRInputSourcesChangeEventHandler | null;
|
|
83
88
|
onselect: XRInputSourceEventHandler | null;
|
|
@@ -99,6 +104,8 @@ export declare class XRSession extends EventTarget {
|
|
|
99
104
|
get isSystemKeyboardSupported(): boolean;
|
|
100
105
|
get environmentBlendMode(): XREnvironmentBlendMode;
|
|
101
106
|
get interactionMode(): XRInteractionMode;
|
|
107
|
+
get depthUsage(): XRDepthUsage;
|
|
108
|
+
get depthDataFormat(): XRDepthDataFormat;
|
|
102
109
|
updateRenderState(state?: XRRenderStateInit): void;
|
|
103
110
|
updateTargetFrameRate(rate: number): Promise<void>;
|
|
104
111
|
requestReferenceSpace(type: XRReferenceSpaceType): Promise<XRReferenceSpace>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XRSession.d.ts","sourceRoot":"","sources":["../../src/session/XRSession.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAOL,SAAS,EAGV,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAiB,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EACL,oBAAoB,EAEpB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAEL,gCAAgC,EACjC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAEL,qBAAqB,EACtB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"XRSession.d.ts","sourceRoot":"","sources":["../../src/session/XRSession.ts"],"names":[],"mappings":"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"}
|
package/lib/session/XRSession.js
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import { XRMesh } from '../meshes/XRMesh.js';
|
|
8
8
|
import { XRPlane } from '../planes/XRPlane.js';
|
|
9
9
|
import { P_ANCHOR, P_DEVICE, P_FRAME, P_HIT_TEST, P_MESH, P_PLANE, P_SESSION, P_SPACE, P_WEBGL_LAYER, } from '../private.js';
|
|
10
|
+
import { XRCPUDepthInformation, } from '../depth/XRDepthInformation.js';
|
|
10
11
|
import { XRAnchorSet, XRAnchorUtils } from '../anchors/XRAnchor.js';
|
|
11
12
|
import { XRHitTestResult, XRHitTestSource, } from '../hittest/XRHitTest.js';
|
|
12
13
|
import { XRInputSourcesChangeEvent, } from '../events/XRInputSourcesChangeEvent.js';
|
|
@@ -15,6 +16,7 @@ import { XRRenderState } from './XRRenderState.js';
|
|
|
15
16
|
import { XRSessionEvent, } from '../events/XRSessionEvent.js';
|
|
16
17
|
import { XRSpace, XRSpaceUtils } from '../spaces/XRSpace.js';
|
|
17
18
|
import { XREye } from '../views/XRView.js';
|
|
19
|
+
import { XRRigidTransform } from '../primitives/XRRigidTransform.js';
|
|
18
20
|
import { XRFrame } from '../frameloop/XRFrame.js';
|
|
19
21
|
import { mat4 } from 'gl-matrix';
|
|
20
22
|
export var XREnvironmentBlendMode;
|
|
@@ -156,6 +158,9 @@ export class XRSession extends EventTarget {
|
|
|
156
158
|
if (this[P_SESSION].enabledFeatures.includes('mesh-detection')) {
|
|
157
159
|
this[P_SESSION].updateTrackedMeshes(frame);
|
|
158
160
|
}
|
|
161
|
+
if (this[P_SESSION].enabledFeatures.includes('depth-sensing')) {
|
|
162
|
+
this[P_SESSION].computeDepthSensing(frame);
|
|
163
|
+
}
|
|
159
164
|
if (this[P_SESSION].enabledFeatures.includes('hit-test')) {
|
|
160
165
|
this[P_SESSION].computeHitTestResults(frame);
|
|
161
166
|
}
|
|
@@ -281,6 +286,37 @@ export class XRSession extends EventTarget {
|
|
|
281
286
|
frame[P_FRAME].detectedMeshes.add(xrMesh);
|
|
282
287
|
});
|
|
283
288
|
},
|
|
289
|
+
depthSensingUsage: 'cpu-optimized',
|
|
290
|
+
depthSensingDataFormat: 'float32',
|
|
291
|
+
computeDepthSensing: (frame) => {
|
|
292
|
+
const sem = this[P_SESSION].device[P_DEVICE].sem;
|
|
293
|
+
if (!sem)
|
|
294
|
+
return;
|
|
295
|
+
const { depthNear, depthFar } = this[P_SESSION].renderState;
|
|
296
|
+
const baseLayer = this[P_SESSION].renderState.baseLayer;
|
|
297
|
+
if (!baseLayer)
|
|
298
|
+
return;
|
|
299
|
+
const canvas = baseLayer.context.canvas;
|
|
300
|
+
// Use a reduced resolution for depth buffer (1/4 of canvas)
|
|
301
|
+
const depthWidth = Math.max(1, Math.floor(canvas.width / 4));
|
|
302
|
+
const depthHeight = Math.max(1, Math.floor(canvas.height / 4));
|
|
303
|
+
const eyes = this[P_SESSION].mode === 'inline'
|
|
304
|
+
? [XREye.None]
|
|
305
|
+
: [XREye.Left, XREye.Right];
|
|
306
|
+
for (const eye of eyes) {
|
|
307
|
+
const projectionMatrix = this[P_SESSION].getProjectionMatrix(eye);
|
|
308
|
+
const viewSpace = this[P_SESSION].device.viewSpaces[eye];
|
|
309
|
+
const viewGlobalMatrix = XRSpaceUtils.calculateGlobalOffsetMatrix(viewSpace);
|
|
310
|
+
const viewMatrix = mat4.create();
|
|
311
|
+
mat4.invert(viewMatrix, viewGlobalMatrix);
|
|
312
|
+
const result = sem.computeDepthBuffer(viewMatrix, projectionMatrix, depthWidth, depthHeight, depthNear, depthFar);
|
|
313
|
+
if (result) {
|
|
314
|
+
const depthInfo = new XRCPUDepthInformation(result.data, result.width, result.height, new XRRigidTransform(), // identity: depth buffer is aligned with view
|
|
315
|
+
result.rawValueToMeters, this[P_SESSION].depthSensingDataFormat);
|
|
316
|
+
frame[P_FRAME].depthDataMap.set(eye, depthInfo);
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
},
|
|
284
320
|
hitTestSources: new Set(),
|
|
285
321
|
computeHitTestResults: (frame) => {
|
|
286
322
|
const sem = this[P_SESSION].device[P_DEVICE].sem;
|
|
@@ -350,6 +386,12 @@ export class XRSession extends EventTarget {
|
|
|
350
386
|
get interactionMode() {
|
|
351
387
|
return this[P_SESSION].device[P_DEVICE].interactionMode;
|
|
352
388
|
}
|
|
389
|
+
get depthUsage() {
|
|
390
|
+
return this[P_SESSION].depthSensingUsage;
|
|
391
|
+
}
|
|
392
|
+
get depthDataFormat() {
|
|
393
|
+
return this[P_SESSION].depthSensingDataFormat;
|
|
394
|
+
}
|
|
353
395
|
updateRenderState(state = {}) {
|
|
354
396
|
var _a, _b, _c, _d;
|
|
355
397
|
if (this[P_SESSION].ended) {
|