Tuesday, August 17, 2010

包工的日記 3

要手動找出特定模型的 verts 位置並不難, 要通用於所有的模型就要整理好整體格式了! 追蹤這個模型格式可說很不容易! 它用了指標索引(offset pointer) 再索引到另一組索引, 然後再索引, 一共指向四五層之深! 有點像C++ 的 OOP Class呢!

由於模型本身去掉了 transform, 要乘上骨骼 transform 才能正確重現整個模型. 對於只有一個骨骼影響的 verts 是沒有問題了. 可是 shared weight 的 verts 就是不對於, 暫時仍然找不到原因所在!?

Tuesday, August 10, 2010

包工的日記 2

這個遊戲的骨骼資料也不難找, 就是記錄的方法有別於一般的 PC 遊戲. PC 遊戲大都是用 quaternions 來記錄, 而這東西就是直接用 angles 記錄. 知道方式要轉換相信也不難. 可是我用的 3DSMAX 的座標方式與一般遊戲座標不同, 軸方向也有些是反向的.苦戰了數天仍然有部分骨骼位置不正確! 苦惱~

Sunday, August 08, 2010

一次包工的日記

近日有朋友要我包工一個 PS2 的遊戲的模型導入程序. 我看了一下格式, 與一般的 PS2 模型格式類同. 而且一直研究 PS2 的 Gantz 遊戲吸收了不少經驗. 於是接下了這工作, 期間是兩星期.

不用花太多的時間已找出了模型的基本資料, 是沒有 Face indices 的 tri-Strips 方式建模. 模型記錄的方式也有兩種, 沒有蒙皮的 和 包含 骨骼索引, weight 的. 但導入後的模型可是怪怪的. 細心查正後相信我是沒有錯誤的! UV 也絕對正確. 而奇怪的模型都是包含 骨骼索引, weight 的那種! 相信是模型本身去掉了 transform, 所以要向 骨骼 架構入手了(以前在一些 X360 的遊戲也遇見過這樣的方式的).

Friday, July 30, 2010

做模型的有多少面子

相信有研究/製作 3D 模型的朋友一定會知道模型是由 點, 線 和 面 組成的, 遊戲模型比較少用到 線段, 我就不在此處詳述了.
提到 面組 的話就立即令人想到是連接各個 Vert點 而成為可見的實體模型了. 比較有經驗的朋友還會加上 "面組 還連接了貼圖用的 UV點". 其實 面組 還連接 Normal, Vertcolor...
一般人都會忽略這些東西, 是因為大多數的遊戲引擎都採用了共用 面組 資料的方式來建模型, 也就是共用相同數量的 Vert, UV, normal... 那樣只要讀取一次 面組 資料就可以了.

這種方式對反過來研究遊戲模型的我們卻不是件好事. 由於在同一個座標地點可能有多個相同的 vert點, 做成了鄰近的 面 也可能用上不同的 vert點. 模型容易變得不平滑, 也容易出現裂縫!
如果是用 3dsmax 的就更差了, 因為 3dsmax 不記錄 normal點 的, 而是用 smooth group! 那有方法解決這問題嗎!?

近日我就是主力研究解決這問題的方法! 一個比較簡單的方法是用上不同的 面組 記錄 Vert點 和 UV點. 再建立一個 Vert_UV_Lookup_Table 然很在讀取 Vert點 資料時對照一下這個位置是否已經記錄. 把索引記錄到 Vert_UV_Lookup_Table. 在讀取 面 資料時對照這個 Vert_UV_Lookup_Table 來 Vert_Face_Array 和 UV_Face_Array. 如事者還可以建立 Normal_Face_Array, VertColor_Face_Array...


讀到這裡可能有人會問, 為甚麼耍這樣子大費章節, 在把模型導入後 Weld 上 Vert點 就可以了. 這個當然可以, 但如果要考慮到遊戲模型的蒙皮資料呢!? 而且考慮到遊戲模型的再導出(比如做 mod 的), 蒙皮一定要是最後一項工作呢!?

Sunday, July 25, 2010

PS2 Gantz

Gantz 這個遊戲的模型人物是我一直很喜歡的, 可是它的模型格式就很不簡單了, 而且貼圖格式也不好解(雖然也是TIM2, 但卻是sizzled了), 我是從09年9月起開始研究的, 一直到現在還沒有成功解出來! 貼圖是可以解讀了, 而且近日在模型方面也有新突破, 骨骼和模型都解讀成功了, 但是模型本身是去掉 transform 的, 也就是一定要把它們連繫上骨骼的 transform 才能成型. 可是我就在這裡停滯不前了. 在這裡先作個記錄, 不知道何年何月才能完成了...

Thursday, July 15, 2010

Comfort Zone

說到研究 PC 遊戲的模型可以是我的起強項. 不用花太多時間就能把整個格式解讀出來, 而且起碼是70~80%準確的!
就以今天看的這個格式為例, 不到半天就整理完成了!


今天看的是一個叫 XNALara 的程序, 是 Tomb Raider Fans 不會缺失的東西.
你可以用它來做出各種動作, 可絕對是快速版的 Lara Croft 專用 Poser!!!
如果你有恆心的話還可以自行 修改/導入 模型呢! 這程序還有導出 obj 格式的功能啊!


那我為甚麼要解讀它的格式!? 是無聊再加上個人興趣吧!


Wednesday, July 14, 2010

回來唱戲了!

很久沒有 blogging 了, 原因是我開設了一個同類型的論壇 遊戲格式研究網. 就這樣子的數個年頭, 在那裡記錄了不少的心血和各樣研究成果.

因為近這個月來一直在家, 所以把整個論壇閱覽一片. 覺得原來自己一直都只在唱獨腳戲!
然後有人把我研究的成果 自吹自雷! 更有人作商業行為!

反正是唱戲, 回到這裡唱吧!

Tuesday, July 24, 2007

意外, 您這惡魔!

意外, 就是在你我不能注意的時候出現的惡魔. 數星期前就降臨在我家裡. 從未想像生命竟是如此脆弱, 也沒法明瞭簡簡單單的生活一天會是何等美好!

能回復故然最好, 但世事往往未如人意, 倒是要改變自己的態度, 迎接日後的生活. 家人也需要強大的支持和鼓勵. 我就更不能倒下了!

請好好珍惜身邊的每個相遇! 享受平靜簡單的每個時刻! 祝福大家...

Friday, June 08, 2007

Fatduck May Cry

話說有個小伙不知天高地厚, 自持對 PC 遊戲的 3D 模型了解不少, 便試著去看別的. 他選擇了個移植的遊戲來看看自己的斤兩. 打包方式 - 簡單! 不消半刻就解開了. 再看個別資料檔, 呵呵, 模型, 貼圖全在一起. 還不及高興之際問題就出現了, 為甚麼貼圖顏色那麼怪異? 3D 模型也找不到建面的資料...

煩躁苦惱了多天, 幸運地把問題一一解決(其實是找到 WORK AROUND)!

真沒想過建面竟能使用這樣的方式的!

Thursday, May 31, 2007

Desktop Toys

日本的電腦程序也真多花樣, 電腦 3D 化的卡通/漫畫已不新鮮. 就是桌面也要加上 3D 模型, 難道要一邊工作一邊玩樂那些 3D 模型!?

記得多年前也看過這類軟體, 但都是商業產品. 今天所找到的, 全都是免費的, 也就是說只要你有興趣, 就可以把自己喜愛的 3D 模型放到桌面上了...



Wednesday, May 23, 2007

The Return Of Unreal Engine II

記得差不多一年前, 我對 Unreal Engine II 的模型格式作了不少研究, 那時的成果是可以導出 Unreal Engine II 的模型了. 但骨骼/動畫等卻沒有頭緒! 隨著經驗的累積, 決定回頭看看Unreal Engine II 的骨骼/動畫. 其實也不難的...

不用我說結果吧!

Saturday, May 12, 2007

再見了, 我不分享了

一直都很不滿國內論壇的抄襲風氣, 只要大家發現好東西就不理會人家的感受, 第一時間轉到別個論壇去! 我是絕對不能接受這風氣, 每個論壇都應有自己的特色和資源吧, 為何老是 抄襲/轉移 到別處? 如果見到很好的東西希望能與更好朋友分享的話, 作個介紹並指引到原出處不就行了? 難到是為了自豪感!?

其次是近日我都下不了人家的東西, 可能我只是個業餘的 3D 模型愛好者吧, 沒能力升級至最新的軟體版本. 甚麼 MAX8/MAX9 與我是無緣了. 對我來說 GMAX 也可足夠了... 曾經說過沒特別理由要分享最新版本用的東西吧 (反正國內朋友截模的都是用 GA DXH DXR 等), 根本沒有特別資訊非要 MAX8/MAX9 不可的! 用 3ds obj 等格式分享肯定會使更多朋友得益.

