개요이전에 UIController를 통해 UI System을 구성했을 때, 데이터 변경시 Widget에 변경을 알리는 부분이 빠져서 해당내용을 추가한다.2025.02.07 - [Unreal] - [Unreal] GAS - UI [Unreal] GAS - UI System개요언리얼에서는 UI 구성을 할 때 2가지 방법이 있다고 한다. 하나는 AHUD를 이용하는 방법이고 하나는 UMG로 Widget을 만들고 PlayerController에서 사용하는 것이다. 현재는 UMG 방법을 많이 사용한다고dongg-00.tistory.comGetGameplayAttributeValueChangeDelegate()AttributeSet의 Attribute가 변경될때마다 WidgetController는 알림을 받아야한다...
개요언리얼에서는 UI 구성을 할 때 2가지 방법이 있다고 한다. 하나는 AHUD를 이용하는 방법이고 하나는 UMG로 Widget을 만들고 PlayerController에서 사용하는 것이다. 현재는 UMG 방법을 많이 사용한다고 하는데 강의에서 WidgetController를 이용해서 UI를 구성하는 방법을 보고 정리하였다.클래스 구조WidgetClass실제 체력바나 Score같은 화면에 표시되는 Widget들이다.UI는 OverlayWidget을 만들고 체력바나 마나바를 OverlayWidget에 배치하는 구조이다.Widget를 새로 만들때 SetWidgetController로 Set해주고 blueprint에서 WidgetControllerSet을 구현하여 Set될때 행동을 정한다. 보통 WidgetCo..
개요GAS에서 리플리케이션을 구성하기 전에 언리얼의 리플리케이션에 대해 정리한다.서버언리얼의 서버는 두 종류가 있다.Dedicated Server : 플레이어가 존재하지 않고 화면을 랜더링 하지 않는다 -> 서버의 역할만!Listen Server : 플레이어가 존재한다 -> Host는 지연속도면에서 이점이 있다(no lag)여기서 중요한 점은 서버가 "Current" version이라는 것 -> Client는 무조건 서버의 버전에 맞춰야한다.따라서 서버에서 중요한 작업들이 처리가 된다.아래 그림에서 서버 구조에 대해 많은 것을 알 수 있다.GameMode는 서버에만서버에서는 Client별 PlayerController, PlayerState, Pawn을 모두 가지고 있다.클라이언트는 자기의 PlayerC..
개요Lyra AssetManager에 대해 정리하다가 모르는 개념들이 너무 많아서 개념 정리를 먼저 진행했다. 언리얼 Asset관련 개념static class : 메타데이터(리플렉션을 위한 class name, field의 이름들을 가지고 있다.) -> UClassTSubclassOf: 특정 클래스의 서브클래스의 타입정보 -> 특정 class를 상속하는 UClass만 참조한다Asset : Blueprint, Sound -> 완성된 객체를 저장하기 위한 단위CDO : 클래스의 기본 인스턴스 리플렉션class 위에 UClass()를 붙이면 리플렉션에 등록된다라고만 알고 있었는데 정확하게는 UClass를 만들어준다고 생각하면 된다.언리얼 빌드 툴에서 컴파일시 UClass(), UPROPERTY()같은 매크로..
개요GAS의 구성요소 중 하나인 Gameplay Ability의 역할 및 활용법을 정리한다.Gameplay AbilityUGameplayAbility 클래스에서 파생된다.게임 내 어빌리티가 하는 일, 시전 시 비용, 언제 어떤 상황에서 사용할 수 있는지 정의한다.비동기 실행되는 오브젝트 인스턴스이므로 캐릭터 애니메이션, 파티클, 사운드 이펙트, 플레이어 입력, 실행 도중 벌어지는 캐릭터 상호작용에 따른 분기 등을 실행 가능하다.Ability 부여 및 회수Actor가 Ability를 사용하려면 Ability System Component에 Ability를 부여(grant)해야 한다.Ability에 Access를 부여하는 ASC의 메소드FGameplayAbilitySpecHandle GiveAbility(F..
개요언리얼 공식 사이트의 Gameplay Ability System에 대한 문서를 정리한 글이다.GAS는 Actor들에게 어빌리티를 추가하거나 삭제하면서 기능변경을 구현할 수 있게 해준다. 여기서 기능변경은 이펙트 변경, 스킬추가, 점프 등을 말한다.구성요소GAS를 활용하기 위해서 알아야하는 구성요소들을 간단하게 정리했다. 각각의 요소가 어떤 역할을 하는지는 따로 정리할 예정이다. 일단 어떤 것들이 있는지만 파악하자.Gameplay AbilityAbility TaskGameplay AttributesGameplay EffectsAbility System ComponentActor가 GameplayAbility System과 상호작용하기 위해서는 Actor에 AbilitySystemComponent가 있어..