AIR開發移動設備上的3D加速配置文件-swf-version很重要

在移動設備中,AWAY3D4.0裏對象無法遮擋,也就是後邊的對象無法被前邊的對象擋住。X Y Z軸都有這樣的問題。AWAY3D4.0無論是alpha版本還是beta版本部署在移動AIR3.3裏都有問題。當時以爲是我機器環境的問題,在網上瀏覽別人技術博客,抓了一個北京的兄弟,蟈蟈GIS,他的機器上也出現了同樣的問題。

但是在FLASH PLAYER裏和PC機的AIR上運行沒有出現這樣的問題。

最後移植官網的EXAMPLE到一個手機AIR工程裏執行,也還是出現了無法遮擋的問題。

估計是AIR3.3在移動設備上運行3D加速的一個BUG。

具體毛病我提交到了AWAY3D官網論壇的BUG討論區,不過真的和AWAY3D沒什麼關係

http://away3d.com/forum/viewthread/2498/

我想是不是***-app.xml配置文件裏的標籤depthAndStencil沒有改成true的原因,在這個版本里改成true的話,編譯器會報錯。

在快要絕望的時候,我咬牙將AIR SDK版本從3.3(beta版本)回退到了3.2。同時,把***-app.xml配置文件裏的標籤depthAndStencil改成了true。於是再就沒有出現之前的問題了。只是在PC機上的模擬器上預覽的時候,屏幕稍微有點偏移,只顯示了一半,但是部署到ipad上去是沒有問題的,這個問題得到了解決。

AIR3.2

-swf-version=13

<renderMode>direct</renderMode>

<depthAndStencil>true</depthAndStencil>

View3D.as類文件不改動方法保持原有的代碼:

protected function updateBackBuffer() : void
  {
//   _stage3DProxy.configureBackBuffer(_width, _height, _antiAlias, false);
   _stage3DProxy.configureBackBuffer(_width, _height, _antiAlias, true);//原始
   
   _backBufferInvalid = false;
  }

 

在上邊配置的基礎上,把SDK改成AIR3.3,也是可以運行的,並且不會出現PC機模擬器上調試有問題的情況。

總結:away3d開發移動設備應用,必須-swf-version=13

發佈了23 篇原創文章 · 獲贊 0 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章