이동하는 캐릭터가 많아질경우
서로 교차되는구간에서 서로 부딪혀서 교통체증을 겪게됩니다
역수 속도 장애물 RVO(Reciprocal Velocity Obstacles)알고리즘이나
크라우드 우회 매니저 DCM(Detour Crowd Manager)알고리즘을 통해 해결할수있습니다
만약 회피알고리즘을 적용하지않으면 이처럼 서로 나만의 길을 간다 현상이 일어납니다
사용방법은 간단합니다
플레이어 또는 적용할 대상에게 해당 코드를 추가하시면되겠습니다
//RVO Active
GetCharacterMovement()->bUseRVOAvoidance = true;
//Avoid Radius
GetCharacterMovement()->AvoidanceConsiderationRadius = 300.0f;
GetCharacterMovement()->AvoidanceWeight = 0.5f;
블루프린트에서 해당 값을 변동하셔도 적용됩니다
RVO를 적용했을떄의 모습입니다
서로 길을 가다가 막혀도 RVO시스템때문에 겹쳐서 멈추는 교통체증현상이 해결됩니다
DCM(Detour Crowd Manager)알고리즘입니다
AI의 AI Controller를 DebugCameraController를 선택해주시면되겠습니다
Project Settings -> Engine -> Crowd Manager의 Config탭에서 추가적인 별도의 설정도 가능합니다
'Unreal5 프로젝트 다이어리' 카테고리의 다른 글
Unreal - GameMode로 맵마다 설정을 변경하기 (0) | 2025.05.15 |
---|---|
Unreal - 쿼터뷰 시점 벽에 붙었을떄 카메라의 이동 (0) | 2025.05.15 |
Uneal - EQS Strafe이동 (0) | 2025.05.10 |
Unreal - AI에게 HP 프로그래스바 붙히기 (0) | 2025.05.09 |
Unreal - ProjectTile을 사용한 원거리 AI 만들기 (0) | 2025.05.09 |