2012-04-19 107 views
0

所以,我該怎麼辦 - 找不到Adobe的網站上的任何信息.. 感謝如何實現對Flash CS5.5安裝Flash Player 11.2和3.2航

更新: 這裏是我做了什麼:

  • 從Adobe
  • 創建的文件夾的Adobe /的Adobe Flash CS5.5 /通用/配置/播放/下載FP11.2 playerglobal11_2.swc,改名下載SWC到的playerglobal.swc,並把它放在該文件夾內
  • 內部的Adobe /的Adobe Flash CS5.5 /通用/配置/複製玩家FlashPlayer10_2.xml,把它稱爲FlashPlayer11_2.xml和編輯以下行

    <player id="FlashPlayer11.2" version="13" asversion="3"> 
    <name>Flash Player 11.2</name> 
    <playerDefinitionPath as2="$(UserConfig)/Classes/FP10;$(UserConfig)/Classes/FP9;$(UserConfig)/Classes/FP8;$(UserConfig)/Classes/FP7" as3="$(AppConfig)/ActionScript 3.0/FP11.2/playerglobal.swc" /> 
    

現在,當我開始閃光,我可以選擇發佈到使用Flash Player 11.2,從下拉菜單中,當我發佈(CTRL + F12)在瀏覽器與第一個關鍵幀此代碼:

import flash.display.Stage3D; 

var stage3d = new Stage3D(); 

var my_fmt:TextFormat = new TextFormat(); 
my_fmt.color = 0xFF0000; 
my_fmt.size = 32; 
my_fmt.bold = true; 
my_fmt.font = "Arial"; 

var textF: TextField = new TextField; 
textF.defaultTextFormat = my_fmt; 
textF.autoSize = TextFieldAutoSize.LEFT; 
textF.text = "Hello Flash Player: " + Capabilities.version + "\n" + stage3d; 

addChild(textF); 

我得到這個錯誤調試器:

ArgumentError: Error #2012: Stage3D$ class cannot be instantiated. 

顯然我錯過了一些東西或做錯了,因爲我無法訪問FP11 API。

+0

嘿,當你工作了,我想知道IV已經在這一個星期也嘗試過其他的3D引擎,Away3D中-4.0/Alternativa 8,我不能任意一個開始,我做了所有上述就像網上寫的那樣,但沒有結果。 – joshua 2012-05-02 05:49:06

回答

1

您可能需要在FlashPlayer11_2.xml文件中設置version =「15」(而不是version =「13」)。

<player id="FlashPlayer11.2" version="15" asversion="3"> 
2

我剛碰到同樣的問題。我意識到錯誤#2012是一個運行時錯誤,所以它意味着編譯是好的,因此你的設置應該工作。問題在於玩家的一面。以下是我如何解決它:

  1. 確保您從這裏更新您的Flash播放器。如果您的網絡瀏覽器已經有更新的版本,請使用Ctrl + F12在您的網絡瀏覽器中進行測試。否則,您需要更新您的Flash調試播放器: http://www.adobe.com/support/flashplayer/downloads.html

  2. 給出的代碼不再有效。 Stage3D參考必須從舞臺上檢索。

    var stage3d = stage.stage3Ds[0]; 
    
  3. 爲了調試的目的,你可以試試這個代碼,而不是,這將打印版本和錯誤消息,如果有問題。

    import flash.display.Stage3D; 
    
    var my_fmt:TextFormat = new TextFormat(); 
    my_fmt.color = 0xFF0000; 
    my_fmt.size = 32; 
    my_fmt.bold = true; 
    my_fmt.font = "Arial"; 
    
    var textF: TextField = new TextField; 
    textF.defaultTextFormat = my_fmt; 
    textF.autoSize = TextFieldAutoSize.LEFT; 
    textF.width = this.stage.stageWidth; 
    textF.wordWrap = true; 
    textF.multiline = true; 
    addChild(textF); 
    
    
    try 
    { 
        var stage3d:Stage3D = stage.stage3Ds[0]; 
        textF.text = "Hello Flash Player: " + Capabilities.version + "\n" + stage3d; 
    } 
    catch(e:Error) 
    { 
        textF.text = "Hello Flash Player: " + Capabilities.version + "\n" + e.toString(); 
    }