我正在使用Away3D检查 Flash 的 3D 功能,并且我正在按照这里的教程进行操作。不过我遇到了一个大问题。每次我在浏览器中运行我的项目时,我都会收到此错误:
错误 #2044:未处理的错误事件:。text=错误 #3702:Context3D 不可用。
我看不到这个错误来自哪里,但它发生在我的构造函数结束之后和ENTER_FRAME
处理程序开始之前。
我的代码是这样的:
package {
import away3d.containers.View3D;
import away3d.entities.Mesh;
import away3d.materials.ColorMaterial;
import away3d.primitives.SphereGeometry;
import flash.display.Sprite;
import flash.events.Event;
[SWF(backgroundColor="#000000", frameRate="60", width="1024", height="768")]
public class TestAway extends Sprite {
private var view:View3D;
public function TestAway() {
view=new View3D();
addChild(view);
var sphereGeometry:SphereGeometry=new SphereGeometry(350);
var sphereMaterial:ColorMaterial=new ColorMaterial(0xff0000);
var mesh:Mesh=new Mesh(sphereGeometry, sphereMaterial);
view.scene.addChild(mesh);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
private function onEnterFrame(event:Event):void {
view.render();
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
}
}
}
现在奇怪的是,当我在浏览器(FP 11.2)上运行它时,它不起作用(给出错误),但我可以完美地从桌面运行 swf。
此外,教程页面上的示例文件运行良好。缺少什么设置,我该如何解决?