@xviewer.js/core 1.0.0-alpha.8 → 1.0.0-beta.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/dist/module.js CHANGED
@@ -1,4 +1,4 @@
1
- import { Mesh, EquirectangularReflectionMapping, FileLoader, TextureLoader, MathUtils, Vector3, Quaternion, Raycaster, Vector2, Spherical, Object3D, BoxGeometry, SphereGeometry, PlaneGeometry, HalfFloatType, FloatType, UnsignedByteType, OrthographicCamera, BufferGeometry, Float32BufferAttribute, WebGLRenderTarget, ClampToEdgeWrapping, NearestFilter, LinearFilter, LinearMipMapLinearFilter, SRGBColorSpace, WebGLCubeRenderTarget, DataTexture, RGBAFormat, UVMapping, Scene, PerspectiveCamera, WebGLRenderer, PCFSoftShadowMap, LoadingManager, LinearToneMapping } from 'three';
1
+ import { Mesh, EquirectangularReflectionMapping, FileLoader, TextureLoader, MathUtils, Vector3, Quaternion, Raycaster, Vector2, Spherical, Object3D, BoxGeometry, SphereGeometry, PlaneGeometry, HalfFloatType, FloatType, UnsignedByteType, OrthographicCamera, BufferGeometry, Float32BufferAttribute, WebGLRenderTarget, ClampToEdgeWrapping, NearestFilter, LinearFilter, LinearMipMapLinearFilter, SRGBColorSpace, WebGLCubeRenderTarget, DataTexture, RGBAFormat, UVMapping, Scene, LinearToneMapping, PerspectiveCamera, WebGLRenderer, PCFSoftShadowMap, LoadingManager } from 'three';
2
2
  import { EXRLoader } from 'three/examples/jsm/loaders/EXRLoader.js';
3
3
  import { FBXLoader } from 'three/examples/jsm/loaders/FBXLoader.js';
4
4
  import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader.js';
@@ -135,6 +135,10 @@ function mixin(derivedCtor, baseCtors) {
135
135
  });
136
136
  }
137
137
 
138
+ function getClassInstance(constructor, args = []) {
139
+ return typeof constructor === "function" ? new constructor(...args) : constructor;
140
+ }
141
+
138
142
  /**
139
143
  * The Ease class provides a collection of easing functions for use with tween.js.
140
144
  */ var Easing = {
@@ -1155,18 +1159,65 @@ class aTextureLoader extends aLoader {
1155
1159
  }
1156
1160
  }
1157
1161
 
