언어/기타
2008.06.07 15:34

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

조회 수 1835 추천 수 1 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄



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

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

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

그림을 표시하는 것은 그림을 보여달라고 엔진에 요청만 하면 되기 때문에 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를 동시에 조작하는 것으로 그림이 어떻게 움직여지는지 알 수 있으실 것입니다.
?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
» 언어/기타 [ODS] 그림을 움직여보겠습니다(Animate) Zeprod 2008.06.07 1835
640 언어/기타 《완벽하게 현실적인 게임을 만들려면 해야되는 조작 몇 가지》-[上편] 자이크로 2005.05.27 1811
639 언어/기타 액션알피지 왕초보도 따라하는.. -스킬만들기- LifeⓘⓢGood 2005.09.08 1789
638 언어/기타 귀찮아‡님의 자동세이브 스크립트의 한글화 J.Clifford 2007.08.20 1771
637 언어/기타 MFC 색상표 file 피군 2006.09.12 1770
636 언어/기타 [DX/VB] DirectDraw? 별거 아냐! (1) DirectDraw객체의 생성과 표면의 생성 악희 2007.07.29 1757
635 언어/기타 액알 의견들을 모집합니다. 비밀소년 2006.08.03 1746
634 언어/기타 게이지바 만들기 블리쳐 2005.06.24 1740
633 언어/기타 [DX&C++] 화면에 글씨를 써볼까요. 10 Zeprod 2007.05.22 1735
632 언어/기타 ARM 어셈블리 강좌 #0: 무념 원스타 2006.08.17 1718
631 언어/기타 플레이어가 자기의 이름을 정한다 . [영어] file Norid 2005.05.21 1718
630 언어/기타 대기중에 캐릭터가 움직이게/못움직이게 하려면? 유진 2007.08.24 1700
629 언어/기타 [한단계 도약] 변수 번호의 스위치 2 A. 미스릴 2007.09.13 1694
628 언어/기타 맵배치 이런식으로 하면 되려나요..?'';; file 땅콩아줌마 2006.12.15 1689
627 언어/기타 나라의 PHP 초보탈출 - 1편 나라 2005.05.22 1682
626 언어/기타 [DX&C++] 3D를 넘어 2D로! Zeprod 2007.04.18 1675
625 언어/기타 게임 시나리오 쓰기에 앞서 샤르엘 2007.11.09 1668
624 언어/기타 [다크의 4차원 강좌] 제목 설정의 중요성 1 다크아머 2008.05.19 1651
623 언어/기타 [c++] 생성자,파괴자 챔피온 2005.05.26 1628
622 언어/기타 몬스터의 인공지능 재티s 2006.01.17 1618
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 36 Next
/ 36






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)