分解:モデルをGarry'sModにインポートする方法

うまくいけば、ティアダウンモデルをソースエンジンに移植する方法、または必要に応じてGarry'sModに移植する方法を教えてくれるはずのガイド。 これは少し高度なプロセスなので、比較的迅速に完了すると考えてこのガイドに入らないでください(以前に行ったことがある場合を除く)。

下のコメントにコメントや質問を残してください。または、Official Teardown Discordで私にpingを送信してください。私のDiscordハンドルは「PropDude」なので、pingを実行してください。

 

モデルをGarry'sModにインポートする方法

1.必要なプログラム

このプロセス全体が機能するために必要な、前述のプログラム用のプログラムとプラグインはほとんどありません。 Blenderの背景知識は言うまでもありません。 ガイドを少し手に取ってみようと思いますが、見落としたり、説明がつかないことがあります。

私の目標は、それを念頭に置いて、この初心者をある程度友好的にすることです。 必要なものは次のとおりです。

  • ブレンダー
  • Blender Source Toolsプラグイン(VDCにあります)
  • VTF編集
  • マジカボクセル
  • Garry'sModまたは任意のソースエンジンゲーム
  • クロウバー

ここで、セキュリティの問題について少し混乱したり心配したりする場合は、それぞれについて説明します。

Blenderは明らかなものであり、単なるモデリングツールであり、説明する必要はないと思います。
Blender Source Toolsは、StudiomdlデータとDMXモデルファイルのインポートを可能にするblenderのプラグインです。 ソースモデルを操作する場合に必要です。 「BlenderSourceTools」を検索して、リンク(Valve Developer Community)を介してVDCから取得できます。

VTFEditは、ソースエンジンゲームのテクスチャを作成する方法です。これを使用する場合にも必要です。 また、実際のサイトがダウンしているため、下部のリンク、通常は「Nem'sTools」アーカイブリンクからVDCで見つけることができます。

Magicavoxelは、すでにTeardown Moddingを実行している場合はおなじみのはずです。これを使用してボクセルモデルを作成し、モデルをOBJとしてエクスポートする必要があります。

Garry's Modは最適なゲームです。ソースエンジンのゲームとは何かを説明する必要はないと思いますが、ソースエンジンで実行されるすべてのゲーム(Portal 2、Left 4 Dead 2)です。

Crowbarは、ソースモデルをコンパイル(または逆コンパイル)するために必要なプログラムであり、絶対に必要です。 「CrowbarVDC」を検索して、ダウンロードできるページを見つけることができます。ダウンロードページはSteamグループページにあります。

2.ボクセルモデルの準備

最初のステップは、Magicavoxelを開くことです。 ヤシの木であるIsleEstocasticaから小道具を移植します。

左側にあなたのパレットがあります

(これらすべてのゲーム内モデルをどこで入手できるか疑問に思っている場合は、私が更新し続けようとしているSteamワークショップのMega Model Packで見つけることができます)最初のステップは、Garry'sModでパレットを機能させることです。ソースの制限として、このままにしておくと、色がひどく歪んでしまいます。 したがって、レーンごとにXNUMXつの色だけになるように作成する必要があります。最終的に、レーンごとに複数の色がある場合は問題ありませんが、できるだけ少なくするようにしてください。 Ctrlキーを押しながらパレット上の新しい場所に色をドラッグすると、色を移動できます。 次のステップは非常に簡単です。モデルにガラスがある場合は、それを新しいオブジェクトに分離する必要があります。 私にはガラスがないので、これはしません。 これを行うには、魔法の杖ツールを使用してすべてのガラスを選択し、CTRL Xを押し、オブジェクトモードに移動し、CTRL Vを押すと、モデルが分割されます。 ここで、右側に、すべてのモデルパーツに名前が付けられているアウトライナーを入力します。 それぞれが短いが識別可能な名前を持っていることを確認してください。
(これらすべてのゲーム内モデルをどこで入手できるか疑問に思っている場合は、私が更新し続けようとしているSteamワークショップのMega Model Packでそれらを見つけることができます)

