@damienmortini/three 0.1.193 → 0.1.195

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.
@@ -1,123 +1,127 @@
1
1
  import {
2
- WebGLRenderer,
3
- WebGLRenderTarget,
4
2
  DepthTexture,
5
- RGBAFormat,
6
3
  LinearFilter,
7
- UnsignedShortType,
8
- Scene,
9
- OrthographicCamera,
10
4
  Mesh,
5
+ OrthographicCamera,
11
6
  PlaneGeometry,
12
- } from '../../../three/src/Three.js'
7
+ RGBAFormat,
8
+ Scene,
9
+ UnsignedShortType,
10
+ WebGLRenderer,
11
+ WebGLRenderTarget,
12
+ } from '../../../three/src/Three.js';
13
13
 
14
14
  export default class THREERenderer extends WebGLRenderer {
15
15
  constructor(options) {
16
- super(Object.assign({ antialias: true }, options))
16
+ super(Object.assign({ antialias: true }, options));
17
17
 
18
- this.filters = []
19
- this._renderTargets = new Map()
18
+ this.filters = [];
19
+ this._renderTargets = new Map();
20
20
 
21
21
  const renderTargetIn = new WebGLRenderTarget(this.domElement.width, this.domElement.height, {
22
22
  format: RGBAFormat,
23
23
  minFilter: LinearFilter,
24
24
  magFilter: LinearFilter,
25
25
  stencilBuffer: false,
26
- })
27
- renderTargetIn.texture.generateMipmaps = false
26
+ });
27
+ renderTargetIn.texture.generateMipmaps = false;
28
28
 
29
- const renderTargetOut = renderTargetIn.clone()
30
- renderTargetOut.texture.generateMipmaps = false
29
+ const renderTargetOut = renderTargetIn.clone();
30
+ renderTargetOut.texture.generateMipmaps = false;
31
31
 
32
32
  if (this.context.getExtension('WEBGL_depth_texture')) {
33
- renderTargetIn.depthTexture = new DepthTexture()
34
- renderTargetIn.depthTexture.type = UnsignedShortType
35
- renderTargetOut.depthTexture = new DepthTexture()
36
- renderTargetOut.depthTexture.type = UnsignedShortType
33
+ renderTargetIn.depthTexture = new DepthTexture();
34
+ renderTargetIn.depthTexture.type = UnsignedShortType;
35
+ renderTargetOut.depthTexture = new DepthTexture();
36
+ renderTargetOut.depthTexture.type = UnsignedShortType;
37
37
  }
38
38
 
39
39
  this._renderTargets.set(this, {
40
40
  in: renderTargetIn,
41
41
  out: renderTargetOut,
42
- })
42
+ });
43
43
 
44
- this.scene = new Scene()
45
- this.scene.camera = new OrthographicCamera(-1, 1, 1, -1, 0, 1)
46
- this._quad = new Mesh(new PlaneGeometry(2, 2))
47
- this._quad.frustumCulled = false
48
- this.scene.add(this._quad)
44
+ this.scene = new Scene();
45
+ this.scene.camera = new OrthographicCamera(-1, 1, 1, -1, 0, 1);
46
+ this._quad = new Mesh(new PlaneGeometry(2, 2));
47
+ this._quad.frustumCulled = false;
48
+ this.scene.add(this._quad);
49
49
 
50
50
  // Fix to make WebGLRenderer.render extendable
51
- this._render = this.render
52
- delete this.render
51
+ this._render = this.render;
52
+ delete this.render;
53
53
  }
54
54
 
55
55
  applyFilter(filter, renderTargetIn, renderTargetOut) {
56
- this._quad.material = filter
56
+ this._quad.material = filter;
57
57
  if (filter.renderTargetTexture) {
58
- filter.renderTargetTexture = renderTargetIn.texture
58
+ filter.renderTargetTexture = renderTargetIn.texture;
59
59
  }
60
60
  if (filter.renderTargetDepthTexture && renderTargetIn.depthTexture) {
61
- filter.renderTargetDepthTexture = renderTargetIn.depthTexture
61
+ filter.renderTargetDepthTexture = renderTargetIn.depthTexture;
62
62
  }
63
- this._render(this.scene, this.scene.camera, renderTargetOut)
63
+ this._render(this.scene, this.scene.camera, renderTargetOut);
64
64
  }
65
65
 
