Skip to content

カテゴリ: マテリアル基礎

R16 マテリアル基礎01- 基本的なチャンネル

R16 マテリアル基礎

レベル/ 対象者:基礎/CINEMA 4Dを少し使える人。
対象ソフトウエア、プラグイン:CINEMA 4D R16
冨士 俊雄/ gtofuji@gmail.com
章番号 題名 内容、及び関連する章 作成日/注記
025 1_基本的なチャンネル 2015.5.7

Step 1

はじめに

  一般的に、「絵」の品質は多くの設定の組み合わせによって決まります。これは別に3DCGに限ったことではなく、絵画や写真の場合も同じです。どの設定が一番重要か、またどの設定が一番難しいかは、制作者の考えや作品によって大きく変わりますが、大体次のような順番になると私は考えています。1. 照明とカメラ

絵を作る時に一番基本となるのは、「照明」と「カメラ」です。これは、「光」と「目」に対応します。この二つがなければ、そもそも絵は成立しません。

そして、この二つを自分のイメージ通りに設定できれば、他に何の設定もしなくても、十分な品質の絵を作ることができます。

逆に、もしこの二つの設定がおかしければ、他の部分をどんなにていねいに設定しても、いい絵を作ることはできません。

美術の授業では、最初に「石膏デッサン」を行いますが、これは照明とカメラだけで絵を作るための訓練だと言えます。

図025-1

サンプル025a のフレーム0

 

2. マテリアルとアニメーション

照明とカメラの次に重要なのは、「マテリアル(質感、材料)」です。

照明とカメラは、シーン(劇場や舞台)に属するもので、オブジェクト(演技者)の属性ではありません。それに対して、マテリアルは個々のオブジェクトの質感を説明します。

また、映像を作る場合は「アニメーション(演技)」もオブジェクトを説明するための重要な属性です。

マテリアルとアニメーションをイメージ通りに設定できれば、多様な表現が可能になります。映像の場合は、「音」も同じぐらい重要なのですが、これはCINEMA 4Dでは作れません。

美術の授業では、次の段階で「静物デッサン」を行いますが、これはガラスや布、金属、果物といった多様な質感を描き分けるための訓練だと言えます。

図025-2a、b

左は、中央の球体にガラスのマテリアルを(フレーム1)、右は発光するマテリアルを適用した例(フレーム2)。

 

 

3. テクスチャとモデリング

オブジェクトの「ディティール(詳細)」を説明するための補助的な属性が「テクスチャ」と「モデリング」です。これは、言ってみれば演技者が着ている衣装や舞台のセットのようなものです。

ただし、ここで言う「テクスチャ(模様)」は、手で描いたりカメラで撮影したテクスチャに限定します。ノイズやグラデーション等のシェーダで作ったテクスチャは、マテリアルの側に含めます。

また、ここで言う「モデリング」は、特に「細部のモデリング」に限定します。オブジェクトを作って組み合わせること自体は含めません。

テクスチャやモデリングは、リアルな絵を作るために不可欠ですが、「照明」や「マテリアル」に優先するものではありません。

図025-3a、b

左は、中央の球体に画像を適用した例(フレーム3)。右は詳細なモデリングを追加した例(フレーム4)。右の絵のポリゴンを見る(025-3c)

 

この章では、マテリアルマネージャと、よく使うチャンネルについて説明します。

 

 

Step 2

マテリアルマネージャとレイヤ

 CINEMA 4Dでは、マテリアルマネージャを使ってマテリアルを作成し、管理します。マテリアルの基本的な操作方法は次の通りです。 図025-4

1. 新規マテリアルを作るには、マテリアルマネージャのメニューから「ファイル -> 新規マテリアル」を選択します。

また、空いている部分をダブルクリックして作ることもできます。

マテリアルのプレビューをダブルクリックすると、「マテリアル編集」ウインドウが開きます。マテリアル編集は古いインターフェイスですが、マテリアル専用に作られているので、素早く作業できます。

2. マテリアルの名前を変えたい場合は、名前をダブルクリックします。

また、マテリアル編集や属性マネージャで変更することもできます。

3. マテリアルを複製するには、「controlキー」を押しながらマテリアルをドラッグします。

また、普通にコピー&ペーストすることもできます。

4. マテリアルを消去したい場合は、「deleteキー」を押します。

シーンに使われていないマテリアルを消去したい場合は「ファンクション -> 未使用マテリアルを消去」を使います。

5. マテリアルをオブジェクトに適用するには、マテリアルをオブジェクトマネージャに表示されたオブジェクト名の上にドラッグ&ドロップします。

また、エディターのオブジェクトに直接ドラッグ&ドロップしても構いません。

