Game Dev/Article 59

EnumWindow

static BOOL CALLBACK EnumWindowsProc(HWND hWnd, LPARAM lParam) { if (hWnd == (HWND)lParam)) { // TODO return FALSE; } return TRUE; } int WinAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nShowCmd) { HWND hWnd = FindWindow("Notepad", NULL); EnumWindows(EnumWindowsProc, (LPARAM)hWnd); } - 모든 최상위 윈도우를 검색한다. - 자식 윈도우를 검색하려면 EnumChildWindows 함수를 사용한다. - EnumWindowsPro..

Game Dev/Article 2008.07.22

FreeType에서 FT_PIXEL_MODE_MONO 처리

Freetype에서 특정 크기 이하의 폰트는 MONO Bitmap을 리턴하며 Pixel Mode를 통해 (FT_PIXEL_MODE_MONO) 확인이 가능합니다. 이 경우 1 Byte에 8 Pixel에 대한 정보가 담겨져 있으므로 다음과 같은 별도의 처리가 필요합니다. /* Src : FreeType의 Bitmap Dest : Texture\ (현재 A4R4G4B4) startX, startY : 글자 영역의 위치 baselienX, baselineY : 글자 모양의 Baseline */ WORD* pTextureData = NULL; BYTE* pDestAddr = (BYTE*)pDest->pBits; int offsetX = startX + baselineX; int offsetY = startY + ..

Game Dev/Article 2008.06.04