본문 바로가기

Unity3D/shader_스터디

(15)
[Unity 쉐이더] 색상 연산 더보기 내용 정리 코드 정리 색상 연산 연습 이 글은 코알못의 시점으로 작성되었습니다. 머리가 굳은 상태로 작성되었습니다. 저번 글에서는 이름 짓기, 인터페이스 제작을 해봤습니다. 이제 본격적으로 SurfaceShader를 구경해보겠습니다. 코드를 보면 중괄호를 통해 구역이 나눠져있습니다. 집과 같은 형태로 상상해보면 훨씬 이해하기 쉽습니다. Shader 란 집 안에 Properties(현관)와 SubShader(마루)가 들어있고 밖에 FallBack "Diffuse"가 덩그러니 있습니다. 이건 언젠가 배우게 될 테니 지금은 무시합니다. SubShader 내부에는 또 여러 종류의 방이 있습니다. Tags, Input 등 작은 방도 있고, 서프라는 옆에 괄호로 무언가가 딸려있는 큰방도 있습니다. 또 하나의..
[Unity 쉐이더] properties 추가 내용 정리 쉐이더 언어 유니티 쉐이더 언어 레거시에서 쉐이더 생성 이름 설정 properties 추가 코드로 돌아온 나 쉐이더 언어 프로그래밍 언어는 종류가 많다 각 소프트웨어, 플렛폼에 따라 주로 사용하는 언어가 다르듯이 쉐이더에도 주로 사용되는 언어들은 아래와 같습니다. HLSL: 고급 쉐이더 언어 (High Level Shader Language) DirectX에 동작하는 언어. GLSL: OpenGL 쉐이더 언어(OpenGL Shading Language) 이름대로 OpenGL에 동작하는 언어. CG: (C for Graphics) nVidia에서 제작한 언어. 이 세 언어들은 서로 유사해 하나를 먼저 배우면 나머지 언어를 익히는데 큰 어려움이 없다고한다. HLSL과 CG는 서로 공동 개발했고, ..
[쉐이더] 버텍스 컬러 활용 내용 정리 버텍스 컬러란?? 3D 맥스에서 버텍스 컬러 칠하기 Vertex Propertise Vertex Paint UV채널을 이용한 그라데이션 유니티에서 버텍스 컬러 칠하기 3Dmax에서 가져오기 Polybrush 버텍스 컬러 추가 묘사, 색 변경 마스킹 레이어 UV 애니메이션2 응용? + 이펙트, 애니메이션 제작 시 UV침범을 막는 법 요즘 드래곤퀘스트8을 즐겨하고 있습니다. 사실 엔딩 다 봐서 허탈한 상태입니다. 1년 반 동안 오기로 달려서 이제 전체 시리즈의 반 끝냈네요. 최근에는 다 끝내는 게 아까워서 조금 천천히 하고 있습니다. 왜 이런 얘기를 했냐면 그냥 오늘 얘기할 내용이 보이길래 특히 동굴같이 비슷한 패턴, 오브젝트들이 보이는 곳이 많았던 것 같네요. 버텍스 컬러란? 버텍스 컬러에 대해..
[쉐이더]UV와 UV 애니메이션 내용 정리 UV UV 제어 (Tiling And Offset) UV 애니메이션 (Time) 응용 불 이펙트 풀 애니메이션 UV(Texcoord)란? 텍스쳐 좌표계 3D 모델링을 시작하면서는 텍스쳐 작업을 하기 위해 3D 모델의 표면을 평면으로 표현하는 것 이라고 배우며, 아래의 사진들과 같이 전개도로 보면 이해하기 쉽습니다. 여러 예시와 실습으로 같이 이해해봅시다. 왜 UV인가? 3D 공간이서 수평, 수직, 높이를 이미 X, Y, Z로 사용하고 있기 때문에 U, V는 2D 공간에서 수평, 수직 축을 나타냅니다. X-U Y-V Z-W 저번 포스팅에서 RGB를 float3(0.0,0.0,0.0)의 숫자로 이루어져 있었듯이 UV의 위치도 float2(0.0,0.0)로 0~1의 숫자로 이루어져있습니다. 그렇기 ..
[쉐이더]색깔 놀이2_Lerp 내용 정리 시작하기 전 감마, 리니어 Properties 색 변경 UI 흑백 Lerp 색깔 놀이 전 정리에 유용한 기능들 그룹 노드는 코드에 비해 조금만 복잡해져도 찾아보기 어렵기 때문에 꾸준한 정리가 필요하다. 스티커 메모 공유, 인수인계, 공부 등에 활용할 수 있는 메모 회색+회색/ Gamma, Linear 저번에 배웠듯이 0이 검정이고, 1이 흰색일 때 0.5(회색)+0.5는 흰색이 될 겁니다. 하나는 연한 회색이 나왔다. 왜 이러는 걸까? 베버의 법칙 베버-페히너의 법칙이란 감각기에서 자극의 변화를 느끼기 위해서는 처음 자극에 대해 일정 비율 이상으로 자극을 받아야 된다는 이론을 말한다. [위키백과] 베버-피헤너의 법칙 이런 사람의 감각기 때문에 사람 눈에 더 자연스럽게 보이기 위해 모니터에서 감..
[쉐이더] Float과 색깔 놀이 텍스쳐 포맷에서 이어지는 색깔 놀이 sunsimu1018.tistory.com/2 내용 정리 Float 이란? 색상 표현 방법 색깔 놀이 더하기(Add) 빼기(Subtract) 1-x (One Minus) 곱하기(Multiply) 나누기(Divide) 자리 바꾸기(Swizzling) Float 이란? 프로그래밍에서 계산할 때의 단위 32bit=4바이트 Float: 부동 소수점 (0.0 이런 거) 소수점 아래 6번째까지 유효 색상을 표현할 때는 RGB를 float3(0.0,0.0,0.0)으로 표현.(24bit) 알파 값을 포함하면 RGBA를 float4(1.0,1.0,1.0,1.0)로 표현한다.(32bit) 수는 0~1로 나타낸다. 쉐이더 맨땅 박치기했을 때는 뭔가 했는데 지금 보면 이해함 색깔 놀이 1...
[쉐이더] 초보자가 알아보는 텍스쳐 포맷 내용 정리 텍스쳐 포맷 bit에 대해 분류 게임 내 텍스쳐 포맷 PC용 모바일용 1. 텍스쳐 포맷 1-1. bit란 무엇인가 데이터를 나타내는 최소 단위. 컴퓨터에서는 0과 1의 조합으로 0 또는 1이 하나의 비트가 된다. 0과 1에 색상 정보가 직접 들어있는게 아니라 1bit로는 0(꺼짐), 1(켜짐)의 두 가지 상태로 표현함 1-2. 종류 분류 1bit 꺼짐과 켜짐으로 나타내 시각적으로 2가지 색을 표현할 수 있다. 전등과 비교하면 이해하기 쉬움 다양한 색을 표현하기 위해 위에 셀로판지를 붙였다고 한다. 2bit gray 칼라로 4단계를 나타낼 수 있어서 더 부드러운 명암 표현이 가능하다. 4bit 16색을 사용할 수 있게 되어 팔레트(Indexed Color)를 이용해 작업하게 되었다. 색이 한정되..