DoGA-L3で「取り急ぎ」かっこいいモデルを作ってUnityで動かして遊ぶ

!ライセンスについてDoGA様から返答がありましたので追記しております。(2/6更新)

気がついたら前回の投稿から1年が経とうとしていて焦っているDNAです。Twitterでは18年前に作ったゲームをリメイクできないかなーとちょこちょこと進捗(してない)動画を上げていたりしましたが、その中で愛用しているDoGAさんの「PLAY Animation Importer for Unity」が昨年12月に更新されて、大変使い勝手がよくなったので、というか私の要望に応えてバージョンアップしてくださいましたので、お礼になるかわからないのですがDoGA-L3を改めて紹介してみたいと思います。

DoGA-L3とは

DoGA-L3はDoGA-LシリーズというCGアニメーション入門ツールの一つです。
Webサイト(CGA入門キット DOGA-L シリーズ)の紹介によれば、

DOGA-Lシリーズは、まったく初心者の方でも、 手軽にCGアニメーション (以下CGAに略す) の楽しさを体験していただくことを目的に開発された、CGA入門システムです。

……だそうです。実際機能もかなり絞られていますが、3DCGアニメを制作するのに最低限必要な機能は揃っています。

f:id:dnasoftwares:20170129002223g:plain
たくさんある半完成のパーツを組み合わせてモデルを作り……

f:id:dnasoftwares:20170129002318p:plain
モデルを配置してシーンやアニメーションを作ります。

f:id:dnasoftwares:20170129002404j:plain
Direct3Dでリアルタイムプレビューできるほか専用レンダラーで高画質出力もできます。

f:id:dnasoftwares:20170129002759p:plain:w300 f:id:dnasoftwares:20170129002935p:plain:w300 f:id:dnasoftwares:20170129002937p:plain:w300 f:id:dnasoftwares:20170129002938p:plain:w300
パーツはカテゴリごとに整理されており総数はそこそこあります。発想次第で色々作れます。
元々15年以上前のツールなだけに、そのころのスペックに合わせたポリゴン予算でパーツが作られています。どのパーツも良い感じのローポリ感があります。
プラモデルで既製品のパーツを借りてディテールアップしたり別のモデルを作ることをキットバッシング(Kitbashing)というそうですが、まさにキットバッシングを3DCGでやるツールといえるでしょう。

で、このモデルを作る部分(パーツアセンブラ)のデータをUnityにインポートできるようにするのがDoGA謹製のPLAY Animation Importer for Unityになります。

DoGA-L3他、系列の各製品のライセンスを購入すると各製品のパーツアセンブラで製作したモデルデータをUnityにインポートできるようになります。ちょっとクセのある出力になっていますが、他のエディタ拡張アセットと組み合わせたりなんだりで綺麗にまとめることができますので、併せて紹介したいと思います。

本稿では画面写真や操作はDoGA-L3を前提に進めます。(DNAが持ってるのがDoGA-L3のライセンスなので……)本当はDoGA-L1,L2,L3とステップアップする設計なんですが、Unityが扱える方ならDoGA-L3もすぐ慣れるでしょう。詳しい説明はしませんのでDoGAのサイト等を見ながら進めてください。分からないと思った場合はより初心者向けのとてかんCGで進めてもいいかもしれません。いずれにしろシェアウェアなので試用して問題なければライセンスを購入してください。
なお、通常のライセンスは非商用利用に限っての許諾となっており、商用、対価を取る用途には使えません。
ただし、DoGA-L3に限り商用利用可能なプロフェッショナルライセンスが設定されているほか、同人ゲームにおいてはパブリッシャーを通さない範囲での頒布は通常ライセンスの購入で許諾されるとのことです。パブリッシャーを通しての販売を行う場合には別途お問い合わせくださいとのことでした。(DoGA様ご返答ありがとうございました。)
DoGAの掲示板ではインポーターを使ってインポートしたモデルの使用について見解が示されています。

http://doga.jp/2010/reading/diary/201407.html#20140730kama
> このプラグインによって、L3等の形状データをUnityで自作の
> ゲームに利用するだけでなく、L3等で作ったデータを
> Unity アセットストアで販売することが可能になります。

日記でかまださんがこう書いている通り、
商用ライセンスは不要でUnityアセットストアでの販売が可能です。

これまでも L シリーズのデータを使って同人ソフトの開発・販売は認めてきましたがその方針を維持しています。
(明らかに同人の規模を超える、また商業ベースだと商用ライセンスの導入をお願いしています)