6. オブジェクトに既にマテリアルが適用されている場合、マテリアルをテクスチャタグの上にドラッグ&ドロップすると、リンクが置き換えられます。

7. オブジェクトに適用されているテクスチャタグを選択すると、リンクされているマテリアルがオレンジ色の枠で囲まれます。

逆にマテリアルからリンクされているオブジェクトを調べたい場合は、マテリアル編集の「適用オブジェクト」ページを使います。

8. エディター上で、オブジェクトにはマテリアルのプレビューが表示されますが、これの解像度を上げたい場合や、アニメーションを反映させたい場合はマテリアル編集の「エディタ」ページを使います。

9. マテリアル編集のプレビューの大きさや表示を変えたい場合は、プレビューを右クリックします。

 

マテリアルをグループ分けしたい場合は、「レイヤ」機能を使います。

CINEMA 4Dのレイヤは、オブジェクトやマテリアル、タグ、キー等すべての機能を一元的に管理できますが、特にマテリアルはレイヤ以外に管理する方法がないのでよく使います。

図025-5

 

1. グループを作りたい場合は、まずマテリアルを選択し、マテリアルマネージャのメニューから「ファンクション -> 新規レイヤに追加」を選択します。

すると、マテリアルマネージャにタブが表示され、タブの左上とマテリアルの左上に同じ色が付きます。

あるタブを選択すると、そのレイヤに含まれているマテリアルだけが表示されます。

また、左端にある「全て」タブを選択すると全てのマテリアルが表示され、「レイヤなし」を選択すると、レイヤに含まれていないマテリアルが全て表示されます。

2. レイヤの名前を変えたい場合は、タブをダブルクリックします。

また、レイヤマネージャでレイヤ名をダブルクリックしても構いません。

3. 別のマテリアルグループを作りたい場合は、同じように「ファンクション -> 新規レイヤに追加」を選択します。

4. 新しく作ったマテリアルを既存のレイヤに含めたい場合は、「ファンクション -> レイヤに追加」を選択するか、マテリアルをタブにドラッグアンドドロップします。

また、マテリアルをレイヤマネージャのレイヤ名にドラッグ&ドロップしたり、レイヤ名をマテリアルにドラッグ&ドロップしてレイヤに含めることもできます。

また、あるレイヤを選択した状態で新規マテリアルを作ると、初めからそのレイヤに含まれます。

5. レイヤ名の左にあるカラーボタンをダブルクリックするとレイヤのカラーを変更できます。

 

 

Step 3

カラー

  「カラー」チャンネルは、マテリアルの基本的な性質の一つです。マテリアルには多くのチャンネルがありますが、実は一本の光に注目した場合、その光には「前に進む(透過する)」か「止まる(消える)」か「後ろに戻る(反射される)」かの三つの選択肢しかありません。それに、RGBの色によって結果が変わるとか、透過、反射する時にあるルールにしたがって向きが変わるといった性質を組み合わせて、複雑なマテリアルを表現しているのです。

まず、カラーチャンネルは「ランダムに反射される光」を表現し、拡散反射(ディフューズ)ともいいます。

光は、基本的にはライトから飛んできますが、GI(グローバルイルミネーション)を使っている場合は、周囲のオブジェクト(マテリアル)からも飛んできます。

図025-6

サンプル025bのフレーム0

 

色に関しては、カラーチャンネルが白くても、青い光しか入ってこなければ、青い光しか反射されません。

また、カラーチャンネルが赤ければ、白い光が入ってきても、赤い光しか反射されません。

図025-7a、b

左はライトの色が(フレーム21)、右はカラーの色が最終的な色(絵の色)に影響している(フレーム22)。

 

次に、光がランダムに反射されるといっても、完全にランダムなわけではありません。マテリアルの表面に細かい凸凹があると、光をライトの方に反射しやすくなります。

キャッツアイなどはその極端な例ですが、布やセラミック等自然界に存在する多くのマテリアルもこの性質を少なからず持っています。

この性質を表現するには「オレン・ネイアー」という照明モデルに切り替え、「表面粗さ」の値を大きくします。

図025-8a、b

左は表面粗さが0(フレーム14)、右は200(フレーム15)。

現実世界において、全ての物質はカラーの性質を持っています。必ず設定して下さい。

 

 

Step 4

発光

 「発光」チャンネルも、マテリアルの基本的な性質の一つです。私はカラーチャンネルの説明で「光には三つの選択肢しかない」と書きましたが、発光はこれには含まれません。発光は「何も無いところから光が生まれる」現象です。いきなり光が生まれるので、光が飛んでいく方向は完全にランダムです。つまり、どこから見ても同じ色に見えます。

また、周囲から入射する光には影響されません。

図025_9

フレーム1

図025-10a、b

