四角形の「箱」だけを使い、様々なキャラクターやステージを造形する3Dドットモデリング。『Minecraft』『クロッシーロード』『ポケモンクエスト』などの人気ゲームにも使われているため、慣れ親しんでいる人も多いだろう。書籍『まるごとわかる3Dドットモデリング入門』の著者でソフトウェアエンジニアでもある今井健太氏(DeployGate inc.)が、その魅力と作成方法を紹介する。
※本記事は月刊『CGWORLD + digital video』vol. 245(2019年1月号)掲載の「エンジニアにもオススメ! 3Dドットモデリング」を再編集したものです。
TEXT_今井健太 / Kenta Imai(DeployGate inc.)
EDIT_尾形美幸 / Miyuki Ogata(CGWORLD)
絵心がなくても、キャラクターやステージを造形できる
3Dドットとは、2Dドット絵をもじって作成された造語です。一般的にはボクセルと呼ばれていますが、わかりやすく表現するため、本記事では3Dドットと記述します。3Dドットモデリングは、ゲーム用アセット作成での活用に加え、アート表現としても注目されています。一般的なモデリングを行なっているモデラーの方々はもちろん、普段はモデリングを行わないアニメーターやエフェクトアーティスト、ゲームデザイナー、エンジニアの方々にもおすすめしたい手法です。「モデリングをやってみたい」「やってはみたけれど、絵心がなくて挫折した」「ゲーム用アセットを自分で作成したい」といった思いや経験のある方は、ぜひ本記事を参考に、3Dドットモデリングを始めてみてください。
-
『まるごとわかる3Dドットモデリング入門 ~MagicaVoxelでつくる! Unityで動かす!~』
発売日:2018年7月24日
著者:今井健太
出版社:技術評論社
定価:2,780円(税抜)
本書では、ゲームをつくりたいけどキャラクターやステージなどのゲーム用アセットを作成できない、ハードルが高くて挫折してしまうといった人に向けて、できるだけ簡単に、絵心がなくてもゲーム用アセットを作成できる方法を紹介しています。また、筆者の最新作や最新情報は下記サイトにて紹介しているので、合わせてご覧ください。
voxel.henteko07.com
3Dドットモデリングでは、ボクセル(四角形の箱)のみを使ってキャラクターやステージを造形するため、一般的なモデリングにはない制約があります。しかし、この制約があるから、絵心がなくても形をつくりやすいというメリットもあります。一般的なモデリングの場合、思い描く形を表現することは初学者にとって非常に難しい行為です。練習のため、ほかの人がつくったモデルを真似ることですら簡単ではありません。ですが3Dドットモデリングはブロック玩具を積み上げる感覚で様々なモデルを作成できるため、誰でも簡単に綺麗な形を表現できますし、ほかの人のモデルを真似ることもそれほど難しい行為ではありません。
これは、2Dのイラストとドット絵の関係に非常に似ていると思います。ほかの人が描いたイラストとドット絵、どちらを模写するのが簡単かと問われたら、圧倒的に後者ですよね?以上の理由から、3Dドットモデリングはモデリング初学者にオススメの手法と言えるのです。以降では、3Dドットモデリングのソフトウェアと作成方法について、具体的に紹介していきます。
MagicaVoxelなら、レンダリング機能も抜群
ひとくちに3Dドットモデリングと言っても、それを実践できるソフトウェアはいくつか存在します。本記事では、代表的な4つのソフトウェア(MagicaVoxel、Qubicle、VoxelShop、goxel)の特徴や機能を比較する表をつくってみました。どのソフトウェアを使っても基本的な3Dドットモデリングは実践できますが、対応OS、料金、機能の充実度、操作性、エクスポートできるファイル形式の種類などの点でちがいがあるため、自分に適したものを選択しましょう。
▲3Dドットモデリングができる代表的な4つのソフトウェアの特徴や機能を比較してみました。筆者が一番おすすめするのはMagicaVoxelですが、どのソフトにも一長一短があります。まずは試してみて、自分に適したものを選択しましょう
筆者が一番おすすめするソフトウェアはMagicaVoxelです。これは@Ephtracy氏が個人で開発している無料ソフトですが、その機能は有料ソフトに負けません。モデリング機能はもちろんのこと、レンダリング機能も抜群に優れています。例えば、ライトの強さや色、影の濃度を簡単な操作で調整できます。
建物の壁を半透明なガラス素材にして、内部のモデルも見えるようにするといった表現もできます。さらにカメラの被写界深度を調整し、指定した位置の手前や奥をボケ気味にすることもできます。そのためレンダラを別途導入しなくても、MagicaVoxelだけで綺麗な画づくりが可能です。
▲【左】建物の壁一面を半透明なガラス素材にして、内部の壁やテーブルまで見えるようにしています。MagicaVoxelの[Matter]ツール内にある[Glass]を使うと、ボクセルに割り当てたマテリアルの透明度や屈折率を調整できます/【右】手前の椅子にピントを合わせ、奥はボケ気味にしてみました。MagicaVoxelでは、レンダリング時にピントを合わせたい位置をクリックすることで、被写界深度を調整できます。ボケ表現を効果的に使うと、遠近感や空気感が強調できますし、おしゃれな雰囲気の画づくりもできます
qb、obj、ply、xraw形式へのエクスポートも可能で、ほかの3Dソフトや、Unityなどの各種ゲームエンジンにデータを取り込めます。そのためアート作品の制作や、ゲーム開発の一環として3Dドットモデリングをしている方々のニーズも満たしてくれます。
そんなMagicaVoxelの残念な点を挙げるとすれば、OSS(Open Source Software)ではないので拡張性がないことと、UIが独特で、慣れるまでに少し時間がかかることでしょう。加えて日本語へのローカライズはされていないため、初めて触れる人はどのように操作すればいいのか迷ってしまいます。そんな人の手助けとなるように、次項からのTopic2では、MagicaVoxelによる3Dドットモデリングの基本的なやり方を解説します。
次ページ:
MagicaVoxelによる
3Dドットモデリング
MagicaVoxelによる3Dドットモデリング
本記事では、ゲームステージのようなモデルの作成を通して、MagicaVoxelによる3Dドットモデリングの基本的なやり方を解説します。モデリングをするときには、実際に造形を始める前に、自分がつくりたいモデルの形を想像することが大切です。けれども筆者が考えるに、この「想像」は絵心がない人にとってはとても難しいことです。簡単なラフスケッチを描いてみる、実物を観察してみる、インターネットで写真やほかの人がつくったモデルを検索してみるなどして、自分の想像力を補うことをおすすめします。筆者がステージの資料を探す場合は、Googleマップの航空写真モードをよく使います。
ある程度の形が想像できたら、「地面」「山」「川」といった構成要素を書き出し、どの部分からつくり始めると作業がしやすいか考えましょう。これらの準備をしておくと、スムーズにモデリングを進めることができます。
Step01:構成要素を書き出し、つくり方を考える
本記事では【上図】のゲームステージのようなモデルの作成方法を解説します。このモデルは「地面」「サボテン」「壁」「川」からなる4つの要素で構成されています。
このうち、【左図】の地面は「薄い茶色」と「濃い茶色」の2種類のパーツをつくり、それらを複製して配置します。【右図】のサボテンのモデルも複製して配置します。壁と川のモデルは使い回しができないため、個別に作成します。これらのモデルを扱う際には、MagicaVoxelのWorld機能のレイヤーやオブジェクトを使い、各モデルを分けて管理すると作業を効率化できます。
Step02:2種類の地面のパーツを作成し、複製・移動・配置する
MagicaVoxelを起動すると、【上図】の画面が表示されます。【上図A】の[Model]タブが選択されているのを確認してください。モデリングをするときは、この画面を使います。起動時にはエディタと呼ばれる3次元空間のx軸・y軸・z軸上に、40×40×40個のボクセルが敷き詰められています。今回はこれらのボクセルを使わないので、【上図B】の[Tool]内の[Del]を選択し、全てのボクセルを消します。
新しくボクセルを配置するため、【上図】左端の[Pallete]から茶色を選択し、【上図C】の[Brush]ツールから[Attach]を選択します。さらに[B]のボックスブラシを選択し、エディタ内をドラッグして7×7個のボクセルを一括配置します。続いて[F]のフェイスブラシに切り替え、前述のボクセル上でクリックをくり返し、ボクセルを上方向に積み重ねます。【上図】では途中で色を変えながら10回クリックすることで、合計11個のボクセルを積み重ねています。以上で薄い茶色の地面のパーツが完成しました。続いて【上図D】をクリックし、World画面へ切り替えます。
World画面では、World機能のレイヤーやオブジェクトを使い、複数のモデルを同じ3次元空間上に配置できます。【左図】World画面上で前述の薄い茶色の地面のパーツを複製し、最上部のボクセルの色を変え、濃い茶色の地面のパーツを作成します。続いて2種類の地面のパーツを複製・移動・配置し、【右図】の地面を作成します。なお、この後に作成するサボテン・壁・川は、別のオブジェクトとして管理します。MagicaVoxelでつくったモデルをほかの3Dソフトや、Unityなどの各種ゲームエンジンにインポートしたい場合は、各要素を別のオブジェクトで管理しましょう。全てのモデルをひとつのオブジェクトで管理すると、インポート時にモデルが一体化されてしまい、切り離せなくなります。
[[SplitPage]]Step03:サボテン・壁・川を作成する
続いて、地面の上に配置するサボテンを作成します。World機能のレイヤーは、【上図A】の[LAYER]ツールで管理します。デフォルトのレイヤーには[0]から始まる数字が割り振られていますが、これらは任意の名前に変更できます。また、左側にある[●]ボタンをクリックすることで、各レイヤーの表示・非表示を切り替えられます。先ほどつくった地面は[0]のレイヤーに属しているので、サボテンは[1]のレイヤーで作成・管理していきます。まずは[1]のレイヤーを選択した状態で、【上図B】の[+]ボタンをクリックし、新しい空(から)のオブジェクトを作成します。サボテンのモデルは、このオブジェクトの中につくります。このように各要素が属するレイヤーとオブジェクトを分けておけば、前述した通りほかのソフトウェアでのインポート時にモデルが一体化されるのを防げますし、モデリング作業を効率的に行えます。
【左図】地面とサボテンの大きさのちがいを意識しながら、サボテンをモデリングします。【右図】完成したサボテンを複製し、[Rot]ツールを使って90度回転させてから画面の奥に配置します。このように、World機能を使えば、オブジェクトごとに回転させることも可能です。
【左図】【右図】[2]のレイヤーを選択した状態で新しいオブジェクトを作成し、壁をつくります。川が流れる部分は、あらかじめ間を空けておきます。
【左図】川が流れる部分の地面のパーツを削除します。【右図】[3]のレイヤーを選択した状態で新しいオブジェクトを作成し、川をつくります。
Step04:マテリアルを割り当て、レンダリングする
モデリングが完了したら、【上図A】の[Render]タブに切り替え、[Matter]ツールを使ってマテリアルを調整します。今回は川の青色のボクセルを半透明にして、下にある壁のボクセルが透けて見えるような表現にしました。そのため、当初はつくっていなかった川の下の壁を、後で追加してあります。【上図B】[Matter]ツールの[Glass]を選択し、[Glass](透明率)、[Rough]( 表面の粗さ)、[Refract](屈折率)を調整しました。さらに【上図C】[Metal]を選択し、[Rough](表面の粗さ)、[Specular](反射率)も調整することで、水の質感を表現しています。なお、ライトの位置・強さ・色などは[Light]ツールで調整できます。全ての調整が終わったら、【上図D】のカメラボタンをクリックし、レンダリング画像を保存します。以上で完成です。
MagicaVoxelと3Dドットモデリングに興味をもってくださったなら、ぜひオリジナル作品の作成に挑戦してみてください。