반응형

 

  • 삼각비

삼각비는 직각 삼각형에서 각 A에 대해 세 변의 길이가 이루는비가 일정한걸 말한다.

위와 같은 삼각형에서 빗변(r), 대변(y), 이웃변(x)로 확인해보자.

여기서 각 A가 동일하면 다음과 같은 값은 모두 동일하게 이루어진다.

 

1. 이웃변(x) / 빗변(r)

2. 대변(y) / 빗변(r)

3. 대변(y) / 이웃변(x)

 

여기서 1, 2, 3번과 같은 값을 각각 cos, sin, tan으로 명명한다. 다시 정리해보면..

 

1. cosA = x / r

2. sinA = y / r

3. tanA = y / x

 

이렇게 정리해 줄 수 있다. 여기까지 이해됐(외웠...)으면 다음으로 넘어가보자.

 


 

  • 극좌표계

일단, 필자와 같은 수포자들이 '각도로 좌표구하기'로 구글링해서 얻을 수 있는 공식에 대해 알아보자. 각도로 좌표구하기를 검색해서 나오는 공식을 보면

 

radian = degree * Mathf.Deg2Rad

(x, y) = (r * Mathf.cos(radian), r * Mathf.sin(radian))

 

위와 같은 공식을 쉽게 볼 수 있게 된다. 이제 이 공식도 이해를 해보자.

위 그림에 있는 B(r, θ)를 극좌표라고 하는데, 원점에서 떨어진 점 P가 있으면 P(r, θ)로 표시한다. (여기서 r은 극(원점)과 점 P를 잇는 직선의 길이, θ는 각 A를 말한다.)

※ 우리가 보통 알고있는 (x, y)좌표는 직교좌표(데카르트(cartesian) 좌표)이다.

 

우리가 알고싶은것은 점 B의 좌표이다. 점 B의 좌표는 직교좌표로 (x, y)이다.

자, 다시 삼각비를 생각해볼때이다. 삼각비에서 우리는

 

1. cosA = x / r

2. sinA = y / r

 

이것을 이용할 것이다. 뭔가 감이 오지 않는가?

 

1. cosθ = x / r ▶ r * cosθ = x

2. sinθ = y / r ▶ r * sinθ = y

 

즉, (r * Mathf.cos(radian) = x, r * Mathf.sin(radian) = y)가 되는것이다!

다시말해 극좌표 (r, θ) 직교좌표 (r * cosθ, r * sinθ)와 같다.

 

※※ 여기서 극좌표 θ는 radian을 이용한 호도법으로 표시하기 때문에, 우리가 일반적으로 쓰는 degree가 아니라 radian으로 바꿔서 사용해야한다.

 

 

결과적으로 코드를 작성해본다면, 아래와 같은 코드로 작성할 수 있다.

private Vector3 ConvertAngleToVector(float _deg)
{
	var rad = _deg * Mathf.Deg2Rad;
	return new Vector3(Mathf.Cos(rad), Mathf.Sin(rad));
}

 

※※ 필자의 경우 극좌표는 단순히 방향을 알려고할때 사용하기 때문에 r값을 굳이 넣지 않고 사용한다.

※※ 거리도 사용할 경우 cos, sin값에 거리를 곱해주면 된다.

반응형
반응형

※ 본 포스팅은 유니티 2019버전 솔루션입니다.


 

유니티 IAP 테스트 중, 처음보는 오류를 봤습니다.

 

결제를 진행할 때, 결제가 진행되지 않고 로그에 Missing method UnityEngine.VR.VRSettings.enabled ~ 라고 뜨는 현상입니다. 구글링 해보니 IAP update가 진행되지 않아 생긴현상이었습니다.

 

IAP update를 따로 진행하려고 해도 update시도조차 못하게 비활성화 되어있더군요.

포럼에서 찾아본 결과, 유니티 설치 경로에 공백이 있으면 IAP update 진행이 안된다고 합니다.

 

유니티의 기본 설치경로 중 c:\Program files\... 의 공백이 원인이었습니다.

경로를 바꿔서 재설치를 진행한 후, IAP update가 문제없이 진행됐고 정상적으로 IAP가 진행됐습니다!

 


 

 

※ 위와 같이 설치 경로를 공백이 없는 폴더명으로 해주시면 됩니다.

※ 위에서도 언급했듯이 유니티 2019버전 대상으로한 솔루션입니다. 다른 버전도 해당하는 부분인지는 모르겠습니다.

 

 

 

 

 

반응형

+ Recent posts