UnityShader(10)
-
렌더링 파이프라인
렌더링 파이프라인이란, 3차원 이미지를 모니터 상에 2차원 래스터 이미지로 표현하기 위한 단계적인 방법을 말한다. + 추가로 알면 좋은 것
2022.05.13 -
유니티 셰이더 동적 변경 및 할당
http://dolphin.ivyro.net/file/mobile/unityshader/tutorial04.html Shader 변수 접근 셰이더 동적으로 붙이기 스크립트에서 셰이더를 동적으로 적용할려면 material.shader를 설정하면 된다. transform.GetComponent ().material.shader = Shader.Find("Custom/TestSurf"); 셰이더 변수 접근 셰이더 변수의 dolphin.ivyro.net
2022.05.07 -
유니티 쉐이더 Input 구조체 내장 변수들 2022.03.06
-
림라이트 응용하여 홀로그램 만들기
이 포스팅에서는 림라이트를 이용해 반투명한 홀로그램을 만들고, 홀로그램을 깜박이거나 생동감 있게 연출해보자. 홀로그램 만들기 이전에 배운 Fresnel 공식을 연산해서 림라이트를 우선 만들어보자. 특징은 Input 구조체에서 viewDir 시선 방향 벡터를 받아와서 노말 벡터와 내적한다는 것이다. 림라이트를 손쉽게 구현했으니, 이제 림라이트를 만든 ndotv 내적값을 알파에 적용시켜보자. 그럼 아래와 같이 림라이트가 비쳤던 부분만 반투명해지는 홀로그램이 만들어진다. 여기에서는 입속까지 보이는 이슈가 발생하지만, 2Pass나 z버퍼로 해결할 수 있다. 홀로그램 효과 연출 홀로그램 깜박이기 홀로그램을 사라졌다가 생기게 하려면 알파를 완전히 0으로 만들었다가 다시 복구 시키면 된다. 이걸 반복해야 하므로 si..
2022.03.06 -
유니티 커스텀 라이트로 블린 퐁 스페큘라 구현하기
스페큘라는 반사광이다. 반사광을 표현하는 공식은 한 가지만 있는게 아니다. 이 포스팅에서 다룰 공식은 Phong, Blinn-Phong 두 가지이다. 그리고 스페큘라의 강도를 인터페이스를 통해 조절하는 것까지 다뤄보겠다. Phong 구현하기 퐁부터 구현해보자. 퐁 공식은 빛의 입사각과 반사각이 법선과 이루는 각도가 서로 같다는 점을 이용해 빛 방향과 노말값을 이용하여 반사 방향 값을 구한 후, 반사 방향과 카메라 방향의 내적 값으로 정반사률을 구하는 것이다. 반사광이 잘 구현되었다. 퐁 공식의 특징은 반사벡터와 시선벡터를 내적한다는 것이다. Blinn-Phong 구현하기 이 공식의 특징은 반사벡터를 구하지 않는다는 것이다. 블린 퐁의 원리는 빛 방향과 시선 방향의 중간 벡터를 구하고, 그 중간 벡터와 노..
2022.03.05 -
스카이박스 만들기
윈도우의 라이팅 탭에 들어가서 environment의 skybox material을 미리 만들어둔 머티리얼을 적용시킨다. 그 머티리얼의 텍스쳐를 배경으로 설정하고 싶은 텍스쳐로 설정한다. 확인을 위해서는 카메라 컴포넌트의 Clear Flags가 Skybox로 설정되있는지 확인해야 한다.
2022.03.05