左はライトなし(フレーム23)、右はライトのカラーが青い場合(フレーム24)

 

現実世界において、全ての物質が発光の性質を持っているわけではありません。しかし、発光するものは小さくても目立ちます。これは発光するものが人間にとって有益だったり危険だったりするからです。

本来なら、発光するものはライトで表現するのですが、複雑な形をしていたり、数が多い場合は発光するマテリアルで表現する方が簡単です。GIを使えば、発光するマテリアルでシーンを照明できます。

絵作りにおいて、発光するマテリアルの働きはライトと同じです。

冒頭に書いたように、ライトはマテリアルよりも重要な設定ですから、そういう意味では、発光チャンネルはマテリアルの中でも最も重要なチャンネルだと言えます。

 

 

Step 5

透過、屈折

 透過チャンネル自体はR12から変わっていませんが、屈折によって自動的に生じる鏡面反射の性質を反射チャンネルで変更できるようになっています。「透過」は、「透過する光」を表現するチャンネルで、マテリアルの基本的な性質の一つです。

透過とは、マテリアルの屈折率が1.0の場合で光の方向は変わりません。背後のオブジェクトが透けて見えるので、網戸やストッキングのようなマテリアルを表現できます。

「屈折」は、屈折率が1.0以上(以下)の場合で、光の方向が変わると同時にフレネルの法則に従って鏡面反射が生じます。これは、ガラスや透明な液体を表現する場合に使います。

図025-11a、b

左は透過するマテリアル(フレーム2)。右は屈折するマテリアル(フレーム3)。

 

そして、透過は基本的な性質の中で一番設定が難しいチャンネルでもあります。

その理由はいろいろあるのですが、大体以下の通りです。

1. 内部が見えるので、内部まできちんとモデリングし、オブジェクトを閉じなければならない。

また、隣のオブジェクトと面が重なると汚くなるので、隙間を開けるか、食い込ませる必要がある。つまり、マテリアル以前にモデリングの段階で難しい。

図025-12a、b

左は内部に不正な面を含むオブジェクト(フレーム15)。右は正しいオブジェクト(フレーム16)。

 

2. 屈折が単独で起こることはなく、必ず反射(カラーや鏡面反射、スペキュラ)が生じる。しかもそれらの割合は、光が入射する角度に応じてフレネルの法則に従って変化する。

  図025-13a、b

左は屈折だけのマテリアル(フレーム3)。右は反射を含むマテリアル(フレーム13)。

 

3. 屈折と鏡面反射が同時に複数回起こるので、絵が複雑になり、どのパラメーターを修正していいのか判らない。

同時に、レンダリングが重くなり、試行錯誤に時間がかかる。

 

4. 簡略化した物理モデルを使っているため、「水が入ったグラス」等を普通に表現できない。

つまり、屈折率は本来物体の内部に指定するものだが、3DCGでは物体の表面に指定している。

その結果、一つの面が三つ以上の物体に接する場合を扱えない。

図025-14a、b

左は普通に作ったオブジェクト(フレーム18)。右は面をずらしたオブジェクト(フレーム19)。

 

5. 透過する距離によって効果が変わる「吸収色」という設定がある。

他のチャンネルでは特殊効果でしか使わないような機能を透過は普通に使う。

図025-15

フレーム20

 

透過する光は、必ずオブジェクトに「入る時」と「出る時」の2回計算されます。さらに、屈折がある場合光は「屈折」と「鏡面反射」の二本に分岐します。つまり、透過のレンダリングは、他のチャンネルよりも格段に重いのです。

特に鏡面反射は、放っておくと無限に計算がくり返され、レンダリングが終わらなくなります。これを防ぐために、CINEMA 4Dでは「レンダリング設定 -> オプション -> 鏡面反射の計算回数」をデフォルトで「5回以下」に制限しています。

しかし、これでも重いので、「オプション -> しきい値」の値を「0.5〜1.0」に上げることをお勧めします。光は屈折や鏡面反射を繰り返すうちに暗くなりますが、光がしきい値より暗くなると、そこで計算を打ち切るようになっています。

図025-16a、b

左はしきい値がデフォルトの0.1、レンダリング時間は88秒。右はしきい値が1.0、レンダリング時間は52秒(フレーム25)。

また、「ぼけた屈折」オプションを使うとすりガラスのような質感を表現できます。ただし、このオプションを使うと光がさらに分岐するため非常に計算が重くなります。

 図025-17a、b

左はぼけた屈折が0のマテリアル、レンダリング時間は35秒(フレーム19)。右はぼけた屈折が20のマテリアル、レンダリング時間は135秒(フレーム26)。

 

