728x90
간단하게 키보드 입력에 따라 카메라의 시점을 바꿔주는 방법
S00_Test . cpp
더보기
#include "stdafx.h" #include "S00_Test.h" #include "Viewer/Following.h" //그림 불러오기 #include "Object/Background.h" #include "Object/Move.h" S00_Test::S01_AABB(SceneValues * values) : Scene(values) { //카메라에 대한 정보를 받아옴 camera = values; //파일경로 wstring shaderFile = L"Effect.fx"; background = new Background(shaderFile); Ply = new Move(Vector2(0.0f, 0.0f), Vector2(3.0f, 3.0f)); Ply2 = new Move(Vector2(0.0f, 10.0f), Vector2(2.0f, 2.0f)); //카메라 제설정 SAFE_DELETE(camera->MainCamera); camera->MainCamera = new Following(Ply); } S00_Test::~S01_AABB() { SAFE_DELETE(background); SAFE_DELETE(Ply); SAFE_DELETE(Ply2); } void S00_Test::Update() { D3DXMATRIX V = values->MainCamera->View(); D3DXMATRIX P = values->Projection; if (Key->Down('Q')) { camera->MainCamera = new Following(Ply2); } else if (Key->Down('E')) { camera->MainCamera = new Following(Ply); } background->Update(V, P); Ply->Update(V, P); Ply2->Update(V, P); } void S00_Test::Render() { background->Render(); Ply->Render(); Ply2->Render(); }
S00_Test. h
더보기
#pragma once #include "Scene.h" class S00_Test : public Scene { public: S00_Test(SceneValues* values); ~S00_Test(); // Scene을(를) 통해 상속됨 void Update() override; void Render() override; private: class Background * background; class Prinny * Ply; class Prinny * Ply2; Collider* col; SceneValues* camera; };
실행
'DirectX > DirectX 2D_(구)' 카테고리의 다른 글
DX_Collider [2 / 3] AABB 충돌 (0) | 2021.01.20 |
---|---|
DX_Collider [1 / 3] (0) | 2021.01.18 |
DX_Move (0) | 2020.12.23 |
DX_Keyboard (0) | 2020.12.21 |
DX_DirectWrite (0) | 2020.11.24 |