cocos creator 3.x 多摄像机 截屏解决方案

RenderTexture 是一个渲染纹理,它可以将摄像机上的内容直接渲染到一张纹理上而不是屏幕上。SpriteFrame

通过管理 RenderTexture 可以轻松的将 3D 相机内容显示在 UI 上。使用方法如下:

  1. const cameraComp = this.getComponent(Camera);

  2. const renderTexture = new RenderTexture();

  3. const size = view.getVisibleSize();

  4. renderTexture.reset({

  5. width: size.width,

  6. height: size.height,

  7. colorFormat: RenderTexture.PixelFormat.RGBA8888,

  8. depthStencilFormat: RenderTexture.DepthStencilFormat.DEPTH_24_STENCIL_8

  9. });

  10. cameraComp.targetTexture = renderTexture;

  11. const spriteFrame = new SpriteFrame();

  12. spriteFrame.texture = renderTexture;

  13. const sprite = this.getComponent(Sprite);

  14. sprite.spriteFrame = spriteFrame;
    只支持单摄像机

1赞