次の方法で共有


複製と共有 (Direct3D 9)

複製パラメーター

複製には次の制限があります。

  • 複製は元の効果のプールを継承します。 「共有パラメーター」セクションを参照してください。
  • 複製は、元の効果の手法、パス、パラメーター、注釈 ( ID3DXEffect で追加されたすべての注釈を含む) を継承します。
  • 複製は、元の効果の動的に追加された注釈を継承します。
  • 元の効果のプールが NULL ではなく、元の効果に共有デバイス依存パラメーター (テクスチャやシェーダーなど) が含まれている場合、新しいデバイスへの複製は失敗します。

パラメーターの共有

プールは、異なる効果の間で効果パラメーターを共有するバッファーです。 プールにパラメーターを追加するには、効果の作成時に共有使用法を指定します。

プールには次の制限があります。

  • その (共有) パラメーターを含む効果がプールに初めて追加されるときに、パラメーターがプールに追加されます。
  • プールは、最初の共有パラメーターから初期値を取得します。共有されたパラメーターは、その後、プールから値を取得します。
  • 共有パラメーターへのすべてのエフェクト参照が解放されると、パラメーターがプールから削除されます。
  • 同じ (共有) デバイス依存パラメーターを含むプール内のすべての効果は、同じデバイスを持つ必要があります。

NULL を 使用してプールを指定できません。その場合、パラメーターは共有されません。 これは、この効果のためだけに一意のプールを指定することとほとんど同じです。 1 つの違いは、効果が複製されるときに、複製がその共有パラメーターを元のパラメーターと共有しないことです。

効果の形式