
시야 (360도 ❌)



원뿔 화면상에 안 보이게 해야함 ➡ 랜더링 표시 ☐
Cone에 오버랩 = 시야 안에 들어옴
콜리전 프리셋
▶ OverlapAll 모든 것에 겹치는지만 판정하고 통과는 됨

Sphere Overlap Actors 삭제
Component Overlap ActorsSphere Overlap처럼 이 컴포넌트 모양에서 체크Component 는 SightComponent Transform 은 Sight의 Transform 갖고 오기💡 정리

1️⃣ 소유 Actor를 AICharacter로 변경
2️⃣ Sight 가져옴
3️⃣ Sight의 Transform, Sight 컴포넌트 자체를 사용해 오버랩 실행
4️⃣ 오버랩 실행하는데 검출할 타입 : Pawn
5️⃣ 맞는 Pawn들 중에 Player Pawn이 있는지 검출
6️⃣ -1 ➡ 검출 안 됨 (True) ➡ ☐ 체크 해제
7️⃣ False ➡ ☑ 실행 체크 : Player Pawn을 포함하고 있음 ➡ 벡터 설정
8️⃣ Set Value as Vector:
Target – 해당 블랙보드 Key Name – 블랙보드에 들어간 키 이름 : TargetPositionVector Value - 값 : Player의 위치9️⃣ 시야 내에 들어와야만 실행됨

💥 셀렉터에서 검사할 때 문제점
: 플레이어 위치 또는 랜덤 위치에 도달해야만 (BTD_IsNearPlayer, BTS_FindingRandom) 데코레이터가 검사됨



Cast to BP_AICharacter는 AI 캐릭터의 위치나 속성 확인용새 태스크 만들기

기존 Move to는 끝나야 실행되지만 BTT의 AI Move To는 한 Tick 당 실행됨
Tick이 끝나고 나면 다시 검사함
Destination은 블랙보드에서 가져오기
Behavior Tree에 새로 만든 태스크로 변경



스프링 암, 카메라 컴포넌트 삭제
PlayerController가 연결이 안 돼 있는 캐릭터 / 폰들은 전부 AIController가 연결되어 있음
Controlled Actor 조종 당하는 액터는 자기 자신 ➡ this - Self
AI르탄이 다시 동작하지 않는 원인 및 조치
▶ Finish Execute 현재 태스크에 완료 여부 체크 가능1️⃣ 르탄이가 계속 회전함

BTS_FindingRandom이 셀렉터에서 계속 선택되어 Activation이 계속 실행
거리 인식 힘듦 10 ➡ 100
거리가 짧아졌을때만 르탄이가 갱신하도록 Tick에 있던걸 위로 옮김
✅ 가까워졌을 때만 르탄이 갱신됨
2️⃣ 부딪히면 쓰러짐(Ragdoll) 추가
🔻BP_AICharacter

🔻ABP_Main (애니메이션 블루프린트)
AI_Character는 BP_Character ❌ / BP_AICharacter ⭕
Cast to Character 로 변경 (둘을 포괄하는 부모의 역할)
➡ 둘 다 동작 가능하게 바꿈
🔻AnimGraph
경과시간 0 ~ 0.1로 변경 ➡ 바뀐 시간에 따른 오차를 줄여줌
자동 규칙 기반 트랜지션
☑ 체크 : Fall이 끝나야 FallLoop 실행
☐ 체크안함 : 기존의 동작이 끝남과 상관없이 바로 동작 바꿈
3️⃣ 쓰러져도 소리가 계속 재생됨
애니메이션이 Stop 되어도 상태 변화가 일어나게 되면 다시 애니메이션이 재생되기 때문에 애니메이션이 중지되어도 걷는 소리가 계속 재생
🔻AnimGraph(BP_Character)
기존에는 메시를 불러와 애니메이션을 중지했음

Set Anim Instance Class 르탄이가 쓰러지면 플레이어 애니메이션의 인스턴스를 가져와 해당 인스턴스를 제거(None으로 설정)하여 애니메이션과 사운드를 중지
4️⃣ AI 르탄이 이동 속도 점진적으로 빠르게 하기
Event Tick에서 기존 이동 속도 + 증가치를 매 프레임마다 누적
누적된 값을 최대 걷기 속도에 반영
누적 속도가 500 이상이면, 500으로 고정


5️⃣ 사운드 너무 많이, 크게 들림
AI 캐릭터애니메이션 블루프린트 사운드 재생 방식 변경

Play Sound 2D (2D 재생 방식) ➡ 위치와 무관하게 항상 같은 볼륨과 방향으로 들림
Play Sound at Location (3D 재생 방식)으로 변경
➡ 월드의 특정 위치(Location)에서 소리를 재생
➡ 청자의 위치(예: 플레이어 카메라)와의 거리 및 방향에 따라 볼륨과 방향감이 적용됨
사운드 어테뉴에이션

내부 반경과 감쇠 거리를 이용해 사운드 불륨의 거리별 감쇠를 구현
걷기 사운드용 사운드 큐(SC_Walk)에서 어테뉴에이션(볼륨) 속성을 조절
르탄이가 신나보여요