今天所寫的一篇XNA文章,感覺寫的不怎麼好ORZ
因為最近又要準備考試..
然後又希望每天可以丟出一篇文章...
可能的話希望能夠將播放聲音的那邊重新寫過ORZ
畢竟我真的覺得那邊我寫得好懶...
teexit1224 發表在 痞客邦 留言(0) 人氣(46)
在XNA的遊戲程式中,用XACT所建立的xap檔案來播放聲音。
首先在Start -> All Programs -> XNA Game Studio Express -> Tools
teexit1224 發表在 痞客邦 留言(0) 人氣(450)

今天下午讀書的時候,突然想到有一段時間沒有收信了(主要怕漏收MSP的信)
想起來馬上去學校信箱收信,看到一封標題
" 華風再現–發現校園之美"
點進去裡面發現是一個攝影比賽...
不知道為什麼突然腦中一堆零感...
想到上次MSP活動的紀念照片,照片紀錄大家快樂的樣子,即使過了那段快樂的時光
只要有相片就可以回顧當時的情景...
一直認為拍照沒甚麼的我,經過那次活動以後,我覺得照片算是生活中很重要的一環。
這次的比賽我很想參加,很有興趣,可是我一看截止日期...
29號...ZZZ
哀
難道我跟這次比賽無緣了...
teexit1224 發表在 痞客邦 留言(0) 人氣(52)
前幾篇已經介紹,如何用XNA在程式中載入2D圖片。
在那邊當中用了SpriteBatch中的Draw函式,大家可以多多參考MSND,這個函式有很多Overloading格式,像是你可以決定呈現2D圖片的範圍等等。
現在就繼續接下來的範例,現在要在程式中繪製出文字,在一個遊戲中除了圖片美工外,最重要不外乎的是文字,文字呈現出故事內容以及對話,豐富遊戲的劇情。
在繪製想要輸出的文字之前,我們必須要先定義好Sprite Font檔案。
在Solution Expolorer中,對著專案按下右鍵,【Add】->【New Item】,選擇Sprite Font。
teexit1224 發表在 痞客邦 留言(4) 人氣(414)
XNA 2.0 Beta正式發布囉!!!
想要用.NET 2005來編輯XNA程式嗎?以為只有在EXPRESS上才可以編譯嘛!!
XNA2.0 Beta 讓你在.NET 2005也可以繼續編輯!
下載XNA Game Studio有哪些新功能?XNA Game Studio 2.0 可以在所有版本的Visual Studio 2005上運作,包含標準版和裝業版本的Visual Studio 2005。
全心以及改進的介面讓XNA更容易的管理你的XB360的控制端。
在XNA Game Studio你會發現管理和建置內文(content)將會更簡單且會更有幫助。
我們可以引入專案樣板來用在content importers and processors。
你可以在Content Processors新的功能上設定參數,來如何處理content。
teexit1224 發表在 痞客邦 留言(0) 人氣(440)
本文章支援格式為XNA 1.0 版本,1.0以上的版本請事情況自行調整
首先在進入XNA時,從基本的先來體驗,將一張2D的圖片用XNA的處理來呈現在程式裡面吧。
首先,先開啟C# EXPRESS 2005,在【File】->【New Project】,選擇Windows Game這個專案。
除了建構子以外,會先看到幾個精靈所建置的Function
1. Initialize : 初始化函式,在這個函式初始化,在遊戲執行時期的物件內容。
2. LoadGraphicsContent : 讀取圖片內文,用來載入想要開啟的圖片或是即將繪製在Graphics Device上面的元件。
3. UnloadGraphicsContent : 卸載已經被載入的元件,檔案等等。
4. Update : 用來即時更新所有現在繪製的圖形,可能像是被旋轉的之類等等,更新過後再重新繪製。
5. Draw : 繪製。將所要顯現的結果繪製出來。
在新開專案後,可以按下F5,先看看建置結果,出來應該是一個天空藍的視窗。
看看精靈除了建置函數以外還有做哪些事情。
在主程式裡面,一開始就會看到兩個事先宣告的物件。
GraphicsDeviceManager graphics;
ContentManager content;
GraphicsDeviceManager : 處理圖型設備的設定和管理。
ContentManager : 是執行期間的元件,用管線處理的方式載入管理Binary檔案。
接下來開始準備開始在程式中繪製一個2D紋理。
首先我們要加入兩個新的物件,Texture2D和SpriteBatch。
Texture2D myTexture;
SpriteBatch spriteBatch;
Texture2D用途式呈現一個2D的方格圖片。
SpriteBatch能夠繪製一組圖片使用相同的設定。
再來要將圖片加入置專案,在Solution Explorer中,對著專案按下右鍵選擇Exits Item(一般會建立一個content的資料夾),尋找要加入的圖片。
加入完成後,接下來再LoadGraphicsContent函數中,加入依些載入資訊。
myTexture = content.Load<Texture2D>("GameThumbnail");
spriteBatch = new SpriteBatch(graphics.GraphicsDevice);
用ContentManger來載入所以開啟的圖檔,使用ContentManger的Load函式來載入。
因為ContentManger用來開啟和管理執行中的文件,可能你目前載入的文件是文字格式,或是圖檔等等。
而Load函式是一個樣板函式<T>用來將回傳值轉型,以上述例子所說,現在希望將回傳值轉成Texture的格式,所以在Load的函數中<T>填上<Texture2D>。
而函數所要填上的變數,就是要開啟的檔名字串。
SpriteBatch這個物件比較建議在Initialize這個函數中進行初始化,當然也可以在準備載入圖片的時候載入。
建構這個這個物件的時候需要傳入一個GraphicsDevice的物件,所以我們必須用GrapicsDeviceManger來取得關於GraphicsDevice資訊。
現在背景資料都已經載入完畢,像是開啟圖片至Content Pipeline等等。
再來把裡面的東西呈現出來,用Draw函式來繪製。
跟DirectX一樣,在繪製的時候,須要先清除緩衝區,而在XNA也類似這種工作。
用GraphicsDeviceManger的GraphicsDevics中的Clear函數,將背景清除,函數的傳值就是Color類別,可以指定要將背景清除的顏色。
graphics.GraphicsDevice.Clear(Color.CornflowerBlue);
清除完背景過後,就是要開始繪製,在這邊可以直接用SpriteBatch.Begin不使用參數直接告訴設備我準備要繪製,或是設定blend選項。
spriteBatch.Begin(SpriteBlendMode.AlphaBlend);
告訴設備要開始繪製後,接下來就是真正的輸出,使用SpriteBatch中的Draw來繪製。
spriteBatch.Draw(myTexture, Object, Color.White);
函數參數(繪製的紋理,圖形要放置的位置,顏色填充)。
圖形位置,是一個二維的向量座標或是一個矩形區域。
顏色填充的部分,目前不清楚出來的效果。
告訴設備已經繪製完成。
spriteBatch.End();
注意 : 第一次直接寫的時候可能會發生,無法找到載入的圖片資料,這個時候在Solution explorer點選要載入的圖片,在Properties中的XNA FrameWork Content中要選擇"True",否則執行期間將會發生錯誤。
範例連結 :
下載
teexit1224 發表在 痞客邦 留言(8) 人氣(1,601)
XNA GAME STDIO EXPRESS 1.0 REFRESH必須在VISUAL STIOD C# 2005 EXPRESS底下執行。
按照以下的步驟來完成,所有XNA使用前的準備工作!
1. 下載Visual Stdio C# 2005 EXPRESS。連結
注意 : 如果本身有安裝過.NET 2005的,請務必先將其移除再安裝!
teexit1224 發表在 痞客邦 留言(0) 人氣(1,221)
teexit1224 發表在 痞客邦 留言(0) 人氣(69)
teexit1224 發表在 痞客邦 留言(0) 人氣(0)
teexit1224 發表在 痞客邦 留言(0) 人氣(33)