現実世界において、全ての物質が透過、屈折の性質を持っているわけではありません。しかし、透明なものは目立ちます。これも透明なものが人間にとって重要だからです。例えば、水や空気は透明です。また、人間の目も透明です。

ですから、透明なマテリアルを作る時には十分に時間をかけてください。

また、透明なマテリアルをリアルに作るには、写真を参考にするのが一番です。

 

R16 マテリアル基礎02- 反射

R16 マテリアル基礎

レベル/ 対象者:基礎/CINEMA 4Dを少し使える人。
対象ソフトウエア、プラグイン:CINEMA 4D R16
冨士 俊雄/ gtofuji@gmail.com
章番号 題名 内容、及び関連する章 作成日/注記
026 2_反射 2015.5.8

 

Step 1

はじめに

 鏡面反射は、R16で大きく変わりました。

まず、R15までの「鏡面反射」と「スペキュラ」チャンネルが消滅し、代わりに「反射」チャンネルが新設されました。この反射チャンネルの内部はレイヤシェーダと同じ作りになっていて、これが非常に作業性を損ねています。大きな問題点は以下の二つです。

1. 鏡面反射やスペキュラを作るのに手間がかかる。

R15までは、鏡面反射とスペキュラにはプリセットがあり、チャンネルを選択するだけで使えました。しかしR16には何もないので、毎回シェーダを作るところから始めなければなりません。

2. 反射チャンネルを複数選択、編集できない。

反射チャンネルの内部はマテリアルごとに違っているので、複数選択、編集ができません。

これらの問題は、いずれ改善されていくと思うのですが、それまでのつなぎとして以下のような対策を考えました。

1. よく使う鏡面反射やスペキュラをプリセットとして登録しておく。

2. 反射チャンネルの「全ての鏡面反射の明るさ」と「全てのスペキュラの明るさ」を複数選択、編集するためのXPressoを使う。

図026-1

サンプル026a

 

Step 2

拡散、鏡面反射

  「鏡面反射」もマテリアルの基本的な性質の一つで、「規則的に反射される光」を表現します。

その規則とは、「入射角と反射角が等しい」ということで、要は鏡の性質です。

鏡面反射は、金属やガラス、プラスチック、液体など、表面がツルツルのマテリアルには必ず発生します。 また、鏡面反射には以下のようなオプションを設定できます。

1. 反射される光の方向をランダムにする。

これは「表面粗さ」で変更します。

原理的に、鏡面反射を粗くしていくと、GIを適用したカラーチャンネルと同じになります。ただし、計算方法が違うので、計算が重く砂目状のノイズが発生します。

したがって、この機能は表面が「ちょっと粗い」金属やプラスチック、塗装面等を表現する場合に使ってください。

図026-2a、b

サンプル026b

左は表面粗さが0(フレーム1)のマテリアル。右は表面粗さが50(フレーム2)のマテリアル。

 

2. 入射角に応じて反射率を変える。

これは「フレネル」で変更します。

フレネルは、光の入射角によって反射率が変わる現象で、同時にその性質を発見した人物の名前です。

現実世界のマテリアルは全てフレネルの性質を持っていて、「正面から見るよりも、斜めから見た方が反射率は大きく」なります。

金属や木材等ではほとんどわかりませんが、透明なガラスやプラスチック、フィルムではフレネルが非常に重要になります。この性質に注意してください。

R15まで、フレネルはフレネルシェーダを使ってマニュアルで調整していましたが、R16では多くのプリセットが入っているので、ほとんどの場合ここから選択するだけで十分です。

図026-3a、b

左はフレネルなしのマテリアル(フレーム5)。右はフレネルありのマテリアル(フレーム6)。

また、フレネルには多くの金属のプリセットも入っています。

金属の場合、色を含めて反射率が変化するので、マニュアルで調整するのは大変なのですが、プリセットを使えば簡単にリアルなマテリアルを表現できます。

図026-4a、b

左はフレネルが金のマテリアル(フレーム9)。右はフレネルが銅のマテリアル(フレーム10)。

 

3. 反射角の方向のランダムさを、さらに縦方向(U方向)と横方向( V方向)で変える。

これは「異方性」モデルを使って表現します。

異方性は、マテリアルが持っている細かい繊維や傷が原因で発生します。場合によっては、結晶構造や髪の毛の束、木目のような構造で発生する場合もあり、現実世界でもよく見られます。

特に、建築やプロダクトの世界では意図的に傷をつけて異方性を持たせた材料を使うことが多く(これをヘアライン仕上げといいます)、このようなマテリアルを表現する場合に使います。

図026-5

フレーム7

 

4. 各設定をテクスチャでコントロールする。

R15まで、バンプやアルファはマテリアル全体に一つしか適用できませんでしたが、R16の反射チャンネルでは反射レイヤや内部の設定(性質)ごとにテクスチャでコントロールできるようになっています。

