我正在使用 three.js,我设置了第二个场景和相机,并向其中添加了一个圆柱体。现在我设置了一个 rendertarget 并且我想在 Sprite 上显示这个 renderedScene(可以说是 HUD-Sprite),但是 Sprite 没有出现。我在原始场景中添加了一个平面,它完美地显示了渲染目标。
我已经检查过的内容:
1) 当使用 rtTexture 作为 MeshLambertMaterial 的贴图时,它工作得很好
2) 当使用 ImageUtils 为 Sprite 加载图像并将其用作 SpriteMaterial 的贴图时,效果很好,样条曲线显示在它应该出现的位置!
我感觉我忽略了什么。 如果有人可以帮助我,那就太好了。
好的,伙计们,我创建了一个 jsFiddle,也许这有帮助!
My Fiddle for RenderTarget Sprite Problem
如您所见,rendertarget 正确显示在平面上,那里有一个带有屏幕空间坐标的 sprite,但它没有显示 renderTarget。
rttMaterial = new THREE.SpriteMaterial( { color: 0xFF0000, map: rtTexture,
alignment: THREE.SpriteAlignment.topLeft,
useScreenCoordinates: true} );
提前致谢
最佳答案
您必须在 WebGLRenderer
的背后进行操作,因为它不受支持。
sprite.material.map.__webglTexture = rtTexture.__webglTexture;
fiddle :http://jsfiddle.net/Pk85y/47/
three.js r.61
关于javascript - Sprite 不显示渲染到纹理贴图/渲染目标贴图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14334909/