武器作成

オリジナル武器作成 Blender2.7系対応版

Blenderを使ってオリジナル形状の武器を作ってみよう!
このチュートリアルでは「ピコピコハンマー」をモデルに、オリジナルモデルの武器を作ります。


武器の構想

最初に、どういう武器にするのか検討します。大好きな漫画やゲームから選んでもいいでしょう。作りながら決めていってもいいのですが、最初で決めておくと、作っていく時に迷わずに済みます。また、Skyrim Nifの仕様に合わせて作ることになるので、最初で制限を確認する意味もあります。最初で、片手武器なのか両手武器なのか、鞘はあるのか無いのか、それだけでも決めておきましょう。今回製作のピコピコハンマーは、両手武器で制作していきます。

ツールの準備

本チュートリアルでは以下のツールを使用します。
  • Blender2.7系
  • Blender NIF Plugin(Blender2.7系対応)
  • FO3 Archive Utility
  • Nifskope
  • GIMPやPhotoshop等のペイントツール
Blender2.7対応のBlender NIF PluginはBlenderで入出力の項目を、その他のツールはツールの項目を参照して導入してください。

モデリング

では、実際に作っていく作業に入りましょう。

Blenderへのモデルインポート

ピコピコハンマー両手版を作るにあたり、Skyrimから目安となるハンマーのモデルをBlnderにインポートします。
今回はDwarven Warhammer(ドワーフの戦鎚)を目安として使います。

バニラのメッシュファイルはSkyrim - Meshes.bsaに圧縮されているので、解凍しましょう。
FO3 Archive Utilityを起動して、上部メニューのFile>Open ArchiveでSkyrim - Meshes.bsaを選択して読み込みます。
フォルダがツリー表示されるので、meshes>weapons>dwarvenと辿り、1stpersondwarvenwarhammer.nifを選択して、
上部メニューのAction>Extract Selected Filesを選択し、任意のフォルダにnifファイルを解凍します。


1stpersondwarvenwarhammer.nifを適当な場所に解凍したら、BlenderにインポートするためにNifskopeで整形します。
赤枠の部分は不要なので、1つずつ選択してCtrl+Delで削除しましょう。


修正後はこんなかんじです。


1stPersonDwarvenWarhammer:0を選択して右クリック、Transform>Editを選択します。


表示されたウィンドウを見てみるとTranslationとScaleの数値がバラバラになっていることが分かります。


Blenderにインポートした、1stPersonDwarvenWarhammer:0を選択して右クリック、Transform>Applyを選択します。


再び1stPersonDwarvenWarhammer:0を選択して右クリック、Transform>Editを選択。
表示された画面でTranslationとScaleの数値が以下のようになっていればOKです。


これでnifファイルの整形は完了です。
Ctrl+Sでファイルを保存しましょう。解凍したバニラのファイルはまた後で使うので、別名で保存しましょう。

保存したファイルをBlenderにインポートします。
上部メニューのFile>Import>NetImmerse/Gamebryo(.nif)を選択。


設定はファイルブラウザの左下に表示されます。
そのままでもインポート可能ですが、今回はインポートサイズを1/10にします。
Scale Correction Importを1.00→0.10に変更してimport NIFをクリックします。


インポートに成功すると黒いドワーフの戦鎚のメッシュが表示されます。


インポートした際、以下のような警告メッセージが表示されることがありますが、無視して大丈夫です。
ファイルで指定された場所にテクスチャファイルが存在しないことを知らせるメッセージです。
Texture 'XXXXXX\textures\weapons\dwarven\DwarvenWarhammer.dds' not found or not supported and no alternate available
Texture 'XXXXXX\textures\weapons\dwarven\DwarvenWarhammer_n.dds' not found or not supported and no alternate available

インポートが完了したら、Mキーを押してレイヤー切り替えパレットを表示し、すぐ下の四角をクリック。


これで、すぐ下のレイヤーにハンマーが移動しました。
移動が完了したら、画面下側のレイヤーマーカーをクリックし、元の作業レイヤーに戻ります。


こうしてレイヤーを分けて作業を進めていきます。

3Dモデル製作

さて、いよいよモデリングです。
Blenderはショートカットキーを多用する操作体系になっています。こちらBlender基本操作(ショートカットキー)でショートカットキーを確認しながら作業していきましょう。
最初にヘッド部分から作って行きましょう。モデリングは、まず断面を作り、そこから面を伸ばしていく方法で作成していきます。
具体的には、ObjectモードでShift+Cを押してカーソルをグリッドの中心に移動してから、Shift+Aでメニューを表示し、Mesh>Circleと選択して、円を追加します。


