LPDIRECTDRAW 는 다이렉트 드로우 객체입니다. 기본이 되는거죠.
LPDIRECTDRAWSURFACE는 표면입니다=ㅅ= 크기와 색상 수를 가지고 있고, 그림, 글자 등을 가진 비트맵과 비슷한 것입니다.
DDSURFACEDESC는 서피스의 정보를 가진 구조체입니다. 보통 서피스를 만들때 쓰입니다. 여기에 가로세로크기, 색상 수 등을 저장합니다.
서피스의 메모리를 고정시키는 겁니다. 이걸 안하면 시시각각 변하는 그래픽 메모리를 붙잡아 두지 못합니다. Lock으로 잡아놓고 메모리를 직접 조작하는 겁니다.
if(lpDD->SetCooperativeLevel
(hWnd,DDSCL_EXCLUSIVE|DDSCL_FULLSCREEN)!=DD_OK) return 0;
if(lpDD->SetDisplayMode(800,600,8)!=DD_OK) return 0;
이것을
if(lpDD->SetCooperativeLevel
(hWnd,DDSCL_EXCLUSIVE|DDSCL_NORMAL)!=DD_OK) return 0;
if(lpDD->SetDisplayMode(800,600,8)!=DD_OK) return 0;
256색을 쓰지 않으면 8 대신 16을 넣어주시면 됩니다.
LPDIRECTDRAWSURFACE는 표면입니다=ㅅ= 크기와 색상 수를 가지고 있고, 그림, 글자 등을 가진 비트맵과 비슷한 것입니다.
DDSURFACEDESC는 서피스의 정보를 가진 구조체입니다. 보통 서피스를 만들때 쓰입니다. 여기에 가로세로크기, 색상 수 등을 저장합니다.
서피스의 메모리를 고정시키는 겁니다. 이걸 안하면 시시각각 변하는 그래픽 메모리를 붙잡아 두지 못합니다. Lock으로 잡아놓고 메모리를 직접 조작하는 겁니다.
if(lpDD->SetCooperativeLevel
(hWnd,DDSCL_EXCLUSIVE|DDSCL_FULLSCREEN)!=DD_OK) return 0;
if(lpDD->SetDisplayMode(800,600,8)!=DD_OK) return 0;
이것을
if(lpDD->SetCooperativeLevel
(hWnd,DDSCL_EXCLUSIVE|DDSCL_NORMAL)!=DD_OK) return 0;
if(lpDD->SetDisplayMode(800,600,8)!=DD_OK) return 0;
256색을 쓰지 않으면 8 대신 16을 넣어주시면 됩니다.