perlin 2

[Noise] Fractal Brownian Motion - Perlin Noise

자연현상을 묘사하기 위해, 우리는 펄린노이즈라는 노이즈를 사용합니다. 그냥 랜덤함수만 사용하면 너무 규칙적이기 때문에 자연현상과 너무 다르기 때문이죠. 이번에는 들판의 잔디같은 것들을 컴퓨터 그래픽스에서 어떻게 움직일 수 있는지에 대해 이해해보겠습니다. 잔디는 파동 형태로 흔들리게 할 수도 있죠. 파동의 중요한 특성은 두가지가 있는데 진폭과 주파수입니다float amplitude = 1.;float frequency = 1.;y = amplitude * sin(x * frequency); 좀 더 이것저것 합친 파형을 만들기 위해선 파동을 합칠 수 있습니다. 물리학 시간에 배웠을 수도 있는데요. 이를 superposition(중첩)이라고 합니다. 파동들을 더하면 다음과 같은 모양이 될 수도 있습니다. f..

[유체역학] Curl-Noise와 비압축성 유체(incompressible fluids)

우리가 유체를 표현할 때 앞에서 Projection을 통해서 유체의 흐름을 나타냈습니다. Projection을 다시 정리하자면,Divergence를 계산하고, 그 Divergence로 jacobi iteration을 돌려 압력값을 계산하고, 그 압력으로 속도를 계산하였습니다. 하지만 Curl-Noise 방식은 ∇·∇× = 0 즉, curl연산(회전미분, 회전 정도 계산)을 한 후 Divergence를 하면 반드시 0이 된다는 원리를 이용해 비 압축성 유체를 표현합니다. 본격적으로 Curl-Noise방식을 이해하기전에 Curl과 Divergence의 개념에 대해서 다시 이해해봅시다. 1. Curl은 회전미분 즉,회전 정도를 뜻합니다. 어떤 점에서 벡터장이 얼마나 회전하려는 경향이 있는지를 알아내는 계산입니..