< '언리얼엔진5/각종 지식' 카테고리의 글 목록

언리얼엔진5/각종 지식 8

[UE5 C++] 언리얼엔진 Timeline C++ 에서 구현하기

헤더// TimeLine SectionFOnTimelineFloat ADSCallback;FOnTimelineEvent ADSTimelineFinish;UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Timeline)TObjectPtr ADSTimeline;UPROPERTY(EditAnywhere,BlueprintReadOnly,Category = Timeline)TObjectPtr ADSCurve;        헤더에서 선언해야 할 것 네가지TimelineComponetCurveFloatFOnTimelineEvent DelegateFOnTimelineFloat Delegate1번 타임라인 컴포넌트는 타임라인을 재생하는 컴포넌트 이다.2번 CurveFloa..

[UE5] ProjectileMovementComponent

ProjectileMovementComponent    언리얼 엔진에서 탄환, 로켓, 화살 등과 같은 발사체의 운동을 처리하기 위한 컴포넌트입니다. 이 컴포넌트를 사용하면 발사체가 물리 법칙에 따라 자연스럽게 움직이고 상호작용하도록 만들 수 있습니다.  사용 예시// Fill out your copyright notice in the Description page of Project Settings.#include "Weapon/VITracerRound.h"#include "Components/SphereComponent.h"#include "GameFrameWork/ProjectileMovementComponent.h"// Sets default valuesAVITracerRound::AVITracer..

[UE5] Quat(쿼터니언) / Rotator (로테이터)

FQuat    쿼터니언은 3차원 공간에서 회전을 표현할 때 사용하는 수학적 도구이다. 쿼터니언의 장점     1. Gimbal Lock 방지 : 오일러 각도를 사용하여 각을 표현할 때  생기는 짐벌락을 방지할 수 있음 짐벌락 이란?https://kangworld.tistory.com/185 [Unity] 짐벌락과 오일러 각 그리고 쿼터니언✍️ 짐벌락 짐벌이란 단일 축을 중심으로 물체가 회전할 수 있도록 만들어진 구조물이다. 각각의 고리는 고유한 축을 기준으로 회전하는데 이는 가장 바깥쪽 고리만 해당할 뿐 안쪽 고리들은kangworld.tistory.com     2. 효율적인 회전 보간 : 회전을 부드럽게 보간할 수 있어 자연스러운 움직임을 만들 수 있다.     3. 컴팩트한 표현 : 하나의 스칼라와..

[UE5] 타이머 사용하기

FTimerHandle ReloadTimeHandle; GetWorld()->GetTimerManager().SetTimer(ReloadTimeHandle, FTimerDelegate::CreateLambda([&]() { bIsReloading = false; // TimerHandle 초기화 GetWorld()->GetTimerManager().ClearTimer(ReloadTimeHandle); }), PrimaryWeapon->GetReloadTime(), false); 타이머 핸들을 부착해주고 함수를 연결하거나 람다함수를 바로 선언해준다. 인자는 아래와 같다.(핸들, 함수, 대기 시간, 반복 여부)

[UE5] 월드에 액터를 스폰하는 방법 (SpawnActor)

UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Weapon , Meta = (AllowPrivateAccess = "true")) TSubclassOf PrimaryWeaponBpRef;if (UWorld* World = GetWorld()){ if (PrimaryWeaponBpRef != nullptr) { // 스폰할 위치와 회전을 지정 FVector SpawnLocation = FVector(0.0f, 0.0f, 0.0f); FRotator SpawnRotation = FRotator(0.0f, 0.0f, 0.0f); // 액터 스폰 파라미터 설정 FActorSpawnParameters SpawnParams; SpawnParams.O..

[UE5] FPS 에임 오프셋 만들기 (캐릭터 상체 상하 움직임)

레퍼런스 https://youtu.be/jHM7JzsNyvQ     원리는 간단하다. aim offset 1D를 통해  마네킹의 spine_02 를 -90부터 90까지 변환시켜준다. 단지 헤멧던 원리의 부분은 후반의 블루프린트 부분이었는데, base aim rotation(컨트롤러가 바라보는 방향의 rotation 값) 을 가져와서 pitch 가  180 이상이면 그대로 적용하고, 180 이하이면 -360 값을 해 주는 부분이었다.   FRotator APawn::GetBaseAimRotation() const{ // If we have a controller, by default we aim at the player's 'eyes' direction // that is by default Con..

[UE5] 구글 시트 불러와서 JSON 파싱하기

프로젝트를 하다 구글 시트에서 데이터를 불러와야 할 일이 생겼다. 어찌어찌 GPT 의 도움을 받아 구현에 성공했지만 완전히 이해하지 못한 것 같아 블로그에 따로 정리하려 한다.   오늘 가져올 시트는 아래와 같다.   // Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h"#include "UObject/NoExportTypes.h"#include "HttpModule.h"#include "Interfaces/IHttpRequest.h"#include "Interfaces/IHttpResponse.h"#include "Json.h"#include "JsonU..

[UE5] Networked Movement in the Character Movement Component

캐릭터 무브먼트 컴포넌트는 걷기, 낙하, 수영, 비행 등 휴머노이드 캐릭터의 일반적인 이동 모드가 포함된 캡슐화된 이동 시스템을 제공하는 액터 컴포넌트입니다. 캐릭터 무브먼트 컴포넌트는 강력한 네트워크 게임플레이 통합 기능도 제공합니다. 기본 이동 모드는 모두 기본적으로 리플리케이트되도록 제작되었으며, 개발자가 커스텀 네트워크 이동을 만들 수 있는 프레임워크를 제공합니다. 캐릭터 무브먼트의 기본UCharacterMovementComponent 는 ACharacter 액터 클래스 및 거기서 파생된 모든 블루프린트에 프리태치되어 제공됩니다. TickComponent 함수 도중 UCharacterMovementComponent 는 PerformMovement 를 호출하여 현재 사용중인 이동 모드와 플레이어의 ..