2016년 8월 2일 화요일

아두니티 Wire Editor 사용법

유니티는 GameObject에 필요한 Component를 넣는 방법으로 Scene을 만들어 갑니다.
GameObject에 추가된 Component

아두니티도 이와 마찬가지로 GameObject에 아두니티 활용을 위한 Component를 추가해야 합니다.
ARDUnity Component Menu

추가된 아두니티 Component는 서로 연결되어 상호 작용을 해야 하는데, 이를 위해 Wiring이라는 작업을 해야 합니다.
아두니티의 Wire Editor는 이것을 쉽게 할 수 있도록 제공되는 편집기입니다.

이 창을 띄우고 마우스 오른쪽 버튼을 누르면 컴포넌트를 추가할 수 있는 메뉴가 나타납니다.

아두니티 컴포넌트는 크게 2종류로 구분되는데, 아두이노 보드를 위한 것과 유니티를 위한 것으로 나뉩니다.
유니티 Scene에서 제일 먼저 해야 할 일은 아두이노 스케치를 생성하는 것이므로 아두이노 관련 컴포넌트를 추가해야 합니다.
Wire Editor에서 컴포넌트 추가 메뉴가 비활성화되어 있다면 다음 중 하나의 경우입니다.
  • 컴포넌트를 추가할 GameObject가 선택되지 않은 경우
  • 해당 컴포넌트를 추가하려면 특정 컴포넌트가 있어야 하는 경우

컴포넌트를 추가하면 Wire Editor상에 Block이 표현되고, 선택한 GameObject에도 나타납니다.
Wire Editor에 나타난 Block
GameObject에 컴포넌트가 추가된 모습

가급적이면 하나의 GameObject에 여러 컴포넌트를 추가하는 것보다 여러 GameObject에 이름을 매겨 분산시키는 것이 관리하기 좋습니다.
회로 부품 명칭으로 GameObject 구조를 잡은 예

Wire Editor상에서 각 Block을 클릭하면 해당 컴포넌트가 포함된 GameObject가 자동으로 선택됩니다.
Block이 선택된 상황에서 오른쪽 버튼을 클릭하면 삭제 메뉴가 나타나서 원하지 않는 Block은 쉽게 지울 수 있습니다.

Block을 클릭한 상태로 Drag & Drop을 하면 Block의 위치를 이동시킬 수 있습니다.
각 Block에는 Wiring을 할 수 있는 노드(Node)가 존재합니다.

Bold(굵은 글씨) 체로 표현된 노드는 마우스로 클릭하여 Drag할 수 있습니다.
연결되기 전에는 붉은색으로 표현됩니다.

Drag 중 연결 가능한 노드는 흰색으로 표현됩니다.

연결이 완료된 다음은 검은색으로 표현됩니다.

각 노드에 있는 기호는 다음과 같은 의미를 갖고 있습니다.
  • : 참조(Reference)가 필요한 항목
  • : 참조(Reference) 대상
  • ←  : 데이터 전송 시작 지점
  • →  : 데이터 전송 종료 지점


각 노드에 마우스를 놓으면 툴팁(Tooltip)이 표기됩니다.

표시되는 툴팁 중 데이터 전송과 관련된 노드(←, → 표시)의 툴팁은 다음과 같은 형식으로 표현됩니다.
  • Input<Format> : 아두이노에서 유니티로 해당 Format으로 데이터 전송됨
  • Output<Format> : 유니티에서 아두이노로 해당 Format으로 데이터 전송됨
따라서, 이 노드들은 다음의 규칙으로 연결됩니다.
  • Input은 Input끼리 Output은 Output끼리만 연결 가능
  • 두 노드의 Format이 같아야 연결 가능

아두니티 컴포넌트의 종류는 다음과 같습니다.
  • ArdunityApp : 아두이노 보드를 의미하는 것으로 반드시 있어야 함.
  • Controller : 아두이노 보드에서 작동되는 제어 기능
  • CommSocket : 아두이노 보드와 유니티를 연결하는 통신 기능
  • Bridge : Controller와 연결되어 데이터를 가공하는 기능
  • Reactor : 프로그래밍없이 바로 유니티의 기능을 제어할 수 있는 유틸리티


댓글 없음:

댓글 쓰기