|
|
Line 1: |
Line 1: |
| [[Category:Japanese]] | | [[Category:Japanese]] |
| Half-Life 1ã¨ã³ã¸ã³ããã®ã³ã³ãã³ãã®ç§»æ¤ | | Half-Life 1エンジンからのコンテントの移植 |
|
| |
|
| ãã§ã«ããèªä½ã®[[Goldsource|Goldsource(Half-Life 1ã¨ã³ã¸ã³)]] ç¨ã®.mdlãSource Engineã«ç§»æ¤ããã®ã¯ç°¡æ½ãªããã»ã¹ã§ãããã®ããã»ã¹ã«ããã¦ãã¢ãã«ã®ããã®ãªãªã¸ãã«ã½ã¼ã¹ã³ã³ãã³ããå
¨ã¦æã£ã¦ããã¨ä»®å®ãã¦ãã¾ããããã§ã¯3Dã¢ããªã±ã¼ã·ã§ã³åããã¡ã¤ã«ããã¯ã¹ãã£ã¨.qcãã¡ã¤ã«ã®ãã¨ãæä½éã¨ãã¦æãã¦ãã¾ãããã.smdãã¡ã¤ã«ãããã°ããç¨åº¦æéã®ç¯ç´ã«ãªããã¨ãããã¾ãããããå
ã¨ãªã£ã3Dã¢ããªã±ã¼ã·ã§ã³åãã½ã¼ã¹ãã¡ã¤ã«ãããã°ãã¤ã§ãæ°ãã.smdãååºåã§ãã¾ããã½ã¼ã¹ã³ã³ãã³ããæã£ã¦ããªãã¨ãã¦ã叿ããªãããªãã§ãã ããããã®ããã¥ã¡ã³ãã®æå¾ã«ã¯.mdlããã³ã³ãã¤ã«ãã¦ããããå§ããæ¹æ³ãããã¾ãã
| | すでにある自作の[[Goldsource|Goldsource(Half-Life 1エンジン)]] 用の.mdlをSource Engineに移植するのは簡潔なプロセスです。このプロセスにおいて、モデルのためのオリジナルソースコンテントを全て持っていると仮定しています。ここでは3Dアプリケーション向けファイル、テクスチャと.qcファイルのことを最低限として指しています。もし.smdファイルがあればある程度時間の節約になることもありますが、もし元となった3Dアプリケーション向けソースファイルがあればいつでも新しい.smdを再出力できます。ソースコンテントを持っていないとしても希望をなくさないでください。このドキュメントの最後には.mdlをデコンパイルしてそこから始める方法があります。 |
|
| |
|
|
| |
|
| =æ¦è¦= | | =概要= |
| 大é¨åã«ããã¦ãã¢ãã«ã®ç§»æ¤ã¯é è³ããããªã"æ©æ¢°ç¿"ã®ä»äºã§ãããã®ããã»ã¹ã¯ä¸ç´ç·ã§ãå®è¡ã«ããã£ã¦èª°ãããã¿ã³ãæ¼ãå¿
è¦ãããã ãã§ããã¾ããVPROJECTãæ£ããè¨å®ããã¦ãããã確ãããããããæã®ãã¯ã¹ãã£ãSource Engineã®ãããªã¢ã«ã«å¤æãã¾ãã æ¬¡ã«.qcãã¡ã¤ã«ãSource Engineã®ææ³ã«ãããã¦ç·¨éãã¦ãæ°ããã³ã³ãã³ããSource Engineã®.mdlã«ã³ã³ãã¤ã«ãã¾ãã
| | 大部分において、モデルの移植は頭脳がいらない"機械猿"の仕事です。このプロセスは一直線で、実行にあたって誰かがボタンを押す必要があるだけです。まず、VPROJECTが正しく設定されているかを確かめ、それから昔のテクスチャをSource Engineのマテリアルに変換します。 次に.qcファイルをSource Engineの文法にあわせて編集して、新しいコンテントをSource Engineの.mdlにコンパイルします。 |
|
| |
|
| =Step 1. VPROJECT= | | =Step 1. VPROJECT= |
| ã¾ãæåã«VPROJECTç°å¢å¤æ°ã®è¨å®ããã¾ãããã®å¤æ°ã¯å¤ãã®SourceEngineã®ãã¼ã«ãåç
§ãã¦ãã¦ãã¢ãã«ã®ç§»æ¤ã«ä½¿ã3ã¤ã®ãã¼ã«ãå«ã¾ãã¦ãã¾ããStudiomdlã¨Vtexã®ã©ã¡ããã³ã³ãã¤ã«ããã¢ãã«ããããªã¢ã«ãã©ãã«é
ç½®ãã¹ããç¥ãããã«VPROJECTã使ã£ã¦ãã¾ãããã§ã«VPROJECTã®è¨å®ããã¦ãããªãstep 2ã«ç§»åãã¦ãã ããã
| | まず最初にVPROJECT環境変数の設定をします。この変数は多くのSourceEngineのツールが参照していて、モデルの移植に使う3つのツールも含まれています。StudiomdlとVtexのどちらもコンパイルしたモデルやマテリアルをどこに配置すべきか知るためにVPROJECTを使っています。すでにVPROJECTの設定をしているならstep 2に移動してください。 |
|
| |
|
| #VPROJECT('''Current Game'''ã¨å¯¾å¿)ãè¨å®ããã«ã¯ãSourceSDKã©ã³ãã£ã¼ã<code >sourcesdk/bin/VConfig.exe</code >ã使ããã¨ãã§ãã¾ãã | | #VPROJECT('''Current Game'''と対応)を設定するには、SourceSDKランチャーや<code >sourcesdk/bin/VConfig.exe</code >を使うことができます。 |
|
| |
|
| =Step 2. æã®ãã¯ã¹ãã£ãæ°ãããããªã¢ã«ã«å¤æ= | | =Step 2. 昔のテクスチャを新しいマテリアルに変換= |
| [[Goldsource|Goldsource(Half-Life 1ã¨ã³ã¸ã³)]]ã§ã¯.bmpãã¯ã¹ãã£ã.mdlã®ä¸ã«åãè¾¼ã¾ãã¦ãã¾ãããããããªããSource Engineã§ã¯ãã¯ã¹ãã£ã®å
ã¨ãªããã¡ã¤ã«(ãã£ãã¥ã¼ãºããããå
æ²¢ãããããã³ãããããªã©)ã.tgaãã¡ã¤ã«ã¨ãã¦ç¨æããããããVtexãã¼ã«ã使ã£ã¦.tgaã.vtfã«å¤æãã¾ãã.vtfã¯.mdlããåç
§ããã¾ããã.mdlã®ä¸ã«åãè¾¼ã¾ããã®ã§ã¯ããã¾ããã .vtfã«å ãã.vmtãã¡ã¤ã«ã¨ãããã®ãããã¾ãããããã¯ãããªã¢ã«ã®å±æ§ãå®ç¾©ããããã¹ããã¡ã¤ã«ã§ãã.vmtã«å«ã¾ãã主ãªãã®ã¯ãã£ãã¥ã¼ãºãå
æ²¢ããã³ãã¨ãã£ãæ§ã
ãªãã¯ã¹ãã£ã¸ã®ãã¤ã³ã¿ã§ããä»ã«ãæå®ã§ãã弿°ãããã¾ãã詳細ã«ã¤ãã¦ã¯SDKã®ãããªã¢ã«ããã¥ã¡ã³ãã¼ã·ã§ã³ãåç
§ãã¦ãã ããã | | [[Goldsource|Goldsource(Half-Life 1エンジン)]]では.bmpテクスチャが.mdlの中に埋め込まれていました。しかしながらSource Engineではテクスチャの元となるファイル(ディフューズマップ、光沢マップ、バンプマップなど)を.tgaファイルとして用意し、それからVtexツールを使って.tgaを.vtfに変換します。.vtfは.mdlから参照されますが、.mdlの中に埋め込まれるのではありません。 .vtfに加え、.vmtファイルというものもあります。これらはマテリアルの属性を定義するテキストファイルです。.vmtに含まれる主なものはディフューズ、光沢、バンプといった様々なテクスチャへのポインタです。他にも指定できる引数があります。詳細についてはSDKのマテリアルドキュメンテーションを参照してください。 |
|
| |
|
| .tgaã®ã³ã³ãã¤ã«ãå§ããåã«ãMODãã£ã¬ã¯ããªã«'materialsrc'ã¨'materials'ãã£ã¬ã¯ããªãä½ãå¿
è¦ãããã¾ããä¾ãã°<code >C:\MyMod\materialsrc</code >ã¨<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials</code >ã§ãã'materialsrc'ã«ã¯å
ã¨ãªãç»åãã¡ã¤ã«å
¨ã¦(ããã§ã¯.tgaç»å)ãä¿ç®¡ãã¾ããmaterialsãã£ã¬ã¯ããªã«ã¯Vtexã.vmtã.vtfã®åºåãè¡ãã¾ãã 'materialsrc'ãã£ã¬ã¯ããªã®ä¸ã«ãµããã£ã¬ã¯ããªãä½ãã¨ãã¯ã'materials'ãã£ã¬ã¯ããªã«ã対å¿ãããã£ã¬ã¯ããªãä½ãå¿
è¦ãããã¾ãã'materialsrc'ã®ãµããã£ã¬ã¯ããªã®ä¸ã®.tgaãã³ã³ãã¤ã«ããã¨Vtexã¯èªåçã«å¯¾å¿ãã'materials'ãã£ã¬ã¯ããªã®ãµããã£ã¬ã¯ããªã« .vmtã.vtfãåºåãã¾ããä¾ãã°<code >C:\MyMod\materialsrc\player</code >ã¨<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials\player</code >ã®ä¸¡æ¹ã®ãã£ã¬ã¯ããªãä½ãã¨ãmaterialsrc\playerãã£ã¬ã¯ããªã®ãã¡ã¤ã«ãã³ã³ãã¤ã«ããã¨ãçµæã®.vmt/.vtfã¯materials\playerãã£ã¬ã¯ããªã«åºåããã¾ããVtexã®.mkdir弿°ã使ã£ã¦ããªãå ´åã§ããã¤å¯¾å¿ããmaterialså
ã®ãã£ã¬ã¯ããªãåå¨ããªãã¨Vtexãã¨ã©ã¼ã¡ãã»ã¼ã¸ãåºãã¾ãããããªã®ã§åé¡ã«åããªãããã«Vtexã使ãã¨ãã¯å¯¾å¿ãããã£ã¬ã¯ããªãä½ãããã«ãã¦ãã ããã | | .tgaのコンパイルを始める前に、MODディレクトリに'materialsrc'と'materials'ディレクトリを作る必要があります。例えば<code >C:\MyMod\materialsrc</code >と<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials</code >です。'materialsrc'には元となる画像ファイル全て(ここでは.tga画像)を保管します。materialsディレクトリにはVtexが.vmtや.vtfの出力を行います。 'materialsrc'ディレクトリの中にサブディレクトリを作るときは、'materials'ディレクトリにも対応するディレクトリを作る必要があります。'materialsrc'のサブディレクトリの中の.tgaをコンパイルするとVtexは自動的に対応する'materials'ディレクトリのサブディレクトリに .vmtや.vtfを出力します。例えば<code >C:\MyMod\materialsrc\player</code >と<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials\player</code >の両方のディレクトリを作ると、materialsrc\playerディレクトリのファイルをコンパイルすると、結果の.vmt/.vtfはmaterials\playerディレクトリに出力されます。Vtexの.mkdir引数を使っていない場合で、かつ対応するmaterials内のディレクトリが存在しないとVtexがエラーメッセージを出します。それなので問題に合わないようにVtexを使うときは対応するディレクトリを作るようにしてください。 |
|
| |
|
| ããã§Vtexã§ã®ãã¯ã¹ãã£ä½æ¥ã楽ã«ãã2ã¤ã®Tipãç´¹ä»ãã¾ããã¾ãVtexã®ã·ã§ã¼ãã«ãããä½ã£ã¦.vmtãèªåçã«çæããæ¹æ³ãããã¦2ã¤ç®ã¯.vmtã¯ãã§ã«ããã¨ãã¦ç°¡åã«.tgaã.vtfã«åã³ã³ãã¤ã«ãè¡ãæ¹æ³ã§ãã
| | ここでVtexでのテクスチャ作業を楽にする2つのTipを紹介します。まずVtexのショートカットを作って.vmtを自動的に生成する方法、そして2つ目は.vmtはすでにあるとして簡単に.tgaを.vtfに再コンパイルを行う方法です。 |
| Tip #1 æ°ãããããªã¢ã«ã使ããã·ã§ã¼ãã«ãã | | Tip #1 新しいマテリアルを作成するショートカット |
|
| |
|
| # vtex.exeã¸ã®ã·ã§ã¼ãã«ããããã¹ã¯ãããä¸ã«ä½æãã¾ããVtex.exeã¯SourceSDK\binãã£ã¬ã¯ããªã«ããã¾ãã | | # vtex.exeへのショートカットをデスクトップ上に作成します。Vtex.exeはSourceSDK\binディレクトリにあります。 |
| # ã·ã§ã¼ãã«ãããå³ã¯ãªãã¯ãã¦ããããã£ãéãã¾ãã | | # ショートカットを右クリックしてプロパティを開きます。 |
| # "ãªã³ã¯å
"ããã¯ã¹ã®vtex.exeã®å¾ãã«ã空ç½ãããã¦ãã"-mkdir -shader vertexlitgeneric"ã追å ãã¾ãã | | # "リンク先"ボックスのvtex.exeの後ろに、空白をあけてから"-mkdir -shader vertexlitgeneric"を追加します。 |
| # OKãã¯ãªãã¯ãã¾ãã | | # OKをクリックします。 |
|
| |
|
| ã¾ã 夿ãè¡ã£ããã¨ããªããã¯ã¹ãã£ããããªã¢ã«ã«å¤æããã®ã«ãã®ã·ã§ã¼ãã«ããã使ã£ã¦ãã ããã"-mkdir"弿°ã¯èªåçã«materialsrcå
ã®ãµããã£ã¬ã¯ããªã«å¯¾å¿ãããã£ã¬ã¯ããªã使ãã¾ãã "-shader vertexlitgeneric"弿°ã¯å¤æãã.vtfããã£ãã¥ã¼ãºãã¯ã¹ãã£ã¨ãã¦æã.vmtãVtexãèªåçã«ä½æããããã«ãã¾ãã
| | まだ変換を行ったことがないテクスチャをマテリアルに変換するのにこのショートカットを使ってください。"-mkdir"引数は自動的にmaterialsrc内のサブディレクトリに対応したディレクトリを作成します。 "-shader vertexlitgeneric"引数は変換した.vtfをディフューズテクスチャとして指す.vmtをVtexが自動的に作成するようにします。 |
|
| |
|
| '''注æ:''' "-shader vertexlitgeneric"弿°ã¯ããªã´ã³ã§ä½ããããªãã¸ã§ã¯ãã ãã§ä½¿ããã¾ããã¹ãã©ã¤ãããã©ã·ã®ãããªã¢ã«ã§ã¯ä½¿ç¨ã§ãã¾ããã詳ãã㯠[[:Category:Material System|Materials]] ãåç
§ãã¦ãã ããã | | '''注意:''' "-shader vertexlitgeneric"引数はポリゴンで作られたオブジェクトだけで使われます。スプライトやブラシのマテリアルでは使用できません。詳しくは [[:Category:Material System|Materials]] を参照してください。 |
|
| |
|
| Tip #2 TGAãVTFã«å¤æããå³ã¯ãªãã¯ã·ã§ã¼ãã«ãã | | Tip #2 TGAをVTFに変換する右クリックショートカット |
|
| |
|
| # ã¦ã£ã³ãã¦ãºã¨ã¯ã¹ããã¼ã©ãéãã¾ãã(Windows key + E). | | # ウィンドウズエクスプローラを開きます。(Windows key + E). |
| # ãã¼ã« > ãã©ã«ããªãã·ã§ã³ã鏿ãã¾ãã | | # ツール > フォルダオプションを選択します。 |
| # "ãã¡ã¤ã«ã®ç¨®é¡"ã¿ãã鏿ãã¦ãæ¡å¼µåTGAã®ã¨ããã¾ã§ã¹ã¯ãã¼ã«ãã¾ãã | | # "ファイルの種類"タブを選択して、拡張子TGAのところまでスクロールします。 |
| # TGAãã¯ãªãã¯ãã¦ãã¤ã©ã¤ãç¶æ
ã«ãã¾ãã | | # TGAをクリックしてハイライト状態にします。 |
| # ããã«ã®ä¸å´ã®"詳細è¨å®"ãã¿ã³ãã¯ãªãã¯ãã¾ãã | | # パネルの下側の"詳細設定"ボタンをクリックします。 |
| # "ãã¡ã¤ã«ã®ç¨®é¡ã®ç·¨é"ããã«ã表示ããã¾ãã | | # "ファイルの種類の編集"パネルが表示されます。 |
| # "æ°è¦"ãã¿ã³ãã¯ãªãã¯ãã¾ãã | | # "新規"ボタンをクリックします。 |
| # "ã¢ã¯ã·ã§ã³:"ããã¯ã¹ã«"TGA to VTF"ã¨å
¥åãã¾ãã | | # "アクション:"ボックスに"TGA to VTF"と入力します。 |
| # 次ã«"åç
§"ãã¿ã³ãã¯ãªãã¯ãã¦vtex.exeã鏿ãã¾ãã(SourceSDKãã¤ã³ã¹ãã¼ã«ããå ´æã®"bin"ãã£ã¬ã¯ããªã«ããã¾ããä¾ãã° <codeC:\Program Files\Valve\Steam\SteamApps\username\sourcesdk\bin</code>) | | # 次に"参照"ボタンをクリックしてvtex.exeを選択します。(SourceSDKをインストールした場所の"bin"ディレクトリにあります。例えば <codeC:\Program Files\Valve\Steam\SteamApps\username\sourcesdk\bin</code>) |
| # "ã¢ã¯ã·ã§ã³ãå®è¡ããã¢ããªã±ã¼ã·ã§ã³:"ããã¯ã¹ã¯ä»¥ä¸ã®ããã«è¡¨ç¤ºããã¦ããã¯ãã§ãã"C:\Program Files\Valve\Steam\SteamApps\username\sourcesdk\bin\vtex.exe "%1"" | | # "アクションを実行するアプリケーション:"ボックスは以下のように表示されているはずです。"C:\Program Files\Valve\Steam\SteamApps\username\sourcesdk\bin\vtex.exe "%1"" |
| # "DDEã使ã"ã®æ¨ªã«ããå°ãããã§ãã¯ããã¯ã¹ãã¯ãªãã¯ãã¾ãã | | # "DDEを使う"の横にある小さいチェックボックスをクリックします。 |
| # "ã¢ããªã±ã¼ã·ã§ã³"ããã¯ã¹ã«ã¯"vtex"ã¨å
¥åãã¾ãã | | # "アプリケーション"ボックスには"vtex"と入力します。 |
| # "ãããã¯"ããã¯ã¹ã«ã¯"System"ã¨å
¥åãã¾ãã | | # "トピック"ボックスには"System"と入力します。 |
| # å
¨ã¦ã®ããã«ã§OKãã¯ãªãã¯ãã¦å¤æ´ã確å®ãã¾ãã | | # 全てのパネルでOKをクリックして変更を確定します。 |
|
| |
|
| ããã§.tgaãã¡ã¤ã«ãå³ã¯ãªãã¯ãã¦"TGA to VTF"ãªãã·ã§ã³ãé¸ã¶ã ãã§ãã¯ã¹ãã£ãåã³ã³ãã¤ã«ã§ãã¾ãã(.vmtã¯ä½ããã¾ãã)以å使ãããã¯ã¹ãã£ã®å¤æ´ã®ã¨ãã«ä¾¿å©ã§ãã
| | これで.tgaファイルを右クリックして"TGA to VTF"オプションを選ぶだけでテクスチャを再コンパイルできます。(.vmtは作られません)以前作成したテクスチャの変更のときに便利です。 |
| ããã§ãã¯ã¹ãã£ã夿ããã¨ãã«ãDOSçªã§æåå
¥åããã®ã§ã¯ãªãæ°ãããã¼ã«ã使ããããã«ãªãã¾ãã
| | これでテクスチャを変換するときに、DOS窓で文字入力するのではなく新しいツールが使えるようになります。 |
|
| |
|
| # 好ããªç»åç·¨éã½ããã§.bmpã.tgaã夿ãã¦materialsrcã®é©åãªå ´æã«ç½®ãã¾ãã | | # 好きな画像編集ソフトで.bmpを.tgaを変換してmaterialsrcの適切な場所に置きます。 |
| # .tgaãå
ã»ã©ä½æããæ°ããVtexã·ã§ã¼ãã«ããã«ãã©ãã°ã¢ã³ããããããã¾ãã | | # .tgaを先ほど作成した新しいVtexショートカットにドラッグアンドドロップします。 |
| # ã¢ãã«ã®ãã¯ã¹ãã£å
¨ã¦ã«å¯¾ãã¦ä¸ã®ä½æ¥ãè¡ãã¾ãã | | # モデルのテクスチャ全てに対して上の作業を行います。 |
|
| |
|
| '''注æ:''' ãã詳ãããããªã¢ã«ã¨è¨å®ã«ã¤ãã¦ã®èª¬æã¯ [[:Category:Material System|Materials]]ããã¥ã¡ã³ããåç
§ãã¦ãã ããã | | '''注意:''' より詳しいマテリアルと設定についての説明は [[:Category:Material System|Materials]]ドキュメントを参照してください。 |
|
| |
|
| =Step 3. .qcãã¡ã¤ã«ã®ç·¨é= | | =Step 3. .qcファイルの編集= |
| æã®.qcãã¡ã¤ã«ã®å¤§é¨åã¯ä»ã®Studiomdlã§ãåä½ãã¾ãããå°ãææ³ã®å¤æ´ãããã®ã§ãã®é¨åã夿´ããªãã¨æ£ãããã«ããè¡ãã¾ããã
| | 昔の.qcファイルの大部分は今のStudiomdlでも動作しますが、少し文法の変更があるのでその部分を変更しないと正しくビルドが行えません。 |
|
| |
|
| * $modelnameã¯VPROJECTã«é£åãã¦ãã¦ãã¢ãã«åºåãã£ã¬ã¯ããªãVPROJECTã«'models'ã追å ãããã£ã¬ã¯ããªã¨æ¨æ¸¬ãã¾ããä¾ãã°<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\models</code >ãåºåãã£ã¬ã¯ããªã«ãªãã¾ããããã§$modelnameã"player\myplayer.mdl"ã¨è¨å®ããã¨ãStudiomdlã¯ã³ã³ãã¤ã«ããã¢ãã«ã<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\models\player\myplayer.mdl</code >ã«æ¸ãåºãã¾ããStudiomdlã¯ãã£ã¬ã¯ããªä½æã¯è¡ããã-mkdir弿°ããªãã®ã§ãã³ã³ãã¤ã«ãéå§ããåã«åºåãã£ã¬ã¯ããªãæ¢ã«ãããã¨ã確ããã¦ãã ããã | | * $modelnameはVPROJECTに連動していて、モデル出力ディレクトリをVPROJECTに'models'を追加したディレクトリと推測します。例えば<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\models</code >が出力ディレクトリになります。ここで$modelnameを"player\myplayer.mdl"と設定すると、Studiomdlはコンパイルしたモデルを<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\models\player\myplayer.mdl</code >に書き出します。Studiomdlはディレクトリ作成は行わず、-mkdir引数もないので、コンパイルを開始する前に出力ディレクトリが既にあることを確かめてください。 |
| * $cdtexture$cdmaterialsã§ç½®ãæãã¾ãã$cdmaterialsãVPROJECT使ç¨ãã¦ãåºåãã£ã¬ã¯ããªãVPROJECTã«'materials'ã追å ãããã£ã¬ã¯ããªã¨æ¨æ¸¬ãã¾ããä¾ãã°<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials</code >ã§ããçµé¨åã¨ãã¦ããããªã¢ã«ã¯é©ç¨ãã対象ã«åºã¥ãã¦ããªã¼æ§é ã«ããã®ãæã¾ããã§ãã$modelnameã®ä¾ã¨åãããã«ã$cdmaterialsã"models\player"ã«è¨å®ããã¨ãã¢ãã«ã¯<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials\models\player</code >ãããããªã¢ã«ãæ¤ç´¢ãã¾ãã. | | * $cdtexture$cdmaterialsで置き換えます。$cdmaterialsもVPROJECT使用して、出力ディレクトリをVPROJECTに'materials'を追加したディレクトリと推測します。例えば<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials</code >です。経験則として、マテリアルは適用する対象に基づいてツリー構造にするのが望ましいです。$modelnameの例と同じように、$cdmaterialsを"models\player"に設定すると、モデルは<code >C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials\models\player</code >からマテリアルを検索します。. |
|
| |
|
| =Step 4. è¡çªã¢ãã« (å¥åç©çããã¯ã¹(Physbox))= | | =Step 4. 衝突モデル (別名物理ボックス(Physbox))= |
| "è¡çªã¢ãã«" (å¥å"Collision Hull"ã "Physics Hull"ã"Physbox"ãªã©) ã¯ç©ççã«ã·ãã¥ã¬ã¼ã·ã§ã³ãè¡ãã¨ãã«ã¢ãã«ãã©ã®ããã«ä¸çã¨å¹²æ¸ããããå®ç¾©ããåç´åãããã¡ãã·ã¥ã§ãããã®ããã¥ã¡ã³ãã¯ç©çããã¯ã¹ã®ä½æã®è©³ç´°ã¯æ±ãã¾ããããStudiomdlãèªåçã«ä½ããã®ã§ããã®ããæã§ä½ãå¿
è¦ãããã®ããç°¡åã«è°è«ãã¾ãã | | "衝突モデル" (別名"Collision Hull"、 "Physics Hull"、"Physbox"など) は物理的にシミュレーションを行うときにモデルがどのように世界と干渉するかを定義する単純化されたメッシュです。このドキュメントは物理ボックスの作成の詳細は扱いませんが、Studiomdlが自動的に作るものでよいのか、手で作る必要があるのかを簡単に議論します。 |
| Studiomdlã¯ç©çã¢ãã«ã®æå®ããªãå ´åã«èªåã§è¨ç®ãã¦ä½ãåºãã¾ãããç°¡æã§èããã®ã«ãªãã¾ããã¢ãã«ã"ç空ããã¯"ããã®ã§ã¯ããã¾ãããã¢ãã«ã®é ãç¹ãç´æ¥çµãã§ãã¾ãã¾ãã
| | Studiomdlは物理モデルの指定がない場合に自動で計算して作り出しますが、簡易で荒いものになります。モデルを"真空パック"するのではありません。モデルの遠い点を直接結んでしまいます。 |
| ãã®ãã¢ã³ã¹ãã¬ã¼ã·ã§ã³ã¨ãã¦åååã®ãªãã¸ã§ã¯ããèãã¾ãâ¦
| | このデモンストレーションとして十字型のオブジェクトを考えます… |
|
| |
|
| [[Image:Phys_demo3.jpg]] | | [[Image:Phys_demo3.jpg]] |
|
| |
|
| ãã®ã¢ãã«ã¯ä¸çã§ãã¬ã¤ã¤ã¼ãé »ç¹ã«ç®ã«ãããã®ã§ãæ£ããã¯ãããããå転ããå¿
è¦ããããããæ£ããç©çããã¯ã¹ãå¿
è¦ã ã¨èãã¦ãã¾ãããã®ãã以ä¸ã®èµ¤ãã©ã¤ã³ã®ãããªç©çããã¯ã¹ã§ãã£ã¦ã»ããã¨ããã£ã¦ãã¾ãâ¦
| | このモデルは世界でプレイヤーが頻繁に目にするもので、正しくはねかえり、回転する必要があるため、正しい物理ボックスが必要だと考えています。そのため以下の赤いラインのような物理ボックスであってほしいとおもっています… |
|
| |
|
| [[Image:Phys_demo2.jpg]] | | [[Image:Phys_demo2.jpg]] |
|
| |
|
| ããããªããStudiomdlã«ç©çããã¯ã¹ãä½ãããã¨ãå¤å´ã®ãã¼ããç´æ¥çµãã ã¡ãã·ã¥ãä½ãã¾ãã以ä¸ã®ããã«â¦
| | しかしながらStudiomdlに物理ボックスを作らせると、外側のパーツを直接結んだメッシュを作ります。以下のように… |
|
| |
|
| [[Image:Phys_demo3.jpg]] | | [[Image:Phys_demo3.jpg]] |
|
| |
|
| ããã§ããã¾ããªãã¨ããå ´åãããã¾ãããªãã¸ã§ã¯ããéè¦ãªãã®ã§ã¯ãªããæãé
ã§ä½¿ããããªã©ã§ãããããããä¾ã¨ãªããªãã¸ã§ã¯ããå転ãã¢ã ã£ããããã¨ãã®ç©çããã¯ã¹ã¯åãå
¥ãããã¨ãã§ãã¾ããã詳細ã«ã¤ãã¦ã¯ã¢ããªã³ã°ããã¥ã¡ã³ãã¼ã·ã§ã³ã®ç©çã®ã»ã¯ã·ã§ã³ãåç
§ãã¦ãã ããã
| | これでもかまわないという場合もあります。オブジェクトが重要なものではなく、暗い隅で使われるなどです。しかしもし例となるオブジェクトが回転ドアだったりするとこの物理ボックスは受け入れることができません。詳細についてはモデリングドキュメンテーションの物理のセクションを参照してください。 |
|
| |
|
| =Step 5. Studiomdlãå®è¡ãã¦ã¢ãã«ã®ã³ã³ãã¤ã«= | | =Step 5. Studiomdlを実行してモデルのコンパイル= |
| StudiomdlãVPROJECTã使ãã¨ããã¨ãããé¤ãã¦ãã³ã³ãã¤ã«ã®å®éã®ããã»ã¹ã¯å¤ãã£ã¦ãã¾ããã以ä¸ã®ããã«.qcãã¡ã¤ã«ãStudiomdlã«é¢é£ä»ããã¨ãããã«ã¯ãªãã¯ããã ãã§ã³ã³ãã¤ã«ã§ããããã«ãªã使¥ãå°ãç°¡åã«ãªãã¾ãããã®æ¹æ³ãæ°ã«å
¥ããªãå ´åã以ä¸ã®èª¬æãé£ã°ãã¦å¥½ããªæ¹æ³ã§Studiomdlãå®è¡ãã¦ãã ãããStudiomdlã«ã¤ãã¦ã®è©³ç´°ã¯[[:Category:Modeling|Modeling]]ããã¥ã¡ã³ããåç
§ãã¦ãã ããã
| | StudiomdlがVPROJECTを使うというところを除いて、コンパイルの実際のプロセスは変わっていません。以下のように.qcファイルをStudiomdlに関連付けると、ダブルクリックするだけでコンパイルできるようになり作業が少し簡単になります。この方法が気に入らない場合、以下の説明を飛ばして好きな方法でStudiomdlを実行してください。Studiomdlについての詳細は[[:Category:Modeling|Modeling]]ドキュメントを参照してください。 |
|
| |
|
| ããã«ã¯ãªãã¯ã§ã³ã³ãã¤ã«ã§ããããã«ã.qcãã¡ã¤ã«ãStudiomdlã«é¢é£ä»ããã«ã¯:
| | ダブルクリックでコンパイルできるように、.qcファイルをStudiomdlに関連付けるには: |
|
| |
|
| # ã¦ã£ã³ãã¦ãºã¨ã¯ã¹ããã¼ã©ãéãã¾ãã(Windows key + E). | | # ウィンドウズエクスプローラを開きます。(Windows key + E). |
| # ãã¼ã« > ãã©ã«ããªãã·ã§ã³ã鏿ãã¾ãã | | # ツール > フォルダオプションを選択します。 |
| # "ãã¡ã¤ã«ã®ç¨®é¡"ã¿ãã鏿ãã¦ãæ¡å¼µåQCã®ã¨ããã¾ã§ã¹ã¯ãã¼ã«ãã¾ããããæ¡å¼µåãªã¹ãã«QCããªãã£ããããªã¹ãã®ä¸ã®æ°è¦ãã¿ã³ãã追å ã§ãã¾ãã | | # "ファイルの種類"タブを選択して、拡張子QCのところまでスクロールします。もし拡張子リストにQCがなかったら、リストの下の新規ボタンから追加できます。 |
| # æ¡å¼µåQCãã¯ãªãã¯ããã¨ããã¤ã©ã¤ãç¶æ
ã«ãªãã¾ãã | | # 拡張子QCをクリックすると、ハイライト状態になります。 |
| # "ãã©ã«ããªãã·ã§ã³"ããã«ã®"æ¡å¼µå'QC'ã®è©³ç´°"ã®ã¨ãªã¢ã§ã"ããã°ã©ã :"ã®å³ã«ãã"夿´"ãã¿ã³ãã¯ãªãã¯ãã¾ãã | | # "フォルダオプション"パネルの"拡張子'QC'の詳細"のエリアで、"プログラム:"の右にある"変更"ボタンをクリックします。 |
| # "ãã¡ã¤ã«ãéãããã°ã©ã ã®é¸æ"ããã«ã®å³ä¸ã®åç
§ãã¿ã³ãã¯ãªãã¯ãã¾ãã | | # "ファイルを開くプログラムの選択"パネルの右下の参照ボタンをクリックします。 |
| # Sourcesdk/binã«ãã"Studiomdl.exe"ã鏿ããéããã¯ãªãã¯ãã¾ãã | | # Sourcesdk/binにある"Studiomdl.exe"を選択し、開くをクリックします。 |
| # "Studiomdl.exe"ããã¤ã©ã¤ãããã¦ãããã¨ã確ããã¦ãOKãã¿ã³ãã¯ãªãã¯ãã¾ãã | | # "Studiomdl.exe"がハイライトされていることを確かめて、OKボタンをクリックします。 |
| # "ãã©ã«ããªãã·ã§ã³"ããã«ãéãã¾ãã | | # "フォルダオプション"パネルを閉じます。 |
|
| |
|
| ããã§ã¢ãã«ã®.qcãã¡ã¤ã«ãããã«ã¯ãªãã¯ããã ãã§ãSource Engineåãã¢ãã«ãã³ã³ãã¤ã«ã§ããããã«ãªãã¾ããã
| | これでモデルの.qcファイルをダブルクリックするだけで、Source Engine向けモデルがコンパイルできるようになりました。 |
|
| |
|
| =Step 6. æ°ãã.mdlãHalf-Life Model Viewerã§ç¢ºèª= | | =Step 6. 新しい.mdlをHalf-Life Model Viewerで確認= |
| å
¨ã¦ããã¾ããã£ã¦ããã確ãããããã«ãæ°ããHalf-Life Model Viewerãèµ·åãã¦æ°ããã¢ãã«ãè¦ã¦ã¿ã¾ããããHLMVã¯ä»ã®ãã¼ã«ã¨åãããã«<code >sourcesdk/bin</code >ã«ããã¾ããSourceSDKã©ã³ãã£ã¼ããã®èµ·åãã§ãã¾ããHLMVã®ã¡ãã¥ã¼ããFile>Load Model(ã¢ãã«ã®èªã¿è¾¼ã¿)ãé¸ã³ãèªåã®ã¢ãã«ã®å ´æã«ç§»åãã¦"Open"ãã¿ã³ãæ¼ãã¾ãã
| | 全てがうまくいっているか確かめるために、新しいHalf-Life Model Viewerを起動して新しいモデルを見てみましょう。HLMVは他のツールと同じように<code >sourcesdk/bin</code >にあります。SourceSDKランチャーからの起動もできます。HLMVのメニューからFile>Load Model(モデルの読み込み)を選び、自分のモデルの場所に移動して"Open"ボタンを押します。 |
| ééããå¯è½æ§ãããåé¡ã«ã¤ãã¦:
| | 遭遇する可能性がある問題について: |
|
| |
|
| * ããã¢ãã«ã«é»ã¨ãã³ã¯ã®ãã§ãã«ã¼ãã¼ããã¯ã¹ãã£ãå¼µããã¦ããã®ãªããããã¯.qcãæ¯æããå ´æã«ãããªã¢ã«ãè¦ã¤ãããªãã£ããã¨ã示ãã¦ãã¾ãã | | * もしモデルに黒とピンクのチェッカーボードテクスチャが張られているのなら、これは.qcが支持した場所にマテリアルが見つからなかったことを示しています。 |
| * HLMVã®"Render"ã¿ãã«åãæ¿ãã"Physics Model(ç©çã¢ãã«)"ã®æ¨ªã«ãããã§ãã¯ããã¯ã¹ãã¯ãªãã¯ãã¦ãã ããã ããç©çã¢ãã«ãäºæ³ãããã®ã¨éã£ã¦è¦ããããã¢ããªã³ã°ããã¥ã¡ã³ããè¦ãã¨åé¡ãåæããå©ãã«ãªãã§ãããã | | * HLMVの"Render"タブに切り替え、"Physics Model(物理モデル)"の横にあるチェックボックスをクリックしてください。 もし物理モデルが予想したものと違って見えたら、モデリングドキュメントを見ると問題を分析する助けになるでしょう。 |
|
| |
|
| ããã§ãã¾ãããã¯ãã§ããã¾ã åé¡ãããã®ãªããã¢ããªã³ã°ããã¥ã¡ã³ãã¼ã·ã§ã³ãè¦ã¦ãã¾ã ä½ã¨ãããªãã¨ãããªãåé¡ããããæ¢ãã¦ã¿ã¦ãã ããã
| | これでうまくいくはずです。まだ問題があるのなら、モデリングドキュメンテーションを見て、まだ何とかしないといけない問題があるか探してみてください。 |
|
| |
|
|
| |
|
| =P.S. å
ã®ã½ã¼ã¹ãã¡ã¤ã«ãç¡ããã¦ãã¾ã£ããã§ããâ¦= | | =P.S. 元のソースファイルを無くしてしまったんですが…= |
| ããå
ã®ã½ã¼ã¹ãã¡ã¤ã«ãç¡ããã¦ãã¾ã£ãã¨ãã¦ãã.smdãç´æ¥èªã¿è¾¼ãã§ç·¨éã§ãã¾ã(ä¾:Softimage|XSIåãã®Valve addonãªã©)ããããªã¢ã«ã«å¤æãããããã¯ã¹ãã£ãåãåºãã«ã¯ã[[Goldsource|Goldsource(Half-Life 1ã¨ã³ã¸ã³)]] ç¨ã®HLMVã使ã£ã¦Textureã¿ããããã¯ã¹ãã£ãæ½åºããã¨ããæ¹æ³ãããã¾ããä¸ã®ããã¹ã¦å¤±æãããã0ããä½ãç´ãã®ãçµå±ã®ã¨ããæªããªãèãã§ãããã
| | もし元のソースファイルを無くしてしまったとしても、.smdを直接読み込んで編集できます(例:Softimage|XSI向けのValve addonなど)。マテリアルに変換するためテクスチャを取り出すには、[[Goldsource|Goldsource(Half-Life 1エンジン)]] 用のHLMVを使ってTextureタブからテクスチャを抽出するという方法もあります。上のがすべて失敗したら、0から作り直すのも結局のところ悪くない考えでしょう。 |
| {{otherlang:jp}} | | {{otherlang:jp}} |
| {{otherlang:jp:en|Porting Goldsource content to Source}} | | {{otherlang:jp:en|Porting Goldsource content to Source}} |
Half-Life 1エンジンからのコンテントの移植
すでにある自作のGoldsource(Half-Life 1エンジン) 用の.mdlをSource Engineに移植するのは簡潔なプロセスです。このプロセスにおいて、モデルのためのオリジナルソースコンテントを全て持っていると仮定しています。ここでは3Dアプリケーション向けファイル、テクスチャと.qcファイルのことを最低限として指しています。もし.smdファイルがあればある程度時間の節約になることもありますが、もし元となった3Dアプリケーション向けソースファイルがあればいつでも新しい.smdを再出力できます。ソースコンテントを持っていないとしても希望をなくさないでください。このドキュメントの最後には.mdlをデコンパイルしてそこから始める方法があります。
概要
大部分において、モデルの移植は頭脳がいらない"機械猿"の仕事です。このプロセスは一直線で、実行にあたって誰かがボタンを押す必要があるだけです。まず、VPROJECTが正しく設定されているかを確かめ、それから昔のテクスチャをSource Engineのマテリアルに変換します。 次に.qcファイルをSource Engineの文法にあわせて編集して、新しいコンテントをSource Engineの.mdlにコンパイルします。
Step 1. VPROJECT
まず最初にVPROJECT環境変数の設定をします。この変数は多くのSourceEngineのツールが参照していて、モデルの移植に使う3つのツールも含まれています。StudiomdlとVtexのどちらもコンパイルしたモデルやマテリアルをどこに配置すべきか知るためにVPROJECTを使っています。すでにVPROJECTの設定をしているならstep 2に移動してください。
- VPROJECT(Current Gameと対応)を設定するには、SourceSDKランチャーや
sourcesdk/bin/VConfig.exe
を使うことができます。
Step 2. 昔のテクスチャを新しいマテリアルに変換
Goldsource(Half-Life 1エンジン)では.bmpテクスチャが.mdlの中に埋め込まれていました。しかしながらSource Engineではテクスチャの元となるファイル(ディフューズマップ、光沢マップ、バンプマップなど)を.tgaファイルとして用意し、それからVtexツールを使って.tgaを.vtfに変換します。.vtfは.mdlから参照されますが、.mdlの中に埋め込まれるのではありません。 .vtfに加え、.vmtファイルというものもあります。これらはマテリアルの属性を定義するテキストファイルです。.vmtに含まれる主なものはディフューズ、光沢、バンプといった様々なテクスチャへのポインタです。他にも指定できる引数があります。詳細についてはSDKのマテリアルドキュメンテーションを参照してください。
.tgaのコンパイルを始める前に、MODディレクトリに'materialsrc'と'materials'ディレクトリを作る必要があります。例えばC:\MyMod\materialsrc
とC:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials
です。'materialsrc'には元となる画像ファイル全て(ここでは.tga画像)を保管します。materialsディレクトリにはVtexが.vmtや.vtfの出力を行います。 'materialsrc'ディレクトリの中にサブディレクトリを作るときは、'materials'ディレクトリにも対応するディレクトリを作る必要があります。'materialsrc'のサブディレクトリの中の.tgaをコンパイルするとVtexは自動的に対応する'materials'ディレクトリのサブディレクトリに .vmtや.vtfを出力します。例えばC:\MyMod\materialsrc\player
とC:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials\player
の両方のディレクトリを作ると、materialsrc\playerディレクトリのファイルをコンパイルすると、結果の.vmt/.vtfはmaterials\playerディレクトリに出力されます。Vtexの.mkdir引数を使っていない場合で、かつ対応するmaterials内のディレクトリが存在しないとVtexがエラーメッセージを出します。それなので問題に合わないようにVtexを使うときは対応するディレクトリを作るようにしてください。
ここでVtexでのテクスチャ作業を楽にする2つのTipを紹介します。まずVtexのショートカットを作って.vmtを自動的に生成する方法、そして2つ目は.vmtはすでにあるとして簡単に.tgaを.vtfに再コンパイルを行う方法です。
Tip #1 新しいマテリアルを作成するショートカット
- vtex.exeへのショートカットをデスクトップ上に作成します。Vtex.exeはSourceSDK\binディレクトリにあります。
- ショートカットを右クリックしてプロパティを開きます。
- "リンク先"ボックスのvtex.exeの後ろに、空白をあけてから"-mkdir -shader vertexlitgeneric"を追加します。
- OKをクリックします。
まだ変換を行ったことがないテクスチャをマテリアルに変換するのにこのショートカットを使ってください。"-mkdir"引数は自動的にmaterialsrc内のサブディレクトリに対応したディレクトリを作成します。 "-shader vertexlitgeneric"引数は変換した.vtfをディフューズテクスチャとして指す.vmtをVtexが自動的に作成するようにします。
注意: "-shader vertexlitgeneric"引数はポリゴンで作られたオブジェクトだけで使われます。スプライトやブラシのマテリアルでは使用できません。詳しくは Materials を参照してください。
Tip #2 TGAをVTFに変換する右クリックショートカット
- ウィンドウズエクスプローラを開きます。(Windows key + E).
- ツール > フォルダオプションを選択します。
- "ファイルの種類"タブを選択して、拡張子TGAのところまでスクロールします。
- TGAをクリックしてハイライト状態にします。
- パネルの下側の"詳細設定"ボタンをクリックします。
- "ファイルの種類の編集"パネルが表示されます。
- "新規"ボタンをクリックします。
- "アクション:"ボックスに"TGA to VTF"と入力します。
- 次に"参照"ボタンをクリックしてvtex.exeを選択します。(SourceSDKをインストールした場所の"bin"ディレクトリにあります。例えば <codeC:\Program Files\Valve\Steam\SteamApps\username\sourcesdk\bin)
- "アクションを実行するアプリケーション:"ボックスは以下のように表示されているはずです。"C:\Program Files\Valve\Steam\SteamApps\username\sourcesdk\bin\vtex.exe "%1""
- "DDEを使う"の横にある小さいチェックボックスをクリックします。
- "アプリケーション"ボックスには"vtex"と入力します。
- "トピック"ボックスには"System"と入力します。
- 全てのパネルでOKをクリックして変更を確定します。
これで.tgaファイルを右クリックして"TGA to VTF"オプションを選ぶだけでテクスチャを再コンパイルできます。(.vmtは作られません)以前作成したテクスチャの変更のときに便利です。
これでテクスチャを変換するときに、DOS窓で文字入力するのではなく新しいツールが使えるようになります。
- 好きな画像編集ソフトで.bmpを.tgaを変換してmaterialsrcの適切な場所に置きます。
- .tgaを先ほど作成した新しいVtexショートカットにドラッグアンドドロップします。
- モデルのテクスチャ全てに対して上の作業を行います。
注意: より詳しいマテリアルと設定についての説明は Materialsドキュメントを参照してください。
Step 3. .qcファイルの編集
昔の.qcファイルの大部分は今のStudiomdlでも動作しますが、少し文法の変更があるのでその部分を変更しないと正しくビルドが行えません。
- $modelnameはVPROJECTに連動していて、モデル出力ディレクトリをVPROJECTに'models'を追加したディレクトリと推測します。例えば
C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\models
が出力ディレクトリになります。ここで$modelnameを"player\myplayer.mdl"と設定すると、StudiomdlはコンパイルしたモデルをC:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\models\player\myplayer.mdl
に書き出します。Studiomdlはディレクトリ作成は行わず、-mkdir引数もないので、コンパイルを開始する前に出力ディレクトリが既にあることを確かめてください。
- $cdtexture$cdmaterialsで置き換えます。$cdmaterialsもVPROJECT使用して、出力ディレクトリをVPROJECTに'materials'を追加したディレクトリと推測します。例えば
C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials
です。経験則として、マテリアルは適用する対象に基づいてツリー構造にするのが望ましいです。$modelnameの例と同じように、$cdmaterialsを"models\player"に設定すると、モデルはC:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\materials\models\player
からマテリアルを検索します。.
Step 4. 衝突モデル (別名物理ボックス(Physbox))
"衝突モデル" (別名"Collision Hull"、 "Physics Hull"、"Physbox"など) は物理的にシミュレーションを行うときにモデルがどのように世界と干渉するかを定義する単純化されたメッシュです。このドキュメントは物理ボックスの作成の詳細は扱いませんが、Studiomdlが自動的に作るものでよいのか、手で作る必要があるのかを簡単に議論します。
Studiomdlは物理モデルの指定がない場合に自動で計算して作り出しますが、簡易で荒いものになります。モデルを"真空パック"するのではありません。モデルの遠い点を直接結んでしまいます。
このデモンストレーションとして十字型のオブジェクトを考えます…
このモデルは世界でプレイヤーが頻繁に目にするもので、正しくはねかえり、回転する必要があるため、正しい物理ボックスが必要だと考えています。そのため以下の赤いラインのような物理ボックスであってほしいとおもっています…
しかしながらStudiomdlに物理ボックスを作らせると、外側のパーツを直接結んだメッシュを作ります。以下のように…
これでもかまわないという場合もあります。オブジェクトが重要なものではなく、暗い隅で使われるなどです。しかしもし例となるオブジェクトが回転ドアだったりするとこの物理ボックスは受け入れることができません。詳細についてはモデリングドキュメンテーションの物理のセクションを参照してください。
Step 5. Studiomdlを実行してモデルのコンパイル
StudiomdlがVPROJECTを使うというところを除いて、コンパイルの実際のプロセスは変わっていません。以下のように.qcファイルをStudiomdlに関連付けると、ダブルクリックするだけでコンパイルできるようになり作業が少し簡単になります。この方法が気に入らない場合、以下の説明を飛ばして好きな方法でStudiomdlを実行してください。Studiomdlについての詳細はModelingドキュメントを参照してください。
ダブルクリックでコンパイルできるように、.qcファイルをStudiomdlに関連付けるには:
- ウィンドウズエクスプローラを開きます。(Windows key + E).
- ツール > フォルダオプションを選択します。
- "ファイルの種類"タブを選択して、拡張子QCのところまでスクロールします。もし拡張子リストにQCがなかったら、リストの下の新規ボタンから追加できます。
- 拡張子QCをクリックすると、ハイライト状態になります。
- "フォルダオプション"パネルの"拡張子'QC'の詳細"のエリアで、"プログラム:"の右にある"変更"ボタンをクリックします。
- "ファイルを開くプログラムの選択"パネルの右下の参照ボタンをクリックします。
- Sourcesdk/binにある"Studiomdl.exe"を選択し、開くをクリックします。
- "Studiomdl.exe"がハイライトされていることを確かめて、OKボタンをクリックします。
- "フォルダオプション"パネルを閉じます。
これでモデルの.qcファイルをダブルクリックするだけで、Source Engine向けモデルがコンパイルできるようになりました。
Step 6. 新しい.mdlをHalf-Life Model Viewerで確認
全てがうまくいっているか確かめるために、新しいHalf-Life Model Viewerを起動して新しいモデルを見てみましょう。HLMVは他のツールと同じようにsourcesdk/bin
にあります。SourceSDKランチャーからの起動もできます。HLMVのメニューからFile>Load Model(モデルの読み込み)を選び、自分のモデルの場所に移動して"Open"ボタンを押します。
遭遇する可能性がある問題について:
- もしモデルに黒とピンクのチェッカーボードテクスチャが張られているのなら、これは.qcが支持した場所にマテリアルが見つからなかったことを示しています。
- HLMVの"Render"タブに切り替え、"Physics Model(物理モデル)"の横にあるチェックボックスをクリックしてください。 もし物理モデルが予想したものと違って見えたら、モデリングドキュメントを見ると問題を分析する助けになるでしょう。
これでうまくいくはずです。まだ問題があるのなら、モデリングドキュメンテーションを見て、まだ何とかしないといけない問題があるか探してみてください。
P.S. 元のソースファイルを無くしてしまったんですが…
もし元のソースファイルを無くしてしまったとしても、.smdを直接読み込んで編集できます(例:Softimage|XSI向けのValve addonなど)。マテリアルに変換するためテクスチャを取り出すには、Goldsource(Half-Life 1エンジン) 用のHLMVを使ってTextureタブからテクスチャを抽出するという方法もあります。上のがすべて失敗したら、0から作り直すのも結局のところ悪くない考えでしょう。
Template:Otherlang:jp
Template:Otherlang:jp:en