• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

코드에서 Mesh Renderer 가 아니라 Rednderer여도 문제가 없는건 왜 인가요?

19.08.16 10:28 작성 조회수 356

1

우선 영상 감사드립니다. 역시 필요한 것 어느정도 가르쳐 주시고 바로 실전에서 확인하게 해 주시는 흐름이 저랑 너무 잘 맞는거 같습니다.

ItemBox.cs 의 Start에서
변수 = GetComponent<Renderer>();가 적혔는데요.
이것이 자신이 가진 컴포넌트중에서 Renderer를 가져오는 것이라는 부분까지는 이해가되었습니다.

하지만 엄밀히 ItemBox 오브젝트가 가지고 있는것은 "Renderer"가 아니라 "Mesh Renderer"인데 이게 장기적(확장적?)으로 문제가 되지 않는지 궁금합니다.
또한 이름이 다른데 어떻게 정확하게 그것으로 인지하고 작동하는지도요

Add component에서 Renderer로 필터링 해 봤을때 10개 정도의 Renderer라는 이름이 붙은 Component가 나왔거든요. 이것이 두 종류 이상 중복으로 들어가는 경우에는 "Renderer"만 가지고 실행하면 문제가 생기지는 않나요?

답변 3

·

답변을 작성해보세요.

1

박제영님의 프로필

박제영

2019.08.16

아 참고로 전 이제민 강사님이 아니고 일반 수강생입니다

그냥 답변 드린거구요 아마 강사님이 또 적어주실거에요 답변

TPS 강의 짱 재미잇습니다 인내심가지고 거기까지 오세용

1

박제영님의 프로필

박제영

2019.08.16

어떤 프로젝트 말씀하시는거에요?

TPS 프로젝트 아닌것 같은데 

암튼 Renderer를 가져오는것이 가능한것은 비주얼 스튜디오에서 MeshRender를 누르고 F12눌러보시면 

처럼 MeshRender가 Renderer를 상속받기 때문에 가능한거구요

코드를 못봐서 모르겟지만 확장기능이 필요없고 Renderer기능만 쓰니까 부모타입으로 가져오는것 같네요

2번 질문도 답변부터 말씀드리면 문제없습니다

Player가 LineRenderer와 MeshRenderer를 둘다 가지고 있어도 

Renderer기능만 쓸거면  각각 Renderer로 받아오면 됩니다 

좀 정확하게 말씀드려야될것 같아서 다시 적는데요

Renderer lineRenderer = GetComponent<LineRenderer>();

Renderer meshRenderer = GetComponent<MeshRenderer>();

강좌에 다형성 설명하시는걸 한 번더 보시길 권해드려요

0

Hun Chang님의 프로필

Hun Chang

질문자

2019.08.16

답변감사드립니다. 인프런에서 영상보면서 거기 달린 질문하기를 통해서 질문 드린거라, 어떤 영상에 달린 질문인지도 들어갈 줄 알았는데 그냥 질문 내용만 따로 연락이 가나보네요. 
다음부터는 참고해서 같이 질문에 영상에 대해서도 기록하도록 하면 좋을거 같네요.

수강한지 얼마 안되서 아직 소코반 단계에서의 질문이었습니다. 소코반 - 충돌처리 영상이었습니다.

열심히 공부해서 저도 TPS 프로젝트 까지 가도록 하겠습니다. 감사합니다.