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 >
200902-16 XNA-矩形碰撞Rectangle Collision(程式範例) 矩形碰撞是設計2D遊戲一開始需要知道的最基礎的碰撞偵測的方法,利用bounding box的方法將圖片的大小包住,甚至可以更仔細的指出圖片中圖案的4面大小,但是通常會以圖片的大小為主,因為使用上較方便,將兩個要碰撞的圖片去檢查他們是否發生交集,是的話就表示碰到,不是的話則表示沒有碰到,當然這樣的碰撞.... Read More >
200902-16 XNA-從Windows到Xbox360 從Windows到Xbox360: 首先必須先設計好一個Window Game的遊戲專案,能夠真正的在Windows 上執行遊戲,之後就可以透過XNA 2.0的功能來轉換成給Xbox 360執行的專案,在專案=>Create Copy 專案名稱 for Xbox 360(如下圖),之後按.... Read More >
200902-16 XNA-播放聲音 接下來將介紹遊戲中不可或缺的要素,那就是音樂或是音效等聲音,一個遊戲如果沒有了聲音,姑且不論它是否好玩有趣,想必也沒什麼好玩的了,因為聲音可以用來幫助我們融入這個遊戲的情境,適時的使用聲音可以使玩家更快的融入遊戲當中,所以就必須了解一下XNA在聲音上是如何處理的。之前介紹了一下XNA在音效處理上是使.... Read More >
200902-16 XNA-2D和3D簡介 2D座標: 2D的座標系統是依左上為原點,X軸往右增加往左則是減,而Y軸往下為加網上為減,如下圖所示是一個800 * 600大小的視窗。 一切有關於2D的動作都會在SpriteBatch.Begin()和SpriteBatch.End()中間,像是貼圖和顯示文字等動作,這些動作都必須在S.... Read More >