언리얼/Shading

언리얼5 기본 셰이딩 따라하기 - 3

스스배 2023. 12. 24. 23:05

https://www.youtube.com/watch?v=MHFqQjdH0Pw

 

 

boarder를 주면서 타일링하는 코드

 

HLSL코드

float2 tex = frac(float2(uv.x * grid.x, uv.y * grid.y));
if (tex.x >= dim.x || tex.x <= -dim.x || tex.y >= dim.y
|| tex.y <= -dim.y)
	return(colorMotar);
    
return(colorBrick);

 

 

하지만 위와 같이 border가 규칙적이지 않아 모서리가 어긋나 보이는 문제가 있음

 

위와 같이 오프셋 변수를 추가해서 같은 모든 블럭이 같은 border 값을 가질 수 있게 변경

 

HLSL코드

float2 tex = frac(float2(uv.x * grid.x + offset.x, uv.y * grid.y + offset.y));
if (tex.x >= dim.x || tex.x <= -dim.x || tex.y >= dim.y
|| tex.y <= -dim.y)
	return(colorMotar);
    
return(colorBrick);

 

 


그물 모양 머티리얼 만들기

 

머티리얼의 블랜드 모드를 Masked로 변경

 

oneMinus노드를 커스텀 노드에 연결하고 오파시티 마스크에 연결

 

결과