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

Google
【基本遊戲技術】2D角色上、下、左、右移動
前往頁面 上一頁  1, 2, 3  下一頁
 
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式演算法
上一篇主題 :: 下一篇主題  
發表人 內容
Okerofujin
略有貢獻的成員


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

-40.53 果凍幣

發表發表於: 2008-4-18, PM 9:45 星期五    文章主題: 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:49 星期四 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
zwshen
對這略感興趣的新人


註冊時間: 2008-03-11
文章: 22
來自: Taiwan
0.00 果凍幣

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

HPkon 寫到:
請問~~~
HGE *g_hge = 0;
這是做什麼用啊???
hge 引擎 - 為一個全域變數
看不太懂意思!!!



這是宣告 HGE 物件,用來操控 HGE 2D引擎。你可以看到程式碼中到處有 g-hge->xxx 的程式,這就是在叫 HGE 引擎做一些事情,如繪製圖片、讀取使用者按下什麼按鍵之類等。

這裡有 HGE 的官方新手教學文件,你可以先看第一個教學:「Tutorial 01 - Minimal HGE application」。

http://hge.relishgames.com/doc/index.html?tutorials__main.html
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
Okerofujin
略有貢獻的成員


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

-40.53 果凍幣

發表發表於: 2008-4-18, PM 9:56 星期五    文章主題: 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:50 星期四 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
zwshen
對這略感興趣的新人


註冊時間: 2008-03-11
文章: 22
來自: Taiwan
0.00 果凍幣

發表發表於: 2008-4-18, PM 10:03 星期五    文章主題: 引言回覆

HPkon 寫到:

如果沒猜錯的話
HGE *g_hge = 0;
HGE→可以當成資料型態
*g_hge→指標變數
是這樣嗎???


是啊,這是一個指標變數。

g_hge = hgeCreate(HGE_VERSION);

就是指建立了一個HGE引擎,並用 g_hge 指標指向這個引擎,
之後就能用 g_hge->xxx 做很多事。
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
Okerofujin
略有貢獻的成員


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

-40.53 果凍幣

發表發表於: 2008-4-18, PM 10:16 星期五    文章主題: 引言回覆

問題

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


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

2673.35 果凍幣

發表發表於: 2008-4-19, AM 1:15 星期六    文章主題: 引言回覆

HPkon 寫到:
zwshen 寫到:


是啊,這是一個指標變數。

g_hge = hgeCreate(HGE_VERSION);

就是指建立了一個HGE引擎,並用 g_hge 指標指向這個引擎,
之後就能用 g_hge->xxx 做很多事。

原來如此...
多謝大人解答!!!

然而在下還有些疑問
就是#include "hge.h"以下一直到int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)以上都是宣告在全域嗎???

是的
你的C/C++基礎有必要多加強喔
不論是指標變數或者全域宣告都是顯而易見的
這種基本語法實在不應該太常拿出來發問
請盡量針對看不懂的語意發問吧

另外
直接從C/C++進入引擎的學習可能有點跳太多了
建議你可以先找尋Windows程式設計或者Win32 API相關的書籍來閱讀
有了視窗建立的概念、訊息驅動原理的了解跟Windows作業系統架構的認知後
再進入引擎學習的部份應該會比較好
推薦的書籍是Charles Petzold寫的Windows程式設計
中譯本由余孟學編譯,Microsoft Press出版
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
Okerofujin
略有貢獻的成員


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

-40.53 果凍幣

發表發表於: 2008-4-19, AM 9:39 星期六    文章主題: 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:50 星期四 作了第 2 次修改
回頂端
檢視會員個人資料 發送私人訊息
zwshen
對這略感興趣的新人


註冊時間: 2008-03-11
文章: 22
來自: Taiwan
0.00 果凍幣

發表發表於: 2008-4-19, AM 11:57 星期六    文章主題: 引言回覆

HPkon 寫到:

之前有想說要先學Win32 API和DirectX的
可是有網友說不用Win32 API和DirectX去找個遊戲引擎就行了
所以Win32 API和DirectX沒學就直接跳遊戲引擎了


Windows 視窗程式的經典好書的中譯本是這本:
http://tlsj.tenlong.com.tw/WebModule/BookSearch/bookSearchViewAction.do?isbn=9861250557&sid=18310

不過,我個人是覺得,初學者學好C++比較重要,可以暫緩一緩去學習Win32 API跟DirectX。一來是C++不熟的話,要接著學win32 跟direct x 是還滿累的,二來是就算學好,但是要實際用來做出完整的小遊戲,還有很多技術問題要剋服。所以我是認為先利用遊戲引擎做幾個遊戲,練練基本功,會是比較實務的學法。