図026-6a、b

左は表面粗さにストライプ状のテクスチャを適用したマテリアル(フレーム3)。

右は鏡面反射レイヤそのものにマスクテクスチャを適用し、金色の鏡面反射レイヤに重ねたマテリアル(フレーム4)。

 

 

 

Step 3

反射、スペキュラ

 スペキュラも、R16で大きく変わりました。詳細については、前の鏡面反射を参照してください。

 

「スペキュラ」チャンネルは、実はマテリアルの基本的な性質ではありません。

「カラー」、「鏡面反射」、「スペキュラ」は、全て「反射される光」であり本質的には同じです。

カラーと鏡面反射の違いは、反射される方向が「ランダムか規則的か」ですが、これも表面粗さを大きくすると同じになってしまいます。

また、鏡面反射とスペキュラは両方とも規則的に反射される光です。

それでは何が違うのかというと、鏡面反射は全ての光を反射するのに対して、スペキュラはライトからの光しか反射しません。つまり、鏡面反射はスペキュラの機能を含んでいるのです。

これは、カラーがライトの光しか反射しないのとよく似ています。ただし、カラーはGIを適用することでライト以外の光も反射するようになります。

しかし、スペキュラにライト以外の光を反射させる方法はありません。

スペキュラという機能が生まれたのは、30年以上も前の話で、当時はコンピューターの速度が遅く、GIはおろか鏡面反射さえ満足に計算できませんでした。

その当時の技術で、少しでもマテリアルをリアルに見せるための方便としてスペキュラが開発されたのです。

したがって、鏡面反射やGIを普通に使えるようになった現在、スペキュラの存在意義はかなり薄れているといえます。

実際、ほとんどのシーンはスペキュラなしで作れますし、「規則的に光を反射する」という本来の目的でスペキュラを使うことはまずありません。

したがって、CINEMA 4Dを始めたばかりの人は「スペキュラを無視」して構いません。その代わり、鏡面反射をしっかり設定してください。

現在のスペキュラは、本来の目的から離れて「異方性」、「布」、「髪の毛(これはヘアマテリアルの中で使います)」等の「特殊効果」を表現するために使います。

 

まず、「スペキュラのみ」のマテリアルと「鏡面反射のみ」のマテリアルを比較すると、スペキュラのみのマテリアルにはその他のオブジェクトが、鏡面反射のみのマテリアルにはライトが映り込んでいないことがわかります。

図026-7a、b

左はスペキュラのみのマテリアル(フレーム21)。右は鏡面反射のみのマテリアル(フレーム22)。

これは、30年前の流儀が現在もデフォルトとして残っているからです。ライトは光を放射するにもかかわらず、カメラからも鏡面反射からも見えなくなっていて、ただスペキュラだけに反応します。

この問題は、ライトに可視光線を適用したり、ライトの位置に発光するマテリアルを置くことで簡単に解決できます。

こうすると、鏡面反射のみのマテリアルにもライトが写り込むので、もうスペキュラは要りません。

図026-8a、b

左はスペキュラのみのマテリアル(フレーム21)。右は鏡面反射のみのマテリアル(フレーム24)。

 

ところが、異方性などの特殊効果を使うと話が違ってきます。

異方性を計算するために鏡面反射に表面粗さをかけると、現在のコンピューターでも計算がかなり重くなります。

また、ライトの位置に非常に明るく発光するマテリアルを置いて、グラデーションを調整する必要があり、これはシーンに存在するマテリアル全てに影響します。

また、強い光がマテリアル内部に入った時に生じる回折や干渉(猫目石や真珠などのマテリアルで生じる)現象は単純な鏡面反射では再現できません。

このような特殊な状況では、スペキュラを併用した方が設定が楽で、計算が速く、きれいな絵ができます。

ただし、あくまでもメインは鏡面反射で、スペキュラは補助です。つまり、鏡面反射だけで最低限の絵ができるように設定し、足りない部分をスペキュラで補うわけです。

鏡面反射の設定が足りなかったり(ライトが鏡面反射しない等)、不正確であれば(フレネルがかかっていない等)、スペキュラをどう変えてもリアルな絵はできません。

図026-9a、b

左はスペキュラを含むマテリアル(フレーム7)。右は鏡面反射のみのマテリアル(フレーム25)。

スペキュラを細かくコントロールすると、布のような規則的な構造を持ったマテリアルや、メタリック塗装のように何層にも重なったマテリアルをリアルに表現できます。

図026-10a、b

左は布のマテリアル(フレーム27)。右はメタリック塗装のマテリアル(フレーム28)。

 

 

R16 マテリアル基礎03- 凹凸