最初のステップは、パレットをGarry's Modで機能させることです。ソースの制限により、このままにしておくと、色がひどく歪んでしまいます。 したがって、レーンごとにXNUMXつの色だけになるように作成する必要があります。最終的に、レーンごとに複数の色がある場合は問題ありませんが、できるだけ少なくするようにしてください。

Ctrlキーを押しながらパレット上の新しい場所に色をドラッグすると、色を移動できます。

次のステップは非常に簡単です。モデルにガラスがある場合は、それを新しいオブジェクトに分離する必要があります。 私にはガラスがないので、これはしません。 これを行うには、魔法の杖ツールを使用してすべてのガラスを選択し、CTRL Xを押し、オブジェクトモードに移動し、CTRL Vを押すと、モデルが分割されます。

ここで、右側に、すべてのモデルパーツに名前が付けられているアウトライナーを入力します。 それぞれが短いが識別可能な名前を持っていることを確認してください。

モデルの準備と準備ができたので、エクスポートを開始できます。 そのモデル専用の新しいフォルダをデスクトップに作成します。アクセスしやすいように、ローカライズして格納したままにしておきます。

右下の[エクスポート]をクリックして、エクスポートメニューを開きます。 そして、OBJオプションを選択します。必要に応じてモデル名を変更できます。変更はしませんが、それはあなた次第です。

これで、オブジェクトごとにMTLファイル、パレットPNG、およびOBJ自体が作成されました。 次に、不要なファイルをクリーンアップする必要があります。 すべてのMTLファイルとXNUMXつを除くすべてのパレットPNGファイルを削除します。

クリーンアップが完了した後は、次のようになります。

3.ブレンダーの仕事

さて、まず最初に。 ダウンロードしたプラグインをインストールし、上部の[編集]、[設定]の順に移動します。 そして最後にアドオン。 これで、プラグインをダウンロードしたときに、プラグインをzipファイルとして残しておくことができれば幸いです。 zipファイルである必要があります。

上部にある[インストール]を選択して、PC上のzipファイルを見つけます。 追加するだけで、blenderでチェックでき、マウントされます。

これは、画像の表示されたタブの下にあります。 OBJファイルがある作業フォルダーへのエクスポートパスを設定します。 モードはDMXではなくSMDになります。 これで、モデルのインポートプロセスを開始できます。

左上に移動し、[ファイル]で[インポート]、[Wavefront(.OBJ)]の順に移動します。これで、モデルのすべての部分をXNUMXつとしてインポートできます。

それでは、パレットマテリアルを設定しましょう。 右側(モデルを選択した状態)[材料]タブの赤い円を選択します。 デフォルトの素材は、ほとんどの場合、「パレット」またはそれらの線に沿ったものになります。 これをオブジェクトの名前に変更してから、パレットに変更することをお勧めします。 「palm_palette」のように

マテリアルがガラスの場合、最終的に必要なガラスファイルはXNUMXつだけなので、car_glass_paletteのような名前を付けます。

次に、画像をソースの適切な解像度にする必要があります。 そのため、上部にある[UV編集]タブに移動すると、グリッド型の領域が表示されます。 これはモデルのUVマップです。これを編集することはありません。 空のバーが表示されている上部で、フォルダアイコンをクリックして、パレットPNGをロードします。

これで、UVマップははるかに小さくなり、長いストリップのように、これを正方形にします。 したがって、上部に「画像」タブをクリックします。 次に、をクリックします リサイズ 256×256にしました。

これで、「画像」をもう一度、そして 名前を付けて保存。 次に、古いパレットのPNGファイルをこれで上書きします。 名前はおそらく赤になるので、[保存]をクリックするだけで上書きされます。

今、あなたはこれを行う必要があります:

  • Blenderのモデル
  • 材料の設定
  • 正しい解像度の画像/

これらすべてに「はい」と答えた場合は、 モデリング 上部のタブをクリックして、デフォルトのビューに戻します。

