ソースを参照

Merge pull request #7047 from BabylonJS/nativeSetviewPort

JS part of setviewport for BabylonNative
Gary Hsu 5 年 前
コミット
0ea3690410
1 ファイル変更6 行追加1 行削除
  1. 6 1
      src/Engines/nativeEngine.ts

+ 6 - 1
src/Engines/nativeEngine.ts

@@ -93,6 +93,8 @@ interface INativeEngine {
 
     getRenderWidth(): number;
     getRenderHeight(): number;
+
+    setViewPort(x: number, y: number, width: number, height: number): void;
 }
 
 class NativePipelineContext implements IPipelineContext {
@@ -279,6 +281,9 @@ export class NativeEngine extends Engine {
     }
 
     public clear(color: Color4, backBuffer: boolean, depth: boolean, stencil: boolean = false): void {
+        if (color == null) {
+            return;
+        }
         this._native.clear(color.r, color.g, color.b, color.a, backBuffer, depth, stencil);
     }
 
@@ -487,8 +492,8 @@ export class NativeEngine extends Engine {
     }
 
     public setViewport(viewport: Viewport, requiredWidth?: number, requiredHeight?: number): void {
-        // TODO: Implement.
         this._cachedViewport = viewport;
+        this._native.setViewPort(viewport.x, viewport.y, viewport.width, viewport.height);
     }
 
     public setState(culling: boolean, zOffset: number = 0, force?: boolean, reverseSide = false): void {