次の方法で共有


ID2D1DrawInfo::SetVertexProcessing メソッド (d2d1effectauthor.h)

頂点バッファー、対応する頂点シェーダー、および Direct2D コンテキストによる頂点の処理方法を制御するオプションを設定します。

構文

HRESULT SetVertexProcessing(
  [in, optional] ID2D1VertexBuffer            *vertexBuffer,
                 D2D1_VERTEX_OPTIONS          vertexOptions,
  [in, optional] const D2D1_BLEND_DESCRIPTION *blendDescription,
  [in, optional] const D2D1_VERTEX_RANGE      *vertexRange,
                 const GUID                   *vertexShader
);

パラメーター

[in, optional] vertexBuffer

種類: ID2D1VertexBuffer*

頂点バッファーをクリアすると、既定の頂点シェーダーと変換四角形へのマッピングが使用されます。

vertexOptions

種類: D2D1_VERTEX_OPTIONS

レンダラーが頂点シェーダーと対話する方法に影響を与えるオプション。

[in, optional] blendDescription

型: const D2D1_BLEND_DESCRIPTION*

頂点と出力テクスチャのブレンド方法。

[in, optional] vertexRange

型: const D2D1_VERTEX_RANGE*

バッファーから使用する頂点のセット。

vertexShader

型: GUID*

頂点シェーダーの GUID。

戻り値

種類: HRESULT

メソッドが成功すると、 S_OKが返されます。 失敗した場合は、 HRESULT エラー コードが返されます。

注釈

頂点シェーダー GUID を介して頂点バッファーに関連付けられている頂点シェーダーは、この呼び出しを行う前に ID2D1EffectContext::LoadVertexShader メソッドを介して読み込まれている必要があります。

頂点オプション をD2D1_VERTEX_OPTIONS_DO_NOT_CLEAR渡すと、ブレンドの説明が正確に次の場合を除き、メソッドは失敗します。

D2D1_BLEND_DESCRIPTION blendDesc = 
        {
            D2D1_BLEND_ONE,
            D2D1_BLEND_ZERO,
            D2D1_BLEND_OPERATION_ADD,

            D2D1_BLEND_ONE,
            D2D1_BLEND_ZERO,
            D2D1_BLEND_OPERATION_ADD,

            { 1.0f, 1.0f, 1.0f, 1.0f }
        };

この呼び出しが失敗すると、対応する ID2D1Effect インスタンスがエラー状態になり、描画に失敗します。

blendDescription が NULL の場合は、前景オーバー ブレンド モードが使用されます。

要件

要件
サポートされている最小のクライアント Windows 7 のWindows 8とプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 のWindows Server 2012とプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー d2d1effectauthor.h
Library D2d1.lib

こちらもご覧ください

ID2D1DrawInfo

ID2D1EffectContext::CreateVertexBuffer

ID2D1EffectContext::LoadVertexShader