언리얼 - HLSL 커스텀노드_픽셀화 효과 제작과정



언리얼 - HLSL 커스텀노드_픽셀화 효과 제작과정

금별 0 392 04.04 15:18

 

3D 오브젝트나 전체 화면을 레트로 게임처럼 픽셀 단위로 끊어져 보이게 만드는 방법을 설명합니다.

 

 

핵심 원리: UV 언더샘플링 (UV Undersampling)

픽셀화의 본질은 연속적인 텍스처 좌표(UV)를 이산적인 격자(Grid) 형태로 강제로 맞추는 것입니다.

 

1단계: 표면 머티리얼 (단일 오브젝트 적용)

 

머티리얼 에디터에서 Custom 노드를 생성하고 HLSL 코드를 작성합니다.

 

PixelSize라는 변수를 받아 화면을 몇 개의 격자로 나눌지 결정합니다.

 

핵심 함수: floor() 함수를 사용하여 연속적으로 변하는 UV 값을 가장 가까운 정수(또는 특정 단계)로 내림 처리합니다. 이 과정을 통해 부드러운 그라데이션을 가져야 할 UV 좌표가 계단 현상처럼 뚝뚝 끊기게 되고, 텍스처가 모자이크처럼 샘플링됩니다.

 

 

 

2단계: 포스트 프로세싱 머티리얼 (전체 화면 적용)

 

개별 오브젝트가 아닌 씬 전체에 효과를 주기 위해 포스트 프로세싱 단계로 넘어갑니다.

 

포스트 프로세싱에서는 텍스처 UV를 직접 가져올 수 없으므로, HLSL 코드 내에서 GetSceneTextureUV() 함수를 사용해 현재 렌더링된 화면의 스크린 UV를 가져옵니다.

 

동일한 floor() 로직을 스크린 UV에 적용한 뒤, SceneTextureLookup을 통해 왜곡된 UV 위치에 해당하는 씬의 픽셀 색상(PostProcessInput0)을 가져와 화면 전체를 픽셀화합니다.

 

 

 


 

float2 gridSize = float2(PixelSize,PixelSize);
float2 uvGrid = floor(uv * gridSize) / gridSize;

float4 FinalColor = SceneTextureLookup(uvGrid, 0, false);
//float3 result = Texture2DSample(tex , texSampler , uvGrid);

return FinalColor;

 

 


 

return GetSceneTextureUV(Parameters);

 

 


 



 

 

 

 

 

 

 

 

에반 언리얼5 이펙트 그룹과정[26년초 시작] : https://cafe.naver.com/unrealfx/20727

KUPAFX Stylized 유니티 이펙트 취업과정 : https://cafe.naver.com/unrealfx/21249

트리키 언리얼+후디니 활용 게임 VFX 연출과정 : https://cafe.naver.com/unrealfx/25629

 

max님의 쌩기초 메쉬활용 이펙트과정 1달특강 : https://cafe.naver.com/unrealfx/24469

eVan텍스쳐 단품과정 : https://cafe.naver.com/unrealfx/24468

rak 유니티 UI연출이펙트 : https://gamefx.co.kr/bbs/page.php?hid=Rak_intro

Comments


번호 포토 분류 제목 글쓴이 날짜 조회
1355 언리얼4 Shadow Aura in Unreal Engine 5 Niagara ashif 16:11 13
1354 언리얼4 Attack Ice AOE in Unreal Engine 5 Niagara ashif 14:56 9
1353 언리얼4 Arcane Crystal Field in Unreal Engine 5 Niagara ashif 14:18 13
1352 언리얼4 Arcane Projectile in Unreal Engine 5 Niagara ashif 06.17 33
1351 언리얼4 Arcane Power Aura in Unreal Engine 5 Niagara ashif 06.17 29
1350 언리얼4 Arcane Projectile in Unreal Engine 5 Niagara ashif 06.16 41
1349 언리얼4 Arcane Nova Spell in Unreal Engine 5 Niagara ashif 06.16 43
1348 언리얼4 Arcane Nova in Unreal Engine 5 Niagara ashif 06.15 57
1347 언리얼4 Arcane Lightning Blast in Unreal Engine 5 Niagara ashif 06.15 58
1346 언리얼4 Lightning Ability in Unreal Engine 5 Niagara ashif 06.15 62
1345 언리얼4 언리얼 - 사실적인 데칼 균열 제작과정(한글자막) 금별 06.01 228
1344 언리얼4 언리얼 - 물결 형태 텍스쳐 트랜지션 효과 제작과정(한글자막) 금별 06.01 210
1343 언리얼4 Rift Portal Stylized in Unreal Engine 5 Niagara ashif 05.25 170
1342 언리얼4 언리얼 - Niagara에서 정적 메시를 사용하여 사용자 지정 파티클 모양 만들기 금별 05.17 292
1341 언리얼4 언리얼 - 포스트 프로세스 2D 페이지 넘김 효과 머트리얼 예제 금별 05.17 253
1340 언리얼4 언리얼 - AI 활용 블랙홀 셰이더를 업그레이드(한글자더빙) 금별 05.17 262
1339 유니티 유니티 - 호박(Amber) 셰이더 제작과정(한글자막) 금별 05.12 266
1338 언리얼4 언리얼 - HLSL 심층 설명 4_레이마칭 활용 평면정사각형 메시 3D 구체로 변형 금별 05.12 276
1337 언리얼4 언리얼 - HLSL 심층 설명 4 -UV 좌표를 레이어로 반복 쌓아 깊이감 있는 오목볼록 효과 구현(한글자막) 금별 05.06 336
1336 언리얼4 언리얼 - HLSL 심층 설명 3 -큰 원의 궤적을 따라 작은 원 배치효과(한글자막) 금별 05.06 292
1335 언리얼4 언리얼 - HLSL 심층 설명 2 -원형(Circle) 기반 쉐이더를 구현(한글자막) 금별 05.06 316
1334 언리얼4 언리얼 - HLSL 심층 설명 1 - 그라데이션 변화 도구 구현(한글자막) 금별 05.06 333

 

Banner
 
Facebook Twitter GooglePlus KakaoStory NaverBand