11/22

이우석·2023년 11월 22일
0

SBS 국기수업

목록 보기
73/120

그래픽과 쉐이더

쉐이더는 그림을 그리는 역할을 하며, 그래픽에 있어서 매우 중요한 역할을 한다. 일반적으로 HRSL으로 쉐이딩 언어로 작성하나, 유니티에서는 전용 쉐이더 스크립트를 통해 컨트롤한다.

유니티 쉐이더 스크립트의 특징
- 코드 작성 후 바로 확인 할 수 있어 직관성이 뛰어나다.
- 프로그래밍을 하는데에 디자인적인 감각 또한 필요하다.

아트 디렉터와 테크니컬 디렉터는 필수적으로 숙달되어야 할 기술이다.

shader를 만들면 최상단 경로에 따라 쉐이더위치가 생성되며 마테리얼에서 이를 확인할 수 있다.

https://docs.unity3d.com/kr/current/Manual/SL-SurfaceShaders.html

쉐이더는 크게 스탠다드와 커스텀으로 나뉘는데,
스탠다드는 유니티에서 기본으로 제공하는 쉐이더로
SurfaceOutputStandard 값을 이용한다.
스탠다드는 PBL (현실기반빛) 기법으로 현실에 가까운 연산을 하며 리소스를 많이 잡아먹는다.

Properties : 유니티 화면에 표시될 파라미터들
SubShader : 실제 쉐이더 연산을 하는 부분

#pragma surface surf Standard fullforwardshadows

surface surf 표면 연산방식을 surf 함수로 지정함
Standard : 라이팅 연산을 Standard 방식으로 지정
fullforwardshadows : 그림자 표현

#pragma target 3.0

버전 정보

Proterties 상세


이렇게 적으면

인스펙터에서 이렇게 보임

SubShader에서 사용할 때에는 변수 재선언을 해줘야함


두 색을 섞을 때 덧셈을하면 색조는 그대로인 채 명도가 올라가고, 곱셈을 하면 명도가 내려간다.

과제, 컬러 두개를 받아 첫번쨔 컬러 70%, 두번째 컬러 30%로 혼합한 뒤 0~1의 range 값(이름은 bright)이 0일 때는 검정, 1일 때는 흰색, 0.5일때는 혼합된 본래의 색이 나오도록 하라

텍스쳐 가져오기

profile
게임 개발자 지망생, 유니티 공부중!

0개의 댓글