2011年7月31日 星期日

[教學] Adobe AIR 載入外部 SWF 問題

在Android 運行AIR, 如需要載入外部SWF, 可使用傳統方法:
  • Flash 環境使用Loader
  • Flex 環境使用SWFLoader

但在iOS 運行AIR, 不能載入外部SWF, 其中一個解決方法是使用SWC:

在Flash Professional 與Flash Builder 使用SWC 請參考以下步驟:

Step1: 在Flash Professional 的Library 中, 選擇一個MovieClip, 然後在Commands 按Convert Symbol to Flex Container


Step2: 按Export SWC File..., 把MovieClip 輸出成SWC


Step3: 在Flash Builder, 把SWC 存放在lib 資料夾中, 完成後便可直接使用MovieClip

使用SWC 時, 有兩點需要注意:
  • SWC 必須為ActionScript 3.0 版本
  • 由於Flex Mobile Project 中的View 物件未產生stage 和root 實體, 因此SWC 不能直接使用相關功能, 但可以parent 呼叫Flex 中物件, 或等待applicationComplete 事件發動後才使用

2011年7月29日 星期五

成功通過Apple 審查的Adobe AIR Apps

Machinarium

相關文章: http://www.leebrimelow.com/?p=3000


Circ

相關文章: http://www.flashrealtime.com/circ-game/


Comb Over Charlie

相關文章: http://www.youtube.com/watch?v=5rp7UNCWbyc


Tweet Hunt

相關文章: http://www.leebrimelow.com/?p=2897


Red Bull Illume HD

相關文章: http://www.leebrimelow.com/?p=2821

Molehill 3D APIs - GPU硬件加速的Flash 3D API


Flash 3D API - Molehill亮相MAX:
http://labs.adobe.com/technologies/flash/molehill/


“Molehill” 是即將在Adobe® Flash® 平台出現的支持顯卡加速的3D底層API。 這組底層API會讓3D開發者利用GPU性能得到驚人的效率提升。 這是什麼概念呢? 今天, Adob​​e Flash Player 10.1可以在大約30Hz下渲染幾千個非Z緩衝三角形,而利用全新的3D API,可以在60Hz左右的高分辨率顯示器下全屏渲染近百萬的Z緩衝三角形。 利用新的3D API,Flash Player和AIR可以在差不多所有的計算機和聯機設備中提供高水平的3D體驗。
大家所熟知的ActionScript 3D第三方框架如Alternativa3D, Away3s, Flare3D, Sophie3D以及Yogurt3D也將完美整合這組最新的3D API。
下面是關於Molehill的一些焦點問題:
Molehill API提供什麼樣的3D功能?
技術上講,“Molehill” 是一組可編程的基於shader著色器的3D API, 包括諸如z軸緩衝、模具顏色緩衝、碎片和角頂點著色器、立方體紋理以及更多的特性。 ”Molehill” 將允許開發者在任何可能的情況下調用GPU,同時也提供當GPU不兼容的情況下使用CPU來做備用處理器的方案。
這個新的3D API和Flash Player 10介紹過的3D功能有什麼不同?
在Flash Player 10, 我們介紹了一組可供ActionScript開發者和設計師針對2D物體製作3D特效的API。 那些3D特效允許開發者對物體添加透視,也就是我們常說的2.5D或者“空間裡的明信片”。 另外,這些利用軟件渲染的3D特效無法在復雜度極高的場景中用在大量的物體中。
Adobe為什麼要在Flash Player裡增加3D功能?
3D已經成為我們客戶中最普遍的要求。 在Flash Player中增加真實的3D體驗,兌現了Adobe關於創新和提供一個更完整的Flash平台的承諾。 Adobe曾經利用視頻促進了網頁的發展,現在我們要利用3D促使網頁的再一次進化。 從交互的站點,電子​​商務平台到遊戲市場,3D將在任何地方與每一個人見面。
是不是說在Flash Player10中介紹過的3D API就不再被推薦使用了呢?
不是的,起初在Flash Player 10中介紹過的3D API 會繼續為設計師,交互設計師和開發人員提供一個簡單的方法來給2D的內容增加3D效果。 此次的底層3D API面向的是高級開發人員,用GPU加速來搭建複雜的3D體驗。 到底使用哪種3D API還是需要根據實際的需要和內容的種類來決定。
硬件有什麼要求?
我們正在致力於使3D的內容在各種環境和硬件配置下都能保證最佳的運行效率。 3D API在Windows操作系統下依賴DirectX 9,在Mac和Linux下依賴於OpenGL 1.3。 對於移動平台,Flash Player會依賴於OpenGL ES 2.0。 對於那些不兼容的顯卡,其備用的解決方案是,Flash Player會使用一個叫做SwiftShader的軟件來進行光柵渲染,這是一項由TransGaming提供的專利技術。
如何對比3D API和HTML5 WebGL?
從設計角度上說,我們的目的和WebGL非常相似。 然而,我們提供一個統一的跨瀏覽器的方案,使在幾乎每一台計算機和聯網設備上都能享受3D的體驗。 另外,Flash Player中的GPU加速3D功能是建立在當前Adobe Flash Player的所有具有豐富表現力的功能之上。
開發者什麼時候可以使用這組新的3D API?
我們會在將來的一個新版的Adobe Flash Player中介紹這組API,我們計劃在2011年上半年發布一個公測的Beta版本,屆時開發者便可以使用這組API並向我們提供寶貴的建議。
這組3D API也會同時面向Adobe AIR麼?
是的,我們計劃將在發布Flash Player版本的同時將這組API集成在Adobe AIR裡面。
設計師和開發者什麼時候可以使用Molehill來開發3D內容? 使用什麼工具?
開發者可以在2011上半年的新版Flash Player中使用。 在Beta階段,開發者可以使用Adobe Flash Builder或者Adobe Flex SDK(更新的SWC將包含所需的API)。
移動設備中的Flash Player也將支持3D麼? 什麼時候?
是的,我們也將在移動平台上支持這組3D API,如Android和Linux Mobile。 我們會與合作者一起通過Open Screen Project計劃,在設備中的Flash Player 和AIR上啟用3D。


