• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

스트레티지 패턴 2번 강의에서 궁금한게 있습니다.

20.03.17 16:51 작성 조회수 167

0

예제 영상중에

bullet, missile, arrow 클래스를 만드시고 Iweapon  인터페이스를 붙이셨습니다.

그리고 각 클래스들을 각 프리팹에 bulletmove 클래스와 함께 붙이셨습니다.

여기서 궁금한게 shoot(); 명령은 추후 setWeaponType 메소드로 매니져 오브젝트에

추가한 컴포넌트들로 명령하는거 같은데

각 총알 프리팹에 Iweapon 인터페이스를 추가한 클래스들을 붙인것은

어떠한 기능때문에 추가하신건가 궁금합니다.

답변 1

답변을 작성해보세요.

2

강호준님의 프로필

강호준

2020.05.13

강의자는 아니지만 도움이 되실까 남김닙니다. 각각 오브젝트에 추가한 컴포넌트의 클래스 명이 다릅니다. 하지만 이 컴포넌트들은 같은 인터페이스인 IWeapon.cs 를 가지고 있습니다. 그래서 컴포넌트에 달린 클래스 명이 달라도 하나의 클래스(IWeapon 인터페이스)를 통해 접근이 가능한 것입니다. 이렇게 인터페이스를 작성하여 어떤 특성을 공유하는 클래스에 인터페이스를 공유하여 하나의 접근점으로 활용할 수 있는것입니다.