當我們向Flex項目中移植Away3D的AS項目時,可能會遇到“無法引用空對象"的錯誤,我查了很多資料,終於弄出來了。
原來在Flex項目中調用時,AS項目還未初始化完畢,導致引用了未賦值的空對象。
我們只需在AS項目中修改一下,如下(紅色部分):
- public function try3D2()
- {
- this.addEventListener(Event.ADDED_TO_STAGE,onStageHandler);
- Debug.active = true;
- }
- protected function onStageHandler(event:Event):void
- {
- // TODO Auto-generated method stub
- init();
- }
- /**
- * Global initialise function
- */
- private function init():void
- {
- initEngine();
- initMaterials();
- initObjects();
- initListeners();
- }
我也是初學者,對away3d不太瞭解,若有不確切之處,請大家批評指正。
爲避免初學者像我一樣走了太多的彎路,現將完整的例子程序附上。。。
下載地址:http://download.csdn.net/detail/dahongdahong/6193793