본문 바로가기

분류 전체보기92

0. Computation Geography.. 공부를 하고 실무에서 사용했던 내용들을 정리를 하지 않으니깐, 자꾸 까먹습니다. 이번 기회에 잘 정리를 하고 추후에 유투브에 강의형식으로 올려볼 생각입니다. 모델링에 필요한 수학적인 요소들을 정리하고 그래픽스 모델링에 필요한 기하학 내용들을 정리하고 실제로 구현해볼 생각입니다. 내용은 이론내용 + C# 코드로 구성이 되어있습니다. 수학적인 내용들을 구현을 하다 보니 base class와 api가 필요합니다. 아래 base code를 참고 하시면 됩니다. public static class Extension { private static readonly float TOLERANCE = 0.000001f; public static bool IsEqual(this float x, float y) { Debug.. 2023. 8. 31.
2.7 Noise - 영혼이 빠져나감 이번에 만들어볼 이펙트는 말로 설명하기가 어렵습니다. 일본 공포만화에서 볼법한 귀신같은 느낌이라 제목을 영혼이 빠져나감 이라고 적었습니다. ^^ 전 챕터에서 사용한 random 함수, 그리고 새로운 random2 함수 입니다. float random (vec2 st) { return fract(sin(dot(st.xy, vec2(12.9898,78.233))) * 43758.5453123); } vec2 random2(vec2 st){ st = vec2( dot(st,vec2(127.1,311.7)), dot(st,vec2(269.5,183.3)) ); return -1.0 + 2.0*fract(sin(st) * 43758.5453123); } 기존 random 함수는 리턴타입이 float 인 반면, r.. 2023. 8. 28.
2.6 나이테 Noise Editor : http://editor.thebookofshaders.com/ ** The Book of Shaders Editor ** editor.thebookofshaders.com 나이테 모양을 렌더링 해봅시다. 나이테 그림을 보면 여러개의 라인으로 이루어져 있으며, 라인의 폭이 다르고 굴곡이 적용이 되어있습니다. 다음 단계로 나누어서 생각해 봅시다. 1) 라인을 그려봅니다. 위에서 아래 방향인 직선 여러개를 그려봅니다. // Author : Simon.Lee // http://patriciogonzalezvivo.com #ifdef GL_ES precision mediump float; #endif uniform vec2 u_resolution; uniform vec2 u_mouse; unif.. 2023. 8. 19.
2.5 Gradient Noise Editor : http://editor.thebookofshaders.com/ ** The Book of Shaders Editor ** editor.thebookofshaders.com Gradient Noise는 Ken Perlin이 만든 노이즈 알고리즘 입니다. 초기 랜덤함수를 사용한 Noise는 Blocky한 영역이 생기는 문제가 있었습니다. 이러한 Blocky 한 영역을 부드럽게 수정한 Noise 알고리즘이 Gradient Noise 입니다. Gradient Noise는 우주의 섬광 같기도 하고, 안개 같은 느낌도 주네요 메인 함수에서 if (st.x < Num) 코드 부분을 볼 수 있습니다. Num을 0.5로 넣게 되면 화면의 절반은 일반 Noise를 나머지는 Gradient Noise 화면.. 2023. 8. 17.