モデル自体は、非常に最適化されていません。 ボクセルであるため、背面カリングや独自の最適化は行いません。 私は個人的にモデルを最適化するつもりはありませんが、必要に応じて最適化できます。 ボクセルの設計は、ボクセルがモデル上にどのように配置されているかに直接関係しているため、モデルを最適化すると設計が台無しになる可能性があることを覚えておいてください。

モデルに削除したい不要なビットがある場合は、その方法のプロセスを次に示します。

私のモデルには、必要以上にトランクが少し進んでいるので、それを削除します。 右側の階層にある目のアイコンを押して王冠を隠し、トランクを残しました。

だから私はトランクを選択し、タブを押して編集モードに入ります。 Zを押したままにして、ワイヤフレームモードに入ります。 頂点編集モードで(左上を選択)、不要な部分の周りに選択ボックスをドラッグし、Xを押して削除します。

それが邪魔にならないように。 これは小さすぎるので、Garry'sModのスケールに合わせる必要があります。 モデルのすべての部分を選択したら、Sキーを押してドラッグし、モデルを拡大します。 または、Nキーを押して、右側にメニューを表示することもできます。 ここで手動でスケールを設定できます。私にとってうまくいったスケールは 23.355 ただし、場合によっては異なる場合があります。必要に応じてこの値を使用するか、Garry's Modからモデルを取得し、Crowbarを使用して逆コンパイルし、SMDを参照としてインポートできます。

これで、モデルが適切にスケールアップされました。 同じ素材を使用しているモデルなど、一般的なモデルを結合し始める必要があります。 たとえば、私のツリーはXNUMXつのモデルとして提供されましたが、どちらも同じパレットを使用し、共通のモデルであるため、XNUMXつにまとめます。

たとえば、車両では、使用しているガラスと車のモデルを組み合わせると、材料が異なります(car_paletteとcar_glass)が、一般的なモデルです。

モデルを選択してCTRLJを押すと、モデルを組み合わせることができます。これにより、モデルとそのマテリアルが結合されます。[マテリアル]タブに戻って、必要なモデルだけであることを確認することをお勧めします。 私のツリーは、組み合わせたときに001つのマテリアルがありましたが、palm_paletteという名前のXNUMXつだけに戻しました。 右側の小さなマイナス記号を使用してマテリアルを削除できます。マテリアルに「palm_palette_XNUMX」のような名前が付けられた場合は、モデルで編集モードに入ることができます。「選択マテリアルタブ(001マテリアルが選択されている)で」と表示され、そのマテリアルを使用するすべての頂点が選択されます。これで、メインの正しいマテリアルをクリックして、代わりに割り当てボタンをクリックするだけです。 編集モードを終了した後、古い役に立たない資料を削除します。

これで楽しい部分として、モデルのエクスポートを開始できます。 モデルを選択し、それを選択して[ファイル]、[エクスポート]の順に移動し、[ソースエンジン]オプションにカーソルを合わせます。最初のオプションである.SMD拡張子の付いたモデルの名前をエクスポートします。

衝突モデル

注意してください、この部分は混乱しています。 「凸」と「凹」の違いがわからない場合は、写真をグーグルで検索することをお勧めします。

私のモデルは椰子の木なので、その下などを滑らかに歩くことができると期待しています。 したがって、カスタムの凹型衝突モデルを作成する必要があります。 それ以外の場合、ソースは自動的に凸型衝突モデルを作成するためです。 これは、衝突を起こさない場合の外観です。

厄介なものえ? シュリンクラップされた衝突モデルは問題なく機能するため、これは木枠などのモデルでは必要ありません。

モデルの作成を開始するには、オブジェクトモード(編集モードではない)でShift Aを押して作成メニューを表示し、下から立方体を作成します。 メッシュ カテゴリ。

デフォルトではかなり小さいので、スケールアップしたいと思います。これが私がこれまでに作った方法です。

次に、立方体で編集モードに入る必要があります。左上の[ヘルプ]セクションにある顔編集モードが選択されていることを確認してください(物理的にはその下にあり、比喩的には[ヘルプ]をクリックする場所ではありません)。

