電腦遊戲製作開發設計論壇 首頁 電腦遊戲製作開發設計論壇
任何可以在PC上跑的遊戲都可以討論,主要以遊戲之製作開發為主軸,希望讓台灣的遊戲人有個討論、交流、教學、經驗傳承的園地
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入 

Google
問題

 
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式高級班:DirectX、OpenGL及各種圖型函式庫
上一篇主題 :: 下一篇主題  
發表人 內容
Okerofujin
略有貢獻的成員


註冊時間: 2007-10-19
文章: 71

-40.53 果凍幣

發表發表於: 2008-9-4, PM 9:30 星期四    文章主題: 問題 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:40 星期四 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
yag
Site Admin


註冊時間: 2007-05-02
文章: 688

2673.35 果凍幣

發表發表於: 2008-9-10, PM 10:03 星期三    文章主題: Re: 可以請各位高手幫忙一下嗎??? 引言回覆

HPkon 寫到:
http://www.badongo.com/file/11195058

就是這是在下之前做出的東西
按下方向鍵時小精靈可以移動
而按下空白鍵時小精靈會發射子彈
但是在下的程式很沒有結構化
因此想請各位大人執導在下如何結構化自己的程式
像是把子彈寫成一個類別!!!
把小精靈寫成一個類別!!!
在下想了很久就是想不到頭緒
請各位高手指點一下吧!!!
謝謝!!!

如果簡單說說就能讓你懂
那你應該也早就自己想到該怎麼做了
想在結構化上面有所進步
要嘛就是自己硬是寫成類別來體驗一下
要嘛就是多參考別人的程式碼
要用文章來指點的話
沒個一、兩萬字以上大概也沒什麼用處吧

ps.去找些物件導向分析與設計的書或者是設計模式的書看看會是不錯的著手點
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
Okerofujin
略有貢獻的成員


註冊時間: 2007-10-19
文章: 71

-40.53 果凍幣

發表發表於: 2008-9-12, AM 12:26 星期五    文章主題: 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:40 星期四 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
kyo
偶而上來逛逛的過客


註冊時間: 2008-06-09
文章: 6

0.00 果凍幣

發表發表於: 2008-9-12, PM 1:51 星期五    文章主題: 引言回覆

除了yag大大的建議外,我看了您的程式碼:

代碼:
//遊戲主迴圈
void   Game_Main()
{
   if(i!=80)
   {
       i=i+1;
   }
   if(i!=90)
   {
       xd->start();    
   }
   if(i==80)
   {
       otz->start();
   }

}


1. 首先您的主迴圈全域變數i有溢位的危險,為什麼,因為除了i==80外他會累加到爆為止.
2. otz物件只有在i==80才會開始動作一次,眼睛要夠好才能看到殘影. Very Happy
3. xd物件會一直顯示是因為除了i!=90,它都一直在動作.

一些邏輯判斷及流程的控制您可能需要多花費功夫想想,加油! Wink
回頂端
檢視會員個人資料 發送私人訊息
Okerofujin
略有貢獻的成員


註冊時間: 2007-10-19
文章: 71

-40.53 果凍幣

發表發表於: 2008-9-14, AM 12:32 星期日    文章主題: 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:41 星期四 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
Okerofujin
略有貢獻的成員


註冊時間: 2007-10-19
文章: 71

-40.53 果凍幣

發表發表於: 2008-9-14, PM 12:24 星期日    文章主題: 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:41 星期四 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
babu61509
散播福音的祭司


註冊時間: 2007-08-26
文章: 142

681.01 果凍幣

發表發表於: 2008-9-15, AM 9:02 星期一    文章主題: 引言回覆

看不懂DirectX (沒買書看,其實是翻過以後覺得很麻煩就沒買了XD)
不過稍微說一下之前用XNA的心得.

首先,遊戲會有一個主迴圈.
在主迴圈裡面用switch 判斷 一個 enum 變數 來決定現在要做什麼.
(GAME_MENU就是遊戲選單,GAME_PLAY就是玩之類的)

再依據每個部分寫一個class來實作. (稱它為遊戲組件XD?)

主迴圈大概長這樣 :
代碼:

void Main_Loop()
{
  switch (game_status)
     case GAME_MENU :
        gameManu.update();
        break;
     case GAME_PLAY :
        gamePlay.update();
        break;
}

遊戲組件在程式一開始就要去NEW了喔.

每個遊戲組件至少會有2個函式 :

1. 一個用來更新會螢幕上的東西還有做控制 (update)
: 做物件移動還有按鍵控制都放這邊.
2. 一個用來畫出螢幕上的東西 (draw)
: 就是把目前會出現在螢幕上的東西畫出來,第一個步驟通常是清螢幕.

還有會顯示在螢幕上的東西通通是物件,都要用class寫出來.
最好是在寫程式之前就要做好繼承圖- .-
這樣寫起來才會方便.

_________________
已經畢業了!!
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式高級班:DirectX、OpenGL及各種圖型函式庫 所有的時間均為 台灣時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
可以 在這個版面附加檔案
可以 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作