https://hyrule.tistory.com/111
*** 공부 방법 ***
1. 코딩을 해야 하는 부분은 첫 부분에 변수나 함수, 메소드에 대한 선언이 코드블럭으로 표시되어 있다. //ex) MakeFunction(); 2. 코드블럭 하단에는 해당 선언에 대한 구현 로직이 작성되어 있다. 처
hyrule.tistory.com
<사전지식>
* 가상함수
부모 클래스의 소멸자에 가상함수를 쓰는 이유
class CParent { public: CParent() { std::cout << "CParent 생성자" << std::endl; } ~CParent() { std::cout << "CParent 소멸자" << std::endl; } }; class CChild : public CParent { public: { std::cout <<..
hyrule.tistory.com
* 간단히 구조만 설계하는 단계.
* CGameObject 소스 파일들은 모두 Include\GameObject 폴더에 생성한다.
- 폴더를 탐색기에서 미리 생성한 다음,
h 파일과 cpp 파일의 앞부분에 'GameObject/'를 입력해주면 알아서 GameObject 폴더 안에 생성된다.
기본 클래스에 CGameObject를 넣으면 상속도 알아서 해준다.
< 상속 순서 >
- CGameObject
- CCharacter
- CPlayer
- CCharacter
GameInfo 헤더를 포함시켜 준다. 이 때, GameInfo.h 파일은 이전 폴더인 Include 폴더 안에 있으므로
"../GameInfo.h" 로 작성해야 컴파일러가 인식할 수 있다.
각 클래스는 Init, Update, Render 메소드를 가상함수 형태로 가지고 있다.
클래스 생성 팁)
전부 같은 메소드를 가지고 있으므로 복사 붙여넣기 후 더블클릭으로 이름만 바꿔주면 빠르게 작업 가능
cpp 파일에서 자신의 클래스 헤더를 포함시킨 후
헤더 파일의 선언을 블록 지정 후 Ctrl + . -> C 엔터(선언/정의 만들기)를 누르면 정의 부분을 자동으로 생성시켜준다.
마지막으로 각 클래스의 Init() 함수만 true를 기본 반환하도록 바꿔주자.
대단한 변경은 없지만 노가다가 있어서 첨부
'WIN32API FrameWork > 한단계씩 직접 구현' 카테고리의 다른 글
10. Vector2를 활용하여 캐릭터를 원하는 위치에 표시하기 (0) | 2022.05.17 |
---|---|
09. Vector2 구조체 (0) | 2022.05.16 |
07. DeltaTime (0) | 2022.05.16 |
06. 화면 출력 (0) | 2022.05.16 |
05. PeekMessage 함수와 Run() 루프 (0) | 2022.05.15 |