Я пишу небольшое приложение, которое получает предварительно преобразованные вершины и отображает их на экране.
FVF для вершины определяется как (и я не могу ее изменить)
#define MY_FVF D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_SPECULAR | D3DFVF_TEX1
Z-буфер создается через поля D3DPRESENT_PARAMETERS (это можно изменить)
d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D24S8;
Проблема в том, что я получаю очень короткую плоскость отсечения (каждая сетка обрезается на 1.0f от камеры). Я не могу использовать матричную проекцию (как я уже сказал, у меня уже есть предварительно преобразованные вершины). Есть ли способ установить предел буфера глубины? Или есть какой-нибудь другой способ иметь z-буфер с длинной дальней плоскостью отсечения на предварительно преобразованных вершинах?