R16 マテリアル基礎

レベル/ 対象者:基礎/CINEMA 4Dを少し使える人。
対象ソフトウエア、プラグイン:CINEMA 4D R16
 
冨士 俊雄/ gtofuji@gmail.com
章番号 題名 内容、及び関連する章 作成日/注記
027 3_凹凸   2015.5.19

Step 1

はじめに

 この章では、マテリアルの色ではなく凹凸を表現する機能について説明します。

 CINEMA 4Dのマテリアルには、凹凸を表現する機能が「バンプ」、「法線」、「変位」と三種類もあります。これらにはそれぞれ長所と短所があるので、状況に応じて適切な機能を使うようにしてください。

 オブジェクトの凸凹は、基本的にモデリングするものですが、「細かすぎる場合」や「アニメーションさせたい場合」はマテリアルで表現します。

 

1. バンプ
 バンプは、最も古くからある機能で、グレースケール画像を使ってマテリアル表面の「見た目の凸凹」を表現します。オブジェクトの形状は全く変化しません。
 簡単に細かい凸凹を表現できるので現在でもよく使います。

  図027-1a、b
サンプル027a
左はバンプを適用したマテリアル(フレーム1)。右は元になるバンプテクスチャ。

 

2. 法線
 法線は、バンプを拡張した機能で、RGB画像を使ってマテリアル表面の「見た目の凹凸」をより正確に表現します。オブジェクトの形状は全く変化しません。
 ただし、法線チャンネル用のテクスチャを作るのが面倒なので、ほとんど使いません。

  図027-2a、b
左は法線を適用したマテリアル(フレーム2)。右は元になる法線テクスチャ。

 

3. 変位
 変位は、バンプや法線と異なりオブジェクトの表面に「本当の凸凹」を作る機能です。
 オブジェクトを細かく分割する必要があり、重いですが、その分リアルなオブジェクトを表現できます。

  図027-3a、b
左は変位を適用したマテリアル(フレーム3)。右は元になる変位テクスチャ(バンプテクスチャと同じ)。

 

 

Step 2

バンプ

 木目、革や紙等細かくてランダムな凸凹は、ノイズシェーダや実写画像をバンプに適用することで十分に表現できます。

 複雑な形状のオブジェクトに細かくてランダムな実写画像を貼る場合、「立方体」投影を使うときれいに貼れます。
 また、ノイズシェーダを使うとつなぎ目や繰り返しのないテクスチャを表現できます。

  図027-4a、b
左はノイズシェーダをバンプに適用したマテリアル(フレーム4)。右はシェーダのプレビュー。

 

  図027-5a、b
左は皮の画像をバンプに適用したマテリアル(フレーム5)。右は元になる画像。

 

 

Step 3

法線

 法線は、少ないポリゴン数でリアルな外観を表現できるので、ゲームの世界で多用されています。
 しかし、法線を使うには実際に凸凹をモデリングする必要があり、CINEMA 4Dならいくらポリゴンが多くてもそのままレンダリングできるので、わざわざCINEMA 4D内部で法線テクスチャに変換することはありません。

 したがって、CINEMA 4Dで法線を使うのは以下のような場合に限られます。

3a. タイルの目地等、既にある法線テクスチャを使える場合。

3b. ZBrush等他のソフトでモデリングした情報を受け取る場合。

 ただし、可能であれば普通にモデリングしたり、変位を使ったほうがいい結果が得られます。

 

法線チャンネル用のテクスチャを作るには、実際にモデリングした凸凹をベースとなるオブジェクトと比較し、その差分を「テクスチャを焼成」タグを使ってRGB画像の形で記録します。

図027_6
サンプル027b
テクスチャを焼成タグを使って法線テクスチャを作る。

 

 

Step 4

変位

 変位チャンネルはマテリアルの機能ですが、「オブジェクトの形状を変える」という意味ではモデリングツールやデフォーマとしての働きも持っています。
 また、モデリングツールやデフォーマの場合と同じように、ポイントを動かして形状を変えるので、ポリゴンの分割数以上に細かい凸凹は表現できません。

 変位も古くからある機能です。昔はオブジェクトを十分細かく分割できず、使える状況が限られていましたが、CPUやOSが64bit化し、メモリーを大量に使えるようになった現在では手軽に使えます。

 変位を使う場合、シェーダであれ実写画像であれ変位テクスチャを用意する必要があります。そして、それをアルファチャンネルに適用すれば、簡単に変位した部分のマテリアルを塗り分けることができます。
 これも変位の利点の一つで、モデリングで形状を作る場合、ある部分のマテリアルを塗り分けるには、また別の作業が必要になります。

 図027-7
