본문 바로가기

Unreal8

[UE5] 라이트 Mobility 의 종류와 활용 가이드 언리얼 엔진의 모든 라이트는 Static, Stationary, Movable 세 가지 모빌리티 중 하나를 가집니다. 각 설정은 그림자를 생성하는 방식과 연산 비용에서 큰 차이를 보입니다. 1. Static (정적)특징 : 빛과 그림자 정보를 라이트맵(Lightmap)이라는 텍스처에 완전히 구워버립니다.장점 : 게임 실행 중 연산 비용이 거의 없어 성능상 가장 유리합니다.단점 : 한 번 구워진 그림자는 실시간으로 위치나 색상을 바꿀 수 없습니다.한계 : 움직이는 물체(캐릭터 등)는 이 그림자의 영향을 받지 못해 공간에서 둥둥 떠 보이는 현상이 발생합니다. 2. Stationary (고정)특징 : 정적인 배경에는 라이트맵을 사용하고, 움직이는 물체에는 실시간 그림자를 생성하는 하이브리드 방식입니다.장점 :.. 2026. 2. 3.
[UE5] Directional Light 와 Sky Light 의 관계 언리얼 엔진 5에서 배경을 만들다 보면 이런 의문이 생깁니다. "태양(Directional Light) 각도를 바꿔서 노을을 만들었는데, 왜 그림자 속 물체는 여전히 파랗거나 어둡지?"이 문제를 해결하려면 Sky Atmosphere와 Sky Light의 긴밀한 '협업 관계'를 이해해야 하는데, 그 작동 원리를 깔끔하게 정리해 드리겠습니다. 1. 역할 분담 : 소스 제공자와 빛 전달자언리얼의 하늘 조명 시스템은 크게 두 단계로 나뉩니다.Sky Atmosphere (소스 제공자) 태양빛이 대기에 부딪혀 산란되는 물리적 현상을 계산합니다. 하늘의 색(낮의 파란색, 노을의 붉은색) 을 결정하지만, 이 컴포넌트 자체가 물체에 직접 빛을 쏘지는 않습니다. 즉, "하늘이 지금 무슨 색인지" 만 보여주는 배경화면 같.. 2026. 2. 3.
언리얼5 단축키 모음 https://youtu.be/cnKp1HDYaJk?si=cfgTkXWu9biHfNKH • 편집창에서 g 키를 누르면 선택된 오브젝트의 외곽선이 사라짐 2026. 1. 13.
언리얼의 블루프린트란 무엇인가? 1. 말 그대로 청사진 (설계도)언리얼에서 블루프린트(Blueprint)는 우리말로 “청사진” 입니다.C++ 클래스는 텍스트 형태의 코드이지만, 여기에 블루프린트를 추가하면, 툴 상에서 시각적인 형태로 보여주기 때문에 해당 클래스를 눈으로 보면서 편집할 수 있게 되는 것입니다.예를 들면, 액터에 메시를 붙이고, 컴포넌트를 달고, 충돌과 값을 조정하고 ... 이 모든 것을 코드 없이 에디터에서 조립할 수 있게 해주는 것이 블루프린트입니다. 2. 블루프린트없는 액터액터 클래스를 만든 후에, 월드에 배치해서 컴포넌트 붙이고 값 바꾸고 여러개를 복제해서 쓸 수도 있습니다. 이러면 액터에 블루프린트를 추가한 인스턴스와 차이가 없는 것 아닌가 싶기도 합니다. "굳이 블루프린트라는 번거로운 과정을 거쳐야 할까?""그.. 2026. 1. 11.
언리얼 엔진의 기본 상속 구조 Unreal Engine 의 기본 상속 구조는 아래와 같습니다. class AActor;class APawn : public AActor{ // 조종 가능한 객체};class ACharacter : public APawn{ // 보행 생명체 전용 클래스 // CharacterMovementComponent 포함}; • AActor | | -- APawn | | -- ACharacter 1. AActorAActor는 월드에 존재할 수 있는 모든 객체의 최상위 기본 클래스입니다.AActor의 주요 특징은 다음과 같습니다. • 월드에 배치될 수 있습니다. • 위치, 회전, 스케일 정보를 가집니다. • 컴포넌트를 부착할 수 있습니다. • BeginP.. 2025. 12. 27.
왜 언리얼 엔진의 클래스 등록 절차는 복잡할까? 유니티에 비해 언리얼은 클래스 등록 절차가 다소 시간이 걸리고 복잡해 보입니다.이것은 언리얼 자체의 문제라기 보다는 지원하는 언어가 C++ 이라는 보다 근본적인 이유에 있습니다. 1. C# 과 C++ 의 근본적인 차이C# 과 C++의 가장 큰 차이는 런타임에 클래스 정보를 가져올 수 있느냐의 차이입니다.용어로는 리플렉션이라고 하는데 C# 은 런타임에 리플렉션을 지원하는 언어입니다. 쉽게 설명하면, 프로그램이 실행 중일 때, 클래스 이름, 멤버 변수, 함수 정보 같은 타입 정보를 런타임에서 확인할 수 있다는 의미입니다. 반면 C++은 런타임에 클래스 정보를 조회할 수 없는 언어입니다. 언어 차원에서 리플렉션을 지원하지 않기 때문입니다. 따라서 프로그램이 실행된 이후에는 이 클래스가 어떤 멤버를 가지고 있.. 2025. 12. 27.