Repolode
URLab-Sim

URLab-Sim/UnrealRoboticsLab

에디터와 런타임에서 MuJoCo 물리를 실행하고, 정확한 접촉 동역학과 Unreal 렌더링을 결합하는 Unreal Engine 5 플러그인입니다.

스타
564
포크
67
열린 이슈
9
마지막 커밋
27일 전

어떤 프로젝트인가요?

UnrealRoboticsLab (URLab)은 MuJoCo 물리 엔진을 Unreal Engine 5에 통합해, 로봇의 접촉 동역학은 MuJoCo로 시뮬레이션하고 조명, 머티리얼, 카메라는 Unreal로 렌더링합니다. Unreal이 렌더링을 처리하는 동안 물리는 별도 스레드에서 실행됩니다.

MJCF .xml 모델을 Content Browser에 드래그하면 조인트, 액추에이터, 텐던, 근육, flexcomp를 포함하고 시뮬레이션을 바로 시작할 수 있는 articulation Blueprint가 생성됩니다. 어떤 static mesh든 컴포넌트 하나만 추가해 물리 바디로 만들 수도 있습니다.

Blueprint, 에디터 내 대시보드, 또는 네트워크를 통한 Python과 ROS 2로 로봇을 제어할 수 있으며, PD 컨트롤러와 실행 중 게인 조정도 지원합니다. 로봇 카메라는 실제 카메라 내부 파라미터를 사용해 RGB, 깊이, 세그멘테이션 데이터를 출력할 수 있고, 에피소드를 기록한 뒤 결정론적으로 재생할 수 있습니다.

핵심 기능

  • 01MJCF 모델을 시뮬레이션을 바로 시작할 수 있는 articulation Blueprint로 가져옵니다.
  • 02Unreal 렌더링과 함께 별도 스레드에서 MuJoCo 물리를 실행합니다.
  • 03Blueprint, 에디터 대시보드, Python, ROS 2에서 액추에이터를 제어합니다.
  • 04로봇 카메라에서 RGB, 깊이, 세그멘테이션 데이터를 캡처합니다.
  • 05시뮬레이션 에피소드를 결정론적으로 기록하고 재생합니다.
  • 06아일랜드, 텐던, 근육, 충돌을 시각화하는 디버깅 오버레이를 제공합니다.

활용 사례

  • 비전 학습에 사용할 사실적인 카메라 출력을 얻으며 로봇 팔이나 보행 로봇을 시뮬레이션합니다.
  • 시뮬레이션된 로봇 카메라에서 레이블이 지정된 RGB, 깊이, 세그멘테이션 데이터를 생성합니다.
  • Unreal 내부의 MuJoCo 모델을 대상으로 Python이나 ROS 2에서 로봇 제어 정책을 프로토타이핑합니다.
  • 디버깅과 평가를 위해 기록된 로봇 에피소드를 재생합니다.

빠른 시작

  1. 1

    하위 모듈을 포함해 플러그인을 클론한 다음 프로젝트의 Plugins 폴더에 넣으세요

    git clone --recurse-submodules https://github.com/URLab-Sim/UnrealRoboticsLab.git
  2. 2

    네이티브 종속성을 한 번 빌드하세요(Windows에서는 build_all.ps1 사용)

    ./build_all.sh
  3. 3

    Unreal Engine C++ 프로젝트를 빌드하세요

사용 전 알아둘 점

  • 테스트 및 지원 대상은 Unreal Engine 5.7뿐이며, Linux Vulkan 드라이버 회귀 문제로 5.8은 사용하지 않는 것이 좋습니다.
  • URLab은 C++ 플러그인이므로 프로젝트는 C++ 프로젝트여야 합니다.
  • 지원 플랫폼은 Windows(Win64)와 Linux(x86_64)뿐입니다.
  • 번들로 제공되는 종속성을 빌드하려면 CMake 3.24 이상과 컴파일러 설정이 필요합니다.

포함된 컬렉션

토픽

자주 묻는 질문

UnrealRoboticsLab은(는) 무엇인가요?
에디터와 런타임에서 MuJoCo 물리를 실행하고, 정확한 접촉 동역학과 Unreal 렌더링을 결합하는 Unreal Engine 5 플러그인입니다. UnrealRoboticsLab (URLab)은 MuJoCo 물리 엔진을 Unreal Engine 5에 통합해, 로봇의 접촉 동역학은 MuJoCo로 시뮬레이션하고 조명, 머티리얼, 카메라는 Unreal로 렌더링합니다. Unreal이 렌더링을 처리하는 동안 물리는 별도 스레드에서 실행됩니다.
UnrealRoboticsLab은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
UnrealRoboticsLab은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
UnrealRoboticsLab은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. UnrealRoboticsLab의 마지막 커밋은 2026년 10월 11일입니다.
UnrealRoboticsLab은(는) 어디에 사용할 수 있나요?
비전 학습에 사용할 사실적인 카메라 출력을 얻으며 로봇 팔이나 보행 로봇을 시뮬레이션합니다. 시뮬레이션된 로봇 카메라에서 레이블이 지정된 RGB, 깊이, 세그멘테이션 데이터를 생성합니다. Unreal 내부의 MuJoCo 모델을 대상으로 Python이나 ROS 2에서 로봇 제어 정책을 프로토타이핑합니다. 디버깅과 평가를 위해 기록된 로봇 에피소드를 재생합니다.
UnrealRoboticsLab는 어떻게 설치하나요?
하위 모듈을 포함해 플러그인을 클론한 다음 프로젝트의 Plugins 폴더에 넣으세요: git clone --recurse-submodules https://github.com/URLab-Sim/UnrealRoboticsLab.git 네이티브 종속성을 한 번 빌드하세요(Windows에서는 build_all.ps1 사용): ./build_all.sh Unreal Engine C++ 프로젝트를 빌드하세요
UnrealRoboticsLab은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/URLab-Sim/UnrealRoboticsLab

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트