可知道國外的風氣是要好得多了, 在那裡會開心很多很多...

在網上互相分享是求大家開心吧!?
有人硬要自把自為, 沒辦法, 我改變不了誰人!
我不高興了, 只好自己揪身而退!

Sunday, May 06, 2007

Wii 的模型也可導出來!?

真沒想過這麼快便有人把 Wii 的模型導出來了, 苦苦地在網上找尋導出的方法與工具, 可惜仍然沒有半點頭緒! 倒是模型卻可以下載, 就貼個圖片給大家看看吧!

Thursday, May 03, 2007

自我慶祝啊 ^o^

終於完成了我首個用 C++ 寫的應用程序了. 花了多月的精力來學習 C++ 真沒白費! 原來我也有這樣的恆心去學習新東西的...呵呵...

Congratulation ... and celebration ...


Wednesday, May 02, 2007

SilkRoad Online

不知道有多少朋友玩過這網遊? 它是一個結合了中西兩方色彩的遊戲, 記得它出現時是說 "永久免費" 的網遊. 可是在 2006 年中變為收費的了 !^_^

自從收費後再也沒玩它了, 也沒有好好研究過這個網遊的模型, 剛巧在網上找到一個解壓程序, 本以為可以輕鬆地看看它的模型的, 怎料那個解壓程序是有問題的, 唯有靠自己了...

其實那些模型格式是很簡單的, 不用數十分鐘我已了解, 可是由於 index table 是加密了的, 而模型, 貼圖, 骨骼, 動畫等檔案有兩萬個, 基本上要找出對應的東西是不大可能了, 只好就止結束是次研究, 找到工具再回頭好了.

這就是數天努力的成果:

Monday, April 23, 2007

Neon Genesis Evangelion

近日就是忙著玩這個遊戲! 但因為我是遊戲'白痴', 要完成整個遊戲確實花了我不少心血! 但是成果..擁有了整個遊戲中的模型了...
>

Monday, April 09, 2007

測試的藝術二

主力測試現代的顯示卡的 3D 能力, 它的 3D 模擬場景超級精美.
3D Mark 06
AquaMark 3
高質3D畫面, 可測試 DirectX 7, 8 and 9, 和 PixelShader 2.0.
Cineam 4D 所用的 Benchmark, 提供使用 Cineam 4D 時的電腦效能, 可同時測試 16 個 multiprocessors, OpenGL, 32-bit/64-bit windows 和 Mac 系統.
CINEBENCH 9.5
ClothSimMark

這個可以看到不同的衣布在風和地心吸力下的影響, 而且風和時間等影響是可以自由控制的.
一個遊戲感較強的 Benchmark. 當中的歌曲音樂十分動聽, 但顯示卡要有 256M 才能發揮它的真正威力.
DroneZmarK
Gun Metal
用 Gun Metal 遊戲引擎來測試 DirectX 9 和 3D 加速器等功能.
正如它的名字所說, 是個以埃及神殿為主的 3D Benchmark 程序.
TempleMark
VillageMark
與 TempleMark 一樣, 但這個則是以村莊為主的 3D Benchmark 程序.

Monday, March 26, 2007

Half-Life 模型大觀

經歷了個多星期的努力, 終於整理好我所收集的 Half-Life 模型了!













不過這些都是單純的遊戲人物模型, 如果再加上 MOD 的話, 恐怕模型數量要再多出兩三倍呢 !^_^

Sunday, March 18, 2007

Half-Life 模型 - 經典!

近日因為一個 mod 的原因重裝了 Half-Life. 發覺從前下載了很多 player 模型一直沒有整理! 把心一橫, 決定借此機會整理整理...

記得以往有人寫了個 smd 的導入程序, 可惜已無法找到了, 雖然還有不少程序可轉換 mdl 格式, 可是骨骼都沒有了! Milkshape3D 是可以導入骨骼, 但模型卻分成多份了 !^_^

找不到現成的工具下, 只好磨練一下自己的編程能力了! 這回很順利, 只花了大半天...哈哈...

Thursday, March 15, 2007

Gundam 3D 模型

今天剛發現了一個日本朋友的網頁, 有幾個 Gundam 的 3D 模型可供免費下載的!
http://www.geocities.jp/kusakabe83/blog_file/index.html

可是檔案是加了密碼保護的, 就是太多不良份子外傳害事...