32 bit color
// clear out back buffer this works just fine however when i change back_buffer to a UINT* and then change back_buffer += ddsd.lPitch to with this change the bitmap still displays in the right place but it experiences what i believe is called shearing
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;
}
}
back_buffer += (ddsd.lPitch >> 2)
after the if else statement if i had
back_buffer = (UINT*)ddsd.lpSurface
everything is fine
i just don't understand whats going on