You are not a real programmer until you end all your sentences with semicolons; (c) 2000 ROAD Programming
You are unique. Just like everybody else.
Visit the ROAD Programming Website for more programming help.
You are unique. Just like everybody else.
Visit the ROAD Programming Website for more programming help.
You are unique. Just like everybody else.
Visit the ROAD Programming Website for more programming help.
DDResult = pDirectDraw->CreateClipper(NULL, &pDDClipper, NULL);if(FAILED(DDResult)){ return 0;}DDResult = pDDClipper->SetHWnd(NULL, hWnd);if(FAILED(DDResult)){ return 0;}DDResult = pDDSBack->SetClipper(pDDClipper);if(FAILED(DDResult)) return 0;}
DDCOLORKEY DDColorKey;DDColorKey.dwColorSpaceHighValue = 0;DDColorKey.dwColorSpaceLowValue = 0;DDResult = pSurface->SetColorKey(DDCKEY_SRCBLT, &DDColorKey);if(FAILED(DDResult)){ return 0;}
// set up clipperif (lpdd->CreateClipper(0, &lpddclipper, NULL) != DD_OK) return false;LPRGNDATA ClipperData;ClipperData = (LPRGNDATA)malloc(sizeof(RGNDATAHEADER) + sizeof(RECT));memcpy(ClipperData->Buffer, &ScreenArea, sizeof(RECT));ClipperData->rdh.dwSize = sizeof(RGNDATAHEADER);ClipperData->rdh.iType = RDH_RECTANGLES;ClipperData->rdh.nCount = 1;ClipperData->rdh.nRgnSize = sizeof(RECT);ClipperData->rdh.rcBound.left = 64000;ClipperData->rdh.rcBound.top = 64000;ClipperData->rdh.rcBound.right = -64000;ClipperData->rdh.rcBound.bottom = -64000;if (lpddclipper->SetClipList(ClipperData, 0) != DD_OK){ free(ClipperData); return false;}if (lpddsback->SetClipper(lpddclipper) != DD_OK){ free(ClipperData); return false;}free(ClipperData);
You are unique. Just like everybody else.
Visit the ROAD Programming Website for more programming help.
for(x = 0; x < num_rects; x++)
{
if(ScreenArea[x].left < ClipperData->rdh.rcBound.left)
ClipperData->rdh.rcBound.left = ScreenArea[x].left;
if(ScreenArea[x].top < ClipperData->rdh.rcBound.top)
ClipperData->rdh.rcBound.top = ScreenArea[x].top;
if(ScreenArea[x].right > ClipperData->rdh.rcBound.right)
ClipperData->rdh.rcBound.right = ScreenArea[x].right;
if(ScreenArea[x].bottom > ClipperData->rdh.rcBound.bottom)
ClipperData->rdh.rcBound.bottom = ScreenArea[x].bottom;
}
Insert this (you may need to modify it to match your variables and stuff) right after you declared ClipperData->rdh.rcBound.xxx=xxx;
Let me know if it works
-Blackstream
You are unique. Just like everybody else.
Visit the ROAD Programming Website for more programming help.