めいくりぷとのブログ

技術的なことをまったりと。

D3D DDI SetRenderState Callback Function

BeginScene, EndSceneが呼ばれた時に D3D DDI SetRenderState callback functionが呼ばれるらしい。
docs.microsoft.com


BeginSceneの時は、D3DDDIARG_RENDERSTATE 構造体メンバのD3DDDIRENDERSTATETYPE StateがD3DRENDERSTATE_SCENECAPTUREで、ValueがTRUEの時、
EndSceneの時は、StateがD3DRENDERSTATE_SCENECAPTUREで、ValueがFALSEの時

f:id:mcrypt:20180303204813p:plain

ただし、Begin/EndScene -> (get frame geometry) -> D3DDDI_SetRenderState と呼ばれるため、他のD3D関数を呼び出す時は注意が必要