資料來源: http://jamesli.cn/blog/?p=371

[教學] AIR 載入中的白色畫面

其實AIR 開始啟動時, 如果載入時間長, 會出現白色畫面一段時間.
這時可以圖像來取代, 令用戶易於過度, 還可展示Logo.

<s:ViewNavigatorApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
       xmlns:s="library://ns.adobe.com/flex/spark" 
       firstView="views.galleryHomeView" 
       splashScreenMinimumDisplayTime="2000" 
       splashScreenScaleMode="zoom" 
       splashScreenImage="@Embed('assets/YOUR_IMAGE.jpg')" 
       frameRate="60">
 <fx:Declarations>
  <!-- Place non-visual elements (e.g., services, value objects) here -->
 </fx:Declarations>
</s:ViewNavigatorApplication>

在Default Application 的ViewNavigatorApplication 有以下三個屬性設定:

  • splashScreenImage
    • 可設為 splashScreenImage="@Embed('assets/YOUR_IMAGE.jpg')"
  • splashScreenScaleMode
    • 可設為以下四種模式:
      • letterbox
      • none
      • stretch
      • zoom
  • splashScreenMinimumDisplayTime
    • 預設為1000 (即一秒), 如程式載入時間極短, 圖像仍然以一秒時間顯示, 然後啟動程式



Adobe AIR 2.7

2011 年 6 月 11 日Adobe 發佈AIR 2.7 SDK, 新版AIR 在iOS 運作速度快4x.
同時能支援iOS, Android 及BlackBerry Tablet OS 系統.

在片段中, 右側iPad 使用AIR 2.7 運作, 速度相比左側的快得多喔!


資料來源: http://blogs.adobe.com/flashplayer/2011/06/adobe-air-2-7-now-available-ios-apps-4x-faster.html

2011年7月28日 星期四

[教學] 安裝Adobe AIR 2.7 在 Flash Builder 4.5

Step 1: 在Flash Builder 按Search For Flash Builder Updates...


Step 2: 更新完成後, 會發現C:\Program Files\Adobe\Adobe Flash Builder 4.5\sdks\4.5.1


Step 3: 下載Adobe AIR 2.7 SDK 或最新版本


Step 4: 把SDK 解壓, 然後直接重寫到4.5.1 文件夾內


Step 5: 完成後在Flash Builder 新增Flex Mobile Project 將會是AIR 2.7

下一版Flash 3D - Molehill 的能力

Adobe 推出的Molehill API 支援GPU 硬體加速, 最流行的3D Engine 同樣作出相關更新, 希望測試的朋友, 可先到Adobe Lab 安裝最新的Flash Player Incubator, 然後到各大廠商玩玩:

Alternative 3D - MAX Racer



Alternative 3D - Tanki Online 2.0



Frima Studios - Zombie Tycoon


Away3D - Fluid Simulation



Flare3D - Ultimate Race Championship



Minko - Quake 3 HD


Pro 3 Games - Delta Strike