很久一段時間沒寫程式了,這是暑假剛開始的時候,將XNA 3.1小飛機電腦版改版成XNA 4.0,改版的過程還算順利,主要的問題是關於Color color = new Color(rgb,alpha);不見了。

 

  原本以為只是單純的不見,後來發現子彈發射的特效都變的"很亮",以為是XNA 4.0渲染比較不一樣,後來偶然發現是透明度的機制更新了,XNA 4.0將預設透明度的機制從原本"混合Alpha"更新成"預乘Alpha"。

 

  如果要得到一個正確的透明度渲染,必須在繪圖之前進行"預乘"

 

XNA 4.0 小飛機電腦版(把預乘Alpha功能關閉)

 

預乘模式中,並沒有預乘Alpha(可以看到子彈發現的效果很亮)

 

(預乘模式中,預乘Alpha,子彈發射的效果快消失時變黑了)

 

  關於遊戲部份修改,修改了蜘蛛放射狀的子彈發射位置(其實原本就想從這裡發射,只是當時在製作專題時間沒有那麼多,所以細節就沒有比較去要求),還有一個關於敵機追自機的bug....之前那版是追"一下"就沒了,這次會追一段時間,在把XNA 3.1改成4.0的過程,偶然看到追蹤的部份timer弄錯了,所以才會只追一下就沒了。

 

硬體需求:

  支援DirectX 10的顯示卡

 

軟體需求:

  Microsoft XNA Framework Redistributable 4.0 http://www.microsoft.com/download/en/details.aspx?id=20914

 

 

執行檔

 

Source Code

 

※ 如果有錯,請記得要告訴我0.0(發現pixnet的表情符號改版了,還是比較喜歡原來的...Orz)

arrow
arrow
    全站熱搜

    小賢 發表在 痞客邦 留言(0) 人氣()