1162
+ /******************************************************************************
1163
+ Copyright (c) Microsoft Corporation.
1164
+
1165
+ Permission to use, copy, modify, and/or distribute this software for any
1166
+ purpose with or without fee is hereby granted.
1167
+
1168
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
1169
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1170
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1171
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1172
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1173
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1174
+ PERFORMANCE OF THIS SOFTWARE.
1175
+ ***************************************************************************** */
1176
+ /* global Reflect, Promise, SuppressedError, Symbol */
1177
+
1178
+
1179
+ function __decorate(decorators, target, key, desc) {
1180
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1181
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1182
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1183
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
1184
+ }
1185
+
1186
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
1187
+ var e = new Error(message);
1188
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
1189
+ };
1190
+
1191
+ class ClassProperties {
1192
+ property(propertyKey, options = {}) {
1193
+ this._properties[propertyKey] = options;
1194
+ return this;
1195
+ }
1196
+ applyProperties(target) {
1197
+ Object.assign(target, this._properties);
1198
+ return target;
1199
+ }
1200
+ constructor(clsName){
1201
+ this.clsName = clsName;
1202
+ this._properties = Object.create(null);
1203
+ }
1204
+ }
1158
1205
  class PropertyManager {
1159
- static _getProperties(target) {
1160
- return this._propertiesMap.get(target.constructor);
1206
+ static _hasProperties(constructor) {
1207
+ return PropertyManager._propertyMap.has(constructor);
1161
1208
  }
1162
- static _hasProperties(target) {
1163
- return this._propertiesMap.has(target.constructor);
1209
+ static _getProperties(constructor, autoAdd = true) {
1210
+ let props = PropertyManager._propertyMap.get(constructor);
1211
+ if (props === undefined && autoAdd) {
1212
+ props = Object.create(null);
1213
+ PropertyManager._propertyMap.set(constructor, props);
1214
+ }
1215
+ return props;
1164
1216
  }
1165
- static _getMergedProperties(target) {
1217
+ static _getMergedProperties(constructor) {
1166
1218
  let props = null;
1167
- let constructor = target.constructor;
1168
1219
  while(constructor !== Object.constructor.prototype){
1169
- let values = PropertyManager._propertiesMap.get(constructor);
1220
+ let values = PropertyManager._getProperties(constructor, false);
1170
1221
  if (values) {
1171
1222
  if (props === null) {
1172
1223
  props = Object.create(null);
@@ -1177,17 +1228,29 @@ class PropertyManager {
1177
1228
  }
1178
1229
  return props;
1179
1230
  }
1231
+ static _getClassProperties(clsName, autoAdd = true) {
1232
+ let props = PropertyManager._classMap.get(clsName);
1233
+ if (props === undefined && autoAdd) {
1234
+ props = new ClassProperties(clsName);
1235
+ PropertyManager._classMap.set(clsName, props);
1236
+ }
1237
+ return props;
1238
+ }
1239
+ static _applyClassProperties(clsName, constructor) {
1240
+ let cls = PropertyManager._getClassProperties(clsName, false);
1241
+ if (cls) {
1242
+ return cls.applyProperties(PropertyManager._getProperties(constructor));
1243
+ } else {
1244
+ return PropertyManager._getProperties(constructor, false);
1245
+ }
1246
+ }
1180
1247
  }
1181
- PropertyManager._propertiesMap = new Map();
1248
+ PropertyManager._classMap = new Map();
1249
+ PropertyManager._propertyMap = new Map();
1182
1250
  function property(target, propertyKey) {
1183
1251
  let options = null;
1184
1252
  function normalized(target, propertyKey) {
1185
- let targetMap = PropertyManager._propertiesMap.get(target.constructor);
1186
- if (targetMap === undefined) {
1187
- targetMap = Object.create(null);
1188
- PropertyManager._propertiesMap.set(target.constructor, targetMap);
1189
- }
1190
- targetMap[propertyKey] = options;
1253
+ PropertyManager._getProperties(target.constructor)[propertyKey] = options;
1191
1254
  }
1192
1255
  if (target === undefined) {
1193
1256
  return property({});
@@ -1200,12 +1263,6 @@ function property(target, propertyKey) {
1200
1263
  }
1201
1264
  }
1202
1265
 
1203
- function _ts_decorate$3(decorators, target, key, desc) {
1204
- var c = arguments.length, r = c < 3 ? target : desc, d;
1205
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1206
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1207
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1208
- }
1209
1266
  const CinestationBlendStyle = {
1210
1267
  Linear: Easing.Linear.None,
1211
1268
  QuadraticIn: Easing.Quadratic.In,
@@ -1218,12 +1275,12 @@ class CinestationBlendDefinition {
1218
1275
  this.time = 4;
1219
1276
  }
1220
1277
  }
1221
- _ts_decorate$3([
1278
+ __decorate([
1222
1279
  property({
1223
1280
  value: CinestationBlendStyle
1224
1281
  })
1225
1282
  ], CinestationBlendDefinition.prototype, "style", void 0);
1226
- _ts_decorate$3([
1283
+ __decorate([
1227
1284
  property
1228
1285
  ], CinestationBlendDefinition.prototype, "time", void 0);
1229
1286
 
@@ -1287,12 +1344,6 @@ class Component extends ObjectInstance {
1287
1344
  }
1288
1345
  }
1289
1346
 
1290
- function _ts_decorate$2(decorators, target, key, desc) {
1291
- var c = arguments.length, r = c < 3 ? target : desc, d;
1292
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1293
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1294
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1295
- }
1296
1347
  const { clamp: clamp$1, lerp } = MathUtils;
1297
1348
  class CinestationBrain extends Component {
1298
1349
  get vcam() {
@@ -1365,16 +1416,10 @@ class CinestationBrain extends Component {
1365
1416
  this.onChanged = null;
1366
1417
  }
1367
1418
  }
1368
- _ts_decorate$2([
1419
+ __decorate([
1369
1420
  property
1370
1421
  ], CinestationBrain.prototype, "brainBlend", void 0);
1371
1422
 
1372
- function _ts_decorate$1(decorators, target, key, desc) {
1373
- var c = arguments.length, r = c < 3 ? target : desc, d;
1374
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1375
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1376
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1377
- }
1378
1423
  class VirtualCamera extends Component {
1379
1424
  get finalPosition() {
1380
1425
  return this._finalPosition.copy(this.node.position).add(this.correctPosition);
@@ -1416,17 +1461,17 @@ class VirtualCamera extends Component {
1416
1461
  this.trackedObjectOffset = new Vector3();
1417
1462
  }
1418
1463
  }
1419
- _ts_decorate$1([
1464
+ __decorate([
1420
1465
  property({
1421
1466
  dir: "lens"
1422
1467
  })
1423
1468
  ], VirtualCamera.prototype, "fov", void 0);
1424
- _ts_decorate$1([
1469
+ __decorate([
1425
1470
  property({
1426
1471
  dir: "lens"
1427
1472
  })
1428
1473
  ], VirtualCamera.prototype, "near", void 0);
1429
- _ts_decorate$1([
1474
+ __decorate([
1430
1475
  property({
1431
1476
  dir: "lens"
1432
1477
  })
@@ -1962,12 +2007,6 @@ function quarticDamp(current, target, dampTime, deltaTime) {
1962
2007
 
1963
2008
  const Vector3_ZERO = new Vector3();
1964
2009
 
1965
- function _ts_decorate(decorators, target, key, desc) {
1966
- var c = arguments.length, r = c < 3 ? target : desc, d;
1967
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1968
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1969
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1970
- }
1971
2010
  const { clamp, degToRad } = MathUtils;
1972
2011
  const { abs, tan } = Math;
1973
2012
  const VCamFreeLookMode = {
@@ -2231,37 +2270,37 @@ FreelookVirtualCamera.__xAxis = new Vector3();
2231
2270
  FreelookVirtualCamera.__yAxis = new Vector3();
2232
2271
  FreelookVirtualCamera.__quat = new Quaternion();
2233
2272
  FreelookVirtualCamera.__spherical = new Spherical();
2234
- _ts_decorate([
2273
+ __decorate([
2235
2274
  property({
2236
2275
  value: VCamFreeLookMode
2237
2276
  })
2238
2277
  ], FreelookVirtualCamera.prototype, "mode", void 0);
2239
- _ts_decorate([
2278
+ __decorate([
2240
2279
  property({
2241
2280
  dir: "set"
2242
2281
  })
2243
2282
  ], FreelookVirtualCamera.prototype, "forbidX", void 0);
2244
- _ts_decorate([
2283
+ __decorate([
2245
2284
  property({
2246
2285
  dir: "set"
2247
2286
  })
2248
2287
  ], FreelookVirtualCamera.prototype, "forbidY", void 0);
2249
- _ts_decorate([
2288
+ __decorate([
2250
2289
  property({
2251
2290
  dir: "set"
2252
2291
  })
2253
2292
  ], FreelookVirtualCamera.prototype, "forbidZ", void 0);
2254
- _ts_decorate([
2293
+ __decorate([
2255
2294
  property({
2256
2295
  dir: "set"
2257
2296
  })
2258
2297
  ], FreelookVirtualCamera.prototype, "forbidPanX", void 0);
2259
- _ts_decorate([
2298
+ __decorate([
2260
2299
  property({
2261
2300
  dir: "set"
2262
2301
  })
2263
2302
  ], FreelookVirtualCamera.prototype, "forbidPanY", void 0);
2264
- _ts_decorate([
2303
+ __decorate([
2265
2304
  property({
2266
2305
  dir: "set"
2267
2306
  })
@@ -2285,6 +2324,53 @@ class Plane extends Mesh {
2285
2324
  }
2286
2325
  }
2287
2326
 
2327
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2328
+ try {
2329
+ var info = gen[key](arg);
2330
+ var value = info.value;
2331
+ } catch (error) {
2332
+ reject(error);
2333
+ return;
2334
+ }
2335
+ if (info.done) resolve(value);
2336
+ else Promise.resolve(value).then(_next, _throw);
2337
+ }
2338
+ function _async_to_generator(fn) {
2339
+ return function() {
2340
+ var self = this, args = arguments;
2341
+
2342
+ return new Promise(function(resolve, reject) {
2343
+ var gen = fn.apply(self, args);
2344
+
2345
+ function _next(value) {
2346
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
2347
+ }
2348
+
2349
+ function _throw(err) {
2350
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
2351
+ }
2352
+
2353
+ _next(undefined);
2354
+ });
2355
+ };
2356
+ }
2357
+
2358
+ function _object_without_properties_loose(source, excluded) {
2359
+ if (source == null) return {};
2360
+
2361
+ var target = {};
2362
+ var sourceKeys = Object.keys(source);
2363
+ var key, i;
2364
+
2365
+ for (i = 0; i < sourceKeys.length; i++) {
2366
+ key = sourceKeys[i];
2367
+ if (excluded.indexOf(key) >= 0) continue;
2368
+ target[key] = source[key];
2369
+ }
2370
+
2371
+ return target;
2372
+ }
2373
+
2288
2374
  class Caller {
2289
2375
  get pause() {
2290
2376
  return this._pause;
@@ -2789,7 +2875,12 @@ class ResourceManager {
2789
2875
  this._loaders.set(ext, loader);
2790
2876
  }
2791
2877
  }
2792
- loadAsset({ url, ext, onProgress, ...props }) {
2878
+ loadAsset(_param) {
2879
+ var { url, ext, onProgress } = _param, props = _object_without_properties_loose(_param, [
2880
+ "url",
2881
+ "ext",
2882
+ "onProgress"
2883
+ ]);
2793
2884
  return new Promise((resolve, reject)=>{
2794
2885
  const info = ResourceManager._parseURL(url);
2795
2886
  const texSettings = ResourceManager._splitTextureSettings(props);
@@ -2812,7 +2903,7 @@ class ResourceManager {
2812
2903
  onError: reject
2813
2904
  });
2814
2905
  } else {
2815
- reject("missing loader for " + ext);
2906
+ reject("ResourceManager.loadAsset: missing loader for " + ext);
2816
2907
  }
2817
2908
  }
2818
2909
  });
@@ -2890,7 +2981,7 @@ class PluginManager {
2890
2981
  return ins;
2891
2982
  }
2892
2983
  addPlugin(plugin) {
2893
- const ins = Viewer._getClassInstance(plugin);
2984
+ const ins = getClassInstance(plugin);
2894
2985
  if (this._pluginsMap.has(ins.constructor)) {
2895
2986
  Logger.warn("Plugin already added");
2896
2987
  } else {
@@ -2898,6 +2989,7 @@ class PluginManager {
2898
2989
  ins.install && ins.install();
2899
2990
  this._plugins.push(ins);
2900
2991
  this._pluginsMap.set(ins.constructor, ins);
2992
+ PropertyManager._applyClassProperties(ins.type, ins.constructor);
2901
2993
  }
2902
2994
  return ins;
2903
2995
  }
@@ -2918,9 +3010,6 @@ class PluginManager {
2918
3010
  }
2919
3011
 
2920
3012
  class Viewer extends EventEmitter {
2921
- static _getClassInstance(constructor, args = []) {
2922
- return typeof constructor === "function" ? new constructor(...args) : constructor;
2923
- }
2924
3013
  static _setDirectLightShadow(shadow, props) {
2925
3014
  const shadowCamera = shadow.camera;
2926
3015
  for(let i = 0; i < props.length && i < 6; i++){
@@ -3035,6 +3124,7 @@ class Viewer extends EventEmitter {
3035
3124
  this.addLoader(aGLTFLoader);
3036
3125
  this.addLoader(aHDRLoader);
3037
3126
  this.addLoader(aTextureLoader);
3127
+ this.addLoader(aJSONLoader);
3038
3128
  }
3039
3129
  _frame(time) {
3040
3130
  this._time = time;
@@ -3148,20 +3238,30 @@ class Viewer extends EventEmitter {
3148
3238
  addLoader(Loader) {
3149
3239
  this._resourceManager.addLoader(Loader);
3150
3240
  }
3151
- async load({ url, ext, onProgress, castShadow = false, receiveShadow = false, ...props }) {
3152
- const node = await this.loadAsset({
3153
- url,
3154
- ext,
3155
- onProgress
3156
- });
3157
- if (castShadow || receiveShadow) {
3158
- node.userData.meshData.meshes.forEach((v)=>{
3159
- v.castShadow = castShadow;
3160
- v.receiveShadow = receiveShadow;
3241
+ load(_param) {
3242
+ var _this = this;
3243
+ return _async_to_generator(function*() {
3244
+ var { url, ext, onProgress, castShadow = false, receiveShadow = false } = _param, props = _object_without_properties_loose(_param, [
3245
+ "url",
3246
+ "ext",
3247
+ "onProgress",
3248
+ "castShadow",
3249
+ "receiveShadow"
3250
+ ]);
3251
+ const node = yield _this.loadAsset({
3252
+ url,
3253
+ ext,
3254
+ onProgress
3161
3255
  });
3162
- }
3163
- this.addNode(node, props);
3164
- return node;
3256
+ if (castShadow || receiveShadow) {
3257
+ node.userData.meshData.meshes.forEach((v)=>{
3258
+ v.castShadow = castShadow;
3259
+ v.receiveShadow = receiveShadow;
3260
+ });
3261
+ }
3262
+ _this.addNode(node, props);
3263
+ return node;
3264
+ })();
3165
3265
  }
3166
3266
  tween(target) {
3167
3267
  return this._tweenManager.tween(target);
@@ -3210,9 +3310,20 @@ class Viewer extends EventEmitter {
3210
3310
  removeComponent(node, component) {
3211
3311
  return this._componentManager.removeComponent(node, component);
3212
3312
  }
3213
- addNode(object, { args, debug, scale, position, rotation, shadowArgs, makeDefault, component, parent = this._scene, ...props } = {}) {
3313
+ addNode(object, _param = {}) {
3314
+ var { args, debug, scale, position, rotation, shadowArgs, makeDefault, component, parent = this._scene } = _param, props = _object_without_properties_loose(_param, [
3315
+ "args",
3316
+ "debug",
3317
+ "scale",
3318
+ "position",
3319
+ "rotation",
3320
+ "shadowArgs",
3321
+ "makeDefault",
3322
+ "component",
3323
+ "parent"
3324
+ ]);
3214
3325
  let node = null;
3215
- let ins = Viewer._getClassInstance(object, args);
3326
+ let ins = getClassInstance(object, args);
3216
3327
  if (ins.isObject3D) {
3217
3328
  node = ins;
3218
3329
  parent.add(ins);
@@ -3221,7 +3332,7 @@ class Viewer extends EventEmitter {
3221
3332
  parent.add(node);
3222
3333
  this._componentManager.addComponent(node, ins);
3223
3334
  } else {
3224
- throw Error("unsuport object");
3335
+ throw Error("Viewer.addNode: unsuport object");
3225
3336
  }
3226
3337
  if (component) {
3227
3338
  const components = Array.isArray(component) ? component : [
@@ -3310,7 +3421,7 @@ class Viewer extends EventEmitter {
3310
3421
  if (target.every((v)=>v.isMaterial)) {
3311
3422
  Viewer.CompileMaterial(this._renderer, this._scene, this._camera, target);
3312
3423
  } else {
3313
- throw Error("unsuport material");
3424
+ throw Error("Viewer.compile: unsuport material");
3314
3425
  }
3315
3426
  } else if (typeof target === "object") {
3316
3427
  if (target.isMaterial) {
@@ -3332,12 +3443,30 @@ class Viewer extends EventEmitter {
3332
3443
  Viewer.CompileObject3D(this._renderer, this._scene, this._camera, this._scene);
3333
3444
  }
3334
3445
  }
3335
- constructor({ root, canvas, autoStart = true, autoResize = true, shadows = false, camera = {
3336
- fov: 45,
3337
- near: 1,
3338
- far: 1000,
3339
- position: new Vector3(0, 0, 4)
3340
- }, targetFrameRate = -1, colorSpace = SRGBColorSpace, toneMapping = LinearToneMapping, toneMappingExposure = 1, maxDPR = 1.5, path = "", resourcePath = "", dracoPath = "https://www.gstatic.com/draco/v1/decoders/", loader = {}, tasker = {}, ...webglOpts } = {}){
3446
+ constructor(_param = {}){
3447
+ var { root, canvas, autoStart = true, autoResize = true, shadows = false, camera = {
3448
+ fov: 45,
3449
+ near: 1,
3450
+ far: 1000,
3451
+ position: new Vector3(0, 0, 4)
3452
+ }, targetFrameRate = -1, colorSpace = SRGBColorSpace, toneMapping = LinearToneMapping, toneMappingExposure = 1, maxDPR = 1.5, path = "", resourcePath = "", dracoPath = "https://www.gstatic.com/draco/v1/decoders/", loader = {}, tasker = {} } = _param, webglOpts = _object_without_properties_loose(_param, [
3453
+ "root",
3454
+ "canvas",
3455
+ "autoStart",
3456
+ "autoResize",
3457
+ "shadows",
3458
+ "camera",
3459
+ "targetFrameRate",
3460
+ "colorSpace",
3461
+ "toneMapping",
3462
+ "toneMappingExposure",
3463
+ "maxDPR",
3464
+ "path",
3465
+ "resourcePath",
3466
+ "dracoPath",
3467
+ "loader",
3468
+ "tasker"
3469
+ ]);
3341
3470
  super();
3342
3471
  this._dpr = 1;
3343
3472
  this._width = 1;
@@ -3417,5 +3546,5 @@ class Plugin extends ObjectInstance {
3417
3546
  }
3418
3547
  }
3419
3548
 
3420
- export { Box, CinestationBlendDefinition, CinestationBrain, Component, EventEmitter, FreelookVirtualCamera, Logger, ObjectInstance, Plane, Plugin, PropertyManager, Sphere, SystemInfo, Tween, TweenChain, TweenManager, Viewer, VirtualCamera, aEXRLoader, aFBXLoader, aGLTFLoader, aHDRLoader, aJSONLoader, aTextureLoader, mixin, property };
3549
+ export { Box, CinestationBlendDefinition, CinestationBrain, Component, EventEmitter, FreelookVirtualCamera, Logger, ObjectInstance, Plane, Plugin, PropertyManager, Sphere, SystemInfo, Tween, TweenChain, TweenManager, Viewer, VirtualCamera, aEXRLoader, aFBXLoader, aGLTFLoader, aHDRLoader, aJSONLoader, aTextureLoader, getClassInstance, mixin, property };
3421
3550
  //# sourceMappingURL=module.js.map