본문 바로가기
Game Engine/Unreal

(Unreal) UE4 with PhysX Visual Debugger

by MeisterTJ 2022. 6. 3.

UE4 에서 시각적으로 확인할 수 있는 Collision 들은 UModel 정보를 기반으로 한다.

UE4에서는 PhysX를 사용하여 내부적으로 PhysX Scene을 구성하고,

UModel의 기하 정보들을 전부 convex화 시켜서 PhysX Scene에 전달한다.

 

UE4 Editor의 Viewport 에서는 PhysX Scene이 어떻게 되어 있는지 시각적으로 볼 수가 없다.

nvidia에서 제공하는 PhysX Visual Debugger를 사용하면 PhysX Scene을 시각적으로 디버깅 할 수 있다.

 

 

PhysX Visual Debugger

The PhysX Visual Debugger (PVD) allows you to visualize, debug, and interact with your PhysX application's physical scene representation. The PhysX Visual Debugger (Version 3.0) supports the current PhysX SDK release and all previous versions.

developer.nvidia.com

위 사이트에서 다운로드하고 설치하자.

 

PhysX Visual Debugger를 설치 후 실행하면 위와 같은 화면이 나온다.

 

Editor의 콘솔 커맨드로 pvd connect를 입력 후 Play 하면 Visual Debugger에 씬이 캡쳐된다.

연결을 끊을 때는 pvd disconnect를 입력하면 된다. 

 

PhysX Visual Debugger를 실행하면 특정 포트로 listen을 하고,

UE4에서 pvd connect 후 실행 시 디버거가 listen하는 포트로 연결한 후에 씬 정보를 로컬네트워크로 전송하는 방식이다.

 

언리얼 좌표계에 맞춰서 세팅

Up Axis : Z+

Chirality : Left-Handed

 

UE4 Viewport
PhysX Visual Debugger에서 볼 수 있는 형태

 

UE4 Viewport에서의 Blocking Volume
PhysX에서의 Blocking Volume

위 Blocking Volume은 Concave한 부분이 많기 때문에 PhysX Scene에서는 4개의 Convex로 표현된다.

실제 Collision은 PhysX Visual Debugger에서 볼 수 있는 Convex의 형태로 이루어진다.