السلام عليكــم ورحمـة الله وبركاتــه ،،
هذه مشكلتي بدون اطلالة
Device->DrawIndexedPrimitive ( D3DPT_TRIANGLELIST ,0 , 0 , (Width*Width) , 0 , Width*Width*2);
بوضع Width=180 يعمل بشكل طبيعي ولكن عند تغييرWidth الى عدد أكبر من 180 مثل 181 أو 190 لايعمل فما المشكلة وهل ذلك يعني أن النهج لايستطيع أن يصير أكثرمن 180*180 شكل
علما أن Vertex Buffer وIndex Buffer معرفة كما يلي .
D3DVERTEX *M = 0;
int a = -1 ;
for ( int y = 0 ; y<Width ; y++ )
{
for ( int x= 0 ; x<Width ; x++ )
{
a++ ;
M[a].x = (float) x;
M[a].y = (float)HeightMap[x][y]/10.0f;
M[a].z = (float)y ;
M[a].U = (float) x/100 ;
M[a].V = (float) y/100;
}
}
//// Idex Buffer
WORD *IndexDate = 0 ;
for ( int y = 0 ; y<Width*Width; y++ )
{
for ( int g = 0 ; g<Width-1 ; g++ )
{
if ( y>=Width*(g) && y<(Width-1)+Width*(g) )
{
*IndexDate ++ = y;
*IndexDate ++ = y+1+Width ;
*IndexDate ++ = y+1 ;
*IndexDate ++ = y ;
*IndexDate ++ = y+Width ;
*IndexDate ++ = y+1+Width ;
}
}
}