Cinema4Dメモ

Cinema4Dという3DCGソフトに関するメモ書きです。

BlenderでSSSの設定

2020-04-24 11:57:04 | Cinema4D
そういうわけで、BlenderでSSSの設定をしていきます。なんかもうCinema4Dと関係なくなってきてます。
下の画像では「Subsurface」の値が0なので効果発動前です。
「Subsurface Color」は赤にしています。
「Subsurface Radius」の3つの値を開かずに表示するため「Vector Curve」ノードを繋いでます。その3つの値はデフォルトでは1.0、0.2、0.1になっています。R、G、Bに対応しているとかどこかに書いてあった気がしますが、対応している気がしません。
顔色悪い感じですね。

「Subsurface」を0.2にしてレンダリングすると更に顔色が悪くなりました。
髪の毛のオブジェクトの影響を受けているらしいです。

「Subsurface radius」の値を0.1、0.2、0.2に変更するといい感じになりました。

しかし、目の上の二重まぶたの黒いラインが赤に変色してる・・

よく考えたら半透明性のオブジェクトでないのでSSSにこだわる必要ないんじゃねって思って単にカラーを重ねてみました。
「Add」→「Color」→「MixRGB」でノードを追加し、テクスチャの画像に赤の色を重ねました。「Blending Mode」は「Multiply」にしました。
これで良くね?って感じですが、顎の下の陰影とか変わっちゃう

Cinema4D+Redshiftrender→Blender(Cycles)_その1_マテリアルの色合わせ

2020-04-24 09:53:57 | Cinema4D
そういうわけで、BlenderのCyclesでレンダリングしてみたくなり、データをFBXで持っていきました。

やってみたところ、各マテリアルの色が明るく表示されてしまうことがわかりました。
上の画像はかなり調整したものです。それでもまだ合わせきっていませんが。
まずバックグラウンドのHDRIの露出が読み込んだままだと明るすぎて、それぞれ暗めにしています。
そしてマテリアルの色の値は16進数でコピペしてBlenderのマテリアルに持っていきました。
(Cinema4Dが色を0-255の値で表現するのに対して、Blenderは%表示だから面倒くさい。Cinema4DもRGBなら%表示にできるがHSVは出来ないので16進数の方が便利death。値を一回コピペするだけで済むからね)


そしてBlenderの方でカラーの設定をしていきます。でも下の画像のように色が合いません。(Cinema4D側で値をコピーするときにRedshiftの「リニアによる数値」にしてその値をコピペしても更に異なる結果になります)
仕方ないので「Gamma」ノードを挟んで調整する羽目に・・・

「Gamma」ノードは下の画像の「Add」→「Color」→「Gamma」です。
それで与えるGammaの値は1.4~1.5ってところです。
上の例ではスカートの表裏で色が違うマテリアルの設定もしているので「Mix」ノードと「Geometry」ノードを接続しています。「Geometry」のBackfacingを使うんだね。

画像のテクスチャの場合も同様な感じです。


しかし、なにか根本的なところを見落としているのかも。
最終的なレンダリング画像に対して操作すればいいのかも
というわけで、結局よくわかんないけど、肌のSSSの設定は実に謎でした。

フェリスたん その12

2020-04-21 08:47:25 | Cinema4D
腰のリボンとか腕の袖とか作りました。
お腹の青いXのパーツは紐なのかお花のマークなのかよくわからない・・・
webでいろいろな人の描いた作品見ても解釈がそれぞれのようで。

それで、Cinema4Dの新バージョンであるS22というのが発表されたようです。
どうやら自動UV展開機能がすげーらしい。
↑のリンク先を読むとR21永久ライセンス保持者にもS22に相当のものを提供と書いてあるがアップグレードが必要なんだろうな。
吾輩はBlenderに移行中なので関係ないdeath

XPressoを使って眉毛のバリエーションをUVのオフセットで実装する

2020-04-19 01:07:52 | Cinema4D
そんなわけで、フェリスたんの開発作業は少しづつ進んでいます。
ここ数日は肩とか服とか作ってました。
(男です)

というわけで、眉毛のバリエーションを何種類か描いてXPressoで快適に切り替えられるようにしました。
↓フツーバージョン


