Javascript 如何将THREE.js Sping globe从画布更改为WebGL?
您好,我从以下链接下载了THREE.js globe: 现在,我想将整个项目从CanvasRenderer更改为WebGLRenderer,因为它可以更有效地加载片段,并且可以使用css设置背景图像。在我下载的项目中,我更改了这行代码:Javascript 如何将THREE.js Sping globe从画布更改为WebGL?,javascript,canvas,three.js,webgl,renderer,Javascript,Canvas,Three.js,Webgl,Renderer,您好,我从以下链接下载了THREE.js globe: 现在,我想将整个项目从CanvasRenderer更改为WebGLRenderer,因为它可以更有效地加载片段,并且可以使用css设置背景图像。在我下载的项目中,我更改了这行代码: renderer = new THREE.CanvasRenderer(); 为此: renderer = new THREE.WebGLRenderer(); 但这样做,地球和整个场景都消失了,我只剩下一页空白。 如何才能成功地将项目更改为WebGL。刚
renderer = new THREE.CanvasRenderer();
为此:
renderer = new THREE.WebGLRenderer();
但这样做,地球和整个场景都消失了,我只剩下一页空白。
如何才能成功地将项目更改为WebGL。刚刚使用r.68进行了尝试,完全符合建议的更改:
@@ -105,11 +105,11 @@
var mesh = new THREE.Mesh( geometry, material );
mesh.position.y = - 250;
mesh.rotation.x = - Math.PI / 2;
group.add( mesh );
- renderer = new THREE.CanvasRenderer();
+ renderer = new THREE.WebGLRenderer();
renderer.setClearColor( 0xffffff );
renderer.setSize( window.innerWidth, window.innerHeight );
container.appendChild( renderer.domElement );
Firefox对我来说很好用。使用Chrome无法正常工作,但这不是Three.js的错。如果检查web控制台,您会发现以下错误:
Uncaught SecurityError: Failed to execute 'texImage2D' on 'WebGLRenderingContext': The cross-origin image at file:///D:/Temp/three.js/examples/textures/land_ocean_ice_cloud_2048.jpg may not be loaded.
应该有一个命令行选项,你可以用它来启动Chrome,绕过这个安全限制,尽管我不容易找到它的名字。此外,不建议在启用该选项的情况下浏览。如果您可以将示例放在web服务器上,您也不会有问题。在chrome 36.0.1985.125的three.js r67中,无论使用哪种渲染器,我都会得到相同的结果。打开javascript控制台时,是否会收到日志消息
THREE.webgl67
?