[Unreal]09.액터 심화과정 #2 - 액터 스폰과 위치지정
- 게임 개발 - Unreal
- 2019. 3. 18. 00:40
안녕하세요 유랑입니다.
오늘은 지난 시간에 만든 횃불을 이용해 스폰과 위치 지정하는 방법에 대해서 알아보겠습니다.
1. 액터 스폰과 위치지정
1-1) 액터 스폰 - ㉠블루 프린트
액터가 스폰되도록 만들어 주기 위해서 캐릭터의 블루 프린트를 편집해 주겠습니다.
해당 블루 프린트 클래스를 실행시키거나 캐릭터 컴포넌트에서 블루프린트 편집을 눌러 주세요^^
1-2) 액터 스폰 - ㉡이벤트그래프
블루프린트의 이벤트 그래프는 게임플레이에 쓰이는 이벤트와 펑션 콜을 편집 가능합니다.
1-3) 액터 스폰 - ㉢F키 입력
키를 입력받는 이벤트를 추가해 주겠습니다.
이벤트 그래프에서 마우스 우측 버튼을 클릭해 F를 검색해 주세요.
- Pressed => 해당 키가 눌러졌을 때
- Released => 해당 키를 눌렀다가 땠을 때
1-4) 액터 스폰 - ㉣액터를 스폰
Pressed를 클릭하고 새 노드를 만들어 줄 수 있습니다.
F키를 입력받고 그다음으로 실행될 이벤트를 가져와 준다고 생각하시면 됩니다.
Spawn Actor from Class를 검색해 주세요.
SpawnActor는 액터를 스폰해 주는 이벤트입니다.
단축키 Alt를 누른 상태에서 해당 핀을 클릭하면 선을 없앨 수 있습니다.
노드에는 여러가지 파라미터가 있습니다.
생성할 스폰 클래스를 정해야 겠죠?
만들어 놓은 BP_Torchlight을 선택해 주세요.
1-5) 액터 스폰 - ㉤트랜스폼
생성할 액터를 정했으면 위치도 지정해 주어야겠습니다.
캐릭터의 트랜스폼 값을 가져오기 위해서 GetActorTransform을 만들어서 이어주세요.
그러면 캐릭터의 위치 값이 들어가게 됩니다.
1-6) 액터 스폰 - ㉥충돌처리
액터를 소환하면 맵에 있는 액터와 Collision(충돌)이 일어날 수 있습니다.
충돌이 일어났을 때 어떻게 하느냐?도 설정 가능합니다.
Allways Spawn, Ignore Collisions을 클릭해 무조건 스폰되도록 만들어 줍니다.
게임을 실행시키고 F키를 클릭하면 횃불이 소환되는걸 확인할 수 있습니다.
1-7) 위치지정 - ㉠Arrow
횃불을 보시면 공중에 떠있을꺼에요.
이유는 캐릭터의 중심값을 가져오기 때문입니다.
생성할 위치를 만들어 줄게요.
Arrow 컴포넌트를 추가해 주세요.
Arrow 컴포넌트 위치는 캐릭터 정면의 밑부분으로 지정해 주세요.
1-7) 위치지정 - ㉡트랜스폼
Arrow 컴포넌트의 이름을 SpawnPosition으로 변경해 주세요.
그리고 드래그하여 이벤트 그래프에 옮겨주겠습니다.
Spawn Position의 위치를 GetWorldTrnasform을 이용해 트랜스폼값으로 변경하여
Spawn Transform 파라미터에 넣어주시면 되겠습니다.
게임을 실행시키면 적절한 위치값으로 변경된걸 확인할 수 있습니다!!!
1-8) 위치지정 - ㉢횃불 위치
횃불의 위치를 조금 조정해 보겠습니다.
횃불 블루프린트 클래스를 열어 주세요.
하얀공이 땅의 위치를 의미합니다.
하위 컴포넌트들을 모두 선택하고 좀 더 위로 올려주겠습니다.
좀 더 위로 올라가신걸 확인할 수 있습니다^^
2. 마무리
오늘은 횃불을 스폰해보고 위치조정까지 해보았습니다.
이벤트를 통해서 입력도 받아보고, 스폰까지 해보는 유익한 시간이었던것 같네요.
오늘도 고생하셨습니다.
감사합니다.
수업자료: https://github.com/YouRang12/-Tistory-Unreal---Basic