Cinema4Dメモ

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

3Dプリンターで破損した部品の代替品を作りました

2020-04-29 23:32:34 | その他
そういうわけで、経年劣化で割れてしまったプラスチック製部品(トイレットペーパーホルダーを棚板に固定する奴)を作りました。
最近、老眼が酷く手元がよく見えないんで物差しで寸法を測るのも一苦労。
注意点としては、各オブジェクトのパーツは、しっかり互いを食い込ませること。そして、「ブール」オブジェクトで「AとBを合体」にしてオプションの「一体化」ってとこでしょうか。「高品質」はいつもチェックを入れている気もします。
それで、Cinema4Dには「ブール」の他に「一体化」オブジェクトってのもあるんですが、こっちでも行けるのかなと思ってSTLに書き出してSimplify 3Dで開いてみたけど、交差部分が空洞になっているのでだめです。
やっぱブールで地道に一体化していかないといけないみたいです。オブジェクトの数が増えると面倒くさい。

↓はSimplify 3Dの画面です。オーバーハング部を支えるサポート材がわかると思います。


そしてLEPTON2でプリント!!
昨年の8月に使ったきりホコリを被っていたんですが、多忙すぎてヒーテッドベッドの水平出しもせずにいきなり印刷開始。
なんとノートラブルで出力できました。えらい!がんばったね~って褒めてあげました。

STLデータ化する際のコツとしてはヒーテッドベットに接地する「最初の面」の面積をしっかり確保することだと思います。土台が大事です。必要ならオブジェクトを分割して出力し、最後に接着するのも有効です。


オーバーハング部分を支えるサポート材はペリペリと剥がれます。

本来のパーツの機能を完全には再現していないのでガッチリと固定できないのですが、まあいいか。


画像で切り抜き(Blender)

2020-04-24 15:15:05 | Blender
そういうわけで、Cinema4Dからデータを移行してセットアップする際に眉毛の画像の余分な箇所を切り抜く必要があります。Cinema4Dとはやり方が違うので記録します。
眉毛の画像の眉以外の部分は白で、白のカラーで切り抜くという処理になります。
左から3番目のノード、テクスチャ画像を読み込んでいるノードから2つに分かれ、一方がPrincipled BSDFノードに、もう一方がMixShaderノードのFacにつながっています。そしてMixShaderノードの一番下のポートにTransparent BSDFノードを接続しています。
しかし↑のノード構成でなぜ切り取りできるのか謎
Webの情報を元にいろいろいじってたら出来たんだけど。
Blenderのバージョンは2.82(Web情報の多くが2.8Betaと思われるけど、2.82に至る過程で変更になっている部分があってそのとおりには出来ない。「ブレンドモード:アルファクリップ」とかない)
テクスチャ画像は↓
アルファチャンネルは無し

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を右クリックして、開いたメニューの「表示」→「常に」にしておくと良いでしょう。

ーおわりー

RedshiftrenderのマテリアルとCinema4Dのマテリアルでカラーが一致しない問題

2020-04-17 21:06:38 | Cinema4D&Redshiftrender
つーわけで、フェリスたんのスカートの表裏で色を変える件でスカートのマテリアルをRedshiftマテリアルに変更しましたが、Cinema4Dのマテリアルで設定した色のHSV値と同じ値を指定しても色味が全く異なるっつー事態に遭遇ッ!

全く違うので困りましたが。
色々試行錯誤したけど結局謎のアイコン(ガンマカーブを示している?)をクリックすると別の値に変化。リニアワークフローと関係するんだろうって感じです。




この状態で最初入力した数値をもう一度指定すると望んだ色になりました。

わぁーい!よかつたね





Redshiftrender使ってオブジェクトごとの再分割

2020-04-17 14:32:36 | Cinema4D&Redshiftrender
Redshiftrender使うと、オブジェクト単位で簡単にテッセレーション(サブディビジョンサーフェスかけること)かけることが出来るつーことを知りました。毎日新発見。
Cinema4DのSDSオブジェクトだと数が増えると管理が面倒だからなー。状況に応じて併用するようにするといいんじゃないでしょうか。
Redshift Object タグをオブジェクトにくっつけて(オブジェクトマネージャでオブジェクトを右クリックして「Redshiftタグ」→「Redshift Object」death。



上の画像の例ではフェリスたんのひらひらのスカートにRedshift Objectタグで個別に再分割して滑らかにひらひらさせています。