본문 바로가기

Shader4

[Unreal Engine] Height POM 제작하기 안녕하세요.정글러입니다. "Height POM" 쉐이더는 "Height-based Parallax Occlusion Mapping"의 줄임말로,표면의 디테일을 더욱 입체적으로 표현하기 위해 사용하는 텍스처링 기법입니다.일반적인 Parallax Mapping(시차 맵핑)의 확장판이며, 높이 맵(Height Map) 정보를 활용해텍스처 표면이 실제로 파여 있는 것처럼 보이게 만듭니다. Material Instance에서 Ratio를 통해 입체감을 조절할 수 있습니다.Height POM은 단순한 노멀맵보다 훨씬 더 깊이 있는 시각 효과를 제공합니다.벽돌 벽, 바위, 금속 표면 등이 마치 실제로 파이거나 튀어나온 것처럼 보입니다. 특히 옆에서 볼 때 입체감이 두드러져서 현실감이 급상승합니다. 또한 복잡한 3D.. 2025. 6. 10.
[Graphics] Phong Reflection Model(Ambient / Diffuse / Specular) 이해하기 안녕하세요.정글러입니다.언리얼엔진에서 블루프린트를 활용하여 쉐이더를 만든 적이 있죠.그 원리를 이해하기 위해선 Phong Reflection Model을 이해해야 합니다. Ambient사실적인 느낌을 내는 데에 그렇게 중요하진 않습니다.ambient는 물체가 내는 색깔이라고 볼 수 있습니다. // Ambient 성분 result.ambient = ka * ambientLight;DiffuseAmbient에 diffuse를 추가하면 입체감이 살아나게 됩니다.diffuse는 한 점에서 받는 빛의 강도를 계산합니다.이때 벡터n(한 점)과 벡터l(점에서 빛으로 향하는 벡터)는 각도가 커지면 커질 수록 빛을 덜 받습니다.조명의 방향에 따라서 강하게 보여줄지, 약하게 보여줄지 정하는 것입니다.// Diffuse .. 2025. 2. 4.
[Unreal Engine] 쉐이더 Visual Scripting 안녕하세요. 정글러입니다.쉐이더 수식을 정리해보겠습니다.1. Constants상수, 고정수치- Float(0) ; 1채널 값의 강도 / Append로 연결해서 2채널, 3채널을 만들 수 있음(0,0) ; UV, XY, RG 등 2채널 값의 강도(0,0,0) ; XYZ, RGB, UVW 등 3채널 값의 강도(0,0,0,0) ; RGBA- Vertex Color- Time ; 지속적으로 올라가는 시간2. Coordinates- Panner ; 횡/종 방향 이동 / Texcood-Panner-UVs로 연결- Rotator ; 센터 기준 회전 / Texcoord-Rotator-UVs- Texcoord ; UV 또는 0-1로 진행하는 2차원 벡터 생성- PixelNomalWS ; 노멀맵 적용받은 픽셀 노멀- Ve.. 2024. 6. 20.
[Unreal Engine] 쉐이더 텍스쳐 수정하기 안녕하세요. 정글러입니다.오늘은 머티리얼 쉐이더에서 텍스쳐를 수정하는 방법에 대해 알아보겠습니다.1. BaseColor Map여기서 자주 사용하는 것은 Texture Object와 Texture Sample입니다.Texture Object는 고유한 Texture를 불러오는 것이고, Sample은 Texture와 UV를 설정하는 것입니다. 이때 인스턴스에서 Texture를 수정해주기 위해 Texture Object를 우클릭하여 파라미터로 전환을 눌러줍니다.그러면 인스턴스 창에 활성화되므로, 준비해둔 텍스쳐를 적용시켜줍니다.- 샘플러 타입; Color / 텍스처; BaseColor_White 2. Normal Map노멀맵도 추가해주었는데요,노멀맵은 하이폴리곤 모델링의 노멀값을 구워주고, 이를 로우 폴리콘에 .. 2024. 6. 19.