Shader/TheBookofShaders12 Rectangle Rectangle NE를 기준으로 계산하면 파란색 SW를 기준으로 계산하면 빨간색 두좌표의 계산하면 가운데 부분만 1,1이고 나머지는 하나이상은 0을 가지고 있는 구별점이 생성된다. 2021. 8. 19. qualifier qualifier in vec4 == vec4랑 똑같음 깊은 복사에 해당해서 return 하지 않고 void하기 때문에 0+0.5가 되어 회색이 되는것이 아니라 검은색으로 표현된다 회색으로 변환시킬때 사용하는 것이 out 과 inout이다. inout 레퍼런스 복사가 되어서 아무것도 리턴을 하지 않았지만 주소 값이 전달이 되고 그값에 +.5가 더해져서 실제 main함수 color값이 변한다. in out inout vec3 col = vec3(.5): 일때 in out inout 실제 작업에서는 out은 안쓰는것이 좋고 최대한 in을 사용하며 부득이한 경우에 inout을 사용하는 것이 좋다. 2021. 8. 19. atan atan https://en.wikipedia.org/wiki/HSL_and_HSV#Color_conversion_formulae https://www.shadertoy.com/view/MsS3Wc RGB를 HSL(색조,채도,밝기)로 변환 color = hsl2rgb(vec3(st.x,1.0,st.y) 색조는 x축 변화 ,채도는 1, 밝기는 y축 변화 atan() float length(vec2 x) 원점과 지정해준 곳의 거리 한점만 지정하면 되다보니 distance보다 빠름 float distance(vec2 p0, vec2 p1) 무조건 원점과의 거리가 아니라 지정한 두점과의 거리 #ifdef GL_ES precision mediump float; #endif #define TWO_PI 6.28318.. 2021. 8. 19. Color Color 밑에 처럼 [0] = r = x = s 인것처럼 어느것을 사용해도 똑같다. Swizzle rgb 순서가 무조건 고정 될 필요는 없다. 예를 들어)rrr,ggg,bbb,rbg,gbr을 사용해도 아무 상관없다. mix float pct = abs(sin(u_time)); # 시간 변화에 따른 0~1사이 색변화 pct.r 값만 골라서 믹스 pct.g 값만 골라서 믹스한 값 pct.b 2021. 8. 19. 이전 1 2 3 다음