看板 C_and_CPP 關於我們 聯絡資訊
EA開源了部分的終極動員令 Command & Conquer 又稱CNC裡的兩個遊戲:紅色警戒1 和 泰 伯倫黎明 https://github.com/electronicarts/CnC_Remastered_Collection 這個90%以上都是C++寫的,程式非常規範。我覺得非常適合學習觀摩。 這只是部分代碼,只包含了TiberianDawn.dll和RedAlert.dll。遊戲素材和引擎並未開源。 此開源可讓mod社群更好開發些好玩的東西。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.12.117.136 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1594127636.A.370.html
CoNsTaR: 重點應該是 ra2,雖然十幾年前就已經有 XCC 了07/07 23:17
但我主要是想推他們的註釋格式規範,明瞭易懂 ※ 編輯: mmmmei (101.12.117.136 臺灣), 07/08/2020 00:45:21
CoNsTaR: 抱歉,重點誤 07/08 10:00
MasterChang: 代碼風格很值得學習 07/08 11:16
Killercat: 有哪個檔案特別可以參考看看嗎 我隨手翻了一些 都是 07/08 22:33
Killercat: 很標準風格,很GNU啊... o_oa? 07/08 22:34
Killercat: https://tinyurl.com/y7th64cl 甚至還有些滿不知所謂的 07/08 22:35
Killercat: 不過這應該只是indent by space/tab混亂我猜吧 07/08 22:35
Killercat: https://tinyurl.com/yahvo3ay這種風格的話 現代來講 07/08 22:36
Killercat: 也不是很鼓勵這種寫法了 因為無法doc gen 07/08 22:36
Killercat: 也許當年是很漂亮的寫法 但是現代來講就... 07/08 22:42
loveme00835: 之前 Jason Turner 就有 live stream code review 07/09 01:29
loveme00835: CnC: https://youtu.be/Oee7gje-XRc 不過這種古早的 07/09 01:30
loveme00835: 扣你是可以學習他們的架構設計, 但是其他的就不必了 07/09 01:30
loveme00835: 標準在變文化在變, 除非你想讓人覺得自己食古不化, 07/09 01:31
loveme00835: 不然現今光是 C++ Core Guidelines 就夠你學了, 看不 07/09 01:32
loveme00835: 懂 Modern C++ Style 才比較慘 07/09 01:33
CoNsTaR: EA 的 code 就不用太認真了吧,以前做過 ra2 的模組,光 07/10 01:02
CoNsTaR: 是從設定檔就已經可以看出整個疊床架屋了,新舊系統混在 07/10 01:02
CoNsTaR: 一起,而且同一個單位(兵種、建築)有各種不同實作,根 07/10 01:02
CoNsTaR: 本不知道最後用的是哪個,數千個參數之間互相干擾,還可 07/10 01:02
CoNsTaR: 以看出整個系統是直接從別款遊戲改來的,連內部名稱都沒 07/10 01:02
CoNsTaR: 有換,原本的遊戲機制也直接晾在那裡,就直接加 ra2 的 07/10 01:02
CoNsTaR: 機制... 07/10 01:02
CoNsTaR: 雖然 ra2 是真的經典啦... 07/10 01:03
Killercat: 其實嚴格講起來那是Westwood code,這包EA不接喔 XD 07/10 14:57
Killercat: 這種code style其實甚至在當年都不算漂亮 因為Doxygen 07/10 14:58
Killercat: 在當時已經被廣泛運用了... 07/10 14:59