728x90
유니티에서 씬을 이동하여 장면을 변경하거나 공간을 변경하는 경우가 생기는데 씬을 이동할 경우, 기존 씬에 존재하는 데이터들이 모두 사라지고 정보를 가지고 올 수 없게 된다. 유니티 현재 씬에 존재하는 데이터를 다음 씬을 이동했을 때에도 사용하고 싶은 경우, [ DontDestroyOnLoad ] 를 사용하여 오브젝트가 사라지는것을 방지하고 다음 씬에서도 사용할 수 있도록한다. [사용법] private void Awake() { DontDestroyOnLoad(gameObject); }
Quaternion(쿼터니언) 게임 오브젝트의 방향 또는 회전을 나타내기 위해 사용할 수 있다. 내부적으로 4개의 값으로 이루어지며 각 성분은 축이나 각도를 의미하는 것이 아니라, 하나의 벡터(x,y,z)와 하나의 스칼라(w)를 의미하고 있다. Euler angle(오일러 각) 절차적으로 적용되는 x,y,z의 각도 값 3개로 표시 된다. 3차원 공간의 절대좌표를 기준으로 특정 게임 오브젝트에 오일러 회전을 측정하는 방식 이다.
오브젝트 간의 transform position 거리 체크 방법 1. Distance Vector3.Distance(a,b)는 a와 b 사이의 거리를 측정한 것이다. //(a-b).magnitude와 같은 역할을 한다 2. Magnitude Vector의 길이를 반환 하고 읽기 전용이다. 1번과 2번은 정확한 거리를 알고 싶을 때 사용된다. 3. SqrMagnitude Vector3.sqrMagnitude 또한 거리를 a,b사이의 거리를 체크한다. 루트 연산을 하지 않으므로, 연산속도가 빠르다. 하지만 정확한 거리가 측정되지 않기 때문에 정확한 거리는 몰라도 되고 거리를 비교할 때 사용된다.
전처리기 유니티는 하나의 프로젝트로 여러가지 플랫폼 빌드가 가능한 멀티 플랫폼이 가능하기 떄문에 각기 다른 플랫폼 적용이 쉽지 않다. 안드로이드, IOS, 윈도우 각각 플랫폼 마다 적용해야하는 코드가 다를 수 있다. 플랫폼이 바뀔때 마다 스크립트를 각각 별도로 만들어야하고 동적으로 플랫폼을 확인한 후에 컴포넌트를 추가 해야한다. 이럴 때 사용 하는 것이 전처리기이다. [유니티에서 지정해 놓은 전처리기] Define 기능 각 플랫폼 또는 특정 버전에 특화된 코드를 처리할 떄 매우 유용한 방법이다. 1. #if #elif #else #endif - #if(UNITY_ANDROID) : 안드로이드 플랫폼일경우 - #if(!UNITY_ANDROID) : 안드로이드 플랫폼이 아닐경우 - #if(UNITY_ANDR..
선형 보간법 이란? 끝의 값이 주어졌을 때 그 사이에 위치한 값을 추정하기 위해서 직선 거리에 따라 선형적으로 계산하는 방법이다. 예를 들어, 두 끝점이 주어졌을 때, 두 점 사이의 값을 알기 위해 선형 보간법을 사용 할 수 있다. float a = 시작 값. float b = 끝 값.float value = 시작과 끝 사이의 값. Mathf.Lerp Vector3.Lerp(A,B,Value) -> Value(0~1)량 만큼 A와 B를 선형보간한다. (%으로 리턴)//일반적으로 위치 값을 보간할 때는 선형보간을 사용한다. Vector3.Slerp(A,B,Value) -> Value(0~1)량 만큼 A와 B를 구간보간한다. //일반적으로 방향 값을 보간할 때는 구면보간을 함 Mathf.InverseLerp..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.