응애맘마조

충돌에 따른 색깔 변화 본문

공부/2D과제

충돌에 따른 색깔 변화

TH.Wert 2023. 1. 11. 23:42

마우스가 어느 위치에서 충돌 하느냐에 따라 색깔이 변하고 그라데이션을 나타내는 것이 과제였습니다.

//main.cpp
#include "stdafx.h"
#include "Main.h"

void Main::Init()
{
	rc = new ObRect();
	rc->scale = Vector2(400.0f, 400.0f);
}

void Main::Release()
{
	SafeDelete(rc);
}

void Main::Update()
{
	rc->Update();
}

void Main::LateUpdate()
{
	if (rc->Intersect(INPUT->GetWorldMousePos()))
	{
		Vector2 dis = INPUT->GetWorldMousePos() - rc->GetWorldPos();
		dis.Normalize();

		if (INPUT->KeyPress(VK_LBUTTON))
		{
			Vector2 velocity = INPUT->GetWorldMousePos() - lastPos;
			rc->MoveWorldPos(velocity);
		}

		rc->color = Color(dis.x, dis.y, 0.5f, 1.0f);
	}
	else
	{
		rc->color = Color(0.0f, 0.0f, 0.0f, 1.0f);
	}
}

void Main::Render()
{
	rc->Render();
}

void Main::ResizeScreen()
{
}

int WINAPI wWinMain(HINSTANCE instance, HINSTANCE prevInstance, LPWSTR param, int command)
{
	app.SetAppName(L"Game2");
	app.SetInstance(instance);
	app.InitWidthHeight(1400.0f, 800.0f);
	WIN->Create();
	Main* main = new Main();
	int wParam = (int)WIN->Run(main);
	SafeDelete(main);
	WIN->Destroy();
	WIN->DeleteSingleton();
	
	return wParam;
}

코드입니다.

 

읽어주셔서 감사합니다.

'공부 > 2D과제' 카테고리의 다른 글

잔상 만들기  (0) 2023.01.16
오브젝트 충돌  (0) 2023.01.12
카메라 이동 2  (0) 2023.01.11
카메라 이동  (0) 2023.01.09
별 만들기  (0) 2023.01.07
Comments