2016-07-14 7 views
2

私は別にレンダリングしてオーバーレイする2つのシーンがありますので、renderer.autoClearfalseに設定してください。私は、レンダリングループ内renderer.clear()を使用していますし、すべてが順調です:three.js:cubemapとrenderer.autoclear = false

// This works fine! 
renderer.clear(); 
renderer.render(bgScene, bgCamera) 
renderer.clearDepth(); 
renderer.render(scene, camera); 

はしかし、私は今、反射物を作るために、シーンにcubecameraを追加しました。残念ながら、falserenderer.autoClearセットを持つ、典型的な「絵」効果という引き起こし、周囲が変化したときに、反射物体の質感がクリアされていない問題を、引き起こしている:

ここ
// Causes "painting" effect 
cubeCamera.updateCubeMap(renderer, scene); 

が複製簡略化フィドルです問題。物事を単純にするために、私は2つのシーンを含めていません。私はこれが実際にライブラリのバグである可能性があることを認識しています。その場合、私はリポジトリに投稿します。

https://jsfiddle.net/pqoz74rf/4/

答えて

0

githubの上で、大きなWestLangleyによって解決される問題。キューブマップを更新するときには自動クリアがオンになっている必要がありますが、レンダリングの他の部分では再びオフにすることができます。

renderer.autoClear = true; 
cubeCamera.updateCubeMap(renderer, scene); 

renderer.render(bgScene, bgCamera) 
renderer.autoClear = false; 

renderer.clearDepth(); 
renderer.render(scene, camera); 

更新フィドル:https://jsfiddle.net/pqoz74rf/6/

関連する問題