메뉴 건너뛰기

창조도시 기록보관소

기타툴 [ODS] 그림을 움직여보겠습니다(Animate)

2008.05.05 20:55

Zeprod 조회 수:1069 추천:1




안녕하십니까, 제프입니다.

예전까지 언어게시판에 여러 강좌를 올렸지만, 이번엔 제가 그동안 만들었던 오딘엔진의 스크립트분야 강좌를 이곳에 게제하려합니다.
(전까지 게제했던 스크립트 강좌 세편을 언어게시판에서 이쪽으로 옮겼습니다.)

이전까지 강좌를 보셨다면, 스크립트를 이용해 그림을 출력하는데까지 보셨을 것입니다.

그림을 표시하는 것은 그림을 보여달라고 엔진에 요청만 하면 되기 때문에 Load.ODS 파일만 건드렸지만,

이번에는 계속해서 그림의 위치를 바꾸어주어야 하므로 Render.ODS 파일을 이용해야 할 것입니다.


동영상이란 전에 말했던 것처럼 정지된 그림들을 연속적으로 보여주는 것으로써, 연속된 그림들의 위치를 조금씩 연속적으로 바꾸어 주는 것으로써 만들어 낼 수 있습니다.

오딘 스크립트에선 어떻게 되어야 할지 알아봅시다.




편의상 이전에 띄웠던 그림을 그대로 움직여보는 것으로 하겠습니다.

-------------------------- Load.ODS ------------------------
OBJ $변수명 /* 설명을 달 수 있습니다. */
VAR $X
VAR $Y /*  X, Y는 이번에 그릴 그림의 위치를 저장할 변수입니다. ^^ */
$X = 0
$Y = 0 /* 그림의 초기 위치를 (0, 0)으로 지정합니다. */
$변수명 = Load Image 경로명
Access Image $변수명 -> Visible TRUE /* 이 줄이 추가되었죠? */
-------------------------------------------------------------
이번에 Load.ODS에 추가된 명령어 들은 딱 4가지입니다.
VAR $X, VAR $Y를 통해 $X, $Y 변수를 만들었습니다. 2D 이미지의 경우 위치를 저장하시 귀해 X,Y좌표가 필요하기 때문입니다.

$X = 0, $Y = 0 이 두줄을 통해 $X 변수와 $Y변수를 0으로 만들어 주었지만, 변수 생성시에 자동적으로 0으로 초기화 되므로 삭제해도 큰 차이가 없습니다.

단지, 초기 위치를 설정하는 방법을 설명하기 위해 추가로 적어둔 구문입니다.

이곳의 값을 바꾸어주면 처음 그림이 출력되는 위치가 바뀔 것입니다.




------------ Render.ODS 이 아래부분을 적어주세요 ------------
$X = $X + 0.1
Access Image $변수명 -> Position $X $Y /* 이 줄이 추가되었죠? */
-------------------------------------------------------------
Render.ODS에는 X, Y변수에 따르는 위치로 그림을 옮겨주는 간단한 함수만 1줄이 작성되어있습니다.

Render.ODS는 1프레임마다 실행되는 스크립트입니다.

이곳에서 $X = $X + 0.1 구문을 통해 $X의 값을 0.1씩 증가시켜주는데,

이것으로 인해 그림이 조금씩 X축 기준으로 조금씩 이동할 것입니다.



잘 이해가 안가시더라도, X 증가부분을 Y로 바꾸어보시거나, X, Y를 동시에 조작하는 것으로 그림이 어떻게 움직여지는지 알 수 있으실 것입니다.