• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

SkillSystemWindow 스크립트 drawDatabase함수에서 null참조발생

24.04.26 02:24 작성 24.04.26 02:29 수정 조회수 106

0

강의자료에 있는 스크립트를 그대로 올려도 오류가 발생합니다.

  1. GUI Error: Invalid GUILayout state in SkillSystemWindow view. Verify that all layout Begin/End calls match

    UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

-> DrawDatabase(databaseTypes[toolbarIndex]);부분

  1. NullReferenceException: Object reference not set to an instance of an object

     

     

    ->drawdatabase함수의 dataType.BaseType.GetField ~~~ 부분)

 

답변 3

·

답변을 작성해보세요.

0

보내주신 프로젝트를 확인해보았습니다.

직접 만드신 Category class가 IdentifiedObject를 상속 받지 않아서 생긴 문제입니다.

image
IODatabase에서 관리되는 모든 객체들은 IdentifiedObject를 상속 받아야합니다.

 

image
해당 부분을 다음과 같이 수정하시고, Resources 폴더를 비우신 뒤 다시 Window를 열면 정상적으로 작동합니다.

감사합니다.

강남영님의 프로필

강남영

질문자

2024.04.26

해결됐습니다 감사합니다~ ㅎㅎ

0

강남영님의 프로필

강남영

질문자

2024.04.26

이메일로 파일 송부했습니다~

0

수강해주셔서 감사합니다.

혹시 이전에 Code를 직접 작성하신 부분이 있으실까요?
dataType.BaseType이 null이라는 소리는 dataType이 IdentifiedObject를 상속 받고 있지 않고 있을 가능성이 높습니다.

강남영님의 프로필

강남영

질문자

2024.04.26

아니요, 스크립트 다운받아서 주석으로 강의내용만 추가해가면서 들었습니다. 혹시 몰라 복사스크립트 붙여넣기해서 덮어씌웠는데도 똑같은 현상이 일어납니다

완성된 프로젝트와 개별 스크립트 모두 확인해보았으나 제 쪽에서는 수강생분과 같은 오류가 재현되지 않습니다. muramasa666@naver.com으로 프로젝트를 압축해서 보내주시면 확인해드리겠습니다.