게임 엔진에 물리 모듈을 탑재 하였고 툴에 연결후 클라이언트 테스트까지 완료 했습니다.
물리 엔진은 마지막까지 nVidia의 PhysX와 Jolt Physics 그리고 Bullet3 에서 고민하다가 Jolt Physics를 선택했습니다.
최근 떠오르는 오픈소스 물리 엔진입니다.
영상에서는 프레임이 끊겨 보이는데요. 녹화 프레임이 낮아서 그런것이고.. 실제로는 144Hz에 모니터에 맞게 144fps로 아주 부드럽게 돌아갑니다. 4000개 정도까지만 테스트 했는데 프레임 저하가 없었습니다.
아직은 RigidBody를 이용한 강체 물리 위주로 마무리 지었고.. 툴에도 RigidBodyComponent만 있습니다.
캐릭터 RagDoll과 물리 매테리얼 작업이 소소하게 남은 상황입니다.
비교적 최신 펜티엄CPU에 AVX2가 없는 경우도 있어서 저사양 호환성을 위해 SSE4.2지원으로 변경했습니다.
Input쪽은 SDL3를 사용했습니다. SDL3에는 풍부한 인풋시스템에 대한 DB가 있어서 어쩔수 없이 선택했습니다.
SDL3를 탑재하는 김에 SDL3에 있는 일부 기반 시스템을 아예 제 엔진으로 가져오면서.. 제 엔진에 있던 Unicode나 기타 유틸리티 코드들을 삭제 하고 SDL3로 변경했습니다.
SDL3의 윈도우 생성과 OS 시그널 시스템등을 그대로 가져왔습니다. 앞으로 맥이나 리눅스로 포팅 할 경우 그래픽만 신경쓰면 되게 하려고요.
다만 SDL3의 그래픽 부분은 가져오지 않습니다.
영상에서 보시다 시피 입력도 잘됩니다.
물리, 입력 시스템이 마무리 되었으니 사운드 시스템까지만 넣고 이제 luau 스크립트 시스템을 탑재해서 간단히 게임을 만들어 보면 될것 같아요
이펙트(파티클)시스템은 나중에 위 시스템까지 전부 마무리 되면 넣으려고요...
감사합니다.
졸트 피직스 사용게임들
Horizon Forbidden West
Death Stranding 2: On the Beach
X4: Foundations
Blood Line: A Rebel Moon Game
War Thunder
Geekbench 7
..등등
그리고 Godot4.4에 물리 모듈로 탑재 되었습니다.