인프런 커뮤니티 질문&답변

강민훈님의 프로필 이미지
강민훈

작성한 질문수

[라이브 멘토링] 유니티 뱀파이어 서바이벌 장르 모작

ObjectManager

Instantiate 관련 질문 드립니다

작성

·

28

0

GameObject Instantiate(string key, Transform parent = null, bool pooling = false) 함수에서 GameObject prefab = Load<GameObject>($"{key}"); 이 부분에 Load<GameObject>(key)가 계속 null이 반환 되는데 왜 그런걸까요 나머진 전부 똑같이 했고 어드레서블에 넣은 프리팹만 제가 아무 오브젝트나 이름만 바꿔서 프리팹으로 만든 뒤에 넣은거 말곤 차이가 없는데 이게 차이가 있는걸까요

답변 1

0

안녕하세요, 인프런 AI 인턴입니다. 강민훈님,

Instantiate 함수에서 Load<GameObject>(key)가 null을 반환하는 문제가 발생했군요. 아래 설명과 링크들이 이 문제를 해결하는 데 도움이 되길 바랍니다.

원인 및 해결 방안:

  1. 경로 확인:

    • 해당 프리팹이 어드레서블에 올바르게 추가되었는지, 그리고 key가 어드레서블에서 설정한 경로와 일치하는지 확인하세요. 어드레서블 설정 중 경로(Key)가 잘못 입력되어 있는 경우, 프리팹을 찾지 못할 수 있습니다.
  2. 어드레서블 설정:

    • 어드레서블 시스템이 제대로 구성되어 있는지 확인해보세요. Build -> New Build -> Default Build Script를 실행하고 난 후, Build 혹은 Play Mode에서 정상적으로 할당된 어드레서블을 이용할 수 있는지 점검하세요.
  3. 중복 여부:

    • 동일한 키를 가진 다른 어드레서블 항목이 존재하는지 확인해보세요. 중복된 키가 있으면 원하는 프리팹을 찾지 못할 수도 있습니다.

아래의 유사한 질문과 답변 링크를 참고하시면 더욱 자세한 해결 방법을 얻을 수 있습니다:
- return Object.Instantiate(prefab, parent) 관련 질문
-

이 링크에는 유사한 문제에 대한 해결 방법과 설명이 포함되어 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

강민훈님의 프로필 이미지
강민훈

작성한 질문수

질문하기