inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

실전! 언리얼 소울라이크 개발: A to Z

무기마다 장착모션을 다르게 하고 싶은데 어떻게 처리하는 게 좋은가요?

해결된 질문

120

Lee jae seung

작성한 질문수 8

0

무기 장착 및 해제 애니메이션 처리 강의를 듣고 나서 완성물을 보니까

장착 완료시 손의 모양이 무기를 쥐고 있지 않아 어색한 것 같아 수정해보고 싶기도 하고

에셋에도 여러 무기들이 있길래 활용해 보고 싶은데 어렵네요..

Define에 Enum으로 WeaponType를 정의하고 Weapon에서 설정하고

애니메이션을 연결하면 되는 건지 아니면 이렇게 작업하면 나중에 설계적으로 꼬여서

확장할 때 어려움이 생길지 잘 모르겠습니다. 혹시 좋은 방법이 있는지 궁금합니다.

c++ unreal-engine 언리얼-c++

답변 2

0

Spector

안녕하세요.

현재 설계상 각 무기별로 다른 애니메이션을 사용하도록 되어 있습니다.

각 무기의 애니메이션 데이터 파일(DS1MontageActionData)에 사용할 애니메이션을 저장하여 관리하고 있으므로, 해당 데이터 파일에 필요한 애니메이션을 설정하고, 무기(DS1Weapon) 블루프린트 클래스에 이 데이터를 연결한 뒤 장착/해제 소켓(EquipSocketName, UnequipSocketName)을 지정해 주시면 될 것 같습니다.

해당 내용은 이후 강의에서 차례로 나오는 내용이니 참고하시면 좋겠습니다.

 

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. Lee jae seung님.

무기의 장착 및 해제 애니메이션을 무기마다 다르게 처리하고 싶으시군요. 이는 게임 개발에서 자주 직면하는 문제이기도 합니다. 적절한 방법을 통해 이렇게 다양한 무기 애니메이션을 관리할 수 있습니다. 다음은 그에 대한 몇 가지 제안입니다:

  1. WeaponType Enum 활용:

    • WeaponType을 Enum으로 정의하고, 각 무기마다 해당 타입을 설정하는 것은 좋은 방식입니다. 이를 통해 무기에 맞는 특정 애니메이션이나 처리를 쉽게 구분할 수 있습니다.
  2. 애니메이션 몽타주 사용:

    • 무기마다 다른 애니메이션 몽타주를 준비하고, WeaponType에 따라 적절한 애니메이션 몽타주를 선택적으로 재생하는 방식으로 구현할 수 있습니다. 이렇게 하면 확장성 및 유지보수가 용이해집니다.
  3. 상속 및 인터페이스 활용:

    • 무기별로 공통 동작은 부모 클래스에 두고, 각 무기 타입에 특화된 동작은 자식 클래스에서 오버라이드하거나, 인터페이스를 활용하여 무기 종류별로 고유한 동작을 정의할 수 있도록 설계합니다.
  4. 데이터 드리븐 방식:

    • 무기에 대한 데이터 테이블을 만들어 각 무기 타입에 따라 다양한 속성과 애니메이션 정보를 관리할 수 있습니다. 이를 통해 데이터 중심 설계를 유지하며 확장성을 높일 수 있습니다.
  5. 설계 최적화:

    • 지금 설계한 방식이 장기적으로 확장 가능한지, 새로운 무기 추가 시 코드 변경의 최소화가 가능한지 점검하세요. 설계적 유연성을 위해 SOLID 원칙 등 소프트웨어 공학의 설계 원칙을 적용하는 것도 고려해볼 수 있습니다.

관련 주제로 기존 Q&A를 참고하면 도움이 될 수 있습니다:
- CombatComponent, Weapon 참조
- Unreal 엔진에서 기능 확장 및 유지보수성 고려하기

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

맵핑부분..

0

30

2

ABP "스테이트의 시퀀스 플레이어에 따른 자동 규칙"질문드립니다.

0

35

1

사용하시는 툴 질문 드립니다.

0

34

2

C++ 생성자 값 관련 질문입니다.

0

71

1

빠른 헤더파일 추가 관련 질문입니다.

0

76

2

각 섹셕별로 수업 자료가 제공된다고 했는데 어디에서 받을 수 있는지 모르겠습니다.

0

87

2

프로젝트 생성 및 설정 첫 강의를 보면서 들었던 궁금한 점

0

120

2

안녕하세요. 입문자입니다.

0

67

1

GAS 관련

0

87

1

폴암 무기 집을때 크러쉬

0

90

2

Tick 컴포넌트에서 락온 함수

0

66

2

카메라를 적에게 고정시키는 로직 부분

0

73

2

강의 자료

0

107

3

방어구 시스템 구현 질문

0

86

3

블로킹 시 피격 이펙트 오류?

0

57

2

AlreadyHitActor들을 TArray로 처리하는 것에 질문있습니다.

0

58

2

무기 콜리전 시스템에 대해

0

101

1

Hit Reaction 설계

0

114

3

FindClosestTarget CheckValue 절댓값 처리

0

67

2

FindClosestTarget 노멀 벡터 방향

0

59

2

44분26초 동일하게 코드를 작성한것같은데 빌드에러가 뜹니다ㅠ

0

83

2

파티클 깨짐

0

56

1

Geneal Action 의미

0

49

0

2강 32분18초 Generate definition 하는 방법이 뭘까요?

0

82

1