오늘도 꾸준히 연습을 합니다.
천천히 프로그램에 대해 알아가는 과정입니다.
지난번에 한것은?
지난 시간에는 간단히 오브젝트를 생성하고 의존성을 부여하는 것을 해봤고
이동 및 회전 크기조절 기능을 이용해 볼 수 있었습니다.
이번시간에도
조금이나마 공부를 해야하겠지요 즐겁게 ^^
개념적인 내용인데요. 게임의 오브젝트와 컴포넌트라는 것입니다.
게임 오브젝트와 컴포넌트
Component !
게임오브젝트는 유니티 엔진의 가장 기본적인 개념으로 게임상의 모든 것들이죠.
이 오브젝트에 컴포넌트라는 것을 추가하여 해당 오브젝트의 역할을 부여할 수 있습니다.
기본적으로 모든 오브젝트에는 트랜스폼 컴포넌트를 갖습니다. 이것으로 오브젝트의 크기 위치를 정할 수 있습니다. (삭제불가) 저번시간에 잠깐 이용해 봤었는데요.
네모난 트랜스폼 컴포넌트
그 외에도 다양한 컴포넌트들이 제공되고 있네요.
이러한 컴포넌트를 붙여서 오브젝트는 빛을 내는 광원이 될 수 도 있고
씬을 보여주는 카메라가 될 수도 있습니다.
추가 방법은 위와 같이 Add component를 눌러서 추가할 수 있습니다.
사용자 정의 컴포넌트
커스텀컴포넌트
사용자가 직접 만든 컴포넌트를 불러와 이용할 수 있습니다.
사용방법은 하단 프로젝트 탭에서 우클릭-Create로 가시면 추가할 수 있습니다.
C#을 선택하니 위 화면처럼 스크립트 성분이 하나 추가 되었습니다.
이제 이 성분의 이름을 정하고 코드를 작성하여 기능을 부여하실 수 있습니다.
컴포넌트 아이콘을 더블클릭하면 아래와 같이 편집기로 실행 되어 바로바로 수정할 수 있습니다.
다음으로
애니메이션
움직이게 한다?
유니티 시스템에서는 메카님(Mechanim)으로 부르며 애니메이션 기능을 제공하고 있습니다.
애니메이션 클립과 애니메이터 컨트롤러
Animation clip, Animator controller
오브젝트가 어떻게 움직이도록 할것인지 정보를 저장하는 애니메이션 클립과
어떤 애니메이션을 재생할 것인지 핸들링하는 애니메이터 컨트롤러가 있음.
이러한 애니메이션은 외부(3ds max, Maya)에서 작업하여 불러올 수 있고,
자체 유니티 기능을 이용해서도 간단하게 만들어 볼 수 있음.
애니메이션 클립을 모아 어느 기점애서 애니메이션을 실행할 지 결정하는 것이 바로 애니메이터 컨트롤러!
외부 애니메이션 데이터 불러오기
FBX
외부 파일을 Project 트리에 드래그앤 드롭하여 추가할 수 있음.
세모 버튼을 누르면 구성 내용 들이 나타남
Attck 이라는 애니메이션 클립이 작성 되어 있습니다.
inspector 창에서 애니메이션에 대한 수정을 할 수 있습니다.
(길이, 반복 여부 등)
유니티 엔진에서 애니메이션 생성하기
Top 메뉴 Window에서 -Animation - Animation 메뉴를 클릭하면 Animation 탭을 이용할 수 있습니다.
위와 같이 나타납니다.
이 때 오브젝트를 하나 선택하면 Create 버튼을 누르라고 나타납니다.
create를 클릭하여 새로운 애니메이션 클립을 생성 합니다.
rotating이라는 이름으로 생성 하였고 상단 animator 탭으로 가보면 위와 같이 해당 애니메이션이 추가되어 있습니다.
다시 animation 탭으로 가서 Add property를 클릭하고 Transform - rotation을 선택합니다.
이렇게 y방향 360 을 입력하고 재생해보면 큐브 오브젝트가 360도 회전하는 것을 볼 수 있습니다.
아래 동영상 링크입니다.
blog.naver.com/xenostep/222258774389
Unity 개발 튜토리얼부터 #3
오늘도 꾸준히 연습을 합니다.천천히 프로그램에 대해 알아가는 과정입니다. 지난번에 한것은?지난 시...
blog.naver.com
Animator
애니메이터 컨트롤러는 위와 같은 하나의 단위 애니메이션 들을 모아서 원하는 모션을 재생할 수 있도록 합니다.
애니메이터는 State, transition, parameter 로 구성 됩니다.
네모 박스로 나타나는 것이 state이며 선택하면 inspector 창에서 간단한 설정을 할 수 있습니다.
State의 종류
Entry, any state, exit
Entry 는 특수 State로서 애니메이션의 진입점입니다.
Entry에 첫 번째로 연결된 애니메이션이 가장 먼저 재생 되고 주황색으로 표시됩니다.
Any state는 트랜지션 조건이 만족되면 다음 state의 animation을 재생하도록 하는 기능입니다.
Exit는 animation 종료 입니다. 해당 node에 도달하면 entry 부터 다시 시작됩니다.
Parameter
파라미터는 애니메이션 간 전환 조건을 정의할 수 있는 기능입니다.
Float, int, bool, Trigger 의 조건을 작성하여 적용할 수 있습니다.
Transition
트랜지션은 State들을 연결하는 것을 뜻합니다.
애니메이션의 진행 순서를 정할 수 있습니다.