프로그램 실행의 기반이 되는 클래스
render와 update를 실행하는 기반 클래스
Setwindow pos
는 타이틀창,메뉴바등,테두리 모든것을 포함한 것
내가 원하는 화면을 해상도에 맞게 크기 조정 하기 위해선
adjustwindwRect에 내가 원하는 크기를 넣은 뒤
setwindowpos 매개변수로 넣어야 함
메세지 기반으로 그리기 위한 dc를 반환,
그림을 다 그렸다면 EndPaint를 호출해서 무효화 영역이라고 알려줘야함
메세지가 있든 없든 그림을 그리기 위한 dc를 반환 해줌
메세지 기반이 아니기 때문에 이 dc를 통해 화면에 그린다면
프로그램이 끝나기 전에 ReleaseDC를 한 번만 호출 해주면
커널 오브젝트 제거
int CCore::init(HWND _hwd, POINT _ptResoulution){
RECT rt = { 0,0,m_ptResoulution.x,m_ptResoulution.y };
AdjustWindowRect(&rt, WS_EX_OVERLAPPEDWINDOW, true);
SetWindowPos(m_hWnd, nullptr, 100, 100, rt.right - rt.left, rt.bottom - rt.top, 0);
m_hDC = GetDC(m_hWnd);
}
CCore::~CCore()
{
ReleaseDC(m_hWnd, m_hDC);
}
매 프레임 마다 화면을 지우고 처음부터 구성한다
매 프레임 변화를 체크하고 있으면 변화 한 것을 그리고
아니여도 똑같이 새로 그린다.
update 와 render로 나뉜다.