WebGL three.js立方体摄影机映射

WebGL three.js立方体摄影机映射,three.js,Three.js,在three.js中遵循了3个不同的多维数据集映射指南之后,我在控制台中总是遇到相同的错误: “ebGL:无效的\u帧缓冲区\u操作:抽屉元素:附件具有 “0维” “ebGL:无效的\u帧缓冲区\u操作:drawArrays:附件具有0 “尺寸” “[.WebGLRenderingContext]渲染警告:纹理绑定到纹理 单元0不可渲染。它可能不是2的幂,并且具有 纹理过滤不兼容或不是“纹理完成” 这三个错误会在控制台中多次重新处理 以下是我尝试模仿的指南和实例: 现在,我的代码与实时示

在three.js中遵循了3个不同的多维数据集映射指南之后,我在控制台中总是遇到相同的错误:

  • “ebGL:无效的\u帧缓冲区\u操作:抽屉元素:附件具有 “0维”
  • “ebGL:无效的\u帧缓冲区\u操作:drawArrays:附件具有0 “尺寸”
  • “[.WebGLRenderingContext]渲染警告:纹理绑定到纹理 单元0不可渲染。它可能不是2的幂,并且具有 纹理过滤不兼容或不是“纹理完成”
这三个错误会在控制台中多次重新处理

以下是我尝试模仿的指南和实例:

现在,我的代码与实时示例中的代码类似:

cubeCameraBottom1 = new THREE.CubeCamera(0.1, 5000, 512 );
scene.add(cubeCameraBottom1);      
var provacylGeometry = new THREE.CylinderGeometry(8, 8, 70, 32, 32);
var provacylinderMaterial = new THREE.MeshPhongMaterial( {  envMap: cubeCameraBottom1.renderTarget } );
provaCil = new THREE.Mesh( provacylGeometry, provacylinderMaterial );
provaCil.position.set(0,0,-20);
provaCil.castShadow = true;
cubeCameraBottom1.position = provaCil.position;
scene.add(provaCil);
这是渲染函数:

function render()
{

}

我哪里做错了?看起来立方体摄影机没有以正确的方式计算纹理。 我怎样才能解决这个问题?
在他们使用r60的示例中,提前感谢。也许这就是问题所在,也许这可以帮助你:


谢谢您的回答!我也在用rev 60。关于链接,如果这是一个失去上下文的问题,我不知道如何修复它,也无法使它在JSFIDLE上工作。一切都在线
provaCil.visible = false;
cubeCameraBottom1.updateCubeMap( renderer, scene );
provaCil.visible = true;
renderer.render( scene, camera );