ITween Example Tutorial
< 유니티 에셋 1 : ITween Example Tutorial >
*공식 ITween Example : http://itween.pixelplacement.com/examples.php
Animating 2D(GUITextures)
-GUITextures를 이용한 2D 애니메이션를 ITween으로 구현한다.
1. 패키지를 Import 한다.
[ Assets - Import Package - Custom Package... ]
2. GUITexture의 구성
-PresentationScreen : 빈 오브젝트 (스크립트를 여기에 Add한다)
-iTweenLogo
-PresentsText
-whiteDiagonalGradient : ( 자식 오브젝트는 모두 GUITexture이다)
* PresentationScreen 활성화
* TitleScreen 비활성화
3. GUITexture 만들기
Create Other - GUI Texture를 이용해서 만든다
4. GUITexture 좌표
각 GUITexture의 Inspector의 Pixel Insert 좌표를 화면에 보여질 위치에 설정한다.
- 화면 밖에서 화면 안으로 들어 오는 효과 일 경우 이 좌표는 목적지가 된다. (IN : MoveFrom()함수 사용)
- 화면 안에서 확면 밖으로 나가는 경우 이 좌표는 시작점이 된다. (OUT : MoveTo()함수 사용)
5. iTween의 함수 사용 법
iTween.MoveFrom(gameObject,iTween.Hash("x",-0.4,"time",0.6,"delay",1.2));
--x축 -0.4에서 부터 게임오브젝트에 설정되 좌표까지
--속도(time)는 0.6
--이동후 1.2의 시간 만큼 애니메이션 시간을 흘려보낸다(delay)
< iTween의 해쉬 String >
Property Name | Type | Purpose |
---|---|---|
name | string | an individual name useful for stopping iTweens by name |
audiosource | AudioSource | for which AudioSource to use |
volume | float or double | for the target level of volume |
pitch | float or double | for the target pitch |
time | float or double |
for the time in seconds the animation will take to complete |
delay | float or double | for the time in seconds the animation will wait before beginning 애니메이션 시작 전 대기 시간을 설정 한다. |
easetype | EaseType or string | for the shape of the easing curve applied to the animation 애니메이션에 적용할 완곡 곡선 설정 |
looptype | LoopType or string | for the type of loop to apply once the animation has completed |
onstart | string | for the name of a function to launch at the beginning of the animation |
onstarttarget | GameObject | for a reference to the GameObject that holds the "onstart" method |
onstartparams | Object | for arguments to be sent to the "onstart" method |
onupdate | string | for the name of a function to launch on every step of the animation |
onupdatetarget | GameObject | for a reference to the GameObject that holds the "onupdate" method |
onupdateparams | Object | for arguments to be sent to the "onupdate" method |
oncomplete | string |
for the name of a function to launch at the end of the animation |
oncompletetarget | GameObject |
for a reference to the GameObject that holds the "oncomplete" method |
oncompleteparams | Object | for arguments to be sent to the "oncomplete" method |
ignoretimescale | boolean | setting this to true will allow the animation to continue independent of the current time which is helpful for animating menus after a game has been paused by setting Time.timeScale=0 |
예)
void SwitchToTitleScreen()
{
gameObject.SetActiveRecursively(false); //현재 오브젝트를 비활성화 시킨다.
titleScreen.SetActiveRecursively(true); //다음 오브젝트를 활성화 시킨다.
}
==> 애니메이션이 끝나고 Swtich() 함수를 부르기 위한 hash String을 사용한다.
"oncomplete"
iTween.FadeTo(whiteDiagonalGradient,iTween.Hash("alpha",0,"time",.6,"delay",2.8,"easetype","easeincubic"
,"oncomplete","SwitchToTitleScreen","oncompletetarget",gameObject));
< iTween 함수 >
구분 |
함수 |
설명 |
Scale |
scaleTo() |
|
Punches |
punchPosition() |
|
Shake |
shake() |
|
Stab |
stab() |
|
Audio |
audioTo() |
|
Rotate |
roateTo() |
|
Fade |
fadeTo() |
|
color |
colorTo() |
|
Movement |
moveTo() |
|
< iTween easing type >
링크 : http://www.robertpenner.com/easing/
6. coroutin을 이용한 활성화/비활성화
IEnumerator SwitchToPresentationScreen()
{
yield return new WaitForSeconds(2); //2초간 대기한다.
gameObject.SetActiveRecursively(false); //현재 오브젝트 비활성화
presentationScreen.SetActiveRecursively(true); //활성화
}
void Update()
{
if(Input.GetMouseButtonDown(0)) //coroutine 이 실행될 조건
{
StartCoroutine(SwitchToPresentationScreen());
}
}
'TA > Unity' 카테고리의 다른 글
SDK....빌드셋팅 한방 Xamarin... (0) | 2013.07.23 |
---|---|
iTween Path collider 충돌시 멈추기 (0) | 2013.06.21 |
유니티 라이트 프로브 셰이더 예제 (0) | 2013.06.20 |
TD CameraControl C# (0) | 2013.05.09 |
유니티 C# 공부 모음 (0) | 2013.05.07 |