🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

problem

Started by
-1 comments, last by Theses 24 years, 7 months ago
currently i have
32 bit color

// clear out back buffer
UCHAR * back_buffer = (UCHAR*)ddsd.lpSurface;
if (ddsd.lPitch == (SCR_WIDTH *4))
memset(back_buffer,0,SCR_HEIGHT*ddsd.lPitch)
else
{
for (int y=0; y {
memset(back_buffer,0,SCR_WIDTH*4);
back_buffer += ddsd.lPitch;
}
}

this works just fine however when i change back_buffer to a UINT* and then change back_buffer += ddsd.lPitch to
back_buffer += (ddsd.lPitch >> 2)

with this change the bitmap still displays in the right place but it experiences what i believe is called shearing
after the if else statement if i had
back_buffer = (UINT*)ddsd.lpSurface
everything is fine
i just don't understand whats going on

This topic is closed to new replies.

Advertisement