핵심 요약
유니티와 MuJoCo를 활용해 물리 기반 휴머노이드를 생성하고 TorchSharp으로 기기 내에서 직접 SAC 강화학습을 수행하며 퀘스트 MR 환경에서 상호작용하는 프레임워크이다.
배경
유니티(Unity) 환경에서 물리 법칙을 따르는 휴머노이드 캐릭터를 생성하고 외부 파이썬 서버 없이 기기 내에서 직접 강화학습을 수행하여 메타 퀘스트(Meta Quest) MR 환경에서 상호작용할 수 있는 시스템을 구축하여 오픈소스로 공개했다.
커뮤니티 반응
작성자가 직접 개발한 툴체인을 오픈소스로 공개한 것에 대해 긍정적인 반응이며 특히 유니티 내에서 직접 학습이 가능하다는 점에 관심이 집중됐다.
실용적 조언
- 유니티 프로젝트에서 파이썬 연동 없이 강화학습을 구현하려면 TorchSharp과 IL2CPP 브리지를 활용할 수 있다
- 물리 기반 캐릭터 생성 시 MuJoCo의 강체 역학 시뮬레이션을 활용하면 더 정교한 관절 및 충돌 처리가 가능하다
언급된 도구
Unity 6추천
게임 엔진 및 시뮬레이션 환경
MuJoCo추천
물리 시뮬레이션 엔진
TorchSharp추천
.NET 기반 딥러닝 라이브러리
Meta XR SDK추천
VR/MR 상호작용 구현
섹션별 상세
synth-core 패키지는 Daz Genesis 8이나 Mixamo 캐릭터를 MuJoCo 강체 역학 기반의 물리 시뮬레이션 모델로 변환하는 기능을 제공한다. 에디터 위저드나 우클릭 메뉴를 통해 메쉬 기반 충돌 기하학, 관절 설정, 질량 분포가 포함된 휴머노이드를 생성하며 어댑터 패턴을 통해 다양한 스켈레톤 구조로 확장 가능하다.
synth-training은 TorchSharp을 사용하여 유니티 내에서 직접 SAC(Soft Actor-Critic) 알고리즘 기반의 강화학습을 수행한다. 별도의 파이썬 서버 연결 없이 Mac(Metal/MPS), Windows, Quest(CPU)에서 학습이 가능하며 우선순위 경험 재현(Prioritized Experience Replay), 자동 엔트로피 튜닝, 상태 저장 기능 등을 포함한다.
synth-vr 패키지는 메타 퀘스트의 혼합 현실(MR) 기능을 활용하여 가상 캐릭터를 실제 공간에 배치하고 물리 기반 핸드 트래킹으로 상호작용하게 한다. MRUK를 통한 공간 스폰, 깊이 폐색(Depth Occlusion)이 적용된 패스스루 렌더링, 주변광 추정 기능을 통해 실제 손으로 캐릭터를 밀거나 당기는 물리적 상호작용이 가능하다.
기술 스택은 유니티 6, MuJoCo(패치된 유니티 플러그인), TorchSharp(Quest용 IL2CPP 브리지 포함), Meta XR SDK로 구성된다. 특히 퀘스트 기기 내에서 직접 학습을 돌리기 위해 TorchSharp과 IL2CPP 간의 호환성 문제를 해결한 브리지를 적용한 점이 특징이다.
실무 Takeaway
- 유니티 내에서 파이썬 서버 없이 직접 SAC 강화학습을 수행할 수 있는 TorchSharp 기반 학습 환경 구축
- MuJoCo 물리 엔진을 활용해 정교한 강체 역학이 적용된 휴머노이드 캐릭터 자동 생성 워크플로우 제공
- 메타 퀘스트 MR 환경에서 물리 기반 핸드 트래킹을 통해 AI 캐릭터와 직접적인 물리 상호작용 가능
- Apache-2.0 라이선스로 공개되어 상업적 이용 및 기여가 자유로운 오픈소스 프로젝트
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료