↓普通バージョンその2


↓顔面蒼白ってか困り顔


マテリアルタグでUVのオフセットのUオフセットの値をいじると横方向に、Vオフセットの値をいじると縦方向に動くんだけど、VがVertical(垂直の、縦のとか言う意味)のVとおぼえておけばOK。それをXpressoで縦横同時にコントロールします。

まず何のオブジェクトでもいいけどここではヌルを作って作業します。
作ったヌルにXPressoを付けます。オブジェクトを右クリックして「プログラミングタグ」→「XPresso」です。XPressoタグをダブルクリックしてXPresso編集ウインドウを開きます。
そしてユーザデータを作ります。

名前は区別が付けば何でもいいんで、ここでは「mayuge」にしました。
そして「データタイプ」を「整数」、「インターフェイス」を「ボックスとスライダ」、値の最小と最大を「最小」0、「最大」1にしました。これから作るスライダーは0、1、2の値を持てるっつーことになります。OKを押してウインドウを閉じます。


次に「ヌル」のオブジェクトをXPressoウインドウにドラッグ&ドロップします。
ノードが作られます。


次にノードの右上の赤い部分をクリックして出力ポートを作ります。情報の出口になります。左上の青い部分をクリックすると情報の入口であるところの入力ポートを作ることが出来ます。
話を戻すと、赤い部分(赤耳)をクリックするとメニューが開き、その中の「ユーザデータ」を選んで、さらに「mayuge」をクリックします。


次にXPressoウインドウ内の何もない場所を右クリック→「新規ノード」→「XPresso」→「計算」→「マップ変換」でマップ変換ノードを作ります。

そしたら情報を最終的に受け取るマテリアルタグをドラッグ&ドロップします。
目的のマテリアルタグがどれなのか間違えないようにしましょうね。


マテリアルタグの入力ポートを開きます。「オフセットU」と「オフセットV」を作ります。混乱を避けるためにマテリアルタグをもう一個作ってUとVで分けて作業してもOKです。


「マップ変換」ノードをもう一個用意します。同じように作ってもいいし、既存の「マップ変換」ノードをCtrlキーを押し乍ドラッグ&ドロップすると同じものが作られます。
現在の値を確認するための「結果」ノードもあると便利なんで用意しましょう。
XPressoウインドウ内の何もない場所を右クリック→「新規ノード」→「XPresso」→「一般」→「結果」death


「結果」ノードは3個あるといいので増やしてね。
そして各ノードのポート同士をワイヤでつなぎます。○から○にドラッグ&ドロップすればいいんじゃよ。

長げーな。もうすぐ終わります。
まずオフセットVから
「オフセットV」につないでいる方のマップ変換ノードを選択して中身をいじっていきます。下の画像の画像ビューアーの赤い数字がユーザデータのスライダの値なので、1のときだけオフセットVは変化するってこと。2になると元の値に戻ります。
出力の上限の値がなんでマイナスなんだろう?ってことなんですが、UV座標系に対して画像の方を動かしているんです。
イメージできますでしょうか?私は毎回老いた頭をフル回転させて考えてます。

次はオフセットのUです。1の時は変化なく2のときだけ動くんだよね。
1の時は縦に動くだけで横方向には動かないからね。縦(V)と横(U)で分けて考えます。

動くようなったら、位置の微調整をしましょう。「出力の上限」の値をいじって調整してください。
ユーザデータのスライダはヌル(ユーザデータを設定したオブジェクト)を選択すると属性マネージャに表示されます。HUD化すると便利です。
HUD化したらHUDを右クリックして、開いたメニューの「表示」→「常に」にしておくと良いでしょう。

ーおわりー

フェリスたん その9

2020-04-15 01:55:15 | Cinema4D
そういうわけで、テイクシステムでフィジカルレンダラーとRedshiftレンダーを行ったり来たりしながら作業していますが、だんだんRedshift一本で行ける気がしてきました。というかRedshiftの方が温かみのある絵が出せる気がします。

