CSGO私服模型制作個人筆記
注意事項(xiàng):
修改官服模型會導(dǎo)致vac。
此文章為筆記類型,評論區(qū)僅供討論,文章作者不一定會回復(fù)。
1.GCFScape導(dǎo)出官方模型
官方模型在 csgo根目錄的csgo文件夾的pak01_dir.vpk里
使用GCFScape導(dǎo)出model文件夾
https://nemstools.github.io/
2.其中手臂模型在models\weapons文件夾下以ct和t開頭的文件每個物體包括三個文件
.dx90.vtx、.mdl、.vvd
各種武器的模型也在該文件夾里models\weapons
人物模型在models\player文件夾下
還有很多其他各種雜物模型等也摻和在其中
3.選擇其中需要修改的物體,將他們復(fù)制到桌面新建文件夾一份方便工作
4.使用crowbar來decompile三個物體文件,其中smd文件為source引擎的模型文件,需要用插件來將他們導(dǎo)入現(xiàn)代化的3d開發(fā)軟件中,下面是推薦的兩個:
在blender中使用source smd
3dsmax:
在2017-2020版本中使用瑞典作者Neil 'Jed' Jedrzejewski的兩個插件
smd導(dǎo)入插件(安裝方法:放入根目錄的stdplugs文件夾中)
https://github.com/NeilJed/3DSMax-SMD-Importer-Plugin
smd導(dǎo)出插件(安裝方法:放入根目錄的Plugins文件夾中)
https://github.com/NeilJed/3DSMax-SMD-Exporter-Plugin
在2021及以后版本可以使用wall worm插件據(jù)說兼容性不好,首選2020版本
https://dev.wallworm.com/topic/2/wall_worm_model_tools.html
其他:
關(guān)于其他支持可以閱讀v社開發(fā)者官網(wǎng)了解https://developer.valvesoftware.com/wiki/3DS_Max
5.導(dǎo)入要修改的模型后(此處以手膜v模即viewpoint講解,3dsmax版本為2020)
導(dǎo)入后可以看到手臂的模型和骨骼,只需要修改手臂模型就可以了(建模)
對于模型材質(zhì)的引用,要用英文名,文章作者這里用的材質(zhì)名字為skirt,下面提到該單詞時(shí),即為材質(zhì)名。然后將手膜的權(quán)重與文件默認(rèn)的骨骼設(shè)置好即可導(dǎo)出,在文件選項(xiàng)卡中的導(dǎo)出選項(xiàng)卡,選擇導(dǎo)出類型為smd類型,然后彈出一個調(diào)整文件,首先導(dǎo)出第一個文件,選擇Export reference SMD導(dǎo)出引用文件,然后導(dǎo)出第二個文件,選擇Export sequence SMD導(dǎo)出第二個文件,其他選項(xiàng)默認(rèn)即可。
6.導(dǎo)出后我們可以看到兩個smd文件,將他們放到同一個文件夾下,再將decompile官方模型的手臂文件拿到的qc結(jié)尾的文件放到該目錄下以及idle.smd(手臂的動畫文件,不清楚為什么需要,少了它還不行)文件放到該目錄,如果導(dǎo)出的時(shí)候選擇了導(dǎo)入到單獨(dú)的目錄中就把文件夾復(fù)制過來。
7.修改qc文件。模型名以summer_cat來講解。目前目錄中的文件有summer_cat_ref.SMD,summer_cat_arms.SMD,summer_cat_arms.qc以及summer_cat_anims目錄下的idle.smd文件,共四個文件,一個文件夾。打開導(dǎo)出的官方模型qc文件(記事本打開)。
修改$modelname的值,此處以csgo根目錄下的model文件夾的相對路徑,盡量放到自己的文件夾中方便區(qū)分,這里就在models文件夾下新建一個self_model文件夾,所以此處應(yīng)該填的值為self_model/summer_cat_arms.mdl。
修改$bodygroup的值,其中第一個值為該group的名,可以自定義,大括號里則是該組的smd文件,如果要高級用法詳見官網(wǎng),這里展示最簡單的用法
$bodygroup "arms"
{
studio "summer_cat_arms.smd"
}
來引用我們做的模型。
下面幾個參數(shù)用法詳見官網(wǎng),保持默認(rèn)即可
$surfaceprop "default"
$contents "solid"
$illumposition 0 -3.164 29.197
$cdmaterials則是我們貼圖的位置,是以csgo根目錄的materials文件夾為相對路徑,這里我們可以去建個文件夾為self_materials再在里面建一個文件夾summer_cat_arms方便區(qū)分,則值為$cdmaterials "self_materials\summer_cat_arms\"
貼圖要放到該值說的位置,貼圖的轉(zhuǎn)換要用到VTFEdit這個軟件,這里放出作者的鏡像站
https://nemstools.github.io/
該軟件工具,批量轉(zhuǎn)換可以把png材質(zhì)轉(zhuǎn)為vtf,可以選擇把生成vmt勾上。轉(zhuǎn)完后我們又多了這兩個文件,vmt的格式可以參考下文
"VertexLitGeneric"
{
"$basetexture" "self/summer_cat/summer_cat_arms/skirt"
}
這里的VertexLitGeneric是渲染模式,與VTFEdit自動生成的不一樣,記得修改,skirt則為vtf的位置
$texturegroup是引用的紋理組,這里展示最簡單的用法
$texturegroup "skinfamilies"
{
{ "skirt" }
}
其中"skinfamilies"為自定義,skirt為紋理的名字,后面會講到
先拉到最后,有個$sequence參數(shù)因?yàn)檫@里只改引用的地址,為模型文件夾里的idle.smd的相對地址
$sequence "idle" {
"summer_cat_anims\idle.smd"
fadein 0.2
fadeout 0.2
fps 30
}
再往上,可以看到很多的$definebone(如果沒有修改過骨骼的話可以直接跳過這一步),將他們?nèi)縿h除,刪除后先保存一下文件。然后來到crowbar的compile選項(xiàng)卡,選擇DefineBones選項(xiàng),再選上Write OQI file,把我們模型文件夾下的qc文件來編譯,就能在文件下發(fā)現(xiàn)一個QCI后綴的文件,用記事本打開可以發(fā)現(xiàn)很多的$definebone,這正是我們之前qc文件刪除的$definebone的骨骼位置,將他們?nèi)繌?fù)制粘貼到qc文件刪除的那個位置,空幾行空格無所謂,自此qc文件編寫結(jié)束。
8.編譯模型和引用。打開crowbar,compile選項(xiàng)卡,去掉DefineBones的勾,其他保持默認(rèn),可以編譯出三個文件,.dx90.vtx、.mdl、.vvd,這正是我們之前編譯的文件。然后打開csgo根目錄下的models文件夾,將其放到qc文件的$modelname值的位置。
9.私服調(diào)用。在私服中調(diào)用該手臂模型即可。
mmd模型的部分使用說明:
steam下載blender,文章此時(shí)版本為3.6.1
PmxEditor(選用)可以用來減少骨骼數(shù)量(為了方便可以只選擇無權(quán)重骨骼刪除)
以下是作者博客,軟件為日文
https://kkhk22.seesaa.net/category/14045227-1.html
blender下載的插件有cats-blender-plugin以及BlenderSourceTools
cats-blender-plugin(支持mmd格式文件相關(guān)功能)
https://github.com/absolute-quantum/cats-blender-plugin
BlenderSourceTools(支持smd文件導(dǎo)入導(dǎo)出)
http://steamreview.org/BlenderSourceTools/
Better FBX Importer & Exporter(更好的fbx支持,付費(fèi),28美刀)
https://blendermarket.com/products/better-fbx-importer--exporter
首先可以選擇減少骨骼,修改完后可以打開blender導(dǎo)入模型,點(diǎn)擊右上角xyz坐標(biāo)系右側(cè)一個朝左的小箭頭打開MMD菜單,全選模型后點(diǎn)擊Convert Materials For Cycle,然后選擇左下角的一個框,點(diǎn)擊Convert Shaders For Cycle展開,為下面兩項(xiàng)打上勾,分別為Convert to Principled BSDF 以及 Clean Nodes。
然后全選模型(重要),然后導(dǎo)出fbx格式,在右邊選項(xiàng)卡選擇可見物體導(dǎo)出,這樣就能用3ds max來處理模型了。如果在3dsmax里模型顯示沒有貼圖,就再回到blender導(dǎo)出的這里,選擇右邊路徑模式的復(fù)制,再點(diǎn)右邊的內(nèi)嵌紋理按鈕,這樣導(dǎo)出再試試。如果還有問題就把復(fù)制以及默認(rèn)外的都試試。
導(dǎo)入3dsmax后,如果正常的話可以看到模型,骨骼,貼圖。然后再導(dǎo)入官方的模型進(jìn)行比較修改。無論是用官方的骨骼對mmd骨骼還是反之都可以,在完成后官方的骨骼是一根也不能少的,mmd的骨骼沒有特殊要求的話可以全部刪除(初級用法),比如長袖,裙子等搖動的則保留部分mmd骨骼,將其附加到官方的骨骼上,再在qc文件中寫飄動骨骼的參數(shù)等,詳見v社開發(fā)者官網(wǎng)。
3dsmax部分常用操作說明。在第四個小窗口按alt+w可以全屏再按恢復(fù)。中鍵拖動視角,alt+中鍵轉(zhuǎn)動視角,右上角的正方形也可以調(diào)整。
shift+g隱藏模型
點(diǎn)擊一個骨骼,按alt+w,再點(diǎn)擊另一個骨骼即可對齊xyz。
3dsmax默認(rèn)工具里有個圖解視圖可以很好的把骨骼以圖的方式來展示出來,在刪除骨骼、修改骨骼和連接骨骼等方面都有很大的作用。
點(diǎn)擊模型,選擇右上角加號右邊的修改按鈕,再點(diǎn)一下可編輯網(wǎng)格,再選下面的選擇選項(xiàng)卡里的元素(一個立方體),在這個模式下可以很快的對模型進(jìn)行刪除操作,點(diǎn)擊模型可以看到模型變紅,按ale+e+d刪除,alt+e+i反選,刪除后記得再點(diǎn)一下元素恢復(fù)默認(rèn)。
自動綁骨權(quán)重,對骨完成后,點(diǎn)擊模型右鍵,轉(zhuǎn)換為,轉(zhuǎn)換為可編輯網(wǎng)格,這樣模型就擺脫了mmd骨骼的控制。選擇右上角加號右邊的修改按鈕,點(diǎn)擊修改器列表,選擇蒙皮包裹,在參數(shù)選項(xiàng)卡里選擇加入,然后點(diǎn)一下官方的模型,再勾選下面的權(quán)重所有點(diǎn),轉(zhuǎn)換到蒙皮,這樣就可以把模型綁到官方骨骼上,實(shí)現(xiàn)自動綁骨。
特別鳴謝:殘劍斬龍、メジロ_McQueen