我对WebGL完全陌生,并且已经在http://learningwebgl.com/blog/上学习过这些示例。在下载了JavaScript文件glMatrix-0.9.5.min.js和webgl utils.js之后,我把课程中的代码复制到了我电脑上的一个文件夹中,让课程1到4可以在本地使用谷歌浏览器。但是,我无法让第5课和第6课正常工作。在第5课中,我将文件nehe.gif下载到与HTML和JavaScript代码相同的文件夹中,但它不起作用。我得到的只是一个黑色的正方形,而不是一个带有文本的旋转立方体。
在函数initTexture()中,我添加了下面这行代码:
document.write("<img src='nehe.gif' />");为了检查包含文本的图像是否被读取,就像它在屏幕上显示的一样,但是当这一行被注释掉时,我返回到一个黑色方块。
我对HTML代码所做的唯一更改是将<!DOCTYPE html>放在第一行,并删除两个链接和
标记添加到HTML代码体中。
第1课到第4课在Google Chrome上运行正常,但在我的Windows电脑上不能在Internet Explorer或Firefox上运行,但我认为这不是重点,因为第5课根本不起作用。
如果有人能就如何让第五课发挥作用给我一些建议,我将不胜感激。
发布于 2013-08-08 14:39:51
默认情况下,Chrome不允许您直接从本地文件系统下载纹理图像。
请参见:
http://code.google.com/p/chromium/issues/detail?id=70088
http://code.google.com/p/chromium/issues/detail?id=57653
http://code.google.com/p/chromium/issues/detail?id=47416
http://code.google.com/p/chromium/issues/detail?id=31068一些解决方法:
a) Call chrome with --allow-file-access-from-files in the command-line.
b) Run a webserver locally to supply the textures for Chrome.
c) Use Firefox for examples with textures stored on the local filesystem.https://stackoverflow.com/questions/18118138
复制相似问题