poi’s tech blog

3D多人数同時接続型球体アクション成人向けゲーム開発のためのアイデア、ナレッジ

SFMモデルをBlender用に変換してみた

学習用(これだいじ!)にWorkShopモデルを拝借しました。 steamcommunity.com

SFMで実際に動かした様子

f:id:poipoipoip:20190203120639g:plain
KAWAII

触ってみた雑感

  • 顔テクスチャ?と体の境界がなんか浮く。目立ちすぎ
  • 口のUVの切れ目の部分(シーム)に線が見える
  • 顔テクスチャ11種類しかない上に目だけとか口だけとか設定できない  しかも好きなタイミングでテクスチャ変える機能がSFMにない。(プラグインで解決)   steamcommunity.com

  • デフォルトでIdleアニメーションあるらしいけど試せてない

SFMでの使い方:

SteamCommunityからSubscribeしたらSFM上でインポートする画面が出てきてすぐ使えた。便利。


「このモデルをBlenderで開いてどんな構造か確認したい!!!」

やったこと

1. 必要なソフトを調べる

ここに詳しく説明がある。

https://steamcommunity.com/sharedfiles/filedetails/?id=245723825

Blender Source ToolsとVTFEditとCrowbarをインストールする。

steamreview.org

http://nemesis.thewavelength.net/index.php?c=238&o=30nemesis.thewavelength.net

steamcommunity.com

2. モデルのファイル構造を調べる

私の環境だと以下の環境にモデルデータがあった

D:\Steam\steamapps\common\SourceFilmmaker\game\workshop\models\deefor\kirby ポリゴンデータ系?

D:\Steam\steamapps\common\SourceFilmmaker\game\workshop\materials\models\deefor\kirby 画像データ系?

3. 各種変換する

.vtfをVTFEditで開いて.tgaで保存する。(数十分ほどworkshop\modelsにある.vtxと勘違いしたけどworkshop\materialsのほうに.vtfがあります)

.mdlをCrowbarでdecompileする。オプションは特にいじらなかった。.smd形式のファイルが生成される。

4. 変換したファイルをBlenderで正しく開く

Blender Source ToolsいれるとFile>Import>SourceEngineから.smdが開けるようになる。

.tgaはUV/Image Editorで開く

ファイルは沢山あるけどとりあえずインポートしたやつ

  • Kirby.smd 中身は顔モデルだけ
  • KirbyMain.smd 中身は手足モデルだけ
  • face0.tga おすまし顔
  • facenrm.tga 顔のマスク画像?っぽいやつ ノーマルマップやね
  • bodyc.tga 手足のテクスチャデータ

5. テクスチャをモデルに適用していく

深く理解せずに以下の動画でモデルのインポート方法とかテクスチャ設定のしかた見ながらやった

https://www.youtube.com/watch?v=wT4MBSLKnUQwww.youtube.com

facenrm.vtfがマスク画像っぽくて顔だけ透過してるとおもって参考にしたら案の定できた

3/3追記 facenrm.vtfはノーマルマップやね。face0.tgaのアルファ情報があるのでBlender側でアルファテクスチャマッピングすれば普通に透過できる。

asunohikari.tsuyushiba.com

結果

テクスチャ設定済みモデルがBlenderで見れるようになりました。

f:id:poipoipoip:20190202183618p:plain
ええ感じやん…

f:id:poipoipoip:20190202183634p:plain
おわー!!

テクスチャ張るためのメッシュが重ねられてたのね。