Three.js Verwendung mit Stencil Buffer

Ich kann Folgendes nicht ausführen, um die Szene in die als Schablonenmaske erstellte Form zu zeichnen. Stattdessen scheint der Code nur die Schablone selbst als schwarzes Objekt darzustellen.

http: //signaturefloors.dev.flooradvisor.com.au/productapp/floor_align.ph

Meine Renderfunktion ist:

var gl = floor_align.renderer.domElement.getContext('webgl') || floor_align.renderer.domElement.getContext('experimental-webgl');
gl.clearStencil(0);
gl.clear(gl.STENCIL_BUFFER_BIT);
gl.enable(gl.STENCIL_TEST);
gl.stencilFunc(gl.ALWAYS, 1, 1);
gl.stencilOp(gl.KEEP, gl.REPLACE, gl.REPLACE);
gl.colorMask(0, 0, 0, 0);

// Floor Mask (Create a stencil that we render the next pass into)
floor_align.renderer.render(floor_align.maskScene, floor_align.maskCamera);

gl.colorMask(1, 1, 1, 1);
gl.stencilFunc(gl.NOTEQUAL, 1, 1);
gl.stencilOp(gl.KEEP, gl.REPLACE, gl.REPLACE);

// Render a floor pass
floor_align.renderer.render(floor_align.scene, floor_align.camera);

gl.disable(gl.STENCIL_TEST);

Der Renderer hatautoClear = false;

Antworten auf die Frage(2)

Ihre Antwort auf die Frage