inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

유니티(Unity)로 시작하는 게임개발: Part 3. 슈팅게임 개발

ObjectPool 4(적 클래스 적용)

제대로 이해한건지 확인 부탁 드립니다

해결된 질문

163

Hyobin Kim

작성한 질문수 81

0

안녕하세요

두가지 질문이 있습니다

 

첫번째는 제가 제대로 이해를 한건지 확인부탁드립니다

오브젝트풀을 적용하고, 적을 파괴할 때는

ObjectPoolManager.instance.Pool_Asteroid.Destroy(collision.gameObject);

Asteroid를 파괴할 때와는 다르게

            Enemy enemy = collision.GetComponent<Enemy>();

            enemy.GetDestroyed();

직접 해당 게임 오브젝트속에 있는 Enemy Class에 들어가서 파괴하는 함수를 불렀잖아요

 Enemy종류가 여러가지 임에 따라 오브젝트 풀도 여러가지이고, 앞에서 Enemy를 생성할 때는, type이라는 변수를 통해서 특정 Enemy의 오브젝트 풀에 일일이 들어가야 했죠. 

하지만 Enemy가 파괴되는 곳은 Player클래스고 type이라는 변수를 가져와서 ObjectPoolManager 클래스에 들어가는 것 보다는 그냥 바로 Enemy에 들어가서 파괴하는 함수를 불러오는게 편해서 이렇게 하신게 맞나요?

C# unity

답변 1

0

UDevApp

네 적을 적용할때 편해서 그렇게 적용했다고 생각하셔도 될것 같습니다. 

Asteroid 와 다르게 적은 type 이 여러개 있죠.

그걸 외부에서 불러버리면 그걸 가지고 다 if로 적용을 하던지 type 에 따라서 적용을 해야 하니까요. 

하지만 내부에 type 변수가 있으므로 외부에서는 함수를 부르고 내부에서 타입에 따라 처리했습니다. 

사실 구현의 문제이므로 어떻게 사용해도 관계는 없습니다. 

정확히 저희가 원한대로만 동작하면 문제가 없으니까요. 

좋은 하루 되시고요. 감사합니다 

캐릭터 변경에 관해

0

230

1

Asteroid 생성에 관련해서

0

194

1

Part4 유니티로 세가지의 게임만들기 강의

0

211

1

Clamp 사용 시 앞서 설정한 ViewportToWorldPoint의 min, max를 사용하지 않고 새로 설정하는 이유가 있을까요

0

283

1

섹션8 슈팅게임 프로토타입 만들기3(적과 발사체)

0

269

1

캐릭터 고정데이터 로딩 강의

0

326

1

Destroy 함수 질문

0

413

1

GetComponent 강의 질문

0

344

1

transform.position과 transform.Translate 의 차이가 뭔가요??

0

1941

1

강의도중 질문이 있습니다

0

496

1

강의자료

0

284

0

117강 구조체를 정의하여 ShipData 구성

0

224

0

굳이 InitTime을 만들어서 호출 하는 이유가 있나요?

0

291

0

GameManager 의 Start()가 스페이스 누를때마다 반복실행됩니다.

0

415

1

Collider인 other.gameObject;

0

430

0

Generic에 대한 질문이 있습니다.

0

260

0

gameObject.setActive(false);

0

582

1

애플 앱스토어

0

248

0

비주얼스튜디오 오류

0

2151

1

part4강의

0

318

1

발사체 스피드

0

305

1

4분 44초 제가 이해한게 맞는지 궁금합니다

0

271

1

2분 44초 왜 void 함수를 써야하나욤..?

0

362

1

해당 부분 업데이트

0

260

1