Blender でセルルックを作る方法まとめ
線画の描画は輪郭抽出する方法まとめを参照。
目次
Blender レンダー
Cycles
法線のスムージング
コンポジットを使う方法
UV をレンダリングする方法
レンダーレイヤーとマテリアルオーバーライドを使う方法
Blender Render
ノードでセルルック


考察編 02: 新トゥーンマテリアルの設定と、アニメ表現における陰色の決定要因のお話。
Cycles
Cyclesのトゥーンシェーダ【3DCG(Blender)で日本のアニメ的な表現をする方法まとめ】
Is there really a way to make a true toon shader material in Cycles?
Cycles のマテリアルを使う方法では色をコントロールできない。 後述するコンポジットで色を付ける方法を使うほうがいい。
法線のスムージング
法線を手動で編集する方法はBlender で法線を編集するアドオンを参照。 この項目では球ポリゴンの法線をコピーする方法を紹介する。
球の法線を顔にコピーするには、まず頭を包むような球を作成し、その球のシェーディングをスムーズにする。

次に頭ポリゴンにデータ転送モディフィアをつける。

最後に頭ポリゴンの自動スムーズにチェックを入れる。

法線メッシュの編集
コピーした頭を使う
球の法線に違和感を覚えるときはコピーした頭ポリゴンを使う方法もある。コピーした頭ポリゴンに「ポリゴン数削減」と「再分割曲面」とを適用してデータ転送する。
カプセルポリゴン
カプセル型のポリゴンの法線をコピーする方法もある。

コンポジットで陰色を付ける方法
UV をレンダリングする方法
UV をレンダリングする方法はレンダリングされた UV をもとにコンポジットでテクスチャを参照する。これはレンダーレイヤーとマテリアルオーバーライドを使う方法よりも高速でセットアップの手間が少ない。加えて UV 座標が変更されない限りテクスチャを編集しても再レンダリングする必要がない。
ただし透過マテリアルを処理できない欠点がある。
設定
「レンダーレイヤー > パス > UV」にチェックを入れる。

透過を無効にする。

そしてグレーでレンダリングする。このグレーのレンダリング結果をもとにどこを陰にするかをきめる。マテリアルオーバーライドを使うと、いちいちマテリアルからテクスチャをはがす手間が省ける。
コンポジット
マテリアルインデックスやオブジェクトインデックスでマスクする
オブジェクトやマテリアルごとに参照するテクスチャが異なる場合は、オブジェクトインデックスやマテリアルインデックスでマスクする。マテリアルオーバーライドを使ってシェーディングした場合、マテリアルインデックスは取得できない。そこでマテリアルインデックスのみを出力するレンダーレイヤーを作成し、そのレンダーレイヤーからマテリアルインデックスを取得する。
レンダーレイヤーとマテリアルオーバーライドを使う方法
明るい色のレンダーレイヤー・陰色のレンダーレイヤー・マスク用のレンダーレイヤーを用意してノードで合成する。

テクスチャを使う場合
実際はこの球のように単色で塗られることはなく、テクスチャが使われるだろう。 その場合には以下の3つのレンダーレイヤーとテクスチャとを用意しミックスする。
- 明るい色でレンダリングされたレイヤー
- 陰色でレンダリングされたレイヤー
- 影色を指定するマスクレイヤー
マテリアルを設定する際にはマテリアルオーバーライドを使う。 マテリアルオーバーライドを指定すると、そのシーンのすべてのオブジェクトは指定したマテリアルを適用してレンダリングされる。 これを使わないとモデルを複製する必要があるうえ、レイヤーを3つ消費する。

Blender Render では明るい色・陰色を指定するマテリアルに Shadeless を指定すると、余計な影が乗らなくなる。

マスクマテリアルのテクスチャを黒で塗ると、そこに影色を乗せられる。


レイヤーをミックスするノードは以下のようになる。