공부중
[UE4] PawnSensing으로 감지할 때와 안할 때는 어떻게 구분? 본문
언리얼엔진 4에서는 시각과 소리의 센서가 존재한다.
이러한 센서를 가지고 AI를 구성할 때 적의 시야 안에 들어올 때, 혹은 어디선가 소리가 들렸을 때의 판별이 가능하다.
캐릭터의 BP(BluePrint)에서 다음과 같이 추가가 가능하다.
컴포넌트 추가에서 간단하게 추가가 가능하다.
컴포넌트 추가를 하면 다음 뷰포트(View port)에서 다음과 같이 볼 수 있고 디테일 탭에서 수치를 조정 가능하다.
뷰포트에서의 모습
디테일 탭에서 위와같이 범위를 설정 가능하다.
아래쪽에 보면 이벤트가 2종류가 보이는데 적혀있는 그대로 무언가 보게 되었을때와 어떤 노이즈를 들었을 때 발생되는 이벤트이다.
눈에 무엇인가가 보이게 되었을 경우를 가지고 작성해 보려고 해서 해당 이벤트를 추가했다.
실행이 한 가닥있고 무엇을 보았는지 Pawn을 통해서 받을 수 있다.
봤을 때와 못 봤을경우가 나뉘어 있는것이 아니라 그냥 볼 경우 이벤트가 들어오게 되고 해당 디테일 탭에서 작성한 범위에서 아무것도 보지 못했다면 그냥 신호가 들어오지를 않는다.
이러한 경우 때문에 구글링을 해서 찾아보니….
Bool형 변수를 하나 두고 그것으로 On/Off를 시키는데 정말 간단히 보면 다음과 같이 되어있다.
처음에는 저게 뭔 개소리인가 했는데 생각해보니 맞는 말이었다. 볼때는 매번 들어오게 되므로 bool형 변수가 계속 참이 될 것이고
그 이후에 보지 않게 되면 저 OnSeePawn에서 들어오는 신호는 없지만 Delay가 끝나고 난뒤에 실행된 bool의 set함수로 Off가 되니 적절하게 이것을 이용하면 될 것 같았다.
Aㅏ… 뭔가 어처구니가 없긴하지만….. 해답은 찾은 것 같다.
'Programing > UnrealEngine' 카테고리의 다른 글
[UE4]에러 - You do not have any debugging symbols required to display the callstack for this crash. (0) | 2017.11.02 |
---|---|
[UE4]머테리얼 – 오파시티(불투명도,Opacity) (0) | 2015.08.18 |
[UE4]AnimNotifyState – 디버그용 구, 캡슐 그리기 (0) | 2015.07.31 |
[UE4]변수를 콤보박스로??? (0) | 2015.07.29 |
[UE4] 디폴트 프로퍼티 경고 및 오류/Error: CDO Constructor (0) | 2015.07.23 |