• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

질문있습니다

21.06.29 15:56 작성 조회수 111

1

1. Resources.Load<GameObject>() 메서드를 사용할 때

기본 경로가 Assets/Resources인건가요?? 그래서 함수 매개변수로 Prefabs/Tank만 입력하면 됐었던건가요??

근데 유니티에서 기본적으로 프로젝트를 생성하면 Resources라는 폴더가 없는데 우리가 임의로 생성해준 Resources파일로 알아서 찾아 들어가서 찾아오는건가요?? 그리고 만약 Resources라는 파일의 이름을 잘못 친다면 프리팹을 찾아올 수 없는건가요??

2. Instanciate의 두번째 매개변수 parent를 설정해주면 그 게임 오브젝트의 자식 오브젝트로 생성한다는 뜻인가요??

3. 앞부분에서는 Resource.Load를 사용하셨고 뒷부분에 ResourceManager에서는 Load를 사용하셨는데 둘이 차이점이 있나요??

4. ResourceManager를 만들 때 그냥 기존 함수들을 래핑?매핑? 하는 부분이던데 이렇게 하는 이유는 나중에 break point를 찍어서 추적할 수 있기 때문에 저렇게 한건가요??

답변 1

답변을 작성해보세요.

0

1.
그렇습니다. 유니티 Convention이 그렇게 되어 있습니다.

2.
그렇습니다.
실제로 1+2는 직접 실습을 해보시면 도움이 됩니다.

3.
지금은 별 차이가 없지만 나중에 원하면 추가적인 코드를 넣어줄 수가 있습니다.

4.
3에서 이어지는건데 래핑해서 사용할 경우, 중간에 우리가 원하는 코드를 추가해서 관리할 수 있습니다.
가령 이미 이전에 Load한 애들을 따로 모아서 관리해서, 두 번 로딩하지 않게 한다거나, 로그를 찍는다거나, etc.