본문 바로가기
웹툰 스케치업/Dynamic Components

스케치업에서 간단하게 동적구성요소 만들기

by Kwoon 2021. 8. 24.
반응형

 

오늘은 스케치업에서 간단하게 움직일 수 있는 동적구성요소를 만드는 방법을 알아 봅니다.

동적구성요소란 스케치업에서 객체에 동적인 환경을 부여하는 것으로 움직이거나 회전 혹은 확대 축소 등의 요소를 객체에 적용해 주는 것을 말합니다.

동적구성요소는 3가지 기능이 있는데, 오늘은 동적구성요소를 동작해주는 [상호작용]과 [구성요소 속성]에 대해서 알아 보도록 합니다.

 

먼저 스케치업에서 객체를 만든 후 그룹으로 묶고 위 그림처럼 마우스 오른쪽 버튼을 눌러 나타난 메뉴 중에 구성요소 만들기를 선택 합니다.

구성요소는 이름과 축방향이 중요한데 위 그림에서 보면 축의 위치가 문 위치에서 약간 떨어져 있습니다. 때문에 [구성요소 축 설정] 버튼을 눌러 축을 재설정 해줘야 합니다.

축설정은 그냥 마우스를 가져가면 위 그림처럼 새로운 축표시가 하나 더생기며 x축을 먼저 클릭하고 y축을 클릭해주면 축설정이 왼료 됩니다. 위치가 맞기 않거나 축설정이 잘못 된 경우 반복해서 설정해 주면 되므로 정확하게 문의 위치에 맞도록 설정을 합니다.

축 설정이 끝나면 [만들기]버튼을 눌러 구성요소(컴포넌트)를 완성 합니다.

이렇게 구성요소가 생성되면 이제 구성요소에 동적인 요소를 설정하여 적용 할 수 있습니다.

 

이제 구성요소를 선택하고, 위그림처럼 3번째 구성요소 속성 이이콘을 클릭하면 옵션창이 나타납니다.

구성요소의 이름을 확인하고, 그 아래 +아이콘을 클릭하면 이제 속성을 추가 할 수 있는 메뉴가 나타 납니다.

먼저 동적요소의 좌표를 설정해줘야 하므로 위치, 사용자, 회전 중의 위치 좌표중 하나를 선택 합니다. 여기서는 문을 여닫는 동작을 셋팅 할 것이므로 회전에서 Z축을 선택 해 줍니다.

z축을 선택하면 위 그림과 같이 RotZ이란 변수명이 생기고(여기서 변수명은 대소문자를 구분합니다) 변수값에는 0이라는 수치가 입력됩니다.(통상 0은 0도를 뜻하고 위치를 바꾸지 않는 한 기본값으로 셋팅 됩니다)

 

이제 문을 회전하기 위해 취할 동작을 설정 해 줘야 합니다.

+를 누르면 나타나는 메뉴에서 [동작]란의 onClick 옵션을 선택 합니다.

그리고 onClick의 변수입력창을 클릭하여 입력대기모드로 진입 합니다.

위 그림처럼 함수탭을 클릭하고 onClick 함수중에 ANIMATESLOW를 선택 합니다.

화면 오른쪽 상단의 [삽입] 버튼을 클릭하면 변수값의 형식이 onClick 창에 자동으로 로드 되는데 여기서 "속성"에는 앞서 설정했던 변수인 RotZ을 입력합니다.(대소문자에 주의) 그리고 "상태1",2,3... 에는 회전값을 입력하는데 값을 넣고 콤마(,)를 넣으면 2번째 변경값을 넣을 수 있습니다. 한가지 주의 할점은 최종값에는 반드시 최초의 값인 0(최초값이 0이 아닐 수도 있음)을 반드시 넣어줘야 제자리로 돌아 옵니다. 수치입력이 끝나면 [엔터]키를 눌러 입력을 종료 합니다.

 

이제 그림처럼 상호반을 아이콘을 선택하고 구성요소를 클릭하면 1번째 설정값 만큼 문이 회전 됩니다. 여기서는 2개의 값만 설정 했으므로 45도만큼 회전했다가 다시 클릭하면 0도로 되돌아 옵니다. 설정값에 -를 달아두면 문이 반대로 회전 됩니다.

 

이제 서랍을 여닫는 동적요소를 만들어 봅니다. 구성요소를 만드는 과정은 동일 합니다.

구성요소 속성에서 이번엔 회전이 아닌 위치 중 Y값을 선택 합니다. 현재 객체의 구조 상 서랍이 y축으로 움직여야 하기 때문입니다. 축의 방향을 잘 모를 경우 위 구성요소의 y를 보시면 녹색으로 되어 있는게 보일겁니다. x축은 붉은 색으로 표시되고, z축은 청색으로 표시되므로 위치방향의 색을보고 방향을 가늠 할 수도 있습니다.

 

다시 onClick을 생성하고 이번엔 "속성"에 Y를 입력하고 이동할 값을 입력해 줍니다. 그림에서 보면 최초 위치값이 Y=-0.461cm이므로 제위치로 되돌아 가려면 마지막에 이 값을 입력해 줘야 합니다.

 

참고로 [위치]의 경우 객체를 키우거나 줄이거나 혹은 위치를 변경 한 경우 이 값들이 달라지므로 주의해야 합니다. 같은 구성요소의 경우 구성요소를 수정하면 동일 구성요소 모두가 변경 되지만, 동적요소는 구성요소 각 개체별로 다르게 동작하므로 여러개의 객체를 일일히 클릭하여 수치를 변경해 줘야 원하는 동작을 구현 할 수 있습니다.

이제 클릭해보면 서랍이 열리거나 닫히는것을 확인 할 수 있습니다.

 

참고로 작업과정을 영상으로 담아 보았습니다.

https://youtu.be/KfRYM6ArlfA

예제파일입니다.

door_t001.skp
0.34MB