《フィールド》とは何か?(3/3)

2019-07-06Cinema 4D by MAXON, フィールド

www.aixsponza.comによるR20新機能解説動画

パーティクルをフィールドとして使用することが出来る。

シーン準備 14:20~

  • 球体ポリゴンオブジェクトと平面ポリゴンオブジェクトを作成。
  • 平面オブジェクトからパーティクルが発生し重力で落ち、球体オブジェクトに当たった時に衝突するようにする。
  • 以下のようにThinkingParticlesをXPressoで組む。

  • 球プリミティブを編集可能に→そうしないとPGravityの[オブジェクト]に指定できない。
  • 平面プリミティブを編集可能に→そうしないとPSurfacePositionの[オブジェクト]にに指定できない。

以下は、使用した各ノードの説明。

PGoupノード(TPスタンダード)

パーティクルはグループ単位で管理する。グループは階層(親子関係)にできる。

  • パーティクルをグループ(PGoup)に割り当てる
  • デフォルトでは、パーティクルはAllグループ(すべてのグループ)←今回はコレ。
  • Thinking Particles設定で、確認できる(メニューの[シミュレート>Thinking Particles>Thinking Particles設定])

PSetDataノード(TPスタンダード)

  • 特定のグループ(パーティクル)のパラメータを設定するノード。セットしたいデータを入力ポートに追加する。
  • 今回は「パーティクル」と「位置」を設定。「パーティクル」にはPBornノードからのパーティクルデータ、「位置」にはPSurfacePositionの位置データをセットアップ。
  • PGet Dataノード(パーティクルのデータにアクセルするノード)の逆。

PBornノード(TPジェネレータ)

  • PStormノードを簡略化したノード。パーティクルの作成は可能だが、使用できるパラメータはPStormノードより少ない。そのため、例えばパーティクルに位置や速度を与える場合にはPSetDataノードを使って操作する。今回は「位置」を与えている。
  • PBornノード単体では、速度パラメータがないためパーティクルはその場にとどまる。PsetDataで速度を与える場合は速度ポートを追加して定義。今回はPGravityでパーティクルに重力を働かせることで動かしている。
  • PBronの使用場面:ノード、PVolumePositionノードとの組み合わせ。

P Passノード(TPイニシエータ)

  • グループ(パーティクル)を別のノードに渡すことができる。パーティクルグループに適用する効果の選択時に使用するので、よく使う。
  • パーティクル(グループ)に対して何か処理をしたい時…グループをP Passノードに割り当て、次にP Passノードの出力ポートの[パーティクル]を別のノード(今回ならPGravityノードとPDeflectorノード)の入力ポートに接続する。

PGravityノード(TP ダイナミック

パーティクルに対し重力や磁力のような力を働かせることが可能。

  • [オブジェクト]←重力の方向を決めるのに必要(オブジェクトをドラッグ&ドロップする。たいていはヌル)
  • [タイプ]は「平面」と「球」がある。普通は「平面」。「球」だとオブジェクトに集まるような動きになる。
  • [強度]…重力の強さ
  • [減衰]…数字をあげるとオブジェクトから遠くなるほど重力は

PDeflector(TPダイナミック)

  • パーティクルはポリゴンオブジェクトのサーフェイスに衝突
  • オブジェクトフィールドにオブジェクトをドラッグ&ドロップして使用。あるいは、今回のように入力に「オブジェクト」ポートを追加して、オブジェクトと接続。

PSurfacePositionノード(TPヘルパー)

  • PBornノードと組み合わせて使用。オブジェクトのサーフェイスからパーティクルを放出する。
  • パラメータの[タイプ]で、ポイントやエッジ、ポリゴンのいずれかを選択可能。
  • オブジェクトフィールドにオブジェクトをドラッグ&ドロップして使用。あるいは、今回のように入力に「オブジェクト」ポートを追加して、オブジェクトと接続。

パーティクルをフィールドとして使用 14:50~

  • 球体ポリゴンオブジェクトに頂点マップタグを追加(すべてのポイントを選択した状態で、メニューから「選択>頂点ウェイトを記録 ]でウェイトを記録。値を「0%」にする。)
  • 頂点マップタグの[基本]タブで[フィールドを使う]にチェックを入れる。[フィールドタブ]が現れる。
  • Thinking ParticlesのAllグループをフィールドリストにドラッグ&ドロップする(メニューの[シミュレート>Thinking Particles>Thinking Particles設定]のAllをドラッグ&ドロップ)。

以下のようにパーティクルが球体に衝突した部分がフィールドとして働いている。

  • モディファイヤレイヤの「ディケイ」を選択。「ディケイ」は頂点マップに足跡を残し、効果のフィールドエリアの外側に効果がある。