목차
- C++ 에너미 클래스 만들기
- 블루프린트 에너미 클래스 만들기
에너미 클래스를 생성하고 이를 정의해보자.
에너미 클래스에 제일 먼저 구현할 것은 Hit 반응이다.
Hit를 하기 위해서는 콜리전 세팅이 필요한데 현재 무기의 박스 컴포넌트는 Pawn타입을 무시하고 있으며 박스트레이싱의 경우 가시성 채널을 차단하고 있으므로 이러한 부분들을 수정해주어야 한다.
#include "Components/SkeletalMeshComponent.h" // 스켈레톤 매시를 사용하기 위해 필요한 헤더파일
AEnemy::AEnemy()
{
PrimaryActorTick.bCanEverTick = true;
// 콜리전 설정을 Pawn에서 WorldDynamic으로 바꾼다.
GetMesh()->SetCollisionObjectType(ECollisionChannel::ECC_WorldDynamic);
// 에너미 매시의 가시성 채널을 블럭으로 바꾼다.
GetMesh()->SetCollisionResponseToChannel(ECollisionChannel::ECC_Visibility, ECollisionResponse::ECR_Block);
// 에너미의 매시랑 캡슐이 카메라를 차단하지 않도록 방지한다.
GetMesh()->SetCollisionResponseToChannel(ECollisionChannel::ECC_Camera, ECollisionResponse::ECR_Ignore);
GetCapsuleComponent()->SetCollisionResponseToChannel(ECollisionChannel::ECC_Camera, ECollisionResponse::ECR_Ignore);
// 매시에 오버랩 이벤트가 발생하게 바꾼다.
GetMesh()->SetGenerateOverlapEvents(true);
}
에너미의 생성자 설정이 완료되었으니 언리얼 에디터로 돌아가 이를 기반으로 블루프린트 클래스를 만들자.
2. 블루프린트 에너미 클래스 만들기
에너미의 블루프린트 클래스를 만들자.
이렇게 에너미 클래스가 완성되었다.
이제 에너미 클래스에서 쓰일 에셋을 임포트해오자.
임포트에 성공했으면 요소들을 규칙에 따라 이름을 바꿔준다. 여기서 T 포즈 애니메이션은 딱히 필요없지만 그냥 놔두기로 했다.
이제 에너미 클래스에 스켈레톤 매시를 적용하기만 하면 된다. 에너미 클래스를 완성하였으니 다음에는 애니메이션을 추가하도록 하자.
'게임프로그래밍 > 실습1' 카테고리의 다른 글
[언리얼 실습] 28. 백터의 내적을 통해 Hit 방향 알아내기 (0) | 2024.10.29 |
---|---|
[언리얼 실습] 27. 인터페이스 사용하기 (0) | 2024.10.28 |
[언리얼 실습] 25. 언리얼 인터페이스 만들기 (0) | 2024.10.27 |
[언리얼 실습] 24. 공격중에만 트레이싱 하기 (0) | 2024.10.27 |
[언리얼 실습] 23. 무기 히트를 위한 콜리전 박스 추가랑 트레이싱 추가하기 (1) | 2024.10.27 |