lythreeframe 1.0.46 → 1.0.48
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/bundle.cjs.js +45 -27
- package/dist/bundle.esm.js +45 -28
- package/dist/index.d.ts +2 -0
- package/dist/lythreeframe/Frame/Parameters/AppParameter.d.ts +2 -0
- package/dist/lythreeframe/Frame/Parameters/ViewportParameters.d.ts +5 -0
- package/dist/lythreeframe/Frame/Viewport.d.ts +3 -2
- package/dist/lythreeframe/ThreeJsApp.d.ts +1 -1
- package/package.json +1 -1
package/dist/bundle.cjs.js
CHANGED
|
@@ -1435,9 +1435,6 @@ const DefaultOutlineParams = {
|
|
|
1435
1435
|
|
|
1436
1436
|
class Viewport {
|
|
1437
1437
|
get canvas() {
|
|
1438
|
-
if (!this._canvas) {
|
|
1439
|
-
throw Error("Canvas is not initialized");
|
|
1440
|
-
}
|
|
1441
1438
|
return this._canvas;
|
|
1442
1439
|
}
|
|
1443
1440
|
get renderer() {
|
|
@@ -1452,7 +1449,7 @@ class Viewport {
|
|
|
1452
1449
|
}
|
|
1453
1450
|
return this._app;
|
|
1454
1451
|
}
|
|
1455
|
-
constructor(app,
|
|
1452
|
+
constructor(app, viewportParam, rendererParam = { antialias: true }, postProcessParam = {}) {
|
|
1456
1453
|
this._renderer = null;
|
|
1457
1454
|
this.labelRenderer = null;
|
|
1458
1455
|
this._app = null;
|
|
@@ -1475,31 +1472,44 @@ class Viewport {
|
|
|
1475
1472
|
this.outlineObjects = [];
|
|
1476
1473
|
this.postProcessParam = postProcessParam;
|
|
1477
1474
|
this._app = app;
|
|
1478
|
-
let element =
|
|
1479
|
-
if (
|
|
1480
|
-
|
|
1475
|
+
let element = null;
|
|
1476
|
+
if (viewportParam.elementId) {
|
|
1477
|
+
element = document.getElementById(viewportParam.elementId);
|
|
1478
|
+
if (!element) {
|
|
1479
|
+
throw Error(`Can not find domElement which id is ${viewportParam.elementId}`);
|
|
1480
|
+
}
|
|
1481
1481
|
}
|
|
1482
|
+
let width = element ? element.clientWidth : 512;
|
|
1483
|
+
let height = element ? element.clientHeight : 512;
|
|
1482
1484
|
this._renderer = new webgpu.WebGPURenderer(rendererParam);
|
|
1483
1485
|
this._renderer.setPixelRatio(window.devicePixelRatio);
|
|
1484
|
-
this._renderer.setSize(
|
|
1486
|
+
this._renderer.setSize(width, height);
|
|
1485
1487
|
this._renderer.shadowMap.enabled = true;
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
this.resizeObserver = new ResizeObserver((entries) => {
|
|
1496
|
-
for (let entry of entries) {
|
|
1497
|
-
if (entry.contentBoxSize) {
|
|
1498
|
-
this.onWindowResize();
|
|
1499
|
-
}
|
|
1488
|
+
if (viewportParam.isLabelRendererNeeded) {
|
|
1489
|
+
this.labelRenderer = new Addons_js.CSS2DRenderer();
|
|
1490
|
+
this.labelRenderer.setSize(width, height);
|
|
1491
|
+
this.labelRenderer.domElement.style.pointerEvents = 'none';
|
|
1492
|
+
this.labelRenderer.domElement.style.position = 'absolute';
|
|
1493
|
+
this.labelRenderer.domElement.style.top = '0px';
|
|
1494
|
+
this.labelRenderer.domElement.className = 'scene-labelRenderer';
|
|
1495
|
+
if (element) {
|
|
1496
|
+
element.appendChild(this.labelRenderer.domElement);
|
|
1500
1497
|
}
|
|
1501
|
-
}
|
|
1502
|
-
|
|
1498
|
+
}
|
|
1499
|
+
if (element) {
|
|
1500
|
+
element.appendChild(this._renderer.domElement);
|
|
1501
|
+
this._canvas = element;
|
|
1502
|
+
}
|
|
1503
|
+
if (this._canvas) {
|
|
1504
|
+
this.resizeObserver = new ResizeObserver((entries) => {
|
|
1505
|
+
for (let entry of entries) {
|
|
1506
|
+
if (entry.contentBoxSize) {
|
|
1507
|
+
this.onWindowResize();
|
|
1508
|
+
}
|
|
1509
|
+
}
|
|
1510
|
+
});
|
|
1511
|
+
this.resizeObserver.observe(this._canvas);
|
|
1512
|
+
}
|
|
1503
1513
|
this.app.onCameraChangedDelegate.add(() => {
|
|
1504
1514
|
this.setupPostProcess();
|
|
1505
1515
|
});
|
|
@@ -2205,6 +2215,11 @@ const DefaultCameraParam = {
|
|
|
2205
2215
|
}
|
|
2206
2216
|
};
|
|
2207
2217
|
|
|
2218
|
+
const DefaultViewportParam = {
|
|
2219
|
+
elementId: null,
|
|
2220
|
+
isLabelRendererNeeded: false
|
|
2221
|
+
};
|
|
2222
|
+
|
|
2208
2223
|
const DefaultRenderParam = {
|
|
2209
2224
|
antialias: true,
|
|
2210
2225
|
};
|
|
@@ -2212,6 +2227,7 @@ const DefaultAppParam = {
|
|
|
2212
2227
|
renderParam: DefaultRenderParam,
|
|
2213
2228
|
cameraParam: DefaultCameraParam,
|
|
2214
2229
|
postProcessParam: DefaultPostProcessParam,
|
|
2230
|
+
viewportParam: DefaultViewportParam,
|
|
2215
2231
|
classes: {
|
|
2216
2232
|
assetManagerClass: AssetManager,
|
|
2217
2233
|
controllerClass: Controller,
|
|
@@ -2245,12 +2261,13 @@ class ThreeJsApp {
|
|
|
2245
2261
|
get onCameraChangedDelegate() {
|
|
2246
2262
|
return this._onCameraChangedDelegate;
|
|
2247
2263
|
}
|
|
2248
|
-
constructor(
|
|
2249
|
-
this._appParam = {};
|
|
2264
|
+
constructor(appParam = DefaultAppParam) {
|
|
2265
|
+
this._appParam = { viewportParam: DefaultViewportParam };
|
|
2250
2266
|
this._onCameraChangedDelegate = new Delegate();
|
|
2251
2267
|
this._appParam.cameraParam = appParam.cameraParam ? appParam.cameraParam : DefaultCameraParam;
|
|
2252
2268
|
this._appParam.renderParam = appParam.renderParam ? appParam.renderParam : DefaultRenderParam;
|
|
2253
2269
|
this._appParam.postProcessParam = appParam.postProcessParam ? appParam.postProcessParam : DefaultPostProcessParam;
|
|
2270
|
+
this._appParam.viewportParam = appParam.viewportParam ? appParam.viewportParam : DefaultViewportParam;
|
|
2254
2271
|
this._appParam.classes = appParam.classes ? appParam.classes : {
|
|
2255
2272
|
assetManagerClass: AssetManager,
|
|
2256
2273
|
controllerClass: Controller,
|
|
@@ -2260,7 +2277,7 @@ class ThreeJsApp {
|
|
|
2260
2277
|
this._clock = new webgpu.Clock();
|
|
2261
2278
|
this._camera = CameraFactory.createCamera(this._appParam.cameraParam);
|
|
2262
2279
|
this._world = new this._appParam.classes.worldClass(this);
|
|
2263
|
-
this._viewport = new this._appParam.classes.viewportClass(this,
|
|
2280
|
+
this._viewport = new this._appParam.classes.viewportClass(this, this._appParam.viewportParam, this._appParam.renderParam, this._appParam.postProcessParam);
|
|
2264
2281
|
this._controller = new this._appParam.classes.controllerClass(this);
|
|
2265
2282
|
this._assetManager = new this._appParam.classes.assetManagerClass(this);
|
|
2266
2283
|
this.viewport.renderer.setAnimationLoop(() => {
|
|
@@ -3156,6 +3173,7 @@ exports.DefaultRenderParam = DefaultRenderParam;
|
|
|
3156
3173
|
exports.DefaultSSRParam = DefaultSSRParam;
|
|
3157
3174
|
exports.DefaultSkyParam = DefaultSkyParam;
|
|
3158
3175
|
exports.DefaultToneMappingParams = DefaultToneMappingParams;
|
|
3176
|
+
exports.DefaultViewportParam = DefaultViewportParam;
|
|
3159
3177
|
exports.Delegate = Delegate;
|
|
3160
3178
|
exports.DirectionalLightActor = DirectionalLightActor;
|
|
3161
3179
|
exports.DirectionalLightComponent = DirectionalLightComponent;
|
package/dist/bundle.esm.js
CHANGED
|
@@ -1433,9 +1433,6 @@ const DefaultOutlineParams = {
|
|
|
1433
1433
|
|
|
1434
1434
|
class Viewport {
|
|
1435
1435
|
get canvas() {
|
|
1436
|
-
if (!this._canvas) {
|
|
1437
|
-
throw Error("Canvas is not initialized");
|
|
1438
|
-
}
|
|
1439
1436
|
return this._canvas;
|
|
1440
1437
|
}
|
|
1441
1438
|
get renderer() {
|
|
@@ -1450,7 +1447,7 @@ class Viewport {
|
|
|
1450
1447
|
}
|
|
1451
1448
|
return this._app;
|
|
1452
1449
|
}
|
|
1453
|
-
constructor(app,
|
|
1450
|
+
constructor(app, viewportParam, rendererParam = { antialias: true }, postProcessParam = {}) {
|
|
1454
1451
|
this._renderer = null;
|
|
1455
1452
|
this.labelRenderer = null;
|
|
1456
1453
|
this._app = null;
|
|
@@ -1473,31 +1470,44 @@ class Viewport {
|
|
|
1473
1470
|
this.outlineObjects = [];
|
|
1474
1471
|
this.postProcessParam = postProcessParam;
|
|
1475
1472
|
this._app = app;
|
|
1476
|
-
let element =
|
|
1477
|
-
if (
|
|
1478
|
-
|
|
1473
|
+
let element = null;
|
|
1474
|
+
if (viewportParam.elementId) {
|
|
1475
|
+
element = document.getElementById(viewportParam.elementId);
|
|
1476
|
+
if (!element) {
|
|
1477
|
+
throw Error(`Can not find domElement which id is ${viewportParam.elementId}`);
|
|
1478
|
+
}
|
|
1479
1479
|
}
|
|
1480
|
+
let width = element ? element.clientWidth : 512;
|
|
1481
|
+
let height = element ? element.clientHeight : 512;
|
|
1480
1482
|
this._renderer = new WebGPURenderer(rendererParam);
|
|
1481
1483
|
this._renderer.setPixelRatio(window.devicePixelRatio);
|
|
1482
|
-
this._renderer.setSize(
|
|
1484
|
+
this._renderer.setSize(width, height);
|
|
1483
1485
|
this._renderer.shadowMap.enabled = true;
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
this.resizeObserver = new ResizeObserver((entries) => {
|
|
1494
|
-
for (let entry of entries) {
|
|
1495
|
-
if (entry.contentBoxSize) {
|
|
1496
|
-
this.onWindowResize();
|
|
1497
|
-
}
|
|
1486
|
+
if (viewportParam.isLabelRendererNeeded) {
|
|
1487
|
+
this.labelRenderer = new CSS2DRenderer();
|
|
1488
|
+
this.labelRenderer.setSize(width, height);
|
|
1489
|
+
this.labelRenderer.domElement.style.pointerEvents = 'none';
|
|
1490
|
+
this.labelRenderer.domElement.style.position = 'absolute';
|
|
1491
|
+
this.labelRenderer.domElement.style.top = '0px';
|
|
1492
|
+
this.labelRenderer.domElement.className = 'scene-labelRenderer';
|
|
1493
|
+
if (element) {
|
|
1494
|
+
element.appendChild(this.labelRenderer.domElement);
|
|
1498
1495
|
}
|
|
1499
|
-
}
|
|
1500
|
-
|
|
1496
|
+
}
|
|
1497
|
+
if (element) {
|
|
1498
|
+
element.appendChild(this._renderer.domElement);
|
|
1499
|
+
this._canvas = element;
|
|
1500
|
+
}
|
|
1501
|
+
if (this._canvas) {
|
|
1502
|
+
this.resizeObserver = new ResizeObserver((entries) => {
|
|
1503
|
+
for (let entry of entries) {
|
|
1504
|
+
if (entry.contentBoxSize) {
|
|
1505
|
+
this.onWindowResize();
|
|
1506
|
+
}
|
|
1507
|
+
}
|
|
1508
|
+
});
|
|
1509
|
+
this.resizeObserver.observe(this._canvas);
|
|
1510
|
+
}
|
|
1501
1511
|
this.app.onCameraChangedDelegate.add(() => {
|
|
1502
1512
|
this.setupPostProcess();
|
|
1503
1513
|
});
|
|
@@ -2203,6 +2213,11 @@ const DefaultCameraParam = {
|
|
|
2203
2213
|
}
|
|
2204
2214
|
};
|
|
2205
2215
|
|
|
2216
|
+
const DefaultViewportParam = {
|
|
2217
|
+
elementId: null,
|
|
2218
|
+
isLabelRendererNeeded: false
|
|
2219
|
+
};
|
|
2220
|
+
|
|
2206
2221
|
const DefaultRenderParam = {
|
|
2207
2222
|
antialias: true,
|
|
2208
2223
|
};
|
|
@@ -2210,6 +2225,7 @@ const DefaultAppParam = {
|
|
|
2210
2225
|
renderParam: DefaultRenderParam,
|
|
2211
2226
|
cameraParam: DefaultCameraParam,
|
|
2212
2227
|
postProcessParam: DefaultPostProcessParam,
|
|
2228
|
+
viewportParam: DefaultViewportParam,
|
|
2213
2229
|
classes: {
|
|
2214
2230
|
assetManagerClass: AssetManager,
|
|
2215
2231
|
controllerClass: Controller,
|
|
@@ -2243,12 +2259,13 @@ class ThreeJsApp {
|
|
|
2243
2259
|
get onCameraChangedDelegate() {
|
|
2244
2260
|
return this._onCameraChangedDelegate;
|
|
2245
2261
|
}
|
|
2246
|
-
constructor(
|
|
2247
|
-
this._appParam = {};
|
|
2262
|
+
constructor(appParam = DefaultAppParam) {
|
|
2263
|
+
this._appParam = { viewportParam: DefaultViewportParam };
|
|
2248
2264
|
this._onCameraChangedDelegate = new Delegate();
|
|
2249
2265
|
this._appParam.cameraParam = appParam.cameraParam ? appParam.cameraParam : DefaultCameraParam;
|
|
2250
2266
|
this._appParam.renderParam = appParam.renderParam ? appParam.renderParam : DefaultRenderParam;
|
|
2251
2267
|
this._appParam.postProcessParam = appParam.postProcessParam ? appParam.postProcessParam : DefaultPostProcessParam;
|
|
2268
|
+
this._appParam.viewportParam = appParam.viewportParam ? appParam.viewportParam : DefaultViewportParam;
|
|
2252
2269
|
this._appParam.classes = appParam.classes ? appParam.classes : {
|
|
2253
2270
|
assetManagerClass: AssetManager,
|
|
2254
2271
|
controllerClass: Controller,
|
|
@@ -2258,7 +2275,7 @@ class ThreeJsApp {
|
|
|
2258
2275
|
this._clock = new Clock();
|
|
2259
2276
|
this._camera = CameraFactory.createCamera(this._appParam.cameraParam);
|
|
2260
2277
|
this._world = new this._appParam.classes.worldClass(this);
|
|
2261
|
-
this._viewport = new this._appParam.classes.viewportClass(this,
|
|
2278
|
+
this._viewport = new this._appParam.classes.viewportClass(this, this._appParam.viewportParam, this._appParam.renderParam, this._appParam.postProcessParam);
|
|
2262
2279
|
this._controller = new this._appParam.classes.controllerClass(this);
|
|
2263
2280
|
this._assetManager = new this._appParam.classes.assetManagerClass(this);
|
|
2264
2281
|
this.viewport.renderer.setAnimationLoop(() => {
|
|
@@ -3137,4 +3154,4 @@ class TransformGizmo extends Pawn {
|
|
|
3137
3154
|
}
|
|
3138
3155
|
}
|
|
3139
3156
|
|
|
3140
|
-
export { Actor, AssetManager, AttachmentRules, BoxActor, BoxComponent, Controller, DefaultAppParam, DefaultBloomParam, DefaultCameraParam, DefaultDOFParam, DefaultDenoiseParam, DefaultGTAOParam, DefaultOutlineParams, DefaultPostProcessParam, DefaultRenderParam, DefaultSSRParam, DefaultSkyParam, DefaultToneMappingParams, Delegate, DirectionalLightActor, DirectionalLightComponent, FirstPerson, GeometryAssetPointer, LabelComponent, MaterialAssetPointer, MeshComponent, Orbital, PlaneActor, PlaneComponent, SceneComponent, SkyActor, SkyComponent, SphereComponent, TAssetPointer, TSmartPointer, TextureAssetPointer, ThreeJsApp, ThreeObjectLibrary, ToneMappingOptions, TransformGizmo, Viewport, WebGPUPostProcessFactory, World };
|
|
3157
|
+
export { Actor, AssetManager, AttachmentRules, BoxActor, BoxComponent, Controller, DefaultAppParam, DefaultBloomParam, DefaultCameraParam, DefaultDOFParam, DefaultDenoiseParam, DefaultGTAOParam, DefaultOutlineParams, DefaultPostProcessParam, DefaultRenderParam, DefaultSSRParam, DefaultSkyParam, DefaultToneMappingParams, DefaultViewportParam, Delegate, DirectionalLightActor, DirectionalLightComponent, FirstPerson, GeometryAssetPointer, LabelComponent, MaterialAssetPointer, MeshComponent, Orbital, PlaneActor, PlaneComponent, SceneComponent, SkyActor, SkyComponent, SphereComponent, TAssetPointer, TSmartPointer, TextureAssetPointer, ThreeJsApp, ThreeObjectLibrary, ToneMappingOptions, TransformGizmo, Viewport, WebGPUPostProcessFactory, World };
|
package/dist/index.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export type { CameraParam } from './lythreeframe/Frame/Parameters/CameraParamete
|
|
|
14
14
|
export { DefaultCameraParam } from './lythreeframe/Frame/Parameters/CameraParameter';
|
|
15
15
|
export type { AppParam, AppClass } from "./lythreeframe/Frame/Parameters/AppParameter";
|
|
16
16
|
export { DefaultRenderParam, DefaultAppParam } from "./lythreeframe/Frame/Parameters/AppParameter";
|
|
17
|
+
export type { ViewportParam } from './lythreeframe/Frame/Parameters/ViewportParameters';
|
|
18
|
+
export { DefaultViewportParam } from './lythreeframe/Frame/Parameters/ViewportParameters';
|
|
17
19
|
export { Actor } from "./lythreeframe/Object/Actor";
|
|
18
20
|
export { DirectionalLightActor } from "./lythreeframe/Object/Actors/Light/DirectionalLightActor";
|
|
19
21
|
export { BoxActor } from "./lythreeframe/Object/Actors/Shape/BoxActor";
|
|
@@ -6,6 +6,7 @@ import { AssetManager } from "@/lythreeframe/AssetManagement/AssetManager";
|
|
|
6
6
|
import { Controller } from "../Controller";
|
|
7
7
|
import { World } from "../World";
|
|
8
8
|
import { Viewport } from "../Viewport";
|
|
9
|
+
import { ViewportParam } from "./ViewportParameters";
|
|
9
10
|
export interface AppClass {
|
|
10
11
|
assetManagerClass: typeof AssetManager;
|
|
11
12
|
controllerClass: typeof Controller;
|
|
@@ -17,6 +18,7 @@ export interface AppParam {
|
|
|
17
18
|
cameraParam?: CameraParam;
|
|
18
19
|
postProcessParam?: PostProcessParam;
|
|
19
20
|
worldParam?: WorldParam;
|
|
21
|
+
viewportParam: ViewportParam;
|
|
20
22
|
classes?: AppClass;
|
|
21
23
|
}
|
|
22
24
|
export declare const DefaultRenderParam: WebGPURendererParameters;
|
|
@@ -9,8 +9,9 @@ import { SSRParam } from "../PostProcess/Param/SSR";
|
|
|
9
9
|
import { OutlineParams } from '../PostProcess/Param/Outline';
|
|
10
10
|
import { Object3D } from 'three/src/Three.WebGPU.Nodes.js';
|
|
11
11
|
import { DOFParam } from '../PostProcess/Param/DOF';
|
|
12
|
+
import { ViewportParam } from './Parameters/ViewportParameters';
|
|
12
13
|
export declare class Viewport {
|
|
13
|
-
get canvas(): HTMLElement;
|
|
14
|
+
get canvas(): HTMLElement | null;
|
|
14
15
|
get renderer(): WebGPURenderer;
|
|
15
16
|
get app(): ThreeJsApp;
|
|
16
17
|
private _renderer;
|
|
@@ -31,7 +32,7 @@ export declare class Viewport {
|
|
|
31
32
|
private fxaaPass;
|
|
32
33
|
private smaaPass;
|
|
33
34
|
private outlineObjects;
|
|
34
|
-
constructor(app: ThreeJsApp,
|
|
35
|
+
constructor(app: ThreeJsApp, viewportParam: ViewportParam, rendererParam?: WebGPURendererParameters, postProcessParam?: PostProcessParam);
|
|
35
36
|
init(): void;
|
|
36
37
|
setupPostProcess(): void;
|
|
37
38
|
updateToneMappingParam(params: ToneMappingParams): void;
|
|
@@ -23,7 +23,7 @@ export declare class ThreeJsApp {
|
|
|
23
23
|
protected _appParam: AppParam;
|
|
24
24
|
get onCameraChangedDelegate(): Delegate<[void]>;
|
|
25
25
|
protected _onCameraChangedDelegate: Delegate<[void]>;
|
|
26
|
-
constructor(
|
|
26
|
+
constructor(appParam?: AppParam);
|
|
27
27
|
init(): void;
|
|
28
28
|
tick(): void;
|
|
29
29
|
destroy(): void;
|