2008年5月28日 星期三

Metal Gear Solid 2 解讀心得

部分動作的解讀完成, 不過 root-bone 動作位置紀錄方式還解不出來; 如下圖所示:
二代Snake 的三角面數約為 3000 面
檔案 dar
  • kmy: 靜態 3D model (場景, 武器)
  • cvy: 延伸 kmy 的頂點變型
  • evx: 骨架 skin 3D model (人物, 頭髮, 衣服)
  • mar: 骨架動作檔
  • o2d: 2D 介面

下載區中的 toolextract v1.03 新版本可以解開 qar, dar 檔案

2008年5月15日 星期四

Metal Gear Solid 2 模型解讀 WIP

上一篇文章提到了 Turfster's game tools, 其中 Solidus 工具可以分解出 MGS2 裡的一堆資料(包括模型, 貼圖材質, 甚至是音效檔...). 資料包裝檔 dar 和 qar: 其中貼圖材質以 xti(類似dds) 包裝在 qar 中, 其他的就包裝在 dar 中, idlist.txt 則有一些檔名轉換 ID索引的資訊; 此外還有音效的包裝檔.

另一個問題是買不到 MGS2 吧, 畢竟是 5年多前發行的. 於是前一陣子託人從美國買了一套 MGS2 PC; 執行遊戲可能會有這兩個問題:
  1. 有聲音, 3D模型沒貼圖: 解決方法 [Option]->[Drawing]->[Model Quality: Low]
  2. 畫面全黑 (vista): 因為 DirectSound 硬體加速不相容, 解決方法就是移除音效驅動程式, 或是用 Creative ALchemy for X-Fi

其實遊戲還不一定可以執行, 這就是 PC game 的命運: 軟體或硬體不相容啊!! 還是玩遊樂器版本就好了吧... 不!不!不! 努力解決問題就是 PC fan 的使命, No pain, no gain! 有時候處理這樣的問題也是一種遊戲啊(ps: 就像排隊遊戲人人愛). 秉持這個信念下, 就解讀了 MGS2 的模型.

下圖由左至右: Snake, Rosemary, Otacon, Radien

接下來呢? 解讀動作檔嗎? 先休息一下吧. 待續...

2008年4月30日 星期三

遊戲資料工具表 Game Tools

原來解讀遊戲資料有這麼多的工具啊. 雖然大多是 PC game, 不過已經很令人感動了.

Turfster's game tools 另一個遊戲解碼高手的網站, 有工具可以解出史涅克(MGS2 Snake)的模型了. 這個討論區則有一堆相關的留言...

2007年11月5日 星期一

3D Ripper DX 1.5a

在 shader 成為新一代 Direct3D 9.0 的基本要件後, 遊戲使用的模型貼圖等資料也就有了一致性, 也就是說可以寫一個程式去擷取材質記憶體, 或是頂點資料, 加以匯出; 用以研究開發該遊戲的圖像技巧, 尤其是 3D 建模的佈線方式與貼圖(diffusemap, specularmap, normalmap).
3D Ripper DX 就是這類的工具, 還有其他類似的工具, 可參考網址的 Forum 和 Links.

以學術研究的立場, 這是一個快速學習專業技巧的捷徑; 不過以智慧財產權的角度來看, 該遊戲研發的圖像就可能被盜用; 當然, 所有人的智慧都是在人類的智慧累積下所形成的, 所以這樣的工具要如何善用就自己決定了.

2007年7月17日 星期二

OpenGL is OK on Vista

最近開始使用 MS Vista 了, 當然 DirectX 10 並不是我所在乎的, 而是 OpenGL 在 Vista 上的支援度是否完整: 結果當然是完全正常的, 也包括在 AeroGlass 特效下, 上圖就是實例. 自己寫的程式執行起來沒有問題, 總是有開心的感覺吧.

