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

강건희님의 프로필 이미지
강건희

작성한 질문수

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

10강 : 캐릭터의 광역 스킬 구현

블록 태그 관련 질문

해결된 질문

작성

·

115

0

안녕하세요. 블록 태그 관련해서 질문 있습니다.강의에서는 각 어빌리티별로 블록할 태그들을 설정하고 있는데 이런 방식이라면 새로운 태그를 추가할 때마다 기존에 있던 어빌리티들의 블록할 태그에 해당 태그를 일일이 추가해줘야 하잖아요? enum 클래스를 사용해서 state패턴으로 구현하는 방법처럼 더 나은 방식은 없을까요?일반적으로 게임에서는 두 가지 이상의 행위를 동시에 하는 것은 막고 있기 때문에 블록 태그 같은 부정문 방식보다는 state패턴처럼 긍정문 방식이 더 좋을 것 같아 질문합니다.

답변 1

1

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

네 구현하기 나름입니다. 예를들면 Dead같은 태그는 워낙 널리쓰이기 때문에 그냥 상위 클래스에서 기본값으로 지정하고, 하위 클래스가 상속받는 방식으로 사용합니다. 이러면 일일히 추가하는 노가다는 줄겠지만, 또 다른 예외 상황이 발생할 수 있겠죠.
사실 구현하는 방법은 사람마다 케바케라 어떤게 정답이라고 이야기하기는 어렵습니다. 각자 실제 구현한 경험을 공유하는 수 밖에요.
저도 여러가지를 만들어보고 있는데, 이번 강의는 사실 기능 설명만 했다고 봐야 할 것 같아요.
다만 의존성 없는 프레임웍을 경험하는 것은 이후 직접 시스템을 설계할 때도 크게 도움될 것으로 생각됩니다.

강건희님의 프로필 이미지
강건희

작성한 질문수

질문하기