Re: [程式] 小型2D線上遊戲心得分享 : 自訂圖檔

看板GameDesign作者 (我要加入劍道社!)時間18年前 (2006/07/31 17:02), 編輯推噓3(304)
留言7則, 3人參與, 最新討論串2/3 (看更多)
※ 引述《StubbornLin (Victor)》之銘言: : 上次介紹的是圖像引擎,這次介紹自訂的圖檔格式 : 自訂的圖檔格式有很多好處,就是圖檔對一般玩家來說,他們是沒有辦法拿到的 : 雖然說對比較有技術的玩家來說,花時間去分析檔案的格式就可以辦得到 : 但是至少不會看見自己遊戲的圖檔在網頁上到處亂飛,除此之外,一般標準的圖檔 : 格式,裡面所含的資訊不一定能符合遊戲的需求,而當檔案格式是自訂時,你可以 : 用自己的方式壓縮,加入一些雜七雜八的資訊,多張圖片構成的動畫,都可以 : 在一個檔案內完成,這就是好處所在。 要避免資料被拿出來 其實還有不少方法 只要用一些簡單的加密法 就可以讓取出資料的難度大幅提升 [delete] : 檔案格式通常有兩大部份,第一個部份我們稱為Head,也就是檔頭,而檔頭最好用 : struct包起來,這樣在讀取和寫入時只要直接丟給檔案IO就解決了 : // 直接將檔頭寫入 : fwrite(&SurfaceHead,sizeof(SurfaceHead),1,pFile); 這樣會有 endian 的問題 另外你的 code 都用 unsigned long 之類的 type 你可能忘了 C/C++ 並沒有規定 unsigned long 的大小 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.62.3.35

07/31 18:12, , 1F
endian的問題@@? 那是什麼 囧
07/31 18:12, 1F

07/31 18:12, , 2F
C++沒有規定阿....= =" 這點我不清楚
07/31 18:12, 2F

07/31 18:13, , 3F
因為 書上寫的long是4byte的長整數
07/31 18:13, 3F

07/31 18:13, , 4F
至於C++標準到底有沒有規定long之類的大小
07/31 18:13, 4F

07/31 18:13, , 5F
我就不知道了 = =" 至少我目前用的complier都是4bytes
07/31 18:13, 5F

07/31 18:43, , 6F
C/C++只有規定short int int long int之間的關係
07/31 18:43, 6F

08/02 14:41, , 7F
我也是覺得用加密就好了,自訂圖檔似乎不好維護
08/02 14:41, 7F
文章代碼(AID): #14pSSHON (GameDesign)
討論串 (同標題文章)
文章代碼(AID): #14pSSHON (GameDesign)