原本計劃至少能每個月發文一篇的, 不過這個目標好像也不太容易達成啊... 好吧, 再分享一個好東西 MD5 in modwiki, 就是 DOOM3 引擎(最近正名為 id Tech 4)所使用的 3D 模型格式相關的匯入匯出工具:
  • 相關遊戲有 Doom3, Quake4, Prey, ETQW
  • 可以直接在 3D 編輯軟體上讀取遊戲中所有的模型, 動線
  • 副檔名 .pk4 (zip 格式壓縮), 解壓縮後找找 md5mesh, md5anim
  • 3D 編輯軟體 importer/exporter 在其中的連結
  • 2007年4月4日 星期三

    魔術方塊正解

    有時候古老的東西, 可以帶給我們新的啟發. 魔術方塊就是一個相當有意思的玩具, 3x3 的六面正方體構成的東西, 可以訓練腦力與手力(有時候轉轉還會不小心卡住), 其內部的機械構造以一個巧妙的方式相互牽引著, 就算是以腦力解不開六面同色時: 用暴力法拆開方塊再拼回去的技巧(小心夾到手喔), 也是個有趣的玩法; 或是把貼紙撕下來重新黏成六面同色(小心之後會脫膠, 就黏不緊了... 別鬧了).

    訓練腦力當然還是此玩具的主要玩法!!! 連結是此遊戲的正解, 就算是有解答, 想要真的轉出六面也得費一番功夫吧...

    還記得六個面是哪些顏色呢? (答案在意見區裡)

    2007年3月9日 星期五

    Mii (flash version)

    買不到台版的 Wii 主機嗎? 先玩玩 Flash 版的 Mii 吧!

    2007年2月9日 星期五

    VR快打5的3D技術講座

    一直對Sega VR 快打系列有種莫名的情感, 這是第一個全 3D 格鬪, (雖然對生死格鬥系列也會有另一種奇妙的情感啦). 這系列最新的家用版 VF5 正式在 PS3 上登場了, 剛好看到了這一篇有關 VF5 3D技術講座 (原文是日文), 值得好好閱讀; 簡體中文翻譯在此. 其實只看圖也可以瞭解一些遊戲中使用的繪圖技巧.

    該文章中提到, 所使用的繪圖函式庫是 OpenGL 2.0. 真是令人欣慰啊, 畢竟我也是支持 OpenGL 的. (以前一向使用 OpenGL 的 John Carmack, 卻大力支持 Xbox360, 使用DirectX9.0; 所以現在看到有遊戲使用 OpenGL 的就會更有親切感), 而單一人物的多邊型面數有四萬多面, 比起四代的 12000面左右, 更是精細許多.

    使用的繪圖技術包括:
    • 自體投影(SelfShadow Casting)
    • Procedural Texture
    • VTF(Vertex Texture Fetching)
    • fp16 HDR(High Dynamic Range Rendering)
    • 物理計算: 衣服, 頭髮, 配件的碰撞
    可惜看不懂日文, 所以文章的精華也無法了解... 另外以前也有一篇汪達與巨像的3D技術講座, 也值得一讀喔(當然還是日文的).

    GameWatch 遊戲講座: 所有該網站的遊戲技術講座

    2006年12月14日 星期四

    真三國無雙4: 模型解讀完成

    臉部表情與動作
    再補上臉部表情與動作, 總算是解讀完成了!

    左起: 甄姬(三代), 甄姬(四代), 星彩(四代新角色)
    上圖左起: 甄姬(三代), 甄姬(四代), 星彩(四代新角色)

    原本以為真三國無雙4的模型檔應該和3代的一樣採用 XKM格式, 但是並沒有. 四代的格式又有了一些更新, 我把它叫做 _M1G, 因為檔頭就是 _M1G. 至於三代與四代的模型有何差異呢? 好像就是貼圖材質(512x1024) 精細度加倍了, 增加新服裝和新角色. 貼圖檔格式使用 DDS(DXT5), 不過檔頭有些小修改.

    2006年11月10日 星期五

    nVidia's G80 for OpenGL

    NVIDIA OpenGL Extension Specifications: GeForce 8 正式上市, 最新的 OpenGL extensions.

    DirectX10 有的新功能, OpenGL 2.1 也有支援了. 喔, 對了 MS Vista 也已經 RTM. 至於之前擔心OpenGL 在 Vista 上支援度的問題呢? 請參閱 NVIDIA OpenGL on Vista