728x90 유니티 C#/오류 정리11 스크립트 에러 MissingReferenceException 해결방법 MissingReferenceException 는 삭제된 오브젝트 또는 컴포넌트에 접근할 때 발생하는 에러다. 보통 자동완성 기능으로 오타날일은 없으니 혹시나 Destroy 함수 기능으로 오브젝트를 삭제했는지 확인해보면 된다. 2024. 4. 23. 스크립트 에러 IndexOutOfRangeException 해결방법 IndexOutOfRangeException 는 범위를 벗어났다는 뜻을 갖는 에러다. 배열처럼 크기가 정해져 있는 범위에서 멋어난 범위를 접근할 때 생긴다. 예를 들어 아래처럼 1,2,3 의 정수를 갖는 배열에서 10번째 요소에 접근하려고 하면 IndexOutOfRangeException 에러가 난다. int[] array = {1,2,3} print(array[10]); 2024. 4. 23. 스크립트 에러 UnassignedReferenceException 해결방법 UnassignedReferenceException 는 값이 할당되지 않았을 때 나는 에러다. int, float, char, string, bool 같은 기본 자료형(데이터형)은 따로 값을 할당하지 않으면 기본값이 부여되기 때문에 비어있는 상태아 아니다. 하지만 GameObject 타입에는 값을 할당하지 않으면 에러가 발생하는데, 이렇게 비어있는 변수가 public 상태일 때 나타나는 에러가 UnassignedReferenceException 이다. 아래처럼 public 상태이고 GameObject 타입의 player에 값이 할당되지 않았을 때 발생한다. public GameObject player; void start () { print(player.name); } 2024. 4. 23. 스크립트 에러 NullReferenceException 해결방법 NullReferenceException 는 말 그대로 레퍼런스가 비어있다는 뜻이다. 어떤 값도 할당되지 않은 변수를 사용할 때 발생한다. 예를 들어 아래와 같이 작성했다면 player라는 변수에 값을 할당한 것이 없어 비어있는데 이를 사용하려고 한다면 NullReferenceException 에러가 뜨는 것이다. GameObject player; void start () { print(player.name); } 2024. 4. 23. 오류문 : CS0841 지역 변수는 선언되지 않으면 사용할 수 없습니다. 오류문 'CS0841 지역 변수는 선언되지 않으면 사용할 수 없습니다.'는 변수를 찾을 수 없을 때 나타난다. 변수가 선언되지 않았는데 그 변수를 출력하려고 하면 저런 오류가 난다. 변수를 쓸 때 오타가 났거나, 변수를 선언 했어도 출력함수 아랫줄에 변수를 선언하면 위와 같은 오류가 뜬다. 이를 해결하기 위해서는 변수를 정확하게 쓰고 선언을 함수보다 윗줄에 적어주어야 한다. 예를 들어 이렇게 쓰면 오류가 나지 않지만 string itemName = "총알"; print(itemName); 아래와 같이 쓰면 오류가 난다. print(itemName); string itemName = "총알"; 따라서 변수 선언은 항상 윗줄에 적어주는 것이 좋다. 2024. 4. 20. 갑자기 유니티가 열리지 않을 때 컴퓨터를 껐다 켜도, 유니티를 저장하고 껐다가 켜도, 열려있는 유니티에서 새 프로잭트를 클릭해도 아무 반응이 없다면? 이런 경우 보통 라이센스가 끝난 경우가 대부분이다. 이럴때는 유니티 말고 "유니티 허브" 를 열어라 그럼 라이센스가 만료되어있을 것이다. ㅎㅎ 라이센스 만료되었다고 안내문이라도 띄워주던가.. 이럴땐 참 불친절한 유니티 .. 2023. 8. 8. 오류문 : A problem occurred evaluating project ':launcher'. > Failed to apply plugin [id 'com.android.application'] > Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project .. A problem occurred evaluating project ':launcher'. > Failed to apply plugin [id 'com.android.application'] > Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory.... 콘솔창에 이러한 오류가 뜬다면 경로에 한글이 들어간 경우이다. 유니티 허브에 들어가서 해당 프로젝트가 [C:\Users\김철수컴퓨터\Decltop\unitytest\game] 이런식으로 경로 어떠한 곳에도 한글이 있으면 안된다. .. 2023. 5. 23. 오류문 : The name'0' does not exist the current context The name'0' dose not exist the current context if문의 중괄호 { } 안에서 선언된 변수가 중괄호 밖에서 사용되었을 때 나오는 오류문이다. if문의 변수 범위는 아래 참고 https://greenchoco.tistory.com/130 2023. 5. 22. 오류문 : Member '000000' cannot be accessed with an instance reference; qualify it with a type name instead Member '000000' cannot be accessed with an instance reference; qualify it with a type name instead static을 적용하지 않았을 때 나오는 오류 문구이다. 000000에 static을 적용해야한다. static 뜻은 아래 참고 https://greenchoco.tistory.com/137 C#기초 static 메서드 뜻 "정적인"이라는 뜻. 이를 이용하면 객체를 생성하지 않고 멤버를 사용할 수 있게 된다. 즉, 인스턴스를 만들지 않고 쓸 수 있는 메서드로, 객체를 통하지 않고클래스 이름으로 접근한다. 예를 들 greenchoco.tistory.com 2023. 5. 22. 오류문 : All compiler errors have to be fixed before you can and enter playmode! All compiler errors have to be fixed before you can and enter playmode! 유니티에서 플레이모드를 시작하려 할 때 플레이모드 시작이 안되면서 나타나는 오류 문구이다. 해결방법 : C# 스크립트에서 ;(세미콜론)이 입력되지 않았는지 확인한다. 2023. 5. 22. 이전 1 2 다음 728x90