[Unity] Dungeon Gunner (25) - Shader Graph Dungeon Light Shader

suhan0304·2024년 2월 16일
0

유니티 - Dungeon Gunner

목록 보기
25/30
post-thumbnail

Shader

세이더는 특수 프로그램으로 컴퓨터 그래픽 처리 장치에서 실행된다. 2D 텍스쳐, 3D 메시에서의 픽셀의 색과 재질을 조작할 수 있다. 우리는 2D Sprite Shader Graph를 이용해서 세이더를 구현한다.

2D Sprite Shader Graph

2D Sprite Shader Graph에 대한 자세한 설명은 유니티 공식 문서를 참고하자.


DugeonLightShader

Sprite List Shader Graph를 하나 생성해준다. 그 후 더블 클릭해서 열어준 후에 씬 창을 선택하고 Shift + Space를 하면 최대화할 수 있다.

기본적인 사용법은 Unreal Engine 5의 Blue Print와 거의 동일하다. 언리얼 엔진의 블루 프린터를 다룰 줄 안다면 쉽게 사용할 수 있다.

속성 창의 플러스 버튼을 눌러 Texture2D 속성을 생성할 수 있다.

아래와 같이 여러개의 프로퍼티를 생성해준다.

이 때 Reference(참조)는 추후에 코드를 사용할 때 엑세스할 이름이기 때문에 매우 중요하므로 코드 상에서 사용할 Float형 프로퍼티와 같은 경우는 Reference를 별도로 설정해서 기억해두어야 한다.

이제 생성한 속성을 그래프 창에 드래그 주어서 사용할 수 있다.

추가로 Float형 프로퍼티를 하나 생성해준다. 값은 0.1로 해준 후에 Reference는 Alpha_Slider로 설정한다. 이 프로퍼티는 추후에 코드 상에서 사용할 예정이다.

빈 공간을 우클릭해서 Sample Text 2D Node를 세 개 만들어준다. 그 후에 노드를 아래 사진과 같이 설정해준다. 필요한 노드는 추가로 생성해준다.

이제 MainTex의 Default에 Texture를 넣어서 alpha 값을 수정해서 Main Preview로 확인해보자. 예로 acidic_floor0을 넣은 후에 alpha을 조절하면 다음과 같다.

이러한 alpha 값 조절을 어디에 사용할 수 있을까? 우리가 처음에 던전 룸에 입장할 때 alpha을 조절하면서 던전이 어두운 상태에서 점점 뚜렷해지면서 밝아지는 효과를 줄 수 있다. 이를 모든 방 쉐이더의 알파값을 점점 올리면서 연출할 수 있다.

profile
Be Honest, Be Harder, Be Stronger

0개의 댓글

관련 채용 정보