66
66
  resize(width, height) {
67
- this.setSize(width, height, false)
68
- const renderTargets = this._renderTargets.get(this)
69
- renderTargets.in.setSize(width, height)
70
- renderTargets.out.setSize(width, height)
67
+ this.setSize(width, height, false);
68
+ const renderTargets = this._renderTargets.get(this);
69
+ renderTargets.in.setSize(width, height);
70
+ renderTargets.out.setSize(width, height);
71
71
  }
72
72
 
73
73
  render({ scene, camera = undefined, filters = this.filters, renderTarget = undefined, viewport = undefined, scissor = viewport } = {}) {
74
74
  if (arguments.length > 1) {
75
- this._render(...arguments)
76
- return
75
+ this._render(...arguments);
76
+ return;
77
77
  }
78
- let renderTargets = this._renderTargets.get(renderTarget || this)
78
+ let renderTargets = this._renderTargets.get(renderTarget || this);
79
79
  if (!renderTargets) {
80
80
  renderTargets = {
81
81
  in: renderTarget.clone(),
82
82
  out: renderTarget.clone(),
83
- }
84
- renderTargets.in.texture.generateMipmaps = false
85
- renderTargets.out.texture.generateMipmaps = false
86
- this._renderTargets.set(renderTarget, renderTargets)
83
+ };
84
+ renderTargets.in.texture.generateMipmaps = false;
85
+ renderTargets.out.texture.generateMipmaps = false;
86
+ this._renderTargets.set(renderTarget, renderTargets);
87
87
  }
88
88
  if (viewport || scissor) {
89
89
  if (viewport) {
90
90
  if (renderTarget) {
91
- renderTarget.viewport.set(viewport[0], viewport[1], viewport[2], viewport[3])
92
- } else {
93
- this.setViewport(viewport[0], viewport[1], viewport[2], viewport[3])
91
+ renderTarget.viewport.set(viewport[0], viewport[1], viewport[2], viewport[3]);
92
+ }
93
+ else {
94
+ this.setViewport(viewport[0], viewport[1], viewport[2], viewport[3]);
94
95
  }
95
96
  }
96
97
  if (renderTarget) {
97
- renderTarget.scissor.set(scissor[0], scissor[1], scissor[2], scissor[3])
98
- renderTarget.scissorTest = true
99
- } else {
100
- this.setScissor(scissor[0], scissor[1], scissor[2], scissor[3])
101
- this.setScissorTest(true)
98
+ renderTarget.scissor.set(scissor[0], scissor[1], scissor[2], scissor[3]);
99
+ renderTarget.scissorTest = true;
100
+ }
101
+ else {
102
+ this.setScissor(scissor[0], scissor[1], scissor[2], scissor[3]);
103
+ this.setScissorTest(true);
102
104
  }
103
- } else {
105
+ }
106
+ else {
104
107
  if (renderTarget) {
105
- renderTarget.viewport.set(0, 0, renderTarget.width, renderTarget.height)
106
- renderTarget.scissor.set(0, 0, renderTarget.width, renderTarget.height)
107
- renderTarget.scissorTest = false
108
- } else {
109
- this.setViewport(0, 0, this.domElement.width, this.domElement.height)
110
- this.setScissor(0, 0, this.domElement.width, this.domElement.height)
111
- this.setScissorTest(false)
108
+ renderTarget.viewport.set(0, 0, renderTarget.width, renderTarget.height);
109
+ renderTarget.scissor.set(0, 0, renderTarget.width, renderTarget.height);
110
+ renderTarget.scissorTest = false;
111
+ }
112
+ else {
113
+ this.setViewport(0, 0, this.domElement.width, this.domElement.height);
114
+ this.setScissor(0, 0, this.domElement.width, this.domElement.height);
115
+ this.setScissorTest(false);
112
116
  }
113
117
  }
114
118
  if (scene) {
115
- camera = camera || scene.camera
116
- this._render(scene, camera, filters.length ? renderTargets.in : renderTarget)
119
+ camera = camera || scene.camera;
120
+ this._render(scene, camera, filters.length ? renderTargets.in : renderTarget);
117
121
  }
118
122
  for (const [i, filter] of filters.entries()) {
119
123
  this.applyFilter(filter, renderTargets.in, i < filters.length - 1 ? renderTargets.out : renderTarget);
120
- [renderTargets.in, renderTargets.out] = [renderTargets.out, renderTargets.in]
124
+ [renderTargets.in, renderTargets.out] = [renderTargets.out, renderTargets.in];
121
125
  }
122
126
  }
123
127
  }
@@ -1,60 +1,63 @@
1
- import { WebGLRenderer, StereoCamera } from '../../../three/src/Three.js'
1
+ import { StereoCamera, WebGLRenderer } from '../../../three/src/Three.js';
2
2
 
3
3
  export default class THREEStereoRenderer {
4
4
  constructor(renderer = new WebGLRenderer()) {
5
- this.renderer = renderer
5
+ this.renderer = renderer;
6
6
 
7
- this._stereoCamera = new StereoCamera()
8
- this._stereoCamera.aspect = 0.5
7
+ this._stereoCamera = new StereoCamera();
8
+ this._stereoCamera.aspect = 0.5;
9
9
  }
10
10
 
11
11
  set eyeOffset(value) {
12
- this._stereoCamera.eyeSep = value
12
+ this._stereoCamera.eyeSep = value;
13
13
  }
14
14
 
15
15
  setSize(width, height) {
16
- this.renderer.setSize(width, height)
16
+ this.renderer.setSize(width, height);
17
17
  }
18
18
 
19
19
  render(scene, camera, renderTarget) {
20
- scene.updateMatrixWorld()
20
+ scene.updateMatrixWorld();
21
21
 
22
- if (camera.parent === null) camera.updateMatrixWorld()
22
+ if (camera.parent === null) camera.updateMatrixWorld();
23
23
 
24
- this._stereoCamera.update(camera)
24
+ this._stereoCamera.update(camera);
25
25
 
26
- const size = this.renderer.getSize()
26
+ const size = this.renderer.getSize();
27
27
 
28
- this.renderer.clear()
28
+ this.renderer.clear();
29
29
 
30
30
  if (renderTarget) {
31
- renderTarget.scissorTest = true
32
- renderTarget.scissor.set(0, 0, size.width * .5, size.height)
33
- renderTarget.viewport.set(0, 0, size.width * .5, size.height)
34
- } else {
35
- this.renderer.setScissorTest(true)
36
- this.renderer.setScissor(0, 0, size.width * .5, size.height)
37
- this.renderer.setViewport(0, 0, size.width * .5, size.height)
31
+ renderTarget.scissorTest = true;
32
+ renderTarget.scissor.set(0, 0, size.width * 0.5, size.height);
33
+ renderTarget.viewport.set(0, 0, size.width * 0.5, size.height);
34
+ }
35
+ else {
36
+ this.renderer.setScissorTest(true);
37
+ this.renderer.setScissor(0, 0, size.width * 0.5, size.height);
38
+ this.renderer.setViewport(0, 0, size.width * 0.5, size.height);
38
39
  }
39
- this.renderer.render(scene, this._stereoCamera.cameraL, renderTarget)
40
+ this.renderer.render(scene, this._stereoCamera.cameraL, renderTarget);
40
41
 
41
42
  if (renderTarget) {
42
- renderTarget.scissor.set(size.width * .5, 0, size.width * .5, size.height)
43
- renderTarget.viewport.set(size.width * .5, 0, size.width * .5, size.height)
44
- } else {
45
- this.renderer.setScissor(size.width * .5, 0, size.width * .5, size.height)
46
- this.renderer.setViewport(size.width * .5, 0, size.width * .5, size.height)
43
+ renderTarget.scissor.set(size.width * 0.5, 0, size.width * 0.5, size.height);
44
+ renderTarget.viewport.set(size.width * 0.5, 0, size.width * 0.5, size.height);
45
+ }
46
+ else {
47
+ this.renderer.setScissor(size.width * 0.5, 0, size.width * 0.5, size.height);
48
+ this.renderer.setViewport(size.width * 0.5, 0, size.width * 0.5, size.height);
47
49
  }
48
- this.renderer.render(scene, this._stereoCamera.cameraR, renderTarget)
50
+ this.renderer.render(scene, this._stereoCamera.cameraR, renderTarget);
49
51
 
50
52
  if (renderTarget) {
51
- renderTarget.scissorTest = false
52
- renderTarget.scissor.set(0, 0, size.width, size.height)
53
- renderTarget.viewport.set(0, 0, size.width, size.height)
54
- } else {
55
- this.renderer.setScissorTest(false)
56
- this.renderer.setScissor(0, 0, size.width, size.height)
57
- this.renderer.setViewport(0, 0, size.width, size.height)
53
+ renderTarget.scissorTest = false;
54
+ renderTarget.scissor.set(0, 0, size.width, size.height);
55
+ renderTarget.viewport.set(0, 0, size.width, size.height);
56
+ }
57
+ else {
58
+ this.renderer.setScissorTest(false);
59
+ this.renderer.setScissor(0, 0, size.width, size.height);
60
+ this.renderer.setViewport(0, 0, size.width, size.height);
58
61
  }
59
62
  }
60
63
  }
