Window API 14

[Window API] Object 설계

게임 프로그래머 입문 올인원 강의 수강 후 복습용으로 작성   1. Object 관련 클래스 추가1) Types.h에 Stat struct 추가// Types.hstruct Stat{ int32 hp = 0; int32 maxHp = 0; int32 speed = 0;}; 2) Object : ObjectType 추가, 순수 가상 함수 추가(인터페이스 역할)// Object.h#pragma onceenum class ObjectType{ None, Player, Monster, Projectile,};class Object{public: Object(); Object(ObjectType type); virtual ~Object(); virtual void Init() abstract; virtual v..

[Window API] 프레임워크 제작 2

게임 프로그래머 입문 올인원 강의 수강 후 복습용으로 작성   0. 파일 및 폴더 추가1) Scene - Game2) Objects   1. Memory Leak 체크1) 소멸 시 _CrtDumpMemoryLeaks() 함수 호출(가장 마지막에 호출) : 출력 창에 메모리 누수가 일어난 위치가 표시됨// pch.h#define _CRTEDBG_MAP_ALLOC#include #include #ifdef _DEBUG#define new new(_NORMAL_BLOCK, __FILE__, __LINE__)#endif// Game.cppGame::~Game(){ _CrtDumpMemoryLeaks(); // Memory Leak Check}   2. Utils 클래스 : 자주 사용하는 기능을 모아두는 클래스1..

[Window API] 프레임워크 제작

게임 프로그래머 입문 올인원 강의 수강 후 복습용으로 작성   변경 사항1. 메인 루프 수정 : GetMessage() → PeekMessage() 기존 코드)// 3) 메인 루프while (::GetMessage(&msg, nullptr, 0, 0)){ //if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) // 단축키 사용 { ::TranslateMessage(&msg); ::DispatchMessage(&msg); }}  변경 코드)// 3) 메인 루프while (msg.message != WM_QUIT){ if (::PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) // mess..

[Window API] 기본 템플릿 코드

게임 프로그래머 입문 올인원 강의 수강 후 복습용으로 작성   1. 프로젝트 생성 및 기본 구조 파악1. Visual Studio에서 Window Desktop Application 프로젝트 생성2. 윈도우 창 크기 조절(RECT 사용)3. text/도형 그리기(HDC 사용)4. message를 처리하는 함수 수정(WndProc) // WindowAPI.cpp : 애플리케이션에 대한 진입점을 정의합니다.//#include "framework.h"#include "WindowAPI.h"#define MAX_LOADSTRING 100int mousePosX;int mousePosY;// 전역 변수:HINSTANCE hInst; // 현재 인스턴스입니다...