200902-16 XNA-製作遊標需要注意的地方 其實此篇文章最主要就是呼應之前從Window到Xbox360這篇文章,裡面提到最重要的幾件事情,就是Xbox360沒有支援滑鼠,還有類比搖桿所回傳的值只有(-1)~(1)之間的範圍值而已,所以勢必Windows和Xbox360設計必須要有所不行才可以,這邊舉的例子就是製作遊標(cursor)這項功能.... Read More >
200902-16 XNA-在Windows上分享你的遊戲 在Windows上分享遊戲的方法目前有兩種,直接利用專案建置完之後發布的功能,此方法會產生一個Setup.exe的安裝檔,它會以安裝軟體的形式將你的遊戲安裝起來;另一個方法就是直接使用編譯完的遊戲執行檔和它所使用到的內容資料夾,直接點下執行檔就可以直接執行遊戲,接下來介紹一下它們詳盡的過程。專案發布.... Read More >
200902-16 XNA-製作一個遊戲時間 之所以需要再遊戲中製作一個屬於遊戲的時間是為了製作暫停這項功能,有些遊戲有需要非常明確地指出遊戲時間,這類的遊戲就必須做一個屬於遊戲自己的時間,為了能夠製作暫停之後玩家不知道會停多久,然後再按繼續遊戲,這時就會需要這項功能。 這裡會使用到遊戲預設給我們的繼承GameTime下來的gameTime物.... Read More >
200902-16 XNA-繪圖著色 繪圖著色: 3D繪圖在繪製的過程中,我們會使用到著色器(Shader),裡面需要用到主要的繪圖屬性:光源、材質、著色打光,可以針對自己想要宣染的物體編輯自己想要的著色器,達到自己想要的效果,以下先介紹此三種屬性,之後的文章在來簡單介紹一下Shader。光源: 實際把3D世界照亮發光體是光.... Read More >
200902-16 XNA-Shader簡介 著色器(Shader): Shader可以直接在GPU上執行的指令集,依據功能的不同,可以劃分成處理3D頂點資料的Vertex Shader和處理螢幕像點資料的Pixel Shader。 對XNA程式來說,Shader是一個小程式,用來撰寫繪圖3D物件所產生的效果,Shader指令經過編譯之後,直接載入到顯示卡上的GPU來執行。而GPU實際可以執行的其實是類似組合語言這種低階的Shad.... Read More >
200902-16 XNA-攝影機(觀測點) 知道如何將模型放置3D位置中之後,接下來就必須設置一個攝影機或是觀測點,用來設定我們在3D世界中的哪個位置來看這個世界。 XNA為我們提供了一個方便使用的觀測點函數,在Matrix底下的一個方法CreateLookAt,底下就來了解一下它的用法。 這裡需要知道這個函數中三個參數的意義:Matr.... Read More >
200902-16 XNA-投影轉換 這裡主要是將3D世界的物件正確的顯示在2D的螢幕上,也就是將攝影機裡看到的3D物件,投影顯示在螢幕上指定的視覺區域裡面。XNA為我們提供了一個方便使用的投影轉換的函數,在Matrix底下的一個方法CreatePerspectiveFieldOfView,底下就來了解一下它的用法。Matrix.cre.... Read More >
200902-16 XNA-3D矩陣運算 這裡會解釋一下基本的矩陣運算的原理,還有程式為我們所提供的函數,方便我們在3D遊戲程式中較容易使用。矩陣運算會使用到四維的矩陣來運算,除了x,y,z座標外,還加入了一個齊次座標,(x,y,z,w)其中的w代表著座標軸遠近的參數,通常內定預設值是1.0,要轉換成3D位置空間的3維座標就會變成(x/w,.... Read More >
200902-16 XNA-顯示3D模型 將3D模型從3D軟體匯出之後,接下來就需要將它運用到程式中,程式中要顯示3D模型必須先將它加入到專案中,在方案總管中Content上按右鍵=>加入=>現有項目,然後你就可以選擇你要加入到專案中的模型檔案,XNA支援副檔名有X和FBX的檔案,選好後它就加入到你的專案中了,之後需在加.... Read More >
200902-16 XNA-滾動背景(程式範例) 滾動背景最主要的作用再於玩家可以感覺自己在自動的前進,一直重複這張圖片,這樣的手法在以前的許多遊戲都常常使用到,像是太空侵略者或是沙羅漫蛇等遊戲,幾乎都是利用這個原理來做背景的處理,一方面也可以不必要再去處理許多背景圖片的轉換,因為大多都用在宇宙中,無需有較大的變化,因此可以使用此方法。 此.... Read More >