Unreal Engine

https://meo-young.tistory.com/238 [이득우의 언리얼] 12. 언리얼 엔진의 메모리 관리개요이번 강의에서는 Unreal Engine의 가비지 컬렉션(Garbage Collection) 시스템을 이해하고, UObject 포인터를 안전하게 관리하는 방법을 학습합니다. C++의 고질적인 메모리 문제를 해결하는 Unreal의 자동meo-young.tistory.comhttps://dev.epicgames.com/documentation/ko-kr/unreal-engine/incremental-garbage-collection-in-unreal-engine?application_version=5.5 언리얼 엔진의 점진적 가비지 컬렉션 | 언리얼 엔진 5.5 문서 | Epic Develop..
Cascading(계단식) Cast Chain은 왜 문제일까?1. 리소스 로드 & 메모리 사용 증가캐스트가 “타입 확인”만 하는 것처럼 보여도, 블루프린트 클래스로의 캐스트는 그 블루프린트 에셋에 대한 하드 레퍼런스를 만들 수 있다.하드 레퍼런스는 A가 로드될 때 A가 의존하는 것들이 함께 메모리에 로드되고, 그 의존 대상의 의존 대상도 연쇄적으로 로드되는 구조라서 비용이 대폭 증가할 수 있다. 에디터에서 사이즈 맵을 통해 캐스트가 메모리에 미치는 영향을 확인할 수 있다. 또한 SpawnActor, GetAllActorsOfClass의 Class 핀에 블루프린트 타입 변수를 넣었을 때, 마찬가지로 하드 래퍼런스를 만들 수 있다. 2. 잠재적 실패 처리 대기 시간또한 잠재적으로 캐스트가 실패했을때의 비용도..
https://outscal.com/blog/unreal-engine-soft-hard-references-async-loading Why My First Open-World Game Crashed Every 5 Minutes (And How Soft vs Hard References Unreal Engine Finally Fixed It)Learn the difference between soft vs hard references in Unreal Engine. Master asynchronous loading with TSoftObjectPtr and the Asset Manager to fix memory crashes and eliminate loading screens.outscal.com
/*** Computes the sine and cosine of a scalar value.** @param ScalarSin Pointer to where the Sin result should be stored* @param ScalarCos Pointer to where the Cos result should be stored* @param Value input angles */template )>static constexpr FORCEINLINE void SinCos(std::decay_t* ScalarSin, std::decay_t* ScalarCos, T Value ){ // Map Value to y in [-pi,pi], x = 2*pi*quotient + remainder. ..
Server side Rewindhttps://vorixo.github.io/devtricks/simple-rewinding/ Rewinding a networked gameIn this post you’ll learn the principles about network rewinding, and we’ll provide a very simple reconciliation implementation for Unreal Engine.vorixo.github.iohttps://snapnet.dev/blog/performing-lag-compensation-in-unreal-engine-5/#results Performing Lag Compensation in Unreal Engine 5Approaches a..
언리얼 엔진의 렌더 파이프라인은 기본 디퍼드 렌더링(deferred rendering) 패스와 함께 사용하거나 포워드 렌더링 패스에서 실행하도록 환경설정할 수 있다. 이 프로세스는 왼쪽에서 오른쪽으로 진행되며, 2단계부터 5단계는 동시에 이뤄진다. Deferred Rendering셰이딩이 디퍼드 패스에서 발생합니다GBuffer를 기반으로 컴포지팅 작업을 수행합니다동적 라이팅 렌더링에 뛰어납니다안정적이고 예측 가능한 높은 성능을 제공합니다기능 비활성화에는 유연하지만, 표면 속성에는 덜 유연합니다MSAA가 불가능하며, TAA에 의존합니다지오메트리를 렌더링 하는 동안에는 셰이딩과 라이팅을 렌더링 하지 않음. 렌더링의 일부를 지연하는 것. 다이내믹 렌더링에 우수하고 안정적이고 예측 가능한 하이엔드 퍼포먼스에 우..
Lyra Sample Project를 분석 및 베이스 프로젝트로 개발을 하면서 참고했던 사이트, 자료 목록입니다. 1. 주요 시스템 별 내용을 잘 정리한 블로그입니다. 유튜브 튜토리얼도 포함되어 있습니다.https://x157.github.io/ UE5 + Lyra = GGOne simulant attempts to share insight with others.x157.github.io 2. Miro를 이용하여 Lyra Sample Proejct를 분석 및 정리한 자료입니다.시각적인 자료와 함께 주요 시스템(Equipment와 Item, Gameplay Ability 등)을 파악하기 좋습니다. https://www.reddit.com/r/unrealengine/comments/xee8of/i_made_..
1. GameModeBase, GameStateBase, GameMode, GameState는 반드시 세트로 맞춰서 써야한다. 맞춰서 쓰지 않아도 정상 작동은 하나, Character Class에서 Server측에서는 BeginPlay를 호출하나,Client측에서 Begin Play를 호출하지 않는 등 여러 오류가 발생한다. 2. ShowDebug AbilitySystem으로 다른 클라이언트 (Simulated Proxy)의 Attribute를 확인할 때,프로젝트 세팅/게임/게임플레이 어빌리티 세팅/HUD에서 디버그 타깃 사용 (bUseDebugTargetFromHud)이true로 설정되어 있어야 한다.
Level에서 Spawn되어 있는 캐릭터에서 게임 플레이 어벌리티 내에서 Apply Root Motion Jump Force과 같은 Async Task를 실행은 해도 움직이지 않은 이슈가 있다.해당 캐릭터에게 명시적으로 AI controller를 설정해주지 않는다면 움직이지 않는다. https://forums.unrealengine.com/t/does-anyone-knows-why-applyrootmotionsource-doesnt-work-on-non-controlled-characters/1942237
언리얼 엔진 5.5.4 버전의 라이라(Lyra) 샘플 프로젝트를 기반으로 프로젝트를 진행 중에 발생한 오류이다. 1인칭 시점 구현의 정석적인 방법은 두 개 이상의 스켈레탈 메시 컴포넌트를 사용하는 것이다.플레이어 자신에게만 보이는 1인칭 메시(OnlyOwnerSee 활성화)와 다른 플레이어들에게 보이는 3인칭 메시(OwnerNoSee 활성화)를 사용하는 것이다. Experience에서 사용 할 Lyra Character 하위 클래스에는 First Person Mesh를 추가하여 1인칭 메시를 추가하였다. Lyra에서 Character Parts Costmetic 시스템은 기본적으로 B_Manny에셋의 스켈레탈 메시 에셋 SKM_Manny를 이용한다. 해당 에셋을 1인칭, 3인칭용 스켈레탈 메시 컴포넌트..
J00n
'Unreal Engine' 카테고리의 글 목록