2016년 6월 27일 월요일

아두니티(ARDUnity) 소개

아두니티는 아두이노(Arduino)와 유니티(Unity)의 합성어로 유니티에서 아두이노를 할 수 있도록 만든 유니티 에셋입니다.

현재, 아두니티는 유니티 에셋 스토어를 통해 얻을 수 있습니다.
아두니티는 Basic과 Deluxe로 에디션이 나뉘어있는데, 그 목적은 다음과 같습니다.

아두이노 스케치 자동 생성
아두니티의 가장 큰 특징 중 하나는 바로 아두이노 작동에 필요한 스케치를 자동 생성해준다는 것입니다. 유니티는 C#기반 개발 환경입니다. 하지만, 유니티는 C#을 다루는 프로그래머가 아니더라도 결과를 낼 수 있는 여러 기능들을 갖고 있으며 이것이 유니티의 강점이라고 생각합니다.
아두이노는 C/C++기반 개발 환경이기에 반드시 C/C++ 언어를 배워야만 결과를 낼 수 있습니다.
물론, 전통적인 임베디드 개발에 비교해서는 아두이노가 아주 쉬운 것이지만, 유니티를 사용하는 아티스트의 경우 프로그래밍 언어를 배운다는 것은 큰 부담이 아닐 수 없습니다.
또한, 유니티와 아두이노가 서로 유기적으로 작동하기 위한 프로토콜을 만들어야 하므로 프로그래밍을 하는 것은 더 어렵습니다.
이에 아두니티는 유니티에서 아두이노 스케치를 자동 생성할 수 있는 기능을 제공합니다.
또한, 아두니티의 각 컴포넌트들은 아두이노 스케치를 섬세하게 다룰 수 있도록 스케치 옵션을 제공하기에 아두이노 스케치를 다루지 않아도 큰 불편함이 없습니다.

Wire Editor
유니티는 컴포넌트기반 프로그래밍을 지향하기에 아두니티의 모든 기능도 컴포넌트로 제공됩니다.
아두니티 컴포넌트는 마치 하드웨어처럼 서로 연결되어 작동할 수 있도록 설계되었습니다. 이에 유니티 게임 오브젝트에 추가된 각 컴포넌트들을 연결할 수 있는 Wire Editor가 있어서 매우 편리하게 사용할 수 있습니다.

오픈 소스
아두니티의 모든 컴포넌트는 오픈 소스입니다. 이 말은 각 컴포넌트 소스를 참고하여 수정하거나 새로운 것을 만들어낼 수 있다는 뜻입니다.
수정되거나 새로 개발된 컴포넌트는 에셋 스토어를 통해 재 판매될 수도 있습니다.

하드웨어 독립적
아두니티는 아두이노 호환 모든 보드에서 작동될 수 있습니다. 심지어는 아두이노가 아닌 보드에서도 적절히 포팅만 된다면 작동될 수 있도록 모든 코드를 하드웨어 독립적으로 만들었습니다.



아두니티는 아두이노와 유니티를 단순히 연결만 하지 않았습니다. 매우 유연하고 확장성있는 아키텍처를 가지고 수 많은 활용 예를 만들어내는 데 탁월할 것입니다.

댓글 1개:

  1. 안녕하세요, 사이트 뒤적거리다 여기까지 흘러들어왔습니다 ㅠㅠ
    저는 디지털 미디어 디자인 전공하는 학생인데,
    아두니티 사용중에 갑자기 잘되던 버튼이 인식되지 않습니다..
    true와 false 도 갑자기 변하지 않는데 이유가 무엇일까요
    connect는 정상적으로 됩니다!
    도무지 알 수가 없습니다.. 변화를 준 값도 없구요
    한번만 도와주세요 ㅠㅠ

    답글삭제