フェリスたんの作業は顔のテクスチャを描いてみたり、アゴからほっぺたにかけてのラインを修正してみたりしました。よく観察するとアゴがかなりとがってて細いんです。
更に肌の部分にSSS(サブ・サーフェス・スキャッタリング、Subsurface Scattering、内部拡散反射)を適用。
マテリアルの「発光」チャンネルにシェーダーを追加します。「特殊効果」の中にあります。

SSSは半透明の物体の表面から内部に入り込んだ光が奥で拡散し、表面に戻ってくる現象を表現するので、色は赤っぽい色にしました
そして少し難解なのが効果のかかり具合を調節するためのパラメータで、「強度」というのがあちこちにありますがこれらは関係なくて、下の画像の「V」だけが効くようです。今回は20%にしてます。※補足 別データで確認していたところ、やはり「V」の下の「強度」で効き具合をコントロールするようです。でも状況によるのかな。
「パスの長さ」はよくわからん。多分表面からどのくらい内部に入ってから拡散の計算をするのかってことだと思います。

そういうわけで、結構可愛くなったね~^^
↓これはSSSあり

↓これはSSSなし


ライティングにはネットで無料で公開されているHDRI画像(室内)を使用しています。
↓HDRIはここからダウンロードしました。

HDRI画像をRedshiftのRS Dome Lightに適用するだけです。
明るすぎるなって時は「Exposure」で多少調整できます。

画像の切り抜き

2020-04-14 14:53:37 | Cinema4D
そういうわけで、まつ毛と眉毛は顔面のポリゴンの一部を分離してそれに画像を貼っつけて余分な場所は透明にする方法で作っています。いつもいつもやり方を忘れて発狂するのでここに記録しておきます。

まず、完成イメージ

ソロツールでそのポリゴンだけ表示するとこうなっています。

2つのポリゴンオブジェクトを選択して、「ソロビューシングル」してます。複数のオブジェクトでも出来るって今知った^^

そしてBP-UV Edit画面でUV編集だ

3Dビューでカメラアングルを調整して、ポリゴンが歪みなく大体正面から見えるようにします。そして「UVマップ」→「投影法」→「正面」でUVを整えました。

そして「ペイントセットアップウィザード」アイコンクリックしてテクスチャファイルを作って、背景レイヤーとして真っ白で塗りました。この色を使って後で切り抜くんだね。
眉毛は好きな色で描きます。 尚、左上1/4しか使ってないのは、眉毛の形のバリーションを作って、UVの値で切り替えできるように死体からdeath
それにしてもこのBodyPaint3Dは操作性が最悪で毎度のことながら気が狂いそうになりますね。

マテリアルを作って画像を読み込みます。
カラーチャンネルに読み込むのは特に気にすることはありません。フツーでOKです。


問題なのは「アルファ」の方で、まず、今回は画像の「アルファチャンネル」は使いません。面倒なので。
マテリアルの「アルファ」チャンネルは使います。ややこしいね。

そして「アルファ」チャンネルに同じ画像を読み込みます。
「切り抜く色」は白です。わざわざ白でレイヤーを塗りました。
「切り抜く範囲」はグレーにします。アンチエイリアスで茶色で描いた眉毛の周辺部分に白っぽいグレーのピクセルがあってこいつを消すためのものです。このグレーの明るさは必要に応じて後で調整します。
「アルファチャンネルを使う」はチェックしません。画像にはアルファチャンネルを作ってないからね(^0^)



これでCinema4Dの標準レンダラーとフィジカルレンダラーならOKのはずです。
ただしRedshiftRenderでこのマテリアルを使い回す場合はCinema4Dと何かが逆みたいなので上の画像の状態に追加して「反転」にチェックを入れる必要があります。
※本当はRedshiftのマテリアルで切り抜きをしてみたかったけど、まだわかんない

RedshiftRenderでそのままレンダリングした場合
反転にチェックを入れると↓
他にも「床」や「フィジカルスカイ」や金属のマテリアルなんぞはRedshiftで使おうとすると使えないのでRS Dome Light やRedshiftのマテリアルを用意して切り替える必要があります。
次は「テイク」を使ってレンダラー切り替えと付帯(マテリアルの差し替えやレンダラー依存機能の切り替え)作業を一発で行う方法をご紹介します。