@@ -1,9 +1,9 @@
1
- import { Scene, Mesh, PlaneGeometry, WebGLRenderTarget, OrthographicCamera } from 'three'
1
+ import { Mesh, OrthographicCamera, PlaneGeometry, Scene, WebGLRenderTarget } from 'three';
2
2
 
3
3
  export class WebGLRenderTarget2D extends WebGLRenderTarget {
4
- #scene
5
- #camera
6
- #quad
4
+ #scene;
5
+ #camera;
6
+ #quad;
7
7
 
8
8
  constructor({
9
9
  renderer,
@@ -36,28 +36,28 @@ export class WebGLRenderTarget2D extends WebGLRenderTarget {
36
36
  depthBuffer,
37
37
  stencilBuffer,
38
38
  depthTexture,
39
- })
39
+ });
40
40
 
41
- this.renderer = renderer
41
+ this.renderer = renderer;
42
42
 
43
- this.#scene = new Scene()
44
- this.#camera = new OrthographicCamera(-1, 1, 1, -1, 0, 1)
43
+ this.#scene = new Scene();
44
+ this.#camera = new OrthographicCamera(-1, 1, 1, -1, 0, 1);
45
45
 
46
- this.#quad = new Mesh(new PlaneGeometry(2, 2), material)
47
- this.#scene.add(this.#quad)
46
+ this.#quad = new Mesh(new PlaneGeometry(2, 2), material);
47
+ this.#scene.add(this.#quad);
48
48
  }
49
49
 
50
50
  get material() {
51
- return this.#quad.material
51
+ return this.#quad.material;
52
52
  }
53
53
 
54
54
  set material(value) {
55
- this.#quad.material = value
55
+ this.#quad.material = value;
56
56
  }
57
57
 
58
58
  render({ debug = false } = {}) {
59
- if (!debug) this.renderer.setRenderTarget(this)
60
- this.renderer.render(this.#scene, this.#camera)
61
- this.renderer.setRenderTarget(null)
59
+ if (!debug) this.renderer.setRenderTarget(this);
60
+ this.renderer.render(this.#scene, this.#camera);
61
+ this.renderer.setRenderTarget(null);
62
62
  }
63
63
  }
@@ -30,4 +30,4 @@ export default {
30
30
  in float vFresnel;
31
31
  `],
32
32
  ],
33
- }
33
+ };
package/types/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { WebGLRenderTarget2D } from "./renderer/WebGLRenderTarget2D.js";
1
+ export { WebGLRenderTarget2D } from './renderer/WebGLRenderTarget2D.js';
@@ -17,26 +17,26 @@ export class WebGLRenderTarget2D {
17
17
  stencilBuffer,
18
18
  depthTexture,
19
19
  }: {
20
- renderer: any
21
- material?: any
22
- width?: number
23
- height?: number
24
- wrapS?: any
25
- wrapT?: any
26
- magFilter?: any
27
- minFilter?: any
28
- format?: any
29
- type?: any
30
- anisotropy?: any
31
- encoding?: any
32
- generateMipmaps?: any
33
- depthBuffer?: any
34
- stencilBuffer?: any
35
- depthTexture?: any
36
- })
37
- renderer: any
38
- set material(arg: any)
39
- get material(): any
40
- render({ debug }?: { debug?: boolean }): void
41
- #private
20
+ renderer: any;
21
+ material?: any;
22
+ width?: number;
23
+ height?: number;
24
+ wrapS?: any;
25
+ wrapT?: any;
26
+ magFilter?: any;
27
+ minFilter?: any;
28
+ format?: any;
29
+ type?: any;
30
+ anisotropy?: any;
31
+ encoding?: any;
32
+ generateMipmaps?: any;
33
+ depthBuffer?: any;
34
+ stencilBuffer?: any;
35
+ depthTexture?: any;
36
+ });
37
+ renderer: any;
38
+ set material(arg: any);
39
+ get material(): any;
40
+ render({ debug }?: { debug?: boolean }): void;
41
+ #private;
42
42
  }