我想在3d场景里模拟一个电视机播放视频。但是没有找到相关方法。想请问一下有没有实现方法?
结合之前看到的将3D相机渲染到2D精灵上的方法,我想将Canvas组件的Texture2D绑定到材质球上就能实现你要的效果了
const _colorAttachment = new GFXColorAttachment();
const _depthStencilAttachment = new GFXDepthStencilAttachment();
let renderTex = new RenderTexture();
renderTex.reset({
width: 700,
height: 700,
passInfo: {
colorAttachments: [_colorAttachment],
depthStencilAttachment: _depthStencilAttachment,
subPasses:[],
},
});
let canvas = find("Canvas")!.getComponent(Canvas);
canvas!.cameraComponent!.targetTexture = renderTex;
//设置纹理
let material = this.plan.getComponent(ModelComponent)!.materials[0]
material!.setProperty('albedoMap', renderTex);
非常感谢回答!但是经测试后发现视频始终渲染在UI层。无法通过摄像机渲染到mesh。 