我已经通过这个链接学习了教程:http://www.adobe.com/devnet/flashplayer/articles/creating-games-away3d.html
但代码似乎有问题,我甚至不能加载3D花瓶。
代码如下:
package
{
import away3d.containers.View3D;
import away3d.events.LoaderEvent;
import away3d.loaders.Loader3D;
import away3d.loaders.parsers.Parsers;
import flash.display.Sprite;
import flash.events.Event;
import flash.net.URLRequest;
public class Main extends Sprite
{
private var _view:View3D;
private var _loader:Loader3D;
public function Main()
{
_view = new View3D();
_view.backgroundColor = 0x666666;
_view.antiAlias = 4;
this.addChild(_view);
this.addEventListener(Event.ENTER_FRAME, onEnterFrame);
Parsers.enableAllBundled();
_loader = new Loader3D();
_loader.addEventListener(LoaderEvent.RESOURCE_COMPLETE, onResourceComplete);
_loader.addEventListener(LoaderEvent.LOAD_ERROR, onLoadError);
_loader.load( new URLRequest('vase.awd') );
}
private function onResourceComplete(ev:LoaderEvent):void
{
_loader.removeEventListener(LoaderEvent.RESOURCE_COMPLETE, onResourceComplete);
_loader.removeEventListener(LoaderEvent.LOAD_ERROR, onLoadError);
_view.scene.addChild(_loader);
}
private function onLoadError(ev:LoaderEvent):void
{
trace('Could not find', ev.url);
_loader.removeEventListener(LoaderEvent.RESOURCE_COMPLETE, onResourceComplete);
_loader.removeEventListener(LoaderEvent.LOAD_ERROR, onLoadError);
_loader = null;
}
private function onEnterFrame(ev:Event):void
{
_loader.rotationY = stage.mouseX - stage.stageWidth / 2;
_view.camera.y = 3 * (stage.mouseY - stage.stageHeight/2);
_view.camera.lookAt(_loader.position);
_view.render();
}
}
}你知道错误在哪里吗?或者它得到了任何教程,教如何加载AWD文件到闪存?
谢谢。
发布于 2012-09-09 04:42:11
我建议你使用AssetLibrary来加载你的模型,它非常简单,很容易处理模型中包含的所有东西。
AssetLibrary.addEventListener( AssetEvent.ASSET_COMPLETE, onAssetComplete );
AssetLibrary.addEventListener( LoaderEvent.RESOURCE_COMPLETE, onResourceComplete );
AssetLibrary.addEventListener( LoaderEvent.LOAD_ERROR, onLoadError );有关详细示例,请查看This
我希望它能帮助你
发布于 2012-11-08 11:18:12
删除"Parsers.enableAllBundled();“试试这个: AssetLibrary.enableParser(AWD1Parser)或AssetLibrary.enableParser(AWD2Parser)或var aWD2Parser:AWD2Parser=new AWD2Parser();_loader.load(new URLRequest(‘vase.awd’),null,"vase.awd",aWD2Parser);
发布于 2013-05-18 02:31:01
与教程一起提供的花瓶AWD文件adobe不再有效。AWD规范改变了,adobe从来没有更新过他们的教程。如果你试图加载它,你通常会得到一个文件结束错误。
https://stackoverflow.com/questions/12315277
复制相似问题