콘텐츠로 이동

GitHub에서 바로 OpenSCENARIO 미리보기 — drawtonomy Chrome 확장 프로그램

OpenSCENARIO 작업은 대부분 GitHub에서 시작됩니다. 시나리오는 리포지토리에 저장되고 풀 리퀘스트로 올라오는데, 그 내용을 파악하려면 보통 리포지토리를 클론하고 시뮬레이터를 준비한 뒤 실제로 파일을 실행해봐야 합니다.

drawtonomy for GitHub는 이 과정을 통째로 건너뛰게 해주는 무료 Chrome 확장 프로그램입니다. .xosc 파일을 github.com에서 바로 재생할 수 있습니다 — 다운로드도, 설치도, 시뮬레이터도 필요 없습니다.

Chrome 웹 스토어에서 설치하기 →

GitHub에서 esmini 시나리오를 미리 보고, 하나를 에디터로 열어 이벤트를 편집한 뒤, 구간을 잘라 클립으로 내보내는 과정.
동작 위치github.com — 파일 페이지와 폴더 목록
미리보기 대상공개 리포지토리 안의 OpenSCENARIO .xosc 파일
자동으로 해결되는 것시나리오에 필요한 도로망과 차량 카탈로그
수집하는 정보없음 — 분석 도구도, 계정도 필요 없습니다

Chrome 웹 스토어에서 drawtonomy for GitHub를 설치합니다. 별도 설정도, 계정 생성도 필요 없습니다. .xosc 파일이 있는 GitHub 페이지를 열면 곧바로 사용할 수 있습니다.

Chrome 웹 스토어의 drawtonomy for GitHub 등록 페이지. GitHub 파일 페이지에서 lane_change.xosc 시나리오가 인라인으로 미리보기되는 모습

GitHub을 벗어나지 않고 시나리오 미리보기

섹션 제목: “GitHub을 벗어나지 않고 시나리오 미리보기”

OpenSCENARIO 파일이 담긴 공개 리포지토리를 열어봅니다. 예를 들어 esmini/esminiresources/ 폴더에는 수십 개의 샘플 시나리오가 들어 있습니다.

GitHub 목록에 .xosc 파일이나 그런 파일들이 든 폴더가 보이면, 그 옆에 작은 ▶ 재생 칩이 붙습니다. 시나리오가 들어 있는 폴더에는 개수까지 표시되므로 클릭하기 전에 안에 몇 개가 있는지 알 수 있습니다.

esmini/resources의 GitHub 디렉터리 목록. xosc 폴더와 scenario_construct_examples 폴더에 재생 칩과 시나리오 개수가 표시됨

칩을 클릭하면 페이지 위에 뜨는 팝업 창에서 도로, 차량, 전체 이벤트 타임라인까지 시나리오가 그대로 재생됩니다.

GitHub 미리보기 안에서 재생 중인 cut-in.xosc 시나리오. LOGIC 타임라인에 CutInAndBrakeAct 이벤트가 표시됨

폴더 하나를 통째로 훑어보고 싶다면 미리보기를 닫지 않고도 ◀ ▶ 버튼(또는 방향키)으로 다음 시나리오로 넘어갈 수 있습니다. 상단의 파일명을 클릭하면 하나씩 넘기는 대신 목록에서 원하는 시나리오로 바로 이동할 수 있습니다. 리포지토리가 하위 폴더마다 시나리오 하나씩을 담아두는 구조라면, 폴더의 칩을 열었을 때 그 폴더와 하위 폴더의 모든 시나리오를 이어서 훑어볼 수 있습니다.

폴더가 아니라 .xosc 파일을 직접 열면, GitHub의 Raw / Copy / Download 버튼 옆에 같은 미리보기가 인라인으로 나타납니다.

동작
Esc미리보기 닫기
/ 이전 / 다음 시나리오
이동 목록 안에서 위아래로 이동
Enter선택한 시나리오 열기

미리보기로는 시나리오가 무엇을 하는지 확인할 수 있습니다. 직접 수정하고 싶어지면 Open in drawtonomy를 클릭하세요. 같은 시나리오가 새 탭의 풀 에디터로 전달되는데, 이때 도로와 필요한 카탈로그가 이미 해결되어 있어 바로 재생할 수 있습니다.

새 탭의 drawtonomy 풀 에디터에서 열린 acc-test 시나리오. GitHub에서 열렸음을 알리는 토스트가 함께 표시됨