Vertices(角)は10でいいでしょう。


この円が、ピコハンのヘッドの断面になります。

円が作成できたらTABキーを押してEditモード(黄色い線と点が表示される)へ。
今後ObjectモードとEditモードを切り替えながらモデリングしていくことになりますが、Objectモードでオブジェクトを操作してしまうとオブジェクトの座標、サイズ、角度を変えてしまうことになります。
そのまま出力するとゲーム中での表示位置がずれたりといった問題が起こるので、移動、回転、拡大縮小等の操作は基本的にEditモードで行う癖をつけておくと良いと思います。

1キーを押してカメラを切り替え、Rキーで回線させて直立させます。この時、Ctrlキーを押して回転させると正確に90度回転させることができます。
余談ですが、Rキー(回転)→Yキー(Y軸回りに)→90(90度)と順番に押しても同じことができます。


まずはヘッドの蛇腹部分を作っていきます。

作り方は色々ありますが、今回はMirrorモディファイアとArrayモディファイアを使って作っていきます。
モディファイアはBlenderの自動処理機能です。

円のオブジェクトが選択されている状態で、画面右端に表示されているプロパティエディタからレンチのマークのアイコンをクリックします。


切り替わった画面でAdd Modifierを押すと、オブジェクトに追加できるモディファイアが一覧表示されるので、Mirrorモディファイアを選択します。


これで円のオブジェクトにMirrorモディファイアが付加されました。
Editモードで円の頂点を全選択した状態で、Eキーを押して頂点を押し出し、そのままX軸の正方向(画像では右方向)に引っ張って伸ばしてみましょう。
伸ばす時にホイールキーをクリックすると、伸ばす方向を固定できます。


X軸の正方向に引っ張ると同時に負方向(画像では左方向)に伸びていくのがわかると思います。
Mirrorモディファイアはこのようにオブジェクトの軸に沿ってメッシュを鏡面コピーしてくれます。
対称な形状のメッシュを作成する場合、編集作業が少なくて済みます。

伸ばした断面の頂点を選択したままSキーを押してやや縮小します。


ドワーフの戦鎚をインポートした際に、Viewport ShadingがMaterialに変更されて、メッシュの表示が真っ黒になってしまっているので、Solidに変更しておきましょう。


蛇腹の山1つ分の形状ができました。
ここまでできたら一旦Objectモードに切り替えてMirrorモディファイアをApplyします。
Applyすることでモディファイアの編集処理が永続的なものになります。


今度はArrayモディファイアを付加します。


デフォルト設定で蛇腹の山がX軸正方向に1つ複製されると思います。
Arrayモディファイアは付加したオブジェクトを複製してくれます。
今回は以下のように設定しました。


設定できたらObjectモードでApplyします。

EditモードのままAキーを押すと全体を選択できます。
全体を選択した後、赤い矢印を掴んで少し左に移動。
この矢印はその方向にしか動かないので便利です。


蛇腹を作った時と同じ要領で蛇腹の端を少し伸ばしておきましょう。

断面の頂点を選択。


Eキーで押し出して、少し引っ張る。


Sキーを押して少し拡大。


なんとなく形が見えてきました。



面をスムーズに表示する
ある程度出来てきましたが、このままでは10角形のカクカクとしたピコハンになってしまいます。
それはそれで味があっていいものですが、ここは面はそのままでなめらかに表示するように設定しましょう。

Objectモードに切り替えて画面左側に表示されているメニューのSmoothをクリックします。


これでスムーズに表示されるようになりました。



頂点を統一して面を閉じる
今は蛇腹を持った筒の状態になっているはずです。
今度は端っこを塞いでしまいましょう。

打撃面になる部分を選択してEキーで押し出し。ピコハンの柔らかな感じを出すために、Sキーでやや縮小させます。


さらにそこから押し出し。
Sキー(拡大縮小)→Shift + Xキー(X軸方向以外)→0(0にする)を順に入力し、1点に縮小させて面を塞ぎます。
この状態ですと、頂点がかぶっているので、Wキーを押してスペシャルメニューを表示、そこからRemove Doublesを選びます。これで重なった頂点を削除して1点に統一してくれます。


これで、ピコハンヘッドの半分はできあがりました。
このメッシュを反対側にコピーしてしまいましょう。

Mirrorモディファイアによる複製
ハンマーヘッドの中央部分を作りましょう。

いまは中心部分は、Z軸のラインから離れた位置にあります。
これをZ軸ピッタリにあわせたいのですが、手動ではどうしてもずれてしまいます。これをピッタリに合わせていきましょう。

Shift + Cキーを押してカーソルを中央部分に表示させます。
続いて、下のPivotメニューから3D Cursorを選択。


これはどれを中心点にするか。というメニューです。3D Cursorを選択すると、全てカーソルを中心として作業することになります。
適時切り替えて作業していきましょう。

この状態で、断面を選択。
Eキーで押し出し。


Sキーで少し拡大。


再度Eキーで押し出してから、Sキー、Xキー、0キーの順番で押していきます。
S(拡大縮小)、X(X軸方向へ)、0(0の位置へ)ということで、カーソルの部分(Z軸上)へ頂点が移動したはずです。


これでヘッドの半分が完成したので、再度Mirrorモディファイアを付加します。
このMirrorモディファイアはApplyしないでおきましょう。


これで、ピコハンのヘッド部分が完成しました。


以上が基本的なモデリングの流れです。
Blenderは解説がサイトが豊富ですので、検索して色々調べてみてください。もっと効率良くモデリングする方法があるはずです。

モデリングの基礎ができたら、この方法を応用して「柄」の部分を作って行きましょう。
柄を作る前に、最初に読み込んだドワーフの戦鎚を表示させます。
ObjectモードでShiftを押しながらドワーフの戦鎚のレイヤーをクリック。


これで両方のモデルが表示されます。


ややサイズが大きすぎるので縮小させて、移動。Editモードにしてから移動するのをお忘れなく。


Zキーでワイヤフレーム表示にできるので、透かして見ながらヘッド部分の位置をドワーフの戦鎚と合わせておきます。


柄はシンプルな棒で構わないのですが、太さは元のドワーフの戦鎚と同じ太さにしましょう。あまり太すぎると指が埋まってしまいます。


これでモデリングは完了です。
さあ、次はテクスチャを作る前段階、UV展開をしていきます。

UV展開

モデルは完成しましたが、この段階ではまだ色の付いていない素材の状態です。このモデルにテクスチャを貼り付けるため、まずはこの立体物を平面に展開する必要があります。それがUV展開です。

ヘッド部分のMirrorモディファイアはまだApplyしないの?

まだしません。
左半分をUV展開してテクスチャを作成した後で、MirrorモディファイアをApplyして右半分をつなげると、左と同じテクスチャを使う事になるので、テクスチャサイズが節約できるのです。
テクスチャはサイズが大きければ大きいほど高精細に表示されますが、同時にゲーム内での表示が重くなってしまいます。自分の製作しているモデルに合わせて調整しましょう。複雑な模様のある武器であれば左右は別のテクスチャを使った方がいいのですが、ピコハンは単純なデザインなので、左右同じテクスチャを使用します。

Seam(切り取り線)の設定

まずはSeamの設定をしましょう。これは、モデルをどこで切り離してUV展開するのか。というものです。サイコロの展開図を想像してもらえれば理解しやすいでしょう。


まずは、打撃面の部分を切り離します。打撃面の縦ラインを選択したらCtrl + Eキーを押して辺スペシャルメニューを表示、そこからMark Seamを選びます。


選択されたラインが赤色になったと思います。ここから分割されて展開図になるわけです。


どの部分で切り離した方がいいか、はモデルによって違うので、何度かSeamラインを設定して試していくと良いでしょう。UV展開の項目も参考になります。
打撃面の設定が完了したら、今度は上下二ヶ所のラインを選択してSeam設定。


これでヘッド部分のSeam設定は完了しました。
どんな展開図になるかを確認するにはWindow typeをUV/Image Editorに切替える必要があります。
ディスプレイサイズにもよりますが、画面を2分割して3D ViewとUV/Image Editorを両方表示させた方が作業しやすいので、まずは画面右上をドラッグしたまま左に引っ張り、画面を2分割します。




左側のWindow TypeをUV/Image Editorに切り替えます。


暗い方眼紙のような画面が出てきました。UV展開やテクスチャの設定はこちらの画面でやっていきます。

Unwrapによる自動展開

UV/Image Editorを表示させたらヘッドをAキーで全選択し、UキーでUV Mappingメニューを表示、Unwrapを選択します。


これで、Seam設定に沿って展開図がUV/Image Editorに表示されます。


自動で展開すると、多くの場合UVがややずれて表示されています。ピコハンのような単純な形状の場合、このまま利用してもさほど問題は無いのですが、できるだけ綺麗に整形した方が後々の修正が楽になります。

UVの整形

というわけで、UV/Image EditorでUVの整形をしていきます。Bキーを押して範囲選択モードにし、一番上のラインを選択。Wキーを押すと整形メニューが出るので、Align Yを選択。


これでY軸に沿って一直線に並びます。


全ての横線を全て直線に並べたら、次は縦を同じようにAlign Xで整形。地味で地道な作業になりますが、やっておくと後々楽できますよ。

全て整形し終わると、このように綺麗な展開図になっているはずです。


これでヘッド部分のUV展開は完了しました。Objectモードに切り替えて、ヘッド部分に付加しているMirrorモディファイアをApplyしましょう。

ちなみに、Seam設定しないでそのままUnwrapで展開するとどういう状態になるかというと…


こうなります。これでは、どこが打撃面か蛇腹の部分かわからないうえに、テクスチャの密度がおかしな事になってしまいます。きちんとSeam設定とUV展開していきましょう。

次は柄の展開ですが、その前に同じ展開図に広げるためにヘッドに柄をくっつけておきます。
柄、ヘッドの順番で選択(Shift+右クリック)し、Ctrl + J キーでJoin。

これで同じEditモード内で編集できるようになりました。ヘッドと同じようにSeam設定をし、Unwrapで展開していきましょう。
最終的な展開図はこのようになりました。なるべく正方形の中にうまく納めるように並べます。


これで展開図は完成しました。

余談ですが、BlenderにはUvSquaresというAddonがあり、導入することによって追加される機能を使うと…


このように一発で綺麗に縦横整形してくれたりします。
必ずしも縦横揃えるのが良いわけではありませんが、便利なAddonです。



テクスチャ作成

展開図が完成したら、いよいよテクスチャの製作です。

展開図を書き出す

ここから先はGIMPやPhotoshop等の画像加工ツールでの作業になりますが、その前に出来上がった展開図を画像として書き出しましょう。この展開図を元にテクスチャを描いていきます。

UVs > Export UV Layoutを選択。


出力サイズは1024x1024でいいでしょう。


画像編集ソフトでの作業

指定したパスに画像ファイルが出力されているはずです。
これを画像編集ソフトで読み込みます。画像を反転し、背景を黒、ラインを白にします。この状態でレイヤーの合成モードを「スクリーン」にすると、黒い部分が透けるので作業しやすくなります。


さて、ヘッドの部分を赤、柄の部分を黄色で塗っていきましょう。


これでテクスチャはひとまず完成です。展開図のレイヤーを非表示にして保存(後で加工しやすい形式を選択)。

モデルに貼り付けてテクスチャを確認

Blenderに戻り、UV/Image EditorのImageからOpen...を選択。


先ほど保存したテクスチャファイルを選択します。
UV/Image Editorに画像が読み込まれました。


モデルの表示に反映させるため、3D ViewのViewport ShadingをTextureにしましょう。


さらに、3D View上でNキーを押して右側にメニューを表示させ、Shading>Material ModeをMultitextureに変更します。


これでテクスチャが貼り付けられた状態で表示されるはずです。


ピコハンが完成しました。

陰影の追加

さて、この状態ですと見ての通りのっぺりとしていて立体感がありません。このままSkyrimに持っていってもいまいち表情に乏しい武器になってしまいます。そこで、陰影を描き込んで立体物を増す作業が必要になります。陰影は手描きで描き込んでいっても良いのですが、実は自動で陰影を焼き付けてくれる機能がBlenderに備わっています。

画像のように設定したら、Bakeボタンを押しましょう。



テクスチャが表示されていたUV/Image Editorに陰影が生成された画像が出てきたはずです。


同時に陰影画像が貼り付けられたモデルが表示されているはずです。


これだけでも結構リアルになったと思いませんか?さあ、早速この陰影をテクスチャに追加しましょう。

UV/Image EditorのImageからSave As... を選択。新規にKAGE等の名前を付けて保存しましょう。生成された陰影画像を、先ほどのテクスチャファイルに読み込み、レイヤーモードを「乗算」にします。


陰影が追加されたテクスチャが出来上がりました。保存し、再度Blenderでモデルに貼り付けて確認しましょう。


先ほどよりもずっと立体感のあるピコハンになりました。陰影が薄いと感じた場合は、もう一枚上に陰影を重ねて乗算にすると、より影が濃くなります。ゲームで見る場合はコントラストがハッキリしている方がより立体的に感じられるので、陰影は濃いめの方が効果的です。

これで、モデルとテクスチャの両方が完成しました。
お疲れさまでした。

次は、このデータをゲームに読み込むための設定を行っていきましょう。



添付ファイル