공부/Shader

    연습

    Shader "Shader/Toon Rim Light" Property_MainTex ("Base (RGB)", 2D) = "white" {} _BumpMap ("BumpMap", 2D) = "bump" {} //노멀맵 텍스쳐 Tags { "RenderType"="Opaque" }LOD 300 //노멀맵을 적용하려면 LOD가 300 CGPROGRAM#pragma surface surf Lambert sampler2D _MainTex;sampler2D _BumpMap; struct Input {float2 uv_MainTex;float2 uv_BumpMap; //_BumpMap으로부터 색상 정보를 읽어오기 위함}; void surf (Input IN, inout SurfaceOutput o) { //Inp..

    Study #1

    셰이더란? 화면에 출력할 픽셀의 위치와 색상을 계산하는 함수 셰이더는 정점셰이더(Vertex Shader)와 픽셀셰이더(Pixel Shader)로 나뉘며, 앞에서 정의한 내용은 픽셀셰이더(Pixel Shader)에 해당한다. 정점 셰이더(Vertex Shader) 3D 물체를 구성하는 정점들의 위치를 화면 좌표로 변환하는 것이다. (각 정점의 공간을 변환) 정점셰이더는 3D오브젝트를 구성하는 정점의 수만큼 실행되며, 정점의 위치를 3개씩 모으면 화면에 출력할 삼각형이 만들어진다. 만들어진 삼각형 안에 몇 개의 픽셀이 들어갈지 알 수 있게 하는 것이 래스터라이저(Rasterizer)다. 래스터라이저는 정점셰이더가 출력하는 정점의 위치를 차례대로 3개씩 모아 삼각형을 만들고, 그 안에 들어갈 픽셀들을 찾아낸..