인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

anhyeokjun님의 프로필 이미지
anhyeokjun

작성한 질문수

[Unity] 함께 만들어가는 방치형 게임 개발

오브젝트 풀링 (Object Pooling)

오브젝트 풀링

해결된 질문

작성

·

198

0

안녕하세요 오늘부터 수강 시작했는데 좋은 강의 감사합니다

Spawner에서

var goObj =Base_Mng .Pool.Pooling_OBJ("Monster")

.Get((value) =>

{

value. ''''''''

value.'''''''''

value.''''''''

});

여기서 Get 다음에 value 가 헷갈립니다 ...일회성 함수 만들어서 실행하고 끝인지 ..정확하게 모르겠네요

액션 인데 저게 어떤 의미인지 대충은 알겠는데.. 이해가 안됩니다 ㅠ 다른부분은 자세하게 설명해주셨는데 이부분만 부탁드립니다

 

 

답변 1

0

Pinous님의 프로필 이미지
Pinous
지식공유자

안녕하세요! 좋은 질문 감사드립니다 ㅎㅎ

일단 Get함수는 Action<GameObject>를 매개변수로써 전달을 받게 됩니다.

또한 Get함수 내에는 action?.Invoke(obj)라는 구문이 있는데요,

Get함수에서 Pool에서 꺼내온 obj를 대입을 하는 과정을 보실 수 있으실겁니다.

Action은 하나의 함수를 뜻하기도 하며 '() =>' 구문은 하나의 함수를 유동적으로 만들 수 있는 구문입니다.

현재 Get함수의 매개변수로는 Action<GameObject>가 들어가기에 하나의 함수를 유동적으로 만드는
'() =>'구문 안 쪽에는 GameObject변수가 들어가 있어야 합니다.

'(value) =>' 라는것은

Get에서 받아오는 Action<GameObject>를 뜻하며 이 부분에서 GameObject의 변수명을 임의로 value라는 값으로 지정한 내용입니다.

value는 원하시는 다른 이름으로 변경하셔도 무방합니다.

(GameObject)=> 구문 이후 중괄호 안에 내용을 입력하면

전달하는 GameObject를 기준으로 여러가지 코드를 작성 할 수 있게됩니다.

 

Pinous님의 프로필 이미지
Pinous
지식공유자

답변이 이해가 안되신다면 차주 QnA섹션을 하나 만들어서 영상으로 만들어드리도록 하겠습니다. 만약 어려우시다면 편하게 말씀 부탁드리겠습니다 🙂

anhyeokjun님의 프로필 이미지
anhyeokjun
질문자

친절한 답변 감사합니다 !! 정말 이렇게 좋은 강의를 해주셔서 감사합니다 이번에는 포기하지 않고 끝까지 만들어 볼게요

anhyeokjun님의 프로필 이미지
anhyeokjun
질문자

선생님 혹시 다음 강의 부터 글씨 크기 조금만 더 크게 해주실수 있나요 ? 모바일로 볼때는 글씨가 잘 보이지 않아서요 ㅠㅠ 스크립트 볼때 글씨가 작습니다 ㅠㅠ

Pinous님의 프로필 이미지
Pinous
지식공유자

저도 해당 부분을 인식하여 마지막 강의쯤에는 수정하여 처리 해 놓았습니다 ㅠ.ㅠ 미리 작업하지 못한 점 죄송하고, 좋은 피드백 감사드립니다..!

anhyeokjun님의 프로필 이미지
anhyeokjun
질문자

혹시 선생님 강의에서 작성하신 코드는 어디서 받아 볼수있나요 강의중에 오류나고 비교 하면서 보고 싶어서요 강의 자료에는 에셋만 있어서요

Pinous님의 프로필 이미지
Pinous
지식공유자

소스 코드는 출시까지의 과정이 완료되기 이전에는 따로 제공드리지 않습니다. 코드가 매 강의마다 일부분 수정이 될 수 있어서 그렇습니다. 만약 정확히 따라하셨는데도 오류가 지속된다면 제가 직접 오류 파악을 도움 드릴 수 있으니 편하게 말씀 부탁드리겠습니다 😃

anhyeokjun님의 프로필 이미지
anhyeokjun

작성한 질문수

질문하기