File size: 1,110 Bytes
2b7aae2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import { Texture } from './Texture.js';
import { NearestFilter, UnsignedShortType, UnsignedInt248Type, DepthFormat, DepthStencilFormat } from '../constants.js';

class DepthTexture extends Texture {
	constructor(width, height, type, mapping, wrapS, wrapT, magFilter, minFilter, anisotropy, format) {
		format = format !== undefined ? format : DepthFormat;

		if (format !== DepthFormat && format !== DepthStencilFormat) {
			throw new Error('DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat');
		}

		if (type === undefined && format === DepthFormat) type = UnsignedShortType;
		if (type === undefined && format === DepthStencilFormat) type = UnsignedInt248Type;

		super(null, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy);

		this.image = { width: width, height: height };

		this.magFilter = magFilter !== undefined ? magFilter : NearestFilter;
		this.minFilter = minFilter !== undefined ? minFilter : NearestFilter;

		this.flipY = false;
		this.generateMipmaps = false;
	}
}

DepthTexture.prototype.isDepthTexture = true;

export { DepthTexture };