2022. 10. 8. 17:56ㆍ언리얼 엔진
이번는 특정 액터 사이에 플레이어가 충돌했을때를 알아보겠다.
사실 조금 왜 쓰는지 모를 수 도있겠는데. 게임내 액터가 생기고 사라졌을대라던지 퍼즐조작 때라던지
box트리거를 활성화 비활성화만 하기 어려울때 사용된다 보면된다. 보고 한번 어디 사용할지는 본인의 몫,
귀찮다면 box콜리전 그대로 사용하면된다.
대충 원기둥 사이에 선을그어주고(게임플레이에선 안보이게 해도 됨) 선에 닿으면 플레이어가 가면 빨갛게 변한다는것.
그럼 우선 원기둥 BP를 만들자.
언제나 그렇듯 BP비어있는 곳에 스태틱 메시를 추가해 주고 원기둥 모델링을 넣어준다.
이후 스케일 조절과 머테리얼을 넣어주어 원기둥 스럽게 보여준다.
이제 저장을누르고
플레이어앞에 설치해보자.
기둥까지는 배치 완료.
이제 선을 만들어보자.
우선 비어져잇는 BP를 만들고.
보일 텍스트를 추가하자. BP만 맵에 배치하면 그저 동그라미로 보이던지 게임중에선 보이지 않으니 알수없다.
그냥 맵아무데나 둬도 상관은 없다. (게임 플레이 누르면 BP원은 안보인다.)
이제 기둥사이에 선을 긋는다는 것을 만들어야하는데 원기둥의 위치를 먼저 파악해야한다.
아무튼 다시 선긋기 LineTrace라 하겠다.
LineTraceBP를 열고
Get All Actors of Class : 해당 액터 클래스를 배열에 저장해준다.
아까 만들어둔 원기둥 BP를 지정해준다.
나는PointLine으로 했다.
이후 Cylinders라는 변수를 추가해 주자.
그후 변수 유형을 그 만든 원기둥의 BP형태로 지정해준다. 그리고 우측의 동그라미를 누르면 데이터 형식을 지정해줄 수 있는데 배열로 선택 해주자 그 원기둥 정보가 배열이기 때문이다.
그러면 만든 변수에 아까 그 함수를이용하여 모은 배열들을 연결 시켜주자.
이후 선을 그린다는 함수를 불러온다. Draw Debug Line
이것은 이벤트로 Tick이벤트로 받아오겠다. 계속해서 그려주어서 우리눈에는 계속 보이게끔말이다.
이후 배열에 들어있는 액터들의 위치정보를 불러오는 함수도 넣어주고. 문제는 이제 배열 몇번째의 액터의 위치인지인데, 보통은 나중에 맵에 넣은게 0번이고, 플레이누르고 Get저부분에 마우스를 올리고 있으면 어떤게 들어있는지 나온다.
이와 관련 되서 배열에 무엇이 들어있는지 나중에 따로 자세히 다루도록하겠다.
이렇게 0을 시작부분, 1을 끝나는부분으로 설정한다.
그리고 게임을 한번 플레이해본다.
잘 선이 그어진것같다.
이제 플레이어의 몸이 빨개지는것은 다음시간에....
'언리얼 엔진' 카테고리의 다른 글
시작해요 언리얼 과제 제작기 (0) | 2023.03.18 |
---|---|
언리얼엔진 공부 복습용 -9- 충돌(3) (0) | 2023.01.16 |
언리얼엔진 공부 복습용 -7- 충돌(1) (0) | 2022.10.03 |
언리얼엔진 BP 공부 복습용 -6- 캐릭터 점프 (0) | 2022.10.02 |
언리얼엔진 BP 공부 복습용 -5- 캐릭터 움직임 애니메이션 (0) | 2022.10.02 |