서울게임아카데미 교육과정 6개월 C++ ~ DirectX2D 76
-
SonicShooter 의 public 함수중 하나인 Move 함수의 매개변수를 Vector로 변환하여 2개의 값을 받아온다. 그 후, SonicShooter.h에 MoveSpeed를 정의해준다. #pragma once #include "Engine/Rendering.h" class Sonic; // 전방선언 해준다. // 손가락모양 총 모양을 구현한다. class SonicShooter { public: SonicShooter(void (* const way)(Sonic* const)); // 함수의 주소를 받는 함수 포인터. 주소를 저장하거나 매개변수. way bool Update(); void Move(Vector const direction); //void Shoot(); Sonic* Shoot(..
-
#pragma comment(linker, "/Subsystem:Windows") // 윈도우 운영체제에서 실행될 것 을 알려주는 것 #pragma comment(lib, "D3D11.lib")// 라이브러리 의 다이렉트3 11 의 라이브러리를 사용할 것 이다. #pragma comment(lib, "FreeImage.lib") // 우리가 넣은 에셋 파일들 사용할 것 임을 암시 #pragma comment(lib, "Engine.lib") // 우리가 넣은 엔진의 라이브러리 를 사용한다. #include "Engine/Initialize.h" #include "TempGame.h" namespace Engine { Game* Initialize() { return new TempGame; } } Gam..
-
윈도우 API를 활용하여 2D게임의 코딩을 기초적으로 진행한다. 발사하는 손가락과 발사되는 투사체를 구현하는 코드를 진행. 발사되는 투사체 #include "Sonic.h" #include "Engine/Time.h" Sonic::Sonic(Vector const location) { Skin.Name = "Animation/Sonic_Run"; Skin.Length = { 144, 144 }; Skin.Location = location; Skin.Duration = 0.125f; // 0.125마다 반복되게 Skin.Repeatable = true; } bool Sonic::Update() { // 업데이트 할 떄마다 이미지를 업데이트 해줌 Skin.Render(); // 케릭터가 화면 범위를 벗어났..
-
Delta Time 게임개발에서 사용되는 중요한 개념이다. 게임의 원활한 실행과 시간에 따른 일관성을 유지하는 데 사용되며, 게임의 프레임 속도와 상호작용을 조정하는 데 도움을 준다. Delta TIme 의 사용 목적 게임엔진이 한 프레임에서 다음 프레임으로 전환할 때 소요되는 시간 간격을 나타낸다. 게임의 물리엔진, 애니메이션, 이동, 상호작용 등과 관련된 작업에 적용된다. 게임의 프레임 속도를 조정함으로써 각각의 플랫폼과 하드웨어에서 일관된 속도로 실행되도록 한다. 사용 예 : 에니메이션, 이동, 물리엔진 [ 1초간 동작하는 에니메이션의 경우, 프레임당 시간으로 계산하여. 한 프레임당 움직이는 속도를 조정한다. ] 1초간 1M를 가는 동작을 할 시. 30프레임 기준으로 작성하게 된다고 가정해 보자. ..
-
이미지 저장 -> 포토샵 새로만들기 -> 폭발 이미지 확인. 폭발 이미지의 사이즈 대로 이미지 자르기 -> 배경내용 투명으로 같은 사이즈로 포토샵 파일 새로만들기 -> 이미지를 길게 잘라서 붙여넣기 가져온 이미지는 폭발 임으로 중앙이 아닌 바닥을 기준으로 맞춰준다. 그 후 Y좌표를 띄워주면서 부드러운 모션을 확인한다. 새 안내선 레이아웃을 만든다 -> 여백은 주지 않고 만든다 -> 열은 각 객체의 개수대로. -> 간격은 0으로 12 -> 2 로 분할한다. 픽셀기준 X축으로 검사하여 각 줄을 자른다. 픽셀 기준 Y축으로 검사한다. Y축기준으로 픽셀의 단위를 자른다. X축과 Y축의 절삭값을 이미지 1개의 사이즈로 한다. NULL픽셀을 자를 때 여유픽셀을 몃개 건너뛰는지? ex(폭발 이미지를 자를 때 떨어져 ..
-
윈도우 API를 사용하여 창을 띄우고 그곳에 이미지를 출력할 수 있다. #include #include #include LRESULT CALLBACK WndProc(HWND handle, UINT message, WPARAM wparam, LPARAM lParam); int APIENTRY WinMain( // 운영체제에서 필요할 때 호출되는 함수 HINSTANCE hInstance, // 윈도우의 창의 실체를 말한다. 창을 띄우는 자체에 대한 식별자 를 말한다. HINSTANCE prevInstace, // 이전에 대한 정보값. LPSTR lpszCmdParam, // 문자열. 형식. 헝가리안 표기법 을 사용한다. int nCmdShow // cmd : 명령프롬프트.[ command window ] 화..