System.out.println("Hello, World");

'2012/08/30'에 해당되는 글 3건

  1. 2012.08.30 유니티 이동
  2. 2012.08.30 유니티 Rect
  3. 2012.08.30 유니티 Time.time과 Time.deltaTime



Vector2D A;

Vector2D B;


A.Set(1,1);

B.Set(4,2);

Vector2D tmp = B - A;

tmp.normalize();

m_reDraw.x += tmp.x;

m_reDraw.y += tmp.y;


A와 B의 방향벡터를 구한다. 그후 정규화 시키고 A의 x에다 방향벡터 x를 계속 더해 주고

A의 y에다 방향벡터의 y를 계속 더해주면 직선으로 이동하게 된다.

Posted by 김마농

Rect

Rect 구조는 주로 2차원 작업에 사용되며 UnityGUI 시스템은 위치 카메라뿐만 아니라 광범위하게 사용된다.

new Rect(float left, float top, float width, float height)

  [사각형  위치   ]   [  너비    ] [    높이   ]

Posted by 김마농

1. Time.deltaTime

float Time.deltatime

초단위로 시간이 카운트되며 마지막프레임에서 완료된다.


2. Time.time

float Time.time

선언된 시점에서 카운트가 시작된다.


Start()에서 m_lastTime을 선언한다. 하지만 Start()에서 선언되었기 때문에 0이 된다. 


OnGUI에서 float time = Time.time 선언해줘서 카운트가 시작된다. 


time - m_lastTime > 0.1이 성립하기 위해서 0,1초 지난후 이미지가 이동하기 시작한다. 


만약 0.1초 대신 2를 집어넣었으면 2초후에 이동하게 된다.



위처럼 Start에서 m_lastTime 선언해주고 OnGUI에서도 float time = Time.time을 선언해준다. 


똑같이 m_lastTime은 start()에서 선언되었기 때문에 0이며 time은 계속 카운트된다.


그리하여 time - m_lastTime으로 0.1초 이상일때 이미지가 이동하게 된다. 


하지만 m_lastTime = time으로 선언해주었기 때문에 0이었던 m_lastTime은 0.1이 된다. 


time - m_lastTime > 0.1을 만족하기 위해 time은 계속 돌아가며 계속 0.1초마다 이미지가 이동하게 된다. 


만약 여기서 0.1 대신 2를 집어넣었다면 2초마다 이미지가 이동하게 되어 뚝 뚝 끊켜 보일 것이다.

Posted by 김마농