소스 검색

Fix render target screenshot when multiple cameras active

Popov72 4 년 전
부모
커밋
f2b1723050
1개의 변경된 파일5개의 추가작업 그리고 1개의 파일을 삭제
  1. 5 1
      src/Misc/screenshotTools.ts

+ 5 - 1
src/Misc/screenshotTools.ts

@@ -130,11 +130,15 @@ export class ScreenshotTools {
         var previousCamera: Nullable<Camera> = null;
         var previousCameras = scene.activeCameras;
 
-        if (scene.activeCamera !== camera || scene.activeCameras && scene.activeCameras.length) {
+        scene.activeCameras = null;
+
+        if (scene.activeCamera !== camera) {
             previousCamera = scene.activeCamera;
             scene.activeCamera = camera;
         }
 
+        scene.render();
+
         // At this point size can be a number, or an object (according to engine.prototype.createRenderTargetTexture method)
         var texture = new RenderTargetTexture("screenShot", targetTextureSize, scene, false, false, Constants.TEXTURETYPE_UNSIGNED_INT, false, Texture.NEAREST_SAMPLINGMODE, undefined, enableStencilBuffer, undefined, undefined, undefined, samples);
         texture.renderList = null;