Blenderでアトラステクスチャをベイクする
キャラクターモデルを作るうえで人のモデルを色々と見てみたんですが、(MMDモデルとかUnityちゃんとか)一枚の画像に色々なパーツのテクスチャが入ってるのをよく見ます。
私はテクスチャとかペイントソフトで描くのは出来ないので、Blenderのベイク機能でほぼ作ってますが(そのうちテクスチャを自在に描けるようになりたいですが)
ベイク機能だとオブジェクト事にしかテクスチャのベイクが出来ないのでこういったパーツがいっぱい入ったテクスチャを作るのは無理だと思ってました。(パーツがいっぱい入ってるテクスチャをアトラステクスチャというそうです。)
ですが、色々と調べていると、どうもそんな事もないということが分かりました。
なんだか普通に作れるみたいですね。
ただ、インターネットで検索しても出てきませんでしたが・・・。
・・・検索方法が悪かったのかな?
一応忘れないようにメモしておきます。
・Blenderのベイク機能は選択したオブジェクト全てベイクする
・一枚のテクスチャを共有する複数のオブジェクトのUV配置を同時に表示させるにはUV/画像エディターの ビュー >> 他のオブジェクトも表示 にチェックしておいてオブジェクトモードで共有してるオブジェクトを選択してから編集モードでUVを見ると見れる
多分バージョンの関係もあるのかも知れません。
2008年時点では複数のオブジェクトのUV配置を同時に表示することはできなかったようです。(Blenderの質問サイトに書いてありました。)
ちなみに現在私が使用しているのはVer 2.76です。
以前にも書いたんですが、
一応もう一度ここでおさらいの為、Blenderのややこしい仕様を
・編集モード中にUV/画像エディターに表示される画像はオブジェクト事にリンクされる。
Blenderのベイク機能を使う際に一番わかりにくい仕様のように思います。
各オブジェクト事にUV/画像エディターに表示される画像がリンクされます。
オブジェクトモード中は、どのオブジェクトを選択してもUV/画像エディターに変化はないんですが、編集モードに入った瞬間、UV/画像エディターの画像がオブジェクトに対応した画像に切り替わります。
このオブジェクトに対応した画像は、編集モード中にUV/画像エディターで選択した画像になります。
その為、何も対応した画像が無い状態だと編集モードに入った際に何も表示されないか、あるいはもともと表示されていた画像がそのまま表示され続けます。
その為、うっかりしてると関係ない画像がそのオブジェクトに対応してしまい、ベイクしたときに別の画像にベイク結果を出力したりします。
私も最初この辺でかなり悩みました。
ベイク機能は便利なんですが、仕様が分からないと苦戦しますね。
Blenderのメモメモ・・・。
ここしばらくBlenderでモデリングばかりしてます。
キャラクターのモデリングはやっぱり時間が掛かりますね。
Blenderでの作業ばかりだったのですが、作っているともっと簡単な方法がありそうな気がして少し時間を割いて探しに行ったりしてしまうのは良くあることで。
しかも意外と沢山見つかるわけで。
ほおっておくと段々忘れてしまうので、
今のうちにメモしておきます。
簡単なリボンの作り方(服のモデリングに使えそう)
超簡単にリボンを作る方法 その1【3DCG(Blender)で日本のアニメ的な表現をする方法まとめ】:プチ3DCGモデラーの毎日モデリング - ブロマガ
髪の毛を作るアドオン(アニメ調の髪の毛が作れるらしい・・・使ってないから分からないけど)
アニメ風の髪の毛を簡単に作れるアドオンを作ってみた【自分で作ったBlenderのアドオンを紹介】:プチ3DCGモデラーの毎日モデリング - ブロマガ
Blenderでマップのテクスチャとかが簡単に作れそうな方法
(高さの変化でテクスチャが変わる感じでしょうか・・・)
サンドボックス系ゲームのテクスチャ【Blenderでゲームの演出を再現】:プチ3DCGモデラーの毎日モデリング - ブロマガ
カーブを使った髪の毛の作り方(これを知らずに一本ずつ作ってしまった・・・)
カーブオブジェクトを使った髪の毛のモデリング : 無料ソフト「Blender」でMMDモデルの作り方 - NAVER まとめ
Blenderの機能は分からないことだらけです。
これをすべて使いこなせれば相当すごいCGが作れそうですが、
ぶっちゃけ未知の機能ばかりです。
実際問題モデリングとアニメーション作りが出来ればいいんでしょうけど、気が付かずにいる便利機能とかいっぱいありそうなんですよね。
今後はフィールドマップとかも作りたいですし、
まだまだ勉強することは多いです。
MakeHumanのモデル解析中
ここ数日キャラクターのモデリングを行ってるんですが、どうにも上手くいかないので、MakeHumanというソフトで出力したローポリゴンのモデルを分解して人体のパーツで最低限必要なポリ割りを調べることにしました。
とりあえず顔から
人の顔についてはいろんなところで説明されているので、特に書くこともないですが、目の周りと口の周りから面が流れています。
面の差し込みのような感じで入れていくのがいいんでしょうかねぇ・・・。
リアル系とトゥーン系で多少の違いはありそうですが、大体は同じだと思うんですよね。
横から見た図。
耳の後ろを通って額に抜けていますね。
目の脇の方は面の流れが合流しているように見えます。
この辺はリアル系とトゥーン系で違ってきそうです。・・・調べてないから何とも言えませんが。
今度は体部分です。
腹部はただのキューブを細分化した感じですが、首回りと肩のあたりに分割できそうですね。
胴体後ろ側。
お尻の部分だけ面の差し込みがされてます。
かなりのローポリゴンモデルですが、ちゃんと人型してます。
しかも全部四角面みたいです。
ただ、如何せん色々な体系に変えることを前提に作られているせいか、全体的になんだか体形の特徴がぼんやりしている気がします。
でも、ゲームで使うならポリゴン数も少ないしなかなかよさそうです。
・・・もっとも、素っ裸で使うわけじゃないから服着せたりなんだりしてたらポリゴン数増えそうですが。
ちなみにこれは最もローポリなモデルですが、MakeHimanは3段階でモデルのポリゴン数を選んで出力できます。
服とかも一応着せられるようです。
DAZ3Dも無料で素体のモデルを作れますが、かなりのハイポリゴンの上かなり良く出来すぎていて解析の途中で諦めました。
あちらも全て四角面で出来ているんですが、面の流れがかなり複雑に出来ていて、リトポロジーしていたらわけが分からなくなりました。
とりあえず、今回の解析を元にパーツ毎に切り分けてモデルを作ってみようと思います。現在のモデルは何度も修正しているせいか結構おかしな部分も多いので。
最終的にはパーツ毎に作っておいてそれを組み合わせてキャラクターのモデルが作れれば便利そうです。
Unityでモデルデータの読み込み・出力とかできればそういうソフトも作れそうですが・・・。
シナリオデータから字幕と音声とアニメーションを制御することにしました
思いのほか時間が掛かってしまいました。
シナリオデータとして記号を織り交ぜたテキストデータを読み込んで音声と字幕を連動させることにようやく成功しました。
後はアニメーションが追加出来ればシナリオデータと音声だけ作れば簡単に動画が作れるようになるはず。
なんだか余計な事に時間が掛かっているせいでゲーム制作の方が進まないです。
でも、ゲーム中でストーリーを盛り込むとしたらシナリオデータ的なものは必要になる気がするので、良しとしましょう。
・・・もっとも、アセットにいいのがありそうな気がしますが。
そしてもっと手の込んだ動画を作ろうと思ったら全然役に立たないので、とりあえず仮で使っていく感じでしょうか。
アニメーションの同期まで出来てからゲーム制作に戻りましょう。
新しい動画のジャンルを作るに当たり
昨日(正確には今日ですが)ようやくUnityで作った動画シリーズを終わらせました。
作りこそすれクオリティは下の下だったので、全く再生されてませんが。
しかしながら色々と必要なものも見えてきたように感じます。
ゲーム開発にも使えそうな技術もあるので、作って損は無いはず・・・。
今日は技術的な問題点を洗い出してみました。
・見栄えが悪い ⇒ シェーダーを勉強する必要がある。(主に明るさとか色合い)
・カメラワークが悪い ⇒ カメラのプレハブを作る(場面にあったカメラの演出)
・キャラの動きが悪い ⇒ キャラクターの動きをパターン化してスクリプトにする。
・音声 / 字幕の編集がめんどい ⇒ スクリプト制御 + プレハブ化(配置の簡略化)
他にもありそうですが、まずはこの辺でしょうか?
見栄えについてはライトによる部分も大きいですが、動きが重くなりそうなので、シェーダーについてもっと知識が必要になりそうです。
カメラワークはプレハブ化してはいますが、直線的な動きが多いので、もう少しいい感じのカメラワークを調べてそのパターンをスクリプトなり、アニメーションなりすれば簡単に使えそう。
キャラクターは操作キャラはまあ、いいとして、エキストラ陣の動きがもっと必要ですね。動画を引き立たせるこまごまとした動きをいくつか用意しておけば、動画の背景にも、ちょっとしたシーンの作成にも使えそう。
音声字幕については外部データの読み込みを利用してモデルのアニメーションにも変化をつけられればもっとクオリティが上がってしかも楽が出来そう。
この辺は実際にゲームにも応用できそうなので、(メインというより脇役的な部分ですが)この辺を強化していこうと思います。
・・・本筋の方が出来てないのにサブの方にばかり目が行くのはあまり良い傾向ではないですが。
タイトルに動画の新ジャンルと書きましたが、やろうとしているのは別に新しいことではなく、ゲームを使用した物語仕立ての動画を作ろうという考えです。
GTAやSkyrimとかがニコニコ動画に投稿されてますが、あれをUnityでやろうというだけです。
問題はGTAやSkyrimと違い”基(もと)”が何もない状態なことと、″本(もと)”も何もないということでしょうか。
無いことはないですが、動画を作るのに十分かと言われれば十分だとは言えなさそうなんですよね。
・・・もっとも、やり方次第では溢れているんですが。
ただ、わざわざそれをすることの利点は・・・。
動画用にポーズ機能を使ったらよさそう
前回シェーダーをいじってUI関係のクオリティをあげようとしてたわけですが、よく考えてみたら、その前にポーズ機能を実装しないといけないことに気が付きました。
ポーズ画面のUIを作るのにポーズ機能がないとお話になりません。
Unityでポーズ機能を実装するには
・タイムスケールを0にする
・スクリプトでやる
という方法があるようです。
タイムスケールの方が簡単そうですね。
アニメーションが動かないという問題が昔はあったようですが、アニメーションのアップデートの辺りをいじると動くようです。
それでも細かいことをしようと思ったらスクリプトの方がいいんでしょうけど、とりあえず今のところ困るようなこともないので、タイムスケールを採用しようと思います。
そして、このポーズ機能ですが、動画を作るうえでは意外と便利かもしれません。
撮影中にポーズ機能で色々いじれれば後で動画編集して効率よく動画が取れそうな予感。
主に音声とか。
ポーズ中に動画撮影に便利な機能を用意するのがよさそうです。
とりあえず現在構想中。
シェーダーいじったら動画的によさそう
いつも購読させて頂いているテラシュール様のブログでこの間シェーダーの記事があったので、早速シェーダーをいじってみたんですが、
これは上手く使えば動画的に見栄えが良くなるかも。
早速勉強するため、情報を集めました。
まず、シェーダーとは
光の加減とか色とかをどんな感じにするか決めるプログラムのようです。
UnityではいつもC#でスクリプトを書いてますが、シェーダーにはシェーダー言語というのがあるらしいです。
Unityで使うのはCgというやつとかHLSLというやつらしいです。
詳しく書いてあるサイトがあったのでここにリンクを貼っておきます。
ゲームに組み込んでいくのはもっとよくわかってからですね。
とりあえず難しいことはやらず、ゲーム中ではUIだけは格好良くしたいです。
色々勉強していけば動画の方もクオリティが上がるでしょう・・・たぶん。