Win32 API/강의들 ft. Assortrock

    07_TransparentBlt,Component

    07_TransparentBlt,Component

    애니메이터, 충돌 컴포넌트 추가 (TransparentBlt,Component) Engine Common Common.h (펜이랑 브러쉬 객체화 구조체로) def.h Maths.cpp Maths.h yaEntity.cpp yaEntity.h Component Base (기초가 됨) yaComponent.cpp yaComponent.h yaAnimatior.cpp yaAnimatior.h yaCollider.cpp yaColider.h GameObject Base (기초가 됨) yaGameObject.cpp yaGameObject.h yaMissile.cpp yaMissile.h yaPlayer.cpp yaPlayer.h High Level Interface yaApplication.cpp (더블버퍼링 효..

    06_Resources

    06_Resources

    게임에 리소스(이미지) 추가 (Resources) Engine Common Common.h (펜이랑 브러쉬 객체화 구조체로) def.h Maths.h yaEntity.cpp yaEntity.h GameObject Base (기초가 됨) yaGameObject.cpp yaGameObject.h yaMissile.cpp yaMissile.h yaPlayer.cpp yaPlayer.h High Level Interface yaApplication.cpp (더블버퍼링 효과 만들기) yaApplication.h Manager yaInput.cpp yaInput.h ==> 키보드에서 키를 눌렀을 때 호출되는 파일들 yaResources.cpp yaResources.h ==> 리소스들을 관리하는 파일들 yaScene..

    05_DoubleBuffering

    05_DoubleBuffering

    화면을 스무스하게 (DoubleBuffering) Engine Common Common.h (펜이랑 브러쉬 객체화 구조체로) def.h Maths.h yaEntity.cpp yaEntity.h GameObject Base (기초가 됨) yaGameObject.cpp yaGameObject.h yaMissile.cpp yaMissile.h yaPlayer.cpp yaPlayer.h High Level Interface yaApplication.cpp (더블버퍼링 효과 만들기) yaApplication.h Manager yaInput.cpp yaInput.h ==> 키보드에서 키를 눌렀을 때 호출되는 파일들 yaSceneManager.cpp yaSceneManager.h yaTime.cpp yaTime.h ..

    04_Input

    04_Input

    키 입력 (Input) Engine Common Common.h def.h Maths.h yaEntity.cpp yaEntity.h GameObject Base (기초가 됨) yaGameObject.cpp yaGameObject.h yaMissile.cpp yaMissile.h yaPlayer.cpp yaPlayer.h High Level Interface yaApplication.cpp yaApplication.h Manager yaInput.cpp yaInput.h ==> 키보드에서 키를 눌렀을 때 호출되는 파일들 yaSceneManager.cpp yaSceneManager.h yaTime.cpp yaTime.h ==> deltatime 설정 Scene Base ( 기초가 됨 ) yaScene.cpp..

    03_SceneManager

    03_SceneManager

    씬 만들기 (SceneManger) Engine Common Common.h def.h Maths.h yaEntity.cpp yaEntity.h GameObject Base ( 기초가 됨) yaGameObject.cpp yaGameObject.h yaPlayer.cpp yaPlayer.h High Level Interface yaApplication.cpp yaApplication.h Manager yaSceneManager.cpp yaSceneManager.h Scene Base ( 기초가 됨 ) yaScene.cpp yaScene.h yaLogoScene.cpp yaLogoScene.h main framework.h main.cpp Resource.h targetver.h WindowsAPI.h 기타..

    02. FrameWork

    02. FrameWork

    main.cpp에서 API 작업을 해줬으니까 pushpush 만든 것처럼 게임틀을 만들어보자 기본 게임 틀 만들기 (framework) main.cpp ==> 윈도우API에서 쓰이는 메인 프로그램 yaApplication.cpp yaApplication.h ==> 게임의 메인 프로그램 yaEntity.cpp yaEntity.h ==> 모든 파일들을 상속받는 파일 Common.h ==> 필요한 파일의 확장자들을 모두 포함하는 헤더파일이다 Maths.h ==> 게임에 쓰이는 수학에 관한 헤더파일이다 기타 무효화 영역 발생시키기 ( WM_PAINT 메시지를 호출해주겠다) InvalidateRect(hWnd, nullptr, false); ==> 윈도우 창 2개가 겹쳤을 때 겹쳐진 부분은 안 그려주고 겹치지 않..

    01_winMainDC

    01_winMainDC

    도화지에 펜과 물감통을 이용해서 색칠을 해보자! 윈도우가 돌아가는 방식 1. wndclass 정의 윈도의 기반(여러가지 속성)이 되는 클래스 정의해준다. 2. 메모리상에 윈도우를 할당해야죠. CreateWindow 3. showwindow 함수를 통해서 윈도우가 화면에 보여진다. (update window) 4. wndclass 정의할때 함수포인터에 넣어준 loop (wndproc) 메프레임마다 실행한다. ==> pushpush에서는 이것들을 다 만들어줬지만 API에서는 이 코드들이 다 있음!! 우리는 wndproc만 바꿔서 콘텐츠를 추가하면 됨!! 윈도우즈를 이루는 3가지 라이브러리 메모리를 관리하고 실행시키는 KERNEL 커널 유저 인터페이스와 관리하는 USER 화면처리와 그래픽을 담당하는 GDI D..