-
[Unity 3D] 유니티 빌드 에러(Your project path contains non-ASCII characters) 유니티 빌드를 하다 보니 빌드 실패 에러가 떴다. 에러의 내용을 보아하니 [Your project path contains non-ASCII characters...] 프로젝트의 경로가 아스키코드가 아닌 문자를 포함하고 있다고 한다. 그래서 경로를 확인한 결과 내 이름(한글)으로 되어있었다. 해결 : 프로젝트 경로를 영문으로 바꾼다.
-
[Unity 3D] Physics.OverlapSphere (주변 콜라이더 추출하기) Physics.OverlapSphere - 중점과 반지름으로 가상의 원을 만들어 추출하려는 반경 이내에 들어와 있는 콜라이더들을 반환하는 함수 함수의 반환 값은 Collider 컴포넌트의 배열로 넘어옵니다. 또한 OverlapSphere 함수는 특정 레이어만 검출할 수도 있어요. 예제 위 예제는 주변 동료 몬스터가 공격당했을 때 같이 공격 태세로 전환하기 위한 코드입니다. 특정 레이어만 검출할 수 있도록 "ENEMY" 레이어를 추가했으며, 레이어는 비트 연산 표기법을 사용해서 10번째 레이어를 의미하는 1
-
[Unity 3D] Vector3.Distance (가장 가까운 오브젝트 찾기) Vector3.Distance(Vector3 a, Vector3 b) - a와 b 사이에 거리를 측정해 반환하는 함수 거리를 구하는 방법들 Distance 의외에도 거리를 재는 다른 방법들이 있다. Vector3.Distance 와 magnitude는 정확한 거리 계산을 하고, sqrMagnitude는 단순히 두 오브젝트 간의 거리를 비교할 때 사용한다. sqrMagnitude는 루트 계산을 하지 않기 때문에 Distance와 magnitude 보다 속도가 훨씬 빠르다. 루트 계산을 하지않고 벡터 연산만 한 후 그 벡터의 제곱근의 값만을 반환하기 때문이다. 예제 아래 예제는 Sphere를 기준으로 Sphere와 제일 가까운 큐브를 찾는것이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1..
-
[Unity3D] 유니티 player settings 오류 유니티 업데이트를 하고 player settings을 설정하려고 들어가면 이러한 오류가 쏟아졌네요. GUI 관련으로 계속 오류 찾다가 원인을 도통 찾지 못하였어요. 새로운 프로젝트를 만들어도 이러하였기 때문에.. 결국 빌드를 시도해 보았는데.. 결국 안드로이드 SDK 문제였습니다. 재설치 하니 오류 해결..!
-
[C#] 인터페이스 (Interface) 인터페이스 - 인터페이스는 사용자 정의 자료형이며 메서드, 이벤트, 인덱서, 프로퍼티만을 가질 있지만 직접 구현하지 않고 단지 정의만을 갖는다. 그래서 인터페이스는 추상 멤버로만 구성된 추상 클래스와 개념적으로 유사하며, 클래스는 접근 제한 한정자로 수식하지 않으면 기본적으로 private로 선언되지만, 인터페이스는 접근 제한 한정자를 사용할 수 없고 모든 것이 public으로 선언된다. 또한 인스턴스도 만들 수 없으며, 클래스가 인터페이스를 가지는 경우 해당 인터페이스의 모든 멤버에 대한 구현을 제공해야 한다. 인터페이스 정의 인터페이스는 C# 키워드 interface를 사용하여 정의한다. 인터페이스 정의 시에는 내부 멤버들에 대해 public과 같은 접근 제한자를 사용하지 않는다. 인터페이스 구현 C..