変位テクスチャをアルファチャンネルにも適用して、複数のマテリアルを重ねたオブジェクト(サンプル027aのフレーム6)。

 また、変位にはさらに三つのオプションがあります。

3a. 初期の変位は、バンプと同じようにグレースケール画像を使って上下の凸凹だけを表現していました。
 これに対して、現在の変位では法線と同じようにRGB画像を使って斜め方向の凸凹を表現できるようになっています。
 ただし、これも実際に凸凹をモデリングして差分を取る必要があり、面倒なのでほとんど使いません。

図027_8
サンプル027c
テクスチャを焼成タグを使って変位テクスチャを作る。

 

3b. 初期の変位は、オブジェクトのポイントをそのまま変位していました。
 これに対して、現在の変位にはレンダラーの内部でポリゴンを細分化する機能があります。
 これは「SPD(サブ・ポリゴン・ディスプレイスメント)」と呼ばれ、より多くのポリゴンを軽く扱えるのですが、バグが多いので使わないことをお勧めします。
 その代わり、SDS(サブ・ディビジョン・サーフェイス)で同じことができます。

  図027-9a、b
サンプル027d
左は元になる粗いオブジェクト。右は変位テクスチャ。

 

    図027-10a、b
左はSPDを使って細分化したオブジェクト(フレーム1)。右はSPDの代わりにSDSを使って細分化したオブジェクト(フレーム2)。

 

3c. 初期の変位は、マテリアルのチャンネルでだけ使えました。
 これに対して、現在の変位はデフォーマの中でも使えます。

 デフォーマには、「エディターで変形を確認できる」、「減衰機能を使える」、「XPressoで操作できる」等いろいろな利点があるので、現在ではほとんどの場合デフォーマの中で変位を使います。

 図027-11
SDSで細分化し、変位デフォーマで変形させたオブジェクト(フレーム3)。

 

 変位デフォーマにはSPDがないので、代わりに「SDS(サブディビジョンサーフェイス)」を使います。
 SDSはエディターとレンダラーで異なった分割数を指定できますが、レンダラーで細かめに分割しておくとSPDと同じように軽く多くのポリゴンを扱えます。

 また、変位デフォーマにはRGBの変位テクスチャを使うモードがないので、3a.の機能を使いたい場合は変位チャンネルを使うようにしてください。

 また、MoGraphの「シェーダ」イフェクターをデフォーマモード(ポイント)にすると、変位デフォーマと同じように使えます。
 シェーダイフェクターを使うと、「ディレイ」イフェクター等他のイフェクターの効果を重ねることができます。

 

R16 マテリアル基礎04- SSS:内部拡散反射

R16 マテリアル基礎

レベル/ 対象者:基礎/CINEMA 4Dを少し使える人。
対象ソフトウエア、プラグイン:CINEMA 4D R16
冨士 俊雄/ gtofuji@gmail.com
章番号 題名 内容、及び関連する章 作成日/注記
028 4_特殊効果 2015.5.13

Step 1

SSS:内部拡散反射

 内部拡散反射は、発光チャンネルの中で使う特殊効果シェーダです。ただし、独立したチャンネルと同じぐらい重要です。

内部拡散反射は、基本的にはカラーチャンネルと同じように働きます。つまり、外部から来た光を「ランダムに反射」します。したがって、反射される光は外部から来た光の色や強度に影響され、光が来なければ何も見えません。

内部拡散反射とカラーチャンネルの違いは、カラーチャンネルが光を外側にしか反射しないのに対して、内部拡散反射では一部の光を内部に透過し、内部でもランダムに反射することです。

そういう意味では、ぼけた屈折と鏡面反射を組み合わせて似たような表現をすることもできますが、内部拡散反射の方がずっと軽くきれいに表現できます。

この性質は非常に一般的で、実は金属以外の全ての物質は多かれ少なかれ内部拡散反射を持っています。私たち人間の体や、木材、布、プラスチック、セラミック等、薄くして強い光を後ろに置くと光が透けて見えるのが判ります。

特に内部拡散反射が多い人間の体やワックス、真珠等はこの効果を使わないとリアルに表現できません。

図028-1a、b

サンプル028a

左は内部拡散反射を指定したワックス(ロウ)のようなマテリアル(フレーム1)。右はそれをロウソクで照明した例(フレーム2)。

 

また、GIを使えば発光するマテリアルで内部拡散反射を表現することもできます。

 図028-2

フレーム3。

 

また、内部拡散反射をベースに、見る角度によって色が変わる複雑な鏡面反射を重ねれば真珠のマテリアルを表現できます。

 図028-3

フレーム4。

 

 

Step 2

背後からの照明

  背後からの照明は、発光チャンネルの中で使う特殊効果シェーダで、内部拡散反射に似ています。違うのは「内部」があるかないかです。

