流体シェイプ シェーダを使用してパーティクルをシェーディングする

流体シェイプ シェーダを使用してパーティクルをシェーディングするには

  1. クラウド(s/w) (Cloud (s/w))パーティクル システムを作成します。詳細については、「nParticle > nParticle の作成(nParticles > Create nParticles)」を参照してください。
  2. パーティクル シェイプでを押し、ポップアップ メニューから新しいマテリアルの割り当て(Assign New Material)を選択します。
  3. 新しいマテリアルの割り当て(Assign New Material)ウィンドウで、 をクリックします。

    流体コンテナ(fluidShape ノード)が作成されます。シーンにはコンテナが表示されますが、レンダーされるのはパーティクルだけです。

  4. コンテナにコンテンツを追加します。コンテンツの追加については、流体コンテナへプロパティを追加するを参照してください。
  5. 流体アトリビュートを変更します。詳細については、流体アトリビュートを変更するを参照してください。
    ヒント:
    • ドロップオフ シェイプ(Dropoff Shape)球(Sphere)に設定して、パーティクルがハード エッジを持たないようにします。
    • 最初は精度(Quality)値を下げてレンダー時間を短くし、必要な場合にのみ値を上げます。
  6. シーンをレンダーします。
  7. (通常のパーティクル シェーダとほぼ同じ方法で)存在時間に基づいてパーティクルの外観を修正します。

    パーティクル サンプラ(Particle Sampler)ユーティリティ(particleSamplerInfo)を作成し、目的のパーティクル単位のアトリビュート(normalizedAge など)を、制御したい fluidShape の任意のシェーディング(Shading)アトリビュートに接続します( + で particleSamplerInfo ノードを fluidShape ノードにドラッグし、接続エディタ(Connection Editor)を使用します)。

    アトリビュート エディタ(Attribute Editor)シェーディング(Shading)ライティング(Lighting)、およびテクスチャ(Texture)セクションに表示されている、fluidShape ノードの任意のアトリビュートに接続できます。その他のアトリビュート(密度スケール(Density Scale)粘度(Viscosity)など)はピクセル単位で評価されないので、particleSamplerInfo では機能しません。

    この方法で、テクスチャの配置、カラー、不透明度などをパーティクルごとに変え、パーティクルの存在時間に基づいて変化させることができます。

    fluidShape ノードのセルフ シャドウ(Self Shadow)をオンにすれば、流体の各パーティクルを内部的にセルフ シャドウイングさせることができます。

    パーティクルからほかのパーティクルにシャドウを投影させたい場合は、レイ トレーシングを使用し、さらにparticleShape の隠しアトリビュートにフラグを設定する必要があります。

    setAttr particleShape1.ignoreSelfShadowing 1
    

    これにより、パーティクルが自身のシャドウ フィーラで計算されなくなります(流体のセルフ シャドウ(Self Shadow)がオンになっているときは、すでにさらに効率的な方法で計算済みです)。

    particleShape はジオメトリを定義するのに使用されるのに対して、流体はシェーダとしてのみ機能するので、レンダーでアクティブになっているレンダリング詳細(Render Stats)は、fluidShape ではなく particleShape のレンダリング詳細です。