これを選択した状態で、長くする必要のある立方体の面をクリックし、Eを押して押し出し、モデルを囲むようにします。 立方体を上に押し出し、右に動かして曲がったトランクの形にしました。

ここで、最初の立方体で編集モードのままで、もう一度Shift Aを押して、モデルの他のすべての部分について別の立方体で繰り返します。衝突モデルの各部分は、新しい凸状の部分である必要があります。 「コリジョンキューブ」 それ自体で凸状にすることはできません。

終了したら、Aを押してすべての面を選択し、右クリックします。 「ShadeSmooth」オプションを見つけて、それを押します。 これで、衝突モデルは次のようになります。

編集モードを終了し、階層内のモデルの名前を「palm_physics」のような名前に変更します(palmをモデルに変更します)。 次に、他のモデルと同じようにエクスポートできます。 衝突なので素材は必要ありません。

4.QCおよびVTFファイル。

これで、モデルがブレンダーから正常にエクスポートされました。 最初に作成した作業フォルダーには、これらのファイルが含まれているはずです。 OBJファイルを新しいフォルダーに移動し、すべてのファイルの名前を共通のプレフィックス「palm」に変更することで、先に進んでもう少しクリーンアップしました。

それでは、Garry'sModのファイルに適切なファイルパスを作成しましょう。 先に進み、Garry's Modのローカルファイルに移動します。Garry'sModsを右クリックし、プロパティ、ローカルファイルの順に移動すると、Steamライブラリから簡単に見つけることができます。

に行く ギャリーのMod/garrysmod マテリアルフォルダがない場合は、作成します。
マテリアルフォルダに入り、このマテリアルフォルダ内の「models」フォルダを見つけます。 持っていない場合は作成してください。 ここで、「props_teardown」のようなフォルダーを作成し、その中に「palm_tree」またはモデルが何であれ、別のフォルダーを作成します。

今、戻って 「garrysmod」 フォルダーを作成し、「models」フォルダーを見つけます。お持ちでない場合は作成してください。 同じことをしたい場合は、「props_teardown」フォルダーを作成してから、モデルにちなんで別の名前を付けます。

これで、これらのファイルパスが設定されました。 モデルのマテリアル(VTFファイル)の作成を開始できます。

ガイドの冒頭で説明したようなVTFEditが必要です。 さあ、それを開いてください。 次のようになります。

左上の白いページアイコンを押してPNGをインポートし、パレットPNGファイルをインポートします。 その後すぐにXNUMX番目のウィンドウがポップアップ表示されます。このページをスキップして、もう一度Enterキーを押すことができます。 画像をインポートしたら、先に進んで上部の[オプション]に移動し、[VMTファイルの自動作成]オプションにチェックマークを付けます。

次に、「ファイル」に移動し、「名前を付けて保存」をクリックして、「マテリアル/モデル」フォルダに作成したフォルダに移動するようにします。 そして、blenderで選択した素材とまったく同じ名前になっていることを確認してください。これは、blenderでの私の素材が「palm_palette」であり、これがVTFの名前です。

先に進み、VMTをダブルクリックしてVTFEditで開きます。 テキストファイルのようなものが表示されます。上部で「LightMappedGeneric」と表示されている場所を「VertexLitGeneric」に変更します。

これは、このマテリアルがモデル用であることをSourceに通知します。

ガラスのマテリアルファイルを作成する場合は、これらの行もVMTに追加する必要があります。

  • 「$normalmapalphaenvmapmask」「1」
  • 「$surfaceprop」「glass」
  • 「$envmap」「env_cubemap」
  • 「$translucent」「1」

これは、ソースにガラスのように見えるように指示します。

これが私が使用するガラスのVMTです:

これで、モデル用に設定されたマテリアルファイルができました。 QCファイルを実行して、Crowbarを使用してモデルをコンパイルしてみましょう

QCファイル

モデルをコンパイルするにはQCファイルが必要なので、作成する必要があります。 テキストファイルから始めます。 そして、これらの行をに入力します。

  • $ modelname
  • $ body 1
  • $ staticprop
  • $ surfaceprop
  • $ cdmaterials
  • $contents「堅実」
  • $ scale“ 1”
  • $sequence「アイドル」
  • $ collisionmodel

