본문 바로가기
Unity

[Unity]Photon Pun Resource폴더 사용하지 않고 GameObject 생성 방법

by SnoopyCoffee 2022. 8. 16.
반응형

이번 포스트에서는 제목과 같이 Photon Punt Resource폴더를 사용하지 않고 GameObject 생성 방법에 대해 알아보자!!

 

https://doc.photonengine.com/ko-kr/pun/v2/gameplay/instantiation

 

인스턴스생성 | Photon Engine

Cookie 설정 Photon은 귀하를 로그인 사용자로 식별하고 품질을 개선하고 마케팅을 위해 쿠키를 사용합니다. 아래 Cookie 설정을 확인하고 프라이버시를 관리해 주시기 바랍니다. 당사가 Cookie를 사용

doc.photonengine.com

공식문서에 따르면 PhotonNetwork.Instantiate(); 함수를 사용해서 프리팹을 생성 시킨다.

PhotonNetwork.Instantiate("MyPrefabName", new Vector3(0, 0, 0), Quaternion.identity, 0);

첫번째 매개변수에는 Resource폴더에 있는 프리팹의 이름을 집어 넣고 나머지 매개변수를 채워주면 Resource폴더에 있는 프리팹이 생성이 된다.

하지만!!

나는 프리팹을 로드 시킬 것이 아니고 스크립트를 통해서 만들어진 GameObject를 생성하고 싶었다.

 

그래서 몇시간 가량 뻘짓을 하다가 찾아낸 방법은 바로DefaultPool과 ResourceCache 방법이다.

DefaultPool pool = PhotonNetwork.PrefabPool as DefaultPool;
// Name은 오브젝트의 이름, GameObject는 저장할 GameObject
pool.ResourceCache.Add("Name", GameObject);

// 생성할때는 ResoucrceCache에 저장한 오브젝트의 Name을 첫번째 매개변수에 작성해주면 생성
PhotonNetwork.Instantiate("Name",new Vector3(0, 0, 0), Quaternion.identity,0);

 

 

반응형

'Unity' 카테고리의 다른 글

[Unity] Coroutine - 코루틴  (0) 2022.09.21
[Unity] ForceMode  (0) 2022.07.27
[Unity] Mixamo 애니메이션 적용  (0) 2022.07.14
[Unity] Photon 3  (0) 2022.07.11
[Unity] Photon 2  (0) 2022.07.11