본문 바로가기

분류 전체보기

(150)         글쓰기    
언리얼 SkeletalMesh 리플리케이트 불가능 개요 MovementComponent에서 WalkSpeed는 리플리케이션 대상이 아니다 그렇습니다. 혹시 달리기 등을 통해 MovementComponent의 WalkSpeed를 변경하는 분들은 다른 방식을 사용해야 합니다. GameMode는 서버에만 있다 그렇습니다. 아무리 클라이언트가 발광을 해도 얻을 수 없는 그것, 서버의 게임모드. 이 상태에서 만일 게임 모드에서 ServerRPC를 부르는 건 쓸모없는 행위가 되겠죠. USkeletalMeshComponent에서 SkeletalMesh는 리플리케이트 되지 않는다 // SkeletalMeshComponent.h private: /** The skeletal mesh used by this component. */ UE_DEPRECATED(5.1, "T..
무기 장착하기 무기는 마켓에서 Infinity 시리즈의 Weapon을 프로젝트에 추가했다 기존의 weapon을 위한 메시컴포넌트가 있으나 추가한 무기는 skeletonMesh라 SkeletonMesh를 이름을 바꿔 추가한다. TPSPlayer.h UPROPERTY(VisibleAnywhere, Category = "Fire") class USkeletalMeshComponent* weaponSkeletonComp; TPSPlayer.cpp 생성자에 추가한다. weaponMeshComp = CreateDefaultSubobject(TEXT("WeaponMesh")); weaponMeshComp->SetupAttachment(GetMesh()); // , FName("hand_rSocket")); //기존 메시 밑에 추가..
마우스휠로 줌하기 인풋액션 IA_Zoom을만든다 Axis1D로 한다. IMC_Main을 열어 추가하고 Mouse Wheel Axis를 추가해준다. TPSPlayer.h에 변수를 추가해주고 UPROPERTY(EditAnywhere, Category = "Input") UInputAction* WheelIA; TPSPlayer.cpp에 바인딩해주고 정의해준다. void ATPSPlayer::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) { Super::SetupPlayerInputComponent(PlayerInputComponent); //입력 바인딩 if (UEnhancedInputComponent* EnhancedInputComponent = Cast..
언리얼 Animation Montage ABP_Move안의 AnimGraph에 다음과 같이 Layerd blend per bone을 추가한다. cache로 검색해서 SavePose와 Use cached pose도 추가한다. Use Pose는 2개를 추가해 Slot Defalt Slot을 추가한다. 이건 C++에서 이용할 Montage의 변수같은거다. TPSPlayer.cpp C++에 코드를 추가한다. 공격하는 순간이므로 InputFire에 일단 추가한다. void ATPSPlayer::InputFire(const FInputActionValue& Value) { if (fireReady) { GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Magenta, TEXT("Fire")); UAnimInsta..
캐릭터 메시 지정하기 마켓플레이스에서 플레이어캐릭터는 Infinity Blade 배경으로는 City of Brass를 프로젝트에 추가해준다. 이건 버전이 안맞는 다고 나오는데 모든 프로젝트를 체크후 내 프로젝트를 고르고 V5.0으로추가하면 된다. Animation은 이득우의 언리얼 에서 챕터5의 리소스를 다운 받으면 된다. Animation폴더를 만들고 우클릭후 Import animation후 파일을 선택하고 Skeleton Mesh를 SK_Maniquin_Skeleton으로 지정한다. TPSPlayer를 부모로 BP_TPSPlayer 블루프린트를 만든다. 입력을 지정해주고 Mesh를 선택해 메시를 지정해준다. Infinity Blade Warrier리타게팅을 하는 방법도 있지만. 패키지 애니메이션을 활용할 예정으로 애니메이..
PBullet 발사체 만들기 발사체를 만들어보자. 충돌체와 메시 그리고 움직임을 담당할 ProjectileMovementComponent를 컴포넌트로 추가하는 코드다 PBullet.h // Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "PBullet.generated.h" UCLASS() class P231113_API APBullet : public AActor { GENERATED_BODY() public: // Sets default values for this actor's properties ..
프로젝트 만들기 - TPSPlayer P231112이라는 제목으로 C++타입빈프로젝트를 하나 만든다 . 프로젝트명Build.cs에 "EnhancedInput","Niagara" 를 추가하고 언리얼에디터, VS를 끄고 프로젝트실행파일 위를 우클릭후 VS솔루션을 다시만든후 리빌드해준다. PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "EnhancedInput","Niagara" }); EnhancedInput방식이므로 InputAction과 InputContextMapping파일을 만든다. 만드는 법은 이곳을 참조하세요 2023.10.17 - [언리얼레퍼런스/게임플레이프레임워크] - UE5 Enhanced Input ..
[UE5] Notify 나이아가라 FX를 Player에 추가한 상태에서 시작한다. C++에서는 찾기만 할꺼다. niagaraFX = GetComponentByClass(); 플레이어 클래스 헤더에 niagaraFX 변수와 ShowFX() 함수를 선언한다. public: UPROPERTY(EditAnywhere, Category = "Animation") class UNiagaraComponent* niagaraFX; void ShowFX(bool show); 플레이어.cpp에 블루프린트에서 나이아가라FX와 niagaraFX변수를 연결해준다. 게임시작시는 이펙트를 꺼준다. void ATPlayer::BeginPlay() { .... niagaraFX = GetComponentByClass< U..
[UE5] 나이아그라 Empty Effect 우클릭후 나이아그라를 선택하고 New systems from selected emiiter하고 Empty를 선택해준다. 이름을 NS_Empty로 해준다. GPU설정을 해준다. Emitter Update에 Spawn Rate를 추가하고 20000으로 해준다. Particle Spawn에 Initialize Mesh Reproduction Sprite를 추가합니다. 왼쪽 프리뷰 아래 Use Exposed + 를 클릭하고 skeletal을 검색해 추가해준다. 변수를 끌어다 놔준다 Initialize Particle의 Life타임을 RandomRange로설정한다. \ Add Velocity를 추가하고 Z를 200으로 한다. Overwrite Intrinsic Variabl을 꺼준다. Particle Update..
[언리얼] 콜리전 교재를 공부하면서 새로 배운 자료 구조, 함수 및 C++ 정보들을 정리하는 글입니다. ​ ​ ● 게임 세계에 속해있는 움직이는 액터는 가상의 물리 엔진으로부터 영향을 받는다. 캐릭터의 길을 막는 용도 외에도 중력과 외부로부터 작용한 힘을 받은 물체의 움직임을 사실적으로 표현하는 데 물리 엔진이 활용된다. ​ 또한 물리 엔진은 액터가 지정한 영역에 들어왔는지 감지하는 기능을 사용해 게임에서 플레이어가 해결해야 하는 기믹 요소를 제작하는데도 중요한 역할을 한다. ​ ● 이렇게 다양한 기능을 제공하는 물리 엔진을 활용하려면 콜리전(= 물리적 충돌 영역)을 설정해야 한다. 콜리전은 3가지 방법으로 제작이 가능하다. ​ 1. 스태틱 메시 애셋 : 스태틱 메시 애셋에 콜리전 영역을 심는 방법. 스태틱 메시를 더블 ..
캐릭터 움직이기 https://blog.naver.com/ratshu/222560353209 언리얼+Vroid] 프로젝트 만들기 #언리얼 버전 4.26.2 가상 스튜디오 프로젝트에 새로운 캐릭터를 추가하려 한다 메타휴먼, 페이스앱 캐릭터... blog.naver.com https://blog.naver.com/ratshu/222561374743 언리얼+Vroid] Vroid 캐릭터를 움직일 수 있게 만들어보자 #언리얼 버전 4.26.2 이전글 : https://blog.naver.com/ratshu/222560353209 이전글에 이어 추가된 Vroid ... blog.naver.com
[UE5] 나이아그라 - Attractor 나이아그라 시스템을 만들어 NS_Attractor로 이름 짓는다. Hanging Paticulates는 매달린 입자라는 뜻이다. 스프라이트렌더러를 지운다. 메시렌더러를 넣어준다. 메시로 큐브를 지정해준다. 밝은 머터리얼을 넣어준다. 프리뷰를 보면 좀 버벅거린다. Facing Mode는 Velocity로 해준다. GPU설정및 Fixed Calculate Bound Mode로 설정한다. 필요없는 Scale Sprite Size, Scale Color를 지운다. 파티클 스폰의 Mesh Scale Mode를 Uniform Scale을 1.로 설정한다. Particle Update+를 클릭해 Scale Mesh Size를 선택한다. Scale Factor오른쪽을 펼쳐 Scale vector by Curve를 선택..