/// Initialise a D3D viewport for rendering a poster into a render texture sub-region. void ImposterSystem::InitImposterViewport(int textureWidth, int textureHeight, const D3DXVECTOR2& imposterUVOffset, const D3DXVECTOR2& imposterUVScale) { D3DVIEWPORT9 viewport; viewport.X = (DWORD) (textureWidth * imposterUVOffset.x); viewport.Y = (DWORD) (textureHeight * imposterUVOffset.y); viewport.Width = (DWORD) (textureWidth * imposterUVScale.x); viewport.Height = (DWORD) (textureHeight * imposterUVScale.y); viewport.MinZ = 0.0f; viewport.MaxZ = 1.0f; LPDIRECT3DDEVICE9 pD3DDevice = DXUTGetD3DDevice(); pD3DDevice->SetViewport(&viewport); }