20250207 스폰

초보 게임개발자·2025년 2월 7일
0

UnrealEngine

목록 보기
8/18

언리얼에서 저번에 배친한 오브젝트들을 랜덤하게 스폰시키기 위해서 작업을 진행해 봤습니다.

우선 언리얼에서 C++ 액터 클래스로 AItemSpanwer 라는 클래스를 새로 만들어 줬습니다.

그리고 VS에서 SpawnActor() 함수를 사용해서 객체를 생성하게하는 코드를 짜줄건데

  • SpawnActor(액터 동적 생성)란 런타임에서 새로운 액터를 동적으로 생성하는데 사용됩니다 즉 게임이 시작된 후에 코드로 객체를 생성하고 싶을 때 사용합니다.

    Ex)  
     적(Enemy) 생성
     아이템(Item) 생성
     무기(Weapon) 생성
     프로젝트 타일(총알, 미사일 등) 생성

    이런 것들을 동적으로 만들 때 SpawnActor()를 사용합니다.


해더파일에 스폰할 아이템의 클래스를 지정해줍니다.

여기서 TSubClassOf는 언리얼 엔진에서 제공하는 템플릿 클래스이며
특정 클래스, 혹은 특정 클래스의 자식만 선택할 수 있도록 제한하는 역할을 합니다.

그 다음 SpawnActor에 NBC_A_Class를 전달할수 있게 템플릿 매개변수로는
부모 클래스인 ANBC_A을 지정하고, 첫 번째 인자로 실제 생성할 클래스인
NBC_A_Class를 전달하는 코드를 만들었습니다

FMath::RandRange로 난수를 생성할 수 있고
2개의 값을 인자로 받아서 설정해준 범위 내의 무작위 값을 반환해주는 코드입니다.
아래와같이 각각의 좌표 마다 값을 설정해 줬습니다.


그렇게 최종으로 구성한 코드 입니다.

  • 헤더파일

  • .cpp파일

언리얼에서 랜덤으로 소환된 액터들 모습

profile
기록은 기억을 지배한다!

0개의 댓글

관련 채용 정보