본문 바로가기

언리얼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) 지속시간은 페이드가 시작값에서 도착값까지 도달하는데 걸리는 시간을 말한다 예시로 시간의 기준을 초.. 더보기
UE C++ 매쉬 만들기 매쉬 설정 static ConstructorHelpers::FObjectFinder CharacterMeshRef(TEXT("/Script/Engine.SkeletalMesh'/Game/DownloadAssets/Primitive_Characters_Pack/Mesh/Primitive_01/Mesh_UE4/Full/SK_Primitive_Charater_01_01.SK_Primitive_Charater_01_01'")); if (CharacterMeshRef.Object) { GetMesh()->SetSkeletalMesh(CharacterMeshRef.Object); } 콜라이더 설정 GetCapsuleComponent()->InitCapsuleSize(42.f, 96.0f); //GetCapsuleC.. 더보기
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 어빌리티 시스템 1_2 (정리) GS 입력시스템, AbilityTask 1. 입력 정보를 게임플레이 어빌리티 시스템으로 구현방법 플레이어 캐릭터의 ASC 설정시 주의사항 분수대 액터와 같이 플레이어 캐릭터에 설정하는 것이 가능 하지만 네트웍 멀티플레이를 감안했을 때 서버에서 클라이언트로 배포되는 액터가 보다 적합. 이때 많이 사용하는 액터가 주기적으로 플레이어 정보를 배포하는 PlayerState 액터임 따라서 Owner를 PlayerState로 설정하고 Avatar를 Character로 설정하는 것이 일반적인 방법 언리얼에서 플레이어란 PlayerController 클래스 Pawn을 조정하는 구조로 제작되어있다. 두개의 정보를 가지고있고 GAS도 이러한 두개의 객체와 상호작용을 할수있는 구조로 작성되어야한다. 이미 GAS는 이러한 문제의 대응점을 가지고있다 이전 시간에 A.. 더보기
UE 어빌리티 시스템 1_1 (정리) ASC , GA TAG GAS란? 언리얼 게임 어빌리티 시스템은 전투스탯, 스킬 , 피격 이벤트 발생 시 처리 등을 개발자가 가독성을 가지고 개발에 임할 수 있도록 언리얼에서 지원하는 플러그인을 의미한다. https://dev.epicgames.com/documentation/ko-kr/unreal-engine/gameplay-ability-system-for-unreal-engine?application_version=5.2 언리얼 엔진의 게임플레이 어빌리티 시스템 게임플레이 어빌리티 시스템 개요 dev.epicgames.com GAS 프레임워크의 기능과 사용시 장단점 액터가 소유하고 발동할 수 있는 어빌리티 및 액터 간의 인터랙션 기능을 제공하는 프레임워크이다. RPG, 액션 어드벤처, MOBA 장르의 제작을 쉽게하기 위한.. 더보기
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 콜리전 사용법 정리 Collision Profile 충돌 대상에 따른 이벤트 타입 처리를 편집하고 저장할수있다. 해당 셋팅은 DefaultEngine.ini에 저장되고 쓰기 가능상태이다 Object Chennelss 프로파일을 생성할경우 프로파일 적용 대상의 오브젝트를 지정해야만 한다. 해당 오브젝트 타입의 충돌처리를 분리해야하는 경우 오브젝트 체널에서 추가로 제어할수있다. 커스텀 체널은 최대 18개까지 가능하다(17개 쓸일도 없겠지만) 사용중인 오브젝트 타입을 삭제하는 경우 월드 스태틱으로 돌아간다. Trace Chennelss 트레이스 개요 언리얼 엔진 4 의 트레이스 시스템 개요입니다. docs.unrealengine.com 오브젝트와 다르게 눈에 보이지않으며 통과가 가능한 충돌체 객체를 생성할때 사용한다. 주의사항 .. 더보기