Windows 및 메시지
Microsoft GDK(게임 개발 키트)는 Windows 및 메시지를 포함하여 Win32 프로그래밍 스타일을 사용합니다. 이 기능이 대부분 Windows PC에서 발생할 수 있는 것과 동일하지만, 이 항목에서는 본체에서 지원되는 항목과 Windows PC와의 차이점에 대해 설명합니다.
주 창 만들기
모든 게임은 진입점 함수로 WinMain
이(가) 있어야 합니다.
WinMain
내에서 게임은 다음을 수행해야 합니다.
- 창 클래스 등록.
- 창 절차 지정.
- 창 만들기.
- 메시지 루프 펌프.
본체에서 창은 메시지에 대한 대상으로만 동작합니다.
본체에서 지원되는 Windows 메시지
본체에서는 키보드 및 마우스를 통한 기본 입력 및 윈도우 수명을 지원합니다. 다음 시스템 메시지를 지원합니다.
WM_ACTIVATE
WM_ACTIVATEAPP
WM_CHAR
WM_CREATE
WM_DESTROY
WM_DPICHANGED
WM_KEYDOWN
WM_KEYUP
WM_KILLFOCUS
WM_LBUTTONDOWN
WM_LBUTTONUP
WM_MBUTTONDOWN
WM_MBUTTONUP
WM_MOUSEMOVE
WM_MOUSEWHEEL
WM_QUIT
WM_RBUTTONDOWN
WM_RBUTTONUP
WM_SETFOCUS
WM_SHOWWINDOW
WM_SIZE
WM_SYSKEYDOWN
WM_SYSKEYUP
WM_THEMECHANGED
WM_TIMER
WM_USER
WM_XBUTTONDOWN
WM_XBUTTONUP
본체에서 지원되는 WinUser 함수
본체는 winuser.h에서 예상되는 함수의 하위 집합만 지원합니다. 본체는 다음과 같은 Windows 함수만 지원합니다.
AdjustWindowRect
AdjustWindowRectEx
CallWindowProc
CreateWindowEx
DefWindowProc
DestroyCursor
DestroyWindow
DispatchMessage
GetClientRect
GetCursorInfo
GetCursorPos
GetMessage
GetWindowLong
GetWindowLongPtr
KillTimer
LoadCursor
MoveWindow
PeekMessage
PostMessage
PostQuitMessage
PostThreadMessage
RegisterClass
RegisterClassEx
SendMessage
SetCursor
SetTimer
SetWindowLong
SetWindowLongPtr
SetWindowPos
ShowCursor
ShowWindow
TranslateMessage
UnregisterClass