|
@@ -15,17 +15,25 @@ module BABYLON {
|
|
this._multiRenderTarget.renderList = meshes;
|
|
this._multiRenderTarget.renderList = meshes;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public get isSupported(): boolean {
|
|
|
|
+ return this._multiRenderTarget.isSupported;
|
|
|
|
+ }
|
|
|
|
+
|
|
constructor(scene: Scene, ratio: number = 1) {
|
|
constructor(scene: Scene, ratio: number = 1) {
|
|
this._scene = scene;
|
|
this._scene = scene;
|
|
var engine = scene.getEngine();
|
|
var engine = scene.getEngine();
|
|
|
|
|
|
// Render target
|
|
// Render target
|
|
this._multiRenderTarget = new MultiRenderTarget("gBuffer", { width: engine.getRenderWidth() * ratio, height: engine.getRenderHeight() * ratio }, 2, this._scene, { generateMipMaps : false, generateDepthTexture: true });
|
|
this._multiRenderTarget = new MultiRenderTarget("gBuffer", { width: engine.getRenderWidth() * ratio, height: engine.getRenderHeight() * ratio }, 2, this._scene, { generateMipMaps : false, generateDepthTexture: true });
|
|
|
|
+ if (!this.isSupported) {
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
this._multiRenderTarget.wrapU = Texture.CLAMP_ADDRESSMODE;
|
|
this._multiRenderTarget.wrapU = Texture.CLAMP_ADDRESSMODE;
|
|
this._multiRenderTarget.wrapV = Texture.CLAMP_ADDRESSMODE;
|
|
this._multiRenderTarget.wrapV = Texture.CLAMP_ADDRESSMODE;
|
|
this._multiRenderTarget.refreshRate = 1;
|
|
this._multiRenderTarget.refreshRate = 1;
|
|
this._multiRenderTarget.renderParticles = false;
|
|
this._multiRenderTarget.renderParticles = false;
|
|
this._multiRenderTarget.renderList = null;
|
|
this._multiRenderTarget.renderList = null;
|
|
|
|
+
|
|
|
|
|
|
// set default depth value to 1.0 (far away)
|
|
// set default depth value to 1.0 (far away)
|
|
this._multiRenderTarget.onClearObservable.add((engine: Engine) => {
|
|
this._multiRenderTarget.onClearObservable.add((engine: Engine) => {
|
|
@@ -92,11 +100,6 @@ module BABYLON {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- public get isSupported(): boolean {
|
|
|
|
- var engine = this._scene.getEngine();
|
|
|
|
- return (engine.webGLVersion > 1) || engine.getCaps().drawBuffersExtension;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
public isReady(subMesh: SubMesh, useInstances: boolean): boolean {
|
|
public isReady(subMesh: SubMesh, useInstances: boolean): boolean {
|
|
var material: any = subMesh.getMaterial();
|
|
var material: any = subMesh.getMaterial();
|
|
|
|
|