次に、それぞれをもう少し編集する必要があります。まず、モデル名です。 ここでは、modelsフォルダーのようにファイルパスを追加します。 だから私の場合は 「props_teardown\palm_tree\isle_palm_tree」

次は本文です。ここでSMDファイルを指定します。 だから私は「palm.smd」を追加します

次はSurfacepropです。ここで、どのサウンドを生成するかを指定します。$ surfacepropをグーグルで検索すると、リストを見つけることができます。私の場合は、「foliage」を使用します。

CDMaterialsマテリアルのファイルパスを指定する場合、modelsフォルダーのようにmaterialsフォルダーの後に開始します。 だから私の場合は 「models\props_teardown \palm_tree\」

シーケンスは、モデルが実行するアニメーションです。あなたが言っていることはわかっています。 「しかし、モデルをアニメーション化しませんでした」これが、IDLEアニメーションのみを定義している理由です。 これを行うには、「アイドル」行の後にSMDファイルをXNUMX回書き込みます。 だから私の場合は「palm.smd」と書きます

衝突モデルは、以前の衝突モデルを指定する場所です。 したがって、衝突のSMDを記述します。 (SMDを再指定するだけでなく、持っている場合)衝突モデルを作成したので、私の場合は「palm_physics.smd」と記述します。

ここで、衝突のためにいくつかの追加の行が必要です。 開いた中かっこをcollisionmodel行の下に追加して、次のように記述します。

  • $ concave
  • $ automass
  • $ intertia 1
  • $ damping 0
  • $ rotdamping 0

次に、閉じた中かっこで閉じます。

参考までに私のQCは次のとおりです。

これで、QCファイルを保存して終了します。これまでのところ、次のようになっています。

VTFとVMTは、すでに正しいマテリアルフォルダーにあるため、ここにはありません。

QCファイルをダブルクリックしてCrowbarを開くと、次のようになります。

タスクバーからファイルを開始したので、ファイルがありません。 通常は上部にパスが表示されますが、これは正しいです。

コンパイルするゲームを選択したいので、Garry'sModを選択してセットアップしました。 C以外のドライブにGarry'sModがある場合:[ゲームの設定]タブに移動して、Garry'sModConfigを設定する必要があります。

これで、「出力先:サブフォルダー」を選択し、私のようにサブフォルダー名を指定します。
今コンパイルを押してください!

完了すると、コンパイルされたすべてのファイル、MDL、および関連ファイルを含む作業フォルダー内のフォルダーが吐き出されるはずです。 これらすべてのファイルが含まれている「models」フォルダをコピーして、「garrysmod」フォルダディレクトリに貼り付けるだけで、すべてのファイルが正確に送信されます。

5.問題

さて、あなたが遭遇するかもしれないいくつかの問題があります、最も一般的なのは頂点の限界を超えている可能性が高いです、あなたのモデルはあまりにも進んでいます。 頂点数を減らすか、複数のモデルに分割する必要があります。

カウンターストライクグローバルオフェンシブに設定されたゲームでコンパイルすることもできます。 これにより、頂点の制限が増える可能性があります。 しかし、これは安価な方法であり、悪い習慣でもあります。

資料が不足している場合は、いくつか確認することができます。 まず最初にVMTとVTFが正しく配置されているかどうかを確認し、次にBlenderの素材が正しいことを確認します。 これを確認するには、メモ帳でSMDを開き、その内容を確認します。 必要に応じて、「すべて置換」でこれを変更できます。

モデルの衝突が間違った場所にあることは、モデルの原点と衝突が同じ場所にあるか、十分に近いことを確認することで修正できます。 0、0、0のように。

6.最終製品

これですべてがセットアップされたので、ゲーム内に移動してモデルを検索できます。

そして、あなたは行き​​ます!


By マフィア

その他のガイド:

コメント

ArabicEnglishFrenchGermanItalianJapaneseKoreanPortugueseSpanish