Starlight Ensign

拳銃作成

gun1

小型拳銃を作り始めた.弾薬は10✕20mm弾.そんなに細かくは作らないつもり.

アンドロイドの指

ude
アンドロイドの指をロボットっぽくしようとしているものの,どうもデザインが定まらない.

攻撃ヘリ製作開始

めずらしく手書きのラフがない状態からデザインし始めた.ヘリを選んだのは,戦車を作ったので攻撃ヘリがあったほうが物語性のあるシーンを作りやすいだろうという理由.

32

Blender+FreeStyleとSmokeの組み合わせ

FreeStyleの描写とSmokeを組み合わせてみたら,不都合が出てきた.

27

画像左上のドラム缶的な燃料タンクのところを見ると,そこだけ輪郭線が無いのがわかる.これは,FreeStyleでそのままレンダリングすると,Domainの箱の枠線が描写されてしまうということと絡んだ問題になっている.

試しにSmokeと普通の物体を組み合わせた状態でレンダリングしてみるとこうなる.

FS
この状態だと,Domainの枠線が表示されてしまっている.しかも,透明なオブジェクトとして処理されているわけではないので,向こう側の線は標示されていない.他の物体と貫通させてみると顕著に分かる.

KP
しかもなんか色々と変.

これを防ぐ方法として,FreeStyleのLineSetで除外Groupを設定してそこにDomainを突っ込んでみた.するとこうなる.

ExG

ex
右下部分以外の線が消えてしまった.

おそらく,Domainは透明オブジェクトとして設定されているわけではないので,Domainと重なっている部分が描写されずに切れてしまってるためだと思われる.そこで,RenderLayerを二つに分けて,線以外を描写するレンダーレイヤーと線のみを描写するレンダーレイヤーに分け,それぞれのレンダーレイヤーに対応させるレイヤーを分けてみる.

RLl
こんな感じ.

そして,それに合わせてCompositeNodeを以下のように組んでみた.

CN

すると,下の様な画像が出力される.

1

これで期待通りの画像が出力される.レンダリングにかかる時間も,体感ではそこまで伸びた感じはしない.動画作成時にも実用できる方法だと思う.最初の画像にこれまでの方法を適用した画像を示しておこう.

27s

アンドロイドの調整,FreeStyleに挑戦

先日のアンドロイドように,ゴーグルを作ってみた.

ゴーグル新調
中々様になっている.

とはいえ,アンドロイドはHUDを見る必要が無いので,こんなの必要ないといえば必要ない.設定上の本来の用途は,表情が変わらないアンドロイドが何を考えてどう行動しているのかを外部表示するための,表示機器である.

TEST
こんな感じで.

また,Cyclesの扱いにある程度慣れてきたので,FreeStyleに手を出してみた.輪郭線が出るタイプのレンダラで最も美しく輪郭線が出ると思っているVidroと比較してみると,こんな感じになる.

T-2v

T-2f
上がVidroで,下がFreeStyle.どちらもモデルは同じである.

Vidroは何も考えずにきれいな輪郭線を出してくれるが,FreeStyleは色々と調整しないといけない.逆に言えば,調整の余地がかなりあるので習熟すれば使えるんだと思う.現在困っているのは,主に物体同士が貫通してる時に輪郭線を表示してくれないことだ.例えば,Vidroの画像では,側面のサイドスカート部分を見ると,ヒンジと車体の切れ目の部分には輪郭線が引かれている.一方で,FreeStyleのほうは輪郭線が無い.これを踏まえて画像全体を見直すと,こういう貫通パーツ全体に輪郭線が表示されていないのが分かる.

何とかしたいところだけど,FreeStyleの資料ってどこかにないかしら?自分でもいろいろ探ってみようとは思う.

最近の成果

08bai

女の子の顔を作っていたのだが,この成果を前作ったアンドロイドに反映することにした.特に,口周りが前よりもリアルになっているのと,鼻の穴を作ったことが大きな変化だろう.あと,目がアニメバランス過ぎたので,0.8倍してみた.これでも実際の人間よりは大き目のはず.

まだ目の周りが微妙に不自然なままなので,微調整が必要.

BlenderのCyclesで草原

CyclesでHairをGPUレンダリングできるようになったので,草原の素を作ってみた.

草原の素
素晴らしい,とてもはやい!

くさわけ
そういえば全然弄ってなかったダイナミックペイントと組み合わせて,草を分け入る動画を試作してみる.WeightマップにCubeが通り過ぎたところをペイントして,そのWeight情報を基にHairの長さを決定しているだけだ.非常に簡単.

ただ,進行方向に草をなぎ倒すのは少々面倒かもしれない.物理演算でやるのは無駄に重いだろうし,望んだ結果を得るのが逆に難しいと思う.一番現実的なのは,

  • 物体が通った後の草をすべて刈り取る(WeightにDynamic Paintして,HairのLengthで反映)
  • 新たに通過した後の場所に草を植えこむ

の手順だろうか… この手順なら,植える方の草の向きはエミッターの設定次第でどうとでもなるだろう.