つまり、背後からの照明には内部がなく、すぐ裏側に「ランダムに反射」してしまうのです。

内部があるかないかという点で、内部拡散反射は閉じたオブジェクト(立体)に適用するマテリアルで、背後からの照明は開いたオブジェクト(平面)に適用するマテリアルだといえます。

実際、内部拡散反射を開いたオブジェクトに適用しても働きません。また、背後からの照明を閉じたオブジェクトに適用すると、前の面が後ろの面の影になります。つまり、正常に働きません。

例えば、ランプシェードのようにライトの周囲に置く開いたオブジェクトで、ライトからの光や影を裏側に出したい場合には背後からの照明を使うといいでしょう。

  図028-4a、b

左はカラーチャンネルのみのマテリアルを適用したランプシェード(フレーム5)。右は同じマテリアルの発光チャンネルに背後からの照明を追加した(フレーム6)。

ただし、背後からの照明は古い機能なのでGIに対応していません。GIの光を裏側に出したい場合はオブジェクトに厚みをつけ、内部拡散反射を使ってください。

 

 

Step 3

アルファ

 アルファチャンネルは、マテリアル全体に働くマスクで、使い方はPhotoshopのアルファチャンネルと同じです。

アルファを使うと複数のマテリアルを重ねられるので、非常によく使います。

下のマテリアルでは、ノイズシェーダをアルファチャンネルに適用してメタルペイントをランダムにはがし、アルミの上に重ねてあります。

図028-5

フレーム54。

 

さらに、下のマテリアルではオブジェクトの角だけをハゲさせるために、まず角のエッジを選択し、スプライン化しました。

次に、特殊効果の「プロクシマル」シェーダを使ってこのスプラインの周辺にマスクを生成し、ノイズで形をランダムにしました。

図028-6

フレーム51。

 

さらに、下のマテリアルでは中央の球体に突起を追加し、特殊効果の「アンビエントオクルージョン」シェーダを使って突起の先端にマスクを生成し、ノイズで形をランダムにしています。

図028-7

フレーム52。

 

 

Step 4

その他のチャンネル

1. 拡散

拡散チャンネルは、「カラー」、「発光」、「スペキュラ」、「鏡面反射」の4種類のチャンネルに働くマスクです。例えば、マテリアルの表面がハゲたり、サビたりすると、これらの性質が同時に失われます。

拡散がなくても、各チャンネルに同じテクスチャを入れれば同じマテリアルを表現できますし、実際R7まで拡散チャンネルはありませんでした。しかし拡散チャンネルを使えば、一枚のテクスチャでこのような表現ができます。

基本的なチャンネルではありませんが、マテリアルの微調整によく使います。

ただし、拡散チャンネルでマスクすると単に黒くなるだけで、その部分に下のマテリアルやサビのマテリアルを見せることができません。

したがって、明確にハゲやサビを表現したい場合は、同じマスクをアルファチャンネルに入れて別のマテリアルの上に重ねてください。

 図028-8

フレーム53。

 

2. 環境

環境チャンネルは、「鏡面反射」の代用品で、そういう意味では「スペキュラ」に似ています。

スペキュラはライトだけを「規則的に反射」しますが、環境は光の計算を全くせず、カメラの位置に合わせてそれらしく環境テクスチャを貼ります。

現在フォトリアルな絵を作るために環境を使うことは全くありませんが、次のようなケースではよく使います。

2a. モデリングの際にオブジェクトの形状を確認する。

図028_9

サンプル028b

 

2b. フライングロゴ等で、絵をシンプルにするために使う。

鏡面反射を使うと、周囲のオブジェクトが映り込んで読みにくくなる。

図028-10a、b

サンプル028c

左は環境で鏡面反射を表現したマテリアル(フレーム1)。右は普通に鏡面反射を使ったマテリアル(フレーム2)。

 

3. 霧

霧チャンネルは、オブジェクトの内部に霧を発生させます。この霧は環境オブジェクトの中にある霧と同じで、距離によって指定した色を他のオブジェクトのマテリアルに重ねます。

20年前まではよく使いましたが、濃度に変化をつけられないとか、透明なマテリアルをうまく扱えないなどの問題があり、現在では全く使いません。

霧を作りたい場合は、PyroClusterやサードパーティー製のボリュームシェーダーを使うようにしてください。

 

4. グロー

グローチャンネルは、3Dではなく2Dのポストイフェクトで、オブジェクトの周囲に光をにじませることができます。

15年前まではよく使いましたが、透過や鏡面反射に対応していない等の問題があり、現在では全く使いません。

グローをかけたい場合は、特殊効果の「グロー」や、サードパーティー製の3Dグローを使うようにしてください。