From 8c7380a129a122f0259a67146e1c0b382f873b42 Mon Sep 17 00:00:00 2001 From: WestLangley Date: Tue, 19 Feb 2019 22:13:21 -0500 Subject: [PATCH] WebGLRenderer: Add .getScissor(), .getScissorTest() methods --- docs/api/en/renderers/WebGLRenderer.html | 10 ++++++++++ src/renderers/WebGLRenderer.d.ts | 10 ++++++++++ src/renderers/WebGLRenderer.js | 12 ++++++++++++ 3 files changed, 32 insertions(+) diff --git a/docs/api/en/renderers/WebGLRenderer.html b/docs/api/en/renderers/WebGLRenderer.html index 183a0bb762..9cbbd84ad2 100644 --- a/docs/api/en/renderers/WebGLRenderer.html +++ b/docs/api/en/renderers/WebGLRenderer.html @@ -365,6 +365,16 @@

[method:number getPixelRatio]()

Returns current device pixel ratio used.

+

[method:Vector4 getScissor]( [param:Vector4 target] )

+

+ [page:Vector4 target] — the result will be copied into this Vector4.

+ + Returns the scissor region. +

+ +

[method:Boolean getScissorTest]()

+

Returns *true* if scissor test is enabled; returns *false* otherwise.

+

[method:Vector2 getSize]( [param:Vector2 target] )

[page:Vector2 target] — the result will be copied into this Vector2.

diff --git a/src/renderers/WebGLRenderer.d.ts b/src/renderers/WebGLRenderer.d.ts index f99ecf4015..f42ab91ce3 100644 --- a/src/renderers/WebGLRenderer.d.ts +++ b/src/renderers/WebGLRenderer.d.ts @@ -227,11 +227,21 @@ export class WebGLRenderer implements Renderer { */ setViewport(x: Vector4 | number, y?: number, width?: number, height?: number): void; + /** + * Copies the scissor area into target. + */ + getScissor(target: Vector4): Vector4; + /** * Sets the scissor area from (x, y) to (x + width, y + height). */ setScissor(x: number, y: number, width: number, height: number): void; + /** + * Returns true if scissor test is enabled; returns false otherwise. + */ + getScissorTest(): boolean; + /** * Enable the scissor test. When this is enabled, only the pixels within the defined scissor area will be affected by further renderer actions. */ diff --git a/src/renderers/WebGLRenderer.js b/src/renderers/WebGLRenderer.js index 89dcf18ab0..2f785697b7 100644 --- a/src/renderers/WebGLRenderer.js +++ b/src/renderers/WebGLRenderer.js @@ -466,6 +466,12 @@ function WebGLRenderer( parameters ) { }; + this.getScissor = function ( target ) { + + return target.copy( _scissor ); + + }; + this.setScissor = function ( x, y, width, height ) { _scissor.set( x, y, width, height ); @@ -473,6 +479,12 @@ function WebGLRenderer( parameters ) { }; + this.getScissorTest = function () { + + return _scissorTest; + + }; + this.setScissorTest = function ( boolean ) { state.setScissorTest( _scissorTest = boolean ); -- GitLab