GameDesign 板


LINE

前言: 人在英國進修程式,其中一門課是要求自製一款遊戲 兩個月時間限制。我在這作業中負責底層架構建立和模組化功能 遊戲製作: 當初想法是,既然是來學習程式的,那就不用現有遊戲引擎 而是用C++和SDL2,並以Entity-Component-System為主架構來實作 因為目標是做一款RPG闖關遊戲,所以想法是先做一個簡易遊戲引擎 然後再利用引擎來編寫遊戲劇本,這樣比較好擴充後續關卡 遊戲簡易流程圖:http://imgur.com/bYokLS3 通用Component包含:圖像(圖片/文字)、事件、位置、物品屬性 內部系統(負責單一Entity內的Component更新):移動 中層系統(內含Entity List,系統只負責邏輯處理):背包、選單、關卡、任務 環境系統:事件偵測、碰撞偵測(從EntityManager中觀察含有特定component的Entity) InputManager(收集玩家按鍵的Queue)、EntityManager(所有Entity) 遊戲成果圖(注意!背景和人物圖像是由圖片網站購買再加工) http://imgur.com/nWOH98K 因為只有兩個月時間,所以遺留幾個待處理問題: 1. smart pointer不夠熟悉,導致memory leak 2. 如果後續增加關卡的話,EntityManager勢必會太長,這部份沒有效控管 3. 圖像沒有進行分批讀取處理 4. 碰撞僅以四邊體偵測,相對粗糙 5. 圖片僅有顯示,無任何特效 雖然整個陽春又有很多錯誤地方,但我覺得這個作業是個好的開始 多虧這個作業的磨練,我在使用cocos2dx可以上手快些,即使架構不同 而且讓我對遊戲整個流程有初步了解,還會仔細研究現有引擎是如何處理問題 雖然因此而常常只能睡4-5小時,但是過程很值得:) --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 137.222.114.244
※ 文章網址: https://webptt.com/m.aspx?n=bbs/GameDesign/M.1498425108.A.F8A.html ※ 編輯: cjamhe01385 (137.222.114.244), 06/26/2017 05:12:09 ※ 編輯: cjamhe01385 (137.222.114.244), 06/26/2017 05:13:26
1F:推 fishball990: 有點猛 推一個 06/26 20:41
※ 編輯: cjamhe01385 (137.222.114.240), 06/27/2017 01:03:20
2F:推 jugu: 06/27 01:13
3F:推 Jr0000: 太強了@@果然還是要被逼才會進度快 06/27 01:29
4F:推 cjcat2266: entity manager可從list改用BST或hashtable(name當key) 06/27 03:38
5F:→ cjcat2266: hashtable優點是entity lookup費時O(1),缺點是有洞 06/27 03:39
6F:→ cjcat2266: iterate會浪費時間,BST沒這問題,但存取費時O(log n) 06/27 03:40
7F:→ cjcat2266: 要依照遊戲需求做抉擇,我會選BST,如果lookup造成效能 06/27 03:41
8F:→ cjcat2266: 瓶頸,那就要重新審視有沒有必要這麼多entity了 06/27 03:41
9F:→ cjcat2266: ^ 針對你的代處理事項提出的一點小建議 :) 06/27 03:42
10F:→ cjcat2266: 待 06/27 03:43
11F:→ cjamhe01385: 天啊cj大,你是我默默關注的偶像,太開心了 06/27 03:47
12F:→ cjamhe01385: 謝謝建議,我是有改用hashtable,但我會改BST試試 06/27 03:56
13F:推 j1551082: 其實只要知道大概的東西就能做,但是實際上看著企劃再 06/28 15:59
14F:→ j1551082: 思考遊戲內容.. 引擎只是一種工具而已呢 06/28 15:59
15F:推 milk518abc: 推 06/29 00:39
16F:推 RINPE: 太強了!最近也從app轉寫程式 有點想去進修 07/01 09:13







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Tech_Job站內搜尋

TOP