이렇게 열린 링크는 평범하게 공유 가능한 URL입니다 — 확장 프로그램이 있든 없든 누구나 열 수 있습니다.

에디터에 들어오면 시나리오를 훨씬 보기 편하게 만들어주는 설정이 두 가지 있습니다.

  • Follow: Ego는 카메라를 자차(ego vehicle)에 고정합니다. 가져온 도로가 수 킬로미터에 달할 때 특히 중요합니다.
  • Ghost는 지나간 위치를 궤적으로 남겨서, 컷인처럼 순식간에 지나가는 동작도 그 순간을 놓치지 않고 한눈에 파악할 수 있는 그림으로 만들어줍니다.

4배속으로 재생 중인 acc-test 시나리오. Follow Ego와 고스트 궤적이 컷인 동작을 보여줌

전체 재생 컨트롤은 재생을 참고하세요.

가져온 시나리오는 읽기 전용이 아닙니다. 이벤트 카드를 클릭하면 이벤트 에디터가 열리고, 트리거나 액션을 바꾼 뒤 다시 재생해서 새로운 동작을 확인할 수 있습니다.

LaneChange2Event를 연 이벤트 에디터. 시뮬레이션 시간 트리거와 Change Lane 액션이 표시됨

편집한 시나리오를 재생한 모습. 고스트 궤적에 변경된 차선 변경 동작이 나타남

각 옵션이 하는 일은 액션트리거에서 확인할 수 있습니다.

중요한 구간만 클립으로 내보내기

섹션 제목: “중요한 구간만 클립으로 내보내기”

전체 실행이 필요한 경우는 드물고, 대개는 무언가 흥미로운 일이 벌어지는 몇 초만 있으면 됩니다. Export video는 바로 그 구간만 .webm 파일로 녹화해주므로, 풀 리퀘스트 댓글이나 티켓, 리뷰 자료에 바로 첨부할 수 있습니다.

EXPORT VIDEO 패널. 화면 비율, 카메라, 반경, 고스트 설정과 3.85초부터 8.33초까지의 Trim 구간이 표시됨

RangeTrim으로 설정하고, 시크 바의 두 핸들을 원하는 구간으로 드래그한 뒤 Start를 클릭합니다. 화면 비율, 카메라가 자차를 따라갈지 전체 장면에 맞출지, 녹화에 고스트 궤적을 포함할지도 선택할 수 있습니다.

브라우저 탭에서 재생 중인 내보낸 .webm 파일

이 확장 프로그램은 아무것도 수집하지 않습니다 — 분석 도구도, 계정도, 자체 서버로 전송되는 데이터도 없습니다. 파일을 미리 보는 것은 drawtonomy.com에서 같은 시나리오를 새 탭으로 여는 것과 동일합니다. 자세한 내용은 Chrome 확장 프로그램 개인정보 보호정책을 참고하세요.

  • 공개 리포지토리만 지원합니다. 비공개 리포지토리는 지원하지 않습니다.
  • .xosc 파일만 지원합니다 — 단독 .xodr 도로 파일은 아직 미리볼 수 없습니다.
  • Windows 스타일 경로나 시뮬레이터 내장 지도를 참조하는 시나리오(같은 리포지토리 안의 .xodr이 아닌 경우)는 도로를 자동으로 해결할 수 없으므로, drawtonomy가 직접 도로 파일을 지정해달라고 요청합니다.
  • 풀 리퀘스트의 “Files changed” 비교 화면에는 아직 미리보기 버튼이 나타나지 않습니다 — 대신 파일 자체를 열어주세요.

미리보기가 불러오는 앱 URL을 바꾸거나 자동 미리보기를 켜는 설정은 확장 프로그램의 옵션 페이지(툴바 팝업 → Options)에서 할 수 있습니다.

확장 프로그램이 하는 일은 링크 하나로도 똑같이 할 수 있습니다. GitHub 파일 URL을 ?open= 뒤에 붙이면 됩니다.

https://drawtonomy.com/?open=https://github.com/esmini/esmini/blob/master/resources/xosc/cut-in.xosc

esmini의 cut-in 시나리오 열기 →

이 링크는 확장 프로그램 설치 여부와 관계없이 누구에게나 동작하므로, 동료에게 시나리오를 공유할 때 유용합니다. 자세한 내용은 .xosc 열고 재생하기를 참고하세요.