モア・セルシェーダ

 えー。
 ブログの更新がすっかりご無沙汰していたわけですが…。
 創作活動のテンションが落ちてて小説やるくらいがやっとでした。

 そんでまあ、小説のほうもひと段落したのでぼちぼち3Dとかも再開しようかなーと思ってリハビリ中。LightWave3DでキューティMIMIのミミを弄ってセーラー服とか着せて遊んでました。
 あれってわりとあっさりめの作り込みでセルシェーダのトーンもわりとぱきっと出る感じにしているんですが、ふと「影とかトーンが落ちてるところの彩度が低いなあ」というのが気になりました。まあ、以前から気にはなっていたんですが。
 いつもはレンダリングしてからフォトショでソフトライトとか入れて暗い所を持ちあげてたりしていたんですが、明るい所もそれなりに影響を受けてしまうのでなんとかならないもんかと。
 ディフューズレイヤーだけ取り出して加工するとかいう手ももちろんありますが、セルシェーダ自体でそういう加工してしまえばフョトショでの加工も悩まずに済むわけです。…まあ、あんまり悩んだりもしてませんが。

 SuperCelShaderには以前から思う所もあったので、unRealのセルペイントとか入れてみたのですが…なんかスペキュラの仕上がりが気に入らなかったので、やっぱりSuperCelShaderベースで発展させたいなぁと思って、SuperCelShaderを再現しつつオレ的な要素を加えようとシェーダプラグインを作り始めました。
 そんでできたのがこれ。

画像

 モデル自体はシャイニングガールことAKIたんなので目新しくはないですが…シェーダで肌と髪の暗い所の彩度を持ちあげて、レンダリング段階でわりと意図した色みになってます。
 ライトは平行ライト1コだけで、ラジオシティは入ってません。

 オレセルシェーダ(BA CelShader)のプロパティ。
画像 SupeCelShaderみたいにゾーンが4つあります。4つで十分な人なのでシンプル(unRealみたいにカラーバーを作るのが面倒だっただけとも言うね)。
 違うのは、「Mode」っていう項目と、各ゾーンに「Color」っていうプロパティがあること。あと、数値を変更するとその場で再レンダリングします。

 肝となるカラーモード。これらはソースカラー(テクスチャ)に対して操作を行います。
画像 NoneはSuperCelShader互換で、あとは「色相・彩度」とかフョトショでお馴染みのレイヤー描画モードが並んでます。まあ、ちょっと結果が気に入らないのもあるけど。Colorはフョトショの「カラー」描画モードのように、計算されたディフューズを明度にしてHSYで色を置き換えるので、いちばんドラスティック。

 いくつかどんな感じになるかのサンプル。

通常の描画。
画像

SuperCelShader互換。
画像
互換といいつつ、結果は完全には同じではないです。トーンの付き方はほぼ再現してるけど、色みは少しダイナミックレンジが上がった感じになるっぽい。

Hue-Satを適用。
画像
画像
暗い部分の彩度を持ちあげて、色相をほんのり赤方向にシフト。ゾーンのカラー値が不思議な感じだけど、R,G,Bの各チャンネルカラーが「色相・彩度」の色相、彩度、明度に対応していて、128を中心として数値を変更します。ちょっと慣れが必要だけど、普通はそんなに大きく変更したりはしないはずなので、面倒なので特にUIをこさえたりはしてません。(どうせ使うの自分だし。)

Softlightを適用。
画像
画像
暗い部分にマゼンタを入れてみた。

上記と同じパラメータでHardlightを適用。
画像
色の付き方が濃くなったね。

さらに同じパラメータでMultipleを適用。
画像
これも色の付き方が濃くなりました。

AKIで本家SuperCelShaderとBA CelShaderの違いを比較。
画像画像
肌(唇)と髪は暗いゾーンで彩度を上げて赤みにシフト、っていうのは大体同じ(以下の設定も変えてません)。目には暗いところに青っぽいシアンをAddで加えてます。

おなじカットをカメラ引いたショット。
画像画像
ウェストラインとか腋の下辺りの暗い部分の差がよくわかりますな。明るい部分もより明るくなってるけど…。

違うカット。
画像画像
左側だとちょっと彩度いじりたくなるけど、右側ならまあいいやって感じになるw


ミミにもオレセルシェーダを適用してみた。
画像
SuperCelShader(左)のほうが浅黒く見える(汗)
これは髪と肌と瞳と制服の白い部分に主に加算系のセッティングをしています。(下は肌の設定)
画像
スペキュラーの計算はあまり本家を意識してません。基本的には標準的なBlinn-Phongで計算してるだけ。パラメータはそれなりだけど、brightnessのかかり方とかはあまり似せてません。オレシェーダのほうがシャープにテカるので、SuperCelShaderは普通にPhongかも…。


 このセルシェーダを使えば魔法のようにレンダリングが美しくなるっていうわけじゃないけど、目的通り暗い部分の色み調整は十分機能してるしSuperCelShaderの置き換えで使う程度のものにはなったので、セルシェーダをいろいろ改良する基本として使っていこうと思ってます。

あと対応していきたいのは半透明とか反射とかラジオシティかなぁ。

リハビリはもうちょっと続けるけど、その後何作るかは未定…。

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント