Pergunta

Eu tenho dois elementos de tela na minha página e eu começo a renderização para o meu:

new THREE.WebGLRenderer({canvas:myFirstCanvas});

e a cena 3D é correctamente apresentada como eu espero

mas então se eu tentar alterar o elemento canvas, o processador está apontando para se usando:

renderer.domElement = mySecondCanvas;

ou

renderer.setRenderTarget({canvas:mySecondCanvas});

Eu olhei na documentação no github, mas setRenderTarget() diz TODO, infelizmente.É possível mudar o elemento canvas, o processador está usando?e se assim como eu iria fazer isso?atualmente a minha tentativa não faz nada a não borrar a imagem original do elemento canvas, presumivelmente, porque eu também redimensionar o processador com:

renderer.setSize(mySecondCanvas.width,mySecondCanvas.height);

quando eu estou tentando alternar para outra tela.

Foi útil?

Solução

Infelizmente, e isto é devido a hon WebGL trabalho e não tem nada a ver com Three.js especificidades, mas cada WebGL-contexto (em Three.js representado por WebGL renderer) é vinculado a um elemento de tela e você não pode alterar o elemento que o WebGL-contexto deve processar.

Assim:fazer dois, TRÊS.WebGLRenderers, um para cada elemento de tela.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top