• [일반] 유니티 엔진 프리팹 관련 도움좀...2019.10.07 PM 06:46

게시물 주소 FONT글자 작게하기 글자 키우기

 

K-002.png

 

스크립트를 만들고 거기에 필요한 오브젝트를 배치하고 프리팹화 시키면

 

 

K-003.png

이렇게 몽땅 데이터를 다 날려버린 상태로 프리팹화 시키네요?

 

문제는 이 오브젝트를 생성해야하는데 아무런 데이터도 저장안한채로 그대로 생성하네요?

 

매번 생성할때마다 컴포넌트 참조해서 쑤셔 넣는건 굉장히 쓸데 없는짓 같은데 왜이렇게 변했죠

 

 

이게 걱정인게 한번에 100마리씩 생성할 수도 있어서 매번 스크립트로 쑤셔 넣는건 비 생산적인거 같습니다.

 

잘 작동도 안하구요

댓글 : 13 개
유니티 버전 바꼈으면 프리팹 시스템 바뀐걸로 아는데...2018.3이후 버전이면 그거 새 프리팹 시스템 찾아보세요
음... 일단 데이터 안날리고 프리펩 됩니다.
문제를 다시 짚어봐야 할듯..
2018. 4.1 f1 씁니다.
프리펩 만들어도 데이터 안날리고 프리펩화 잘됨.
1. 미니언 매니저가 미니언을 생성하는 걸테니까 미니언에 regist하는 함수를 만들고 미니언매니저 -> 미니언 생성 -> regist함수 호출 하는 방식으로 가면 될 것 같네요.

2. 미니언 매니저를 싱글톤으로 작성
혹시 링크되어있는 Enemy_Manager랑 Purple_object가 Prefab안에있는게 아닌거같은데요..
프리펩외부에있는 객체는 넣고나서 프리펩화해도 날아갑니다
예전에는 그렇게 해도 잘 저장 했는데 이젠 아예 날라가게 되나요? ㅠㅠ
Blue_minion이 이미 프리팹인 상황으로 보임
1안) 인스펙터에서 필요한 작업 완료 후
Overrides->apply all 누름
2안) open prefab으로 프리팹 변경 모드 진입 -> save
프리팹 모드 안에 들어가도 어떠한 설정도 안되네요
Blue_minion 자식 오브젝트만 지정할 수 있네요
Minions_Manager의 인스펙터에 설정한 값이 날아간 것 같은데요.
저 값이 어떤 오브젝트의 값이 연결되었느냐에 따라 프리팹에 적용되지 않을 수 있습니다.
Target (Transform)값을 예로 들어 이 Transform이 프리팹에 포함되어 있는 게임오브젝트의 Transform 이 연결된 상태라면, 프리팹에 정상적으로 적용이 될 겁니다.
하지만, 프리팹 외부의 씬내의 다른 게임오브젝트의 Transform 을 연결 했다면, 이것은 프리팹에 적용되지 않습니다. 프리팹을 동적으로 생성할 씬에 그 게임오브젝트가 있을 거라는 보장이 없으니까요.

위의 사례가 아니라면 프리팹 속성을 변경한 후 Apply가 제대로 되지 않았을 것 같네요.
많이 하는 실수로 씬은 저장했는데 프리팹의 변경사항을 Apply 하지 않는 경우가 있습니다.
2019버전에서는 프리팹의 구조가 바뀌어서 Apply 가 다른 방식으로 변경된 것 같더군요.
이 부분은 저도 다뤄보지 않은 부분이라 잘 모르겠네요.
찾아보니 자식 오브젝트 아니면 프리팹화 할때 다 날려버리게 바뀌었다네요

하 종나 복잡하게 업데이트 됐네 슈벌
  • SAY L
  • 2019/10/07 PM 07:15
기존 프리팹 시스템이 좀 중구난방인 점이 있어서 수정한걸로.. 적응하기 힘드시면 구버전 쓰시면됩니당
프리팹 내부에서 참조로 연결하는 방식은 프리팹만 가능한 것이 맞습니다.
구버전에서는 바로 날라가지 않았을뿐이지, 손실이 있긴 있었습니다.
적응하시면 2018.3 이후의 프리팹 구조가 생산성이 좀 더 높습니다.
이게 맞음. 5.3 버전에서도 손실이 있어서
빌드할때 자꾸 저부분 확인했었어야 했음.
친구글 비밀글 댓글 쓰기

user error : Error. B.