728x90
전 글에서 캐릭터를 움직이며 총을 쏘는 부분과 적 생성까지는 완료하였다.
이제 총을 쐈을 때 총알이 적과 충돌 하였을 때 hp를 깎아주고 사라지게하는 과정을 이어서 하겠다.
원과 원의 충돌을 계산을 할건데. 원의 중점사이의 거리를 이용해 계산을 하면 된다.
두 점의 간격 거리가 원의 반지름의 합보다 작으면 충돌이 일어난 상태가 된다.
아래와 같은 느낌이라고 보면 된다.

이를 코드를 이용한 수식으로 나타내면 아래 처럼 된다.

자 그러면 이제 본격적으로 충돌이 되었을때 일어날 이펙트를 간단하게 구현해보자
우선 충돌이 일어 났을때 원의 색깔을 변경하기 위해 Enemy.h에 HBRUSH를 추가해주고
생성 소멸을 해준다.


충돌이 일어 났을때 총알도 같이 사라져야 하기 때문에 BulletManager.h와 cpp에
충돌이 일어났는지 확인해줄 함수를 추가해주고


Enemy.cpp의 update함수에서 충돌이 일어났을때, hp를 -10 해주고 0이 되면 사라지도록 만들어준다.

이제 시작해보면 아래와 같은 플레이가 가능해지게 된다.
동영상 서비스가 종료되어 해당 콘텐츠를 재생할 수 없습니다.
아직은 슈팅게임 이라고 하기에는 부족한 느낌이 많으니 다음 글에서 더 다양한 기능을 추가하겠다
728x90
'WinAPI' 카테고리의 다른 글
| 다시 공부 하는 Win API (6) - 슈팅 게임 만들기(4) (0) | 2025.11.27 |
|---|---|
| 다시 공부 하는 Win API (5) - 슈팅 게임 만들기(3) (0) | 2025.11.25 |
| 다시 공부 하는 Win API (3) - 슈팅 게임 만들기(1) (0) | 2025.10.18 |
| 다시 공부 하는 Win API (2) - 점, 선, 도형 그리기 및 색상 변경 (0) | 2025.10.16 |
| 다시 공부 하는 Win API (1) - 기초 이론 및 펜 만들기 (0) | 2025.10.15 |