初學者大部份只會一些 C++ ,資料結構跟演算法可能懂沒幾個,更不用談 OO 或 Design Pattern,也就不用談到Software architecture之類的設計議題。而最重要的基本功,第一個是要很熟C++的語法,第二個是能運用大部份的資料結構跟演算法,就是說要會有用 C++ 的標準樣版函式庫,也就是STL。

初學者找個遊戲引擎來用會比較好,因為比較容易在短時間內做出個小作品,而且在做遊戲的過程中,會更進一步了解C++的語法,也可以遇到常見的資料結構跟演算法,並利用C++ STL去實作,更好的情況,就是也能運用物件導向(object-oriented)的技術來寫程式,這些都是很重要的內功。

等你真能利用遊戲引擎做出幾個小作品時,你就會有相當的基本功,到時候要去學習Win32 跟 DirectX,會比較容易上手。
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
yag
Site Admin


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

2673.35 果凍幣

發表發表於: 2008-4-19, PM 12:16 星期六    文章主題: 引言回覆

HPkon 寫到:
yag 寫到:

是的
你的C/C++基礎有必要多加強喔
不論是指標變數或者全域宣告都是顯而易見的
這種基本語法實在不應該太常拿出來發問
請盡量針對看不懂的語意發問吧

另外
直接從C/C++進入引擎的學習可能有點跳太多了
建議你可以先找尋Windows程式設計或者Win32 API相關的書籍來閱讀
有了視窗建立的概念、訊息驅動原理的了解跟Windows作業系統架構的認知後
再進入引擎學習的部份應該會比較好
推薦的書籍是Charles Petzold寫的Windows程式設計
中譯本由余孟學編譯,Microsoft Press出版

之前有想說要先學Win32 API和DirectX的
可是有網友說不用Win32 API和DirectX去找個遊戲引擎就行了
所以Win32 API和DirectX沒學就直接跳遊戲引擎了

Windows程式設計跟DirectX是不能相提並論的
DirectX可以先不學
但Windows程式設計必定要先接觸
剛學完C/C++的新手都不會有視窗方面的概念
就此一步踏入遊戲引擎的話
會一次面對「視窗原理」及「引擎操作」兩方面的難題
難度會因此提升許多
所以要循序漸進就必須先從了解視窗開始
這並不是說要學到多熟
而是要了解其概念、原理及架構
其中還有很多對做小遊戲來說不太重要的章節
像是印表機的處理、剪貼簿的處理
或者依個人所需,也可先略過子視窗、功能表、或多重文件等章節
可是如果連其他基本的部份也不先行了解就直接去研究遊戲引擎
只不過是把學習Windows程式設計的時間轉嫁到引擎的學習時間上
而且還會多出很多不該問的問題…

ps.要注意的是,學習Windows程式設計並不是要你去學它裡面的各種APIs如何使用,而是要你去了解它的觀念跟流程。

HPkon 寫到:
請問一下...
引言回覆:
推薦的書籍是Charles Petzold寫的Windows程式設計
中譯本由余孟學編譯,Microsoft Press出版

這本書的中文名稱是什麼???
中譯本是台灣哪家出版社出版的???

中文名稱就叫做Windows程式設計…
中譯本就是由Microsoft Press出版…
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
Okerofujin
略有貢獻的成員


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

-40.53 果凍幣

發表發表於: 2008-4-19, PM 1:07 星期六    文章主題: 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:50 星期四 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
zwshen
對這略感興趣的新人


註冊時間: 2008-03-11
文章: 22
來自: Taiwan
0.00 果凍幣

發表發表於: 2008-4-19, PM 2:01 星期六    文章主題: 引言回覆

HPkon 寫到:

可以請大人幫在下規畫一下學習步驟嗎???
第一步是先學C++沒錯吧!!!
那接下來的是要學什麼好呢???



最重要的是「從做中學」,程式設計能力除了多看書,就是要多動手寫,
才會有深刻的感覺。你可以先從文字模型的遊戲做起,像是「踩地雷」,
只要用到 1~9、O、X 之類的字元,就能用cout 就能輸出踩地雷的畫面
,用 cin 就能取得使用者想要踩的 (x, y)位置等等。就可以避開用2D或
3D的問題。

踩地雷有個重要的技術,那就是用「遞迴」去展開盤面。而「遞迴」跟
「指標」是一個人會不會寫程式的主要判斷依據.XD

就程式設計的初學者來看,就是基本上 C++ 語法要非常的熟,之後就是擅用
各種資料結構跟演算法,這樣就能做做幾百行程式碼左右的小作品。

而物件導向的技術,就大都是觀念上的問題,等到前述的基本功夠時,也做過
很多小作品時,再來學OO 跟 Design Pattern ,就會省事的多,不過這是後
話了。
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
Okerofujin
略有貢獻的成員


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

-40.53 果凍幣

發表發表於: 2008-4-19, PM 2:14 星期六    文章主題: 引言回覆

問題

Okerofujin 在 2018-7-5, PM 11:51 星期四 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
zwshen
對這略感興趣的新人


註冊時間: 2008-03-11
文章: 22
來自: Taiwan
0.00 果凍幣

發表發表於: 2008-4-19, PM 2:20 星期六    文章主題: 引言回覆

HPkon 寫到:

可是後來從很多網友那得知JAVA不適合做大型遊戲
然而很多網友都推薦C/C++
之後在下就自學C語言
然而我選的書是『C語言教學手冊 第三版』
這本書是『洪維恩 博士 著』



其實 Java 是很powerful的,絕對可以做大型遊戲,甚至像MMORPG也
有人做過,而且還是開放源始碼。

這有兩本介紹用java 做遊戲的好書:
1. Developing Games in Java (有中譯本:大師談 Java 遊戲設計)
2. Killer Game Programming in Java (非常推薦的好書)

另外,上奇科技也有一系列「大師談xxx」的遊戲設計相關中譯書,
,有幾本還很便宜,甚至才199,你可以考慮買幾本來看,我個人是
每本都有買了..XD

另外,學C++ 是有兩本必讀的書:
1. C++ Primer, 4/e 中文版 侯捷譯http://tlsj.tenlong.com.tw/WebModule/BookSearch/bookSearchViewAction.do?isbn=9789861546698&sid=42530
2. C++ 程式語言經典增訂版 葉秉哲譯 http://tlsj.tenlong.com.tw/WebModule/BookSearch/bookSearchViewAction.do?isbn=9572054430&sid=10176

這兩本都是各國立學校資工系學C++的教科書,你可以任選一本,最好是兩本
都能看看。不過這兩本都有近千頁的量,就可能要花點耐心看吧。我當初是升
大一的暑假時慢慢看,花了大概兩個月才看完一遍 C++ primer 3/e ,在之後
的歲月中,也陸陸續續再重新讀過三、四遍。
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
zwshen
對這略感興趣的新人


註冊時間: 2008-03-11
文章: 22
來自: Taiwan
0.00 果凍幣

發表發表於: 2008-4-19, PM 2:25 星期六    文章主題: 引言回覆

HPkon 寫到:

看來在下還是C++先學好再說!!!
因為C++只是C學完後稍微碰一下而已
沒記錯的話『遞迴』好像是C++裡的東西吧!!!

如果C++學完之後接著學的是資料結構跟演算法嗎???


遞回是程式語言共有的技術,是一種解問題的技術,沒有限制是什麼語言才有。

學完C++語法,接著的確是學各種資料結構,坊間上有很多
講用C++實作資料結構的書,你可以去找來看,並自已試著
實作看看,像是陣列、串列、堆疊、佇列、二元樹、圖等,
邊看書邊實作,可以加強你的C++語法,也能比較深刻體會
到各個資料結構的精髓。

這個要推薦的好書是Robert Sedgewick 寫的
Algorithms in C++ Part 1~4 及
Algorithms in C++ Part 5,不過都是原文書。

是有很多類似的中文書,就再自已找本順眼的來看吧。


zwshen 在 2008-4-19, PM 2:29 星期六 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
yag
Site Admin


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

2673.35 果凍幣

發表發表於: 2008-4-19, PM 2:29 星期六    文章主題: 引言回覆

推薦C++ Primer 4/e
4/e是代表第四版
出版社是碁峰
譯者為候捷
這是學習C++ No.1的好書
而且剛出不久,比較新

話說C++ Primer跟C++ Primer Plus是不同作者的書
要小心不要搞混了
譯者也不同
認明候捷翻譯的就對了

再話說…遞迴不是C++特有的…
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
從之前的文章開始顯示:   
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式演算法 所有的時間均為 台灣時間 (GMT + 8 小時)
前往頁面 上一頁  1, 2, 3  下一頁
2頁(共3頁)

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


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