TECHARTNOMAD | TECHARTFLOWIO.COM

2025/10/23 4

[번역] UE5. 앰비언트 라이트 및 GI 2: 노멀 스무딩하기

Yu-ki016 군의 GI 저니 두 번째 글입니다.저자: Yu-ki0161. 서론이전 글에서는 Lumen의 Diffuse를 다운샘플링하고 컨볼루션을 수행하여 저주파 Lumen을 얻는 방법을 소개했습니다. Perfect World의 발표에서는 또 다른 접근 방식을 제시했는데, 바로 노멀을 스무딩하여 저주파 Lumen 정보를 얻는 방법입니다.이 아이디어가 매우 흥미로워서 저도 시도해보고 싶었습니다. 노멀 스무딩이라고 하면 툰 캐릭터의 노멀에 Blur를 적용하는 것을 먼저 떠올리실 수 있지만, 저는 툰 렌더링을 할 때마다 Blur를 사용하고 싶지는 않았습니다. 그래서 다른 방법으로 대체할 수 있을지 고민하다가 문득 "카메라 방향으로 노멀을 대체하는 것도 가능하지 않을까?"라는 생각이 들었습니다.바로 테스트해보..

TECH.ART.FLOW.IO 2025.10.23

[번역] UE5. 카툰 렌더링 셰이딩 파트 4: 앰비언트 라이트와 GI

Yu-ki 016 군의 재미있는 리서치 기록을 번역 해 봤습니다.~ 관련 된 몇 가지 그의 글과 엮일 타래글 모두 조만간 번역글로 올려보겠습니다.작성자 : Yu-ki0161. 서론이전 글에서는 직접 조명을 추가했으며, 이번에는 환경광과 GI를 추가하는 방법에 대해 다루겠습니다.이 글에서 언급하는 Lumen은 실제로 Lumen의 Diffuse를 의미하며, Specular에 대한 수정은 포함하지 않습니다. 현재 Specular에 대해서는 특별한 아이디어가 없는 상황입니다.1.1 구면 조화 함수와 LumenUnity를 사용하는 경우, 많은 분들이 구면 조화 조명을 환경광으로 사용합니다. 일반적으로 법선을 평평하게 만들어 좀 더 평평한 구면 조화 조명을 계산하거나, 1차 구면 조화 함수를 환경광으로 직접 사용합..

TECH.ART.FLOW.IO 2025.10.23

GPU-Driven Renderer에서의 Heterogeneous AoS Instance Encoding

메이즈라인 velog 미러.오늘도 지하철을 저 처럼 한 시간씩 타는 직장동료분들을 위한 읽을 거리를 추가 했습니다.엔지니어 Zino의 글을 읽고 추가로 정리한 내용입니다.Heterogenous AoS instance encoding for a GPU-driven renderer대규모 오픈 월드 게임을 만들다 보면 한 가지 딜레마에 부딪힙니다. 수만 개의 나무, 건물, 캐릭터를 화면에 렌더링해야 하는데, 각 오브젝트마다 필요한 데이터가 전부 다릅니다. 어떤 오브젝트는 단순한 정적 메시만 있으면 되지만, 어떤 것은 스키닝 데이터, 복잡한 머티리얼, LOD 정보 등 방대한 데이터를 요구합니다.이런 상황에서 Heterogeneous AoS(Array of Structures) instance encoding이 ..

MAZELINE TOPIC 2025.10.23

[번역] UE5 Shell-Fur 모발 렌더링 구현

저자: 주웬(朱文)들어가며안녕하세요. 이번 글에서는 UE5.1 환경에서 Shell-Fur 방식을 활용한 털 렌더링 구현 과정을 공유하고자 합니다.작년 헤어 렌더링 작업을 진행하면서 동물 털을 표현하는 흥미로운 방법을 접하게 되었습니다. Mesh를 여러 층으로 겹쳐 쌓고, 각 층을 외부로 확장한 뒤 노이즈 텍스처를 활용하여 모발 효과를 시뮬레이션하는 방식입니다.구현 방식 비교주요 구현 방식으로는 다음과 같은 방법들이 있습니다:1. SkeletalMesh를 다중으로 복제하는 방식문제점: 좋은 품질을 위해서는 수십 개의 레이어가 필요하며, 각 레이어마다 애니메이션을 업데이트해야 하고 GPU에서 동적 배칭이 되지 않아 성능 부담이 큽니다.2. 커스텀 배칭을 통해 DrawCall 감소문제점: 관련 자료가 주로 U..

TECH.ART.FLOW.IO 2025.10.23