본문 바로가기

언리얼5/언리얼5 개발

UE5 포트폴리오 1-1 전투스킬구현 플레이어 스킬 게임어빌리티 스시템 활용지난 GAS를 정리한 글을 바탕으로 제 포트폴리오에서 스킬을 구현한 방법을 보여드리겠습니다. 글을 통해 알수있는것들게임어빌리티의 사용법자신의 스킬연출을 구성한 몽타주 만들기게임어빌리티시스템 스킬구현플레이어가 A,S,D,F, Q,W,E,R 스킬들을 누르면 해당 스킬의 위젯의 쿨타임이 실행되고 해당 스킬 시전 mp를 차감합니다.현제 영상은 테스트를 위해 mp는 0이하에서도 사용이 가능하게끔 구현했습니다.GAS로 구현된 스킬   구현 로직 설명플레이어의 스킬은 앞서 말한것처럼 언리얼에서 지원하는 GameAbilitySystem을 적극 활용하여 구현했습니다.보고계신 글에서 스킬의 구현을 처음부터 끝까지 설명하기에는 어려움이 있기에 전투스킬구현2까지 확인해주시기 바랍니다.  .. 더보기
UE Fade 기능 만들기 Fade란 fade (【동사】바래지다, 점점 희미해지다, 사라지다, 바래다 ) 뜻, 용법, 그리고 예문 | Engoo Words. 게임뿐만 아니라 영화 애니메이션에서도 사용되는 시각연출을 의미한다 언리얼에서 기능을 구현하기위해 검색을 해봤지만 쉬운 기능임에도 생각보다 순수 코드로 완성된 참고자료가 없어 직접 C++ ,Blueprint로 페이드 기능을 만드는 방법에 대해 글을 써보려한다. 기능 로직 설명 주어진 입력값은 지속시간 위젯의 이미지 오퍼시티 시작값,도착값이 주어진다 함수가 실행되면 지속 시작동안 이미지의 오퍼시티를 시작값에서에서 도착값까지 도달하게 하면 페이드가 완성된다. 지속시간(duration) 지속시간은 페이드가 시작값에서 도착값까지 도달하는데 걸리는 시간을 말한다 예시로 시간의 기준을 초.. 더보기
GA 유용한 가상 함수 //발동 매소드 virtual void ActivateAbility(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo* ActorInfo, const FGameplayAbilityActivationInfo ActivationInfo, const FGameplayEventData* TriggerEventData) override; //GA 입력 기능 만들때 virtual void InputPressed(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo* ActorInfo, const FGameplayAbilityActivationInfo Activ.. 더보기
UE Hpbar 만들기 0. 슬라이더 체력바 만들기 1. Userwidget을 상속받는 hpbar 클래스를 생성한다. 2. 케릭터 클래스에서 체력바를 붙일수있게 위젯 컴포넌트를 생성한다. 3. 케릭터와 Ui와 간접 커플링하기위해 interface를 생성한다 4. Ui가 초기화되는 시점에서 interface로 가져온 케릭터 정보로 셋업을 진행한다. 캐릭터 UWidgetComponent 구현부 HpBar = CreateDefaultSubobject(TEXT("Widget")); HpBar->SetupAttachment(GetMesh()); HpBar->SetRelativeLocation(FVector(0.0f, 0.0f, 180.0f)); static ConstructorHelpers::FClassFinder HpBarWidget.. 더보기
UE 헤드업 디스플레이 (공부 정리) 헤더 디스플레이 (HUD) 플레이어 컨트롤러에 의해 제작되고 관리되는 UI를 의미한다. 위젯을 생성하고 이를 플레이어 뷰포트에 띄우는 과정으로 생성된다. 이렇게 만들어진 위젯은 자신을 소유한 플레이어 컨트롤러에 접근할 수 있다. 주요 기능 1. CreateWidget() HUD위젯을 생성한다 생성 클래스는 플레이어 컨트롤러 클래스이다. 2. GetOwningPlayer() 플레이어 정보를 가져온다 HUD에서 컨트롤러에게서 가져온다 기존 위젯클래스와는 달리 직접 함수로 데이터를 가져오는 위젯을 만들것이기에 BaseWidget을 사용하지않고 UserWidget을 상속받는 새 클래스 HUD를 만들어준다 플레이어 컨트롤러 디자인 구현을 위해서 HUD 클래스와 오브젝트 레퍼런스 2개가 모두 필요하다 // HUD .. 더보기
UE 아이템 시스템 (공부 정리) 트리거 박스 구현 루트에 트리거 추가 - 하위 스태틱 매시 - 하위 이펙트 트리거 박스 클래스 생성 1. 엑터 ->ItemBox 생성 2. ItemBox 비긴 틱 제거 3. 위 추가할 3가지 객체를 멤버변수 선언 - UBoxComponent ,UStaticMeshComponent , UParticleSystemCompoent 4. 생성자 오버로딩 ItemBox 초기화 4-1. 멤버변수 데이터 초기화 - CreateDefaultSuboject 함수 사용 매개변수는 생성할 기본서브오브젝트의 이름이다. 4-2. 트리거 매쉬컴포넌트 셋업 - Trigger->SetCollisionProfileName("내가 생성한 프로파일 트리거") ; - Mesh->SetStaticMesh(아이템 메쉬 레퍼런스) 4-3. 이펙.. 더보기
UE5 향상된 입력 Unreal C++ 에서 사용방법 UE Input System 구조 https://docs.unrealengine.com/4.27/ko/InteractiveExperiences/Input/ 입력 Input 오브젝트는 플레이어로부터의 입력을 액터가 이해하고 활용할 수 있는 형태의 데이터로 변환하는 작업을 담당합니다. docs.unrealengine.com 입력 언리얼의 입력 구조에 대해 이해하고 현제 언리얼5에서 입력 이벤트 처리에 사용되는 향상된 입력 기능을 활용하여 컨텐츠 구현 알아보겠습니다. 글을 통해 알수있는것들 언리얼 입력 시스템의 처리 플로우 향상된 입력 사용법 Input 오브젝트 Input 오브젝트는 플레이어로부터의 입력을 액터가 이해하고 활용할 수 있는 형태의 데이터로 변환하는 작업을 담당합니다. PlayerInput Pla.. 더보기