ということで取り急ぎ作ったモデルに愛着が沸いたらそのまま完成まで使いましょう。

試す

前述の通りUnityへのインポートの条件として製品の購入が必要ですが、購入前にとりあえずインストールして手触りを確かめるのがいいでしょう。
CGA入門キット DOGA-L シリーズのページの「DoGA-L3」内「ダウンロード」でダウンロードページに進みます。お目当てはモデリング部分であり、動画を出力するわけではないので「新規インストール 最小限」のEXE一つで大丈夫。
バージョンが2008とかなっててちょっとびっくりしますが、Windows10でも特に問題なく動作するはずです。何か挙動不審があったらDOGA-L3 βから2010年のβ版も入れるといいかもしれません。

動作に問題が無ければライセンスを購入して登録してください。

とりあえずモデル作る

というわけでモデルを作ります。パーツアセンブラでもっそもっそパーツを盛りましょう。色・テクスチャもインポーターは読み取ってくれるので気兼ねなく。ただし表面材質の設定は追従しない(すべてLegacy Diffuseでインポートされる)ので、ここはインポート後にどうにかします(次の記事で書きます)。

f:id:dnasoftwares:20170129194802p:plain
ここでは弊サークルで以前作ったモデルを使います。上のGIFアニメで出てるやつですね。いまちびちびリメイクしようとしてるの自機(のデータがなくなったので、当時のレンダリング画像を見て再度作ったもの)です。ちょうどUnityインポートで引っかかる色々な要素が混ざってるので好適かなと。

モデルの保存時など特別なことをする必要はなく、普通に保存して問題ありません。DoGAのデータファイルの場所は、標準では「(DoGA-L3のインストールフォルダ)\data」です。ファイルセレクタではどのフォルダでも指定できますので、たとえばUnityプロジェクトのフォルダにしてまとめてバージョン管理下に置くことも一応できます。

Unityのプロジェクトを仕込む

ここでは新規のプロジェクトを作ります。もちろんインポート先のプロジェクトがすでにあるならそっちを開いていいでしょう。
DoGAPLAY Animation Importer for Unityから、最新版のunitypackage(20161223)をダウンロードしてインポートします。
Asset Storeにもあるのですが、こちらはまだバージョンが上がってないようです。

インポートとコンパイルが終わったら「Window」メニューに「PLAY Animation (TotekanCG) Importer」が増えていることと、それを選んだら開くインポーターのウィンドウで
「Installed DoGA Products」の欄に登録したツールが表示されていることを確認してください。
f:id:dnasoftwares:20170129201026p:plain
f:id:dnasoftwares:20170129201139p:plain

インポートしてみる

エクスプローラDoGAのデータフォルダを開けます。中にある拡張子.l3pのファイルをUnityのインポーターのウィンドウにドラッグ&ドロvップ。「Import tasks」リストにファイルが追加されるはずです。
f:id:dnasoftwares:20170206004936p:plain
Scaleの値がやたら小さかったりするのが気になるかもしれませんが、あまり気にせず「Import All」でインポートを開始してしまいましょう。材質の多いモデルだと10~20秒程度時間がかかります。オブジェクトはシーンの原点に生成されます。
f:id:dnasoftwares:20170206005008p:plain

また、モデルのPrefabがAssetsフォルダの直下に生成されます。ただし、このモデルには極めて変なクセがついています。後述。

使う

折角飛行機のモデルなんですから飛ばしてみましょう。毎度おなじみテラシュールブログにちょうどいい記事がありますので参考にします。
tsubakit1.hateblo.jp

基本的にはこの記事通りに進行すればモデルを空に飛ばせます。ただし上の記事通りに作業を進めようとすると数点引っかかると思います。

メッシュがマテリアル単位で別のGameObjectに分割されている

何かしらのメッシュ統合アセットを使う必要があります。メッシュコライダの作成がうまくいかないと思いますのでとりあえず近似のBoxやCylinderなどを組み合わせましょう。

謎の回転と拡大がついている

角度は親も子も全部0にすれば元通り、拡大も親子とも1倍に戻せば元通りになります。割と謎。

両方設定して適当に床を置いてモデル位置を調整、カメラは手抜きですがとりあえず飛行機の子にして勝手に追従させましょう。
背景が寂しいのでMaruchuさんのTekitouCityGeneratorを使います。
many.chu.jp

パラメータをわちゃわちゃ調整しつつできあがったのがこちら。

とてかんCGインポーターで作ったモデルを飛ばす(1)

とりあえずとしてはこれでいいんですが、もうちょっと色々できますので以下次号。