3D 노이즈를 사용하여 구 표면에서 평가하는 것을 고려할 것입니다.
구 표면의 도메인에 자연스럽게 존재하는 그라디언트 노이즈의 경우 각 셀의 면적이 거의 동일한 자연 연결 정보가있는 표면에 일정한 샘플 포인트 패턴이 필요하므로 인접 값을 보간하거나 합할 수 있습니다. 피보나치 그리드 와 같은 것이 작동 하는지 궁금합니다 .
나는 네 이웃에 대한 지표와 거리를 알아내는 데 얼마나 많은 일이 필요한지를 결정하기 위해 수학을 씹어 보지 않았습니다. 3D 노이즈를 사용하는 것보다 효율이 떨어질 수 있습니다.
편집 : 다른 누군가가 수학을 씹었습니다! 구형 피보나치 매핑 에 대한이 새로운 논문을 참조하십시오 . 구형 노이즈에 적응하는 것이 간단 할 것 같습니다.
구의 표면에서 노이즈를 평가하는 것이 아니라 구를 렌더링하고 구를 노이즈 격자의 해상도로 세분화하면 괜찮습니다. 구면 의 표면에 측지 격자 를 만들 수 있습니다 (분할 된 정 이십 면체, 보통):
구의 각 정점은 그래디언트 노이즈에 대해 임의로 생성 된 그래디언트를 가질 수 있습니다. 이 정보를 픽셀 셰이더에 가져 오려면 (값 노이즈와 같은 간단한 보간을 원치 않는 한),이 기사의 와이어 프레임 렌더링과 같은 기법이 필요할 수 있습니다 . . 그런 다음 SV_PrimitiveID
픽셀 셰이더 에서 (또는 OpenGL 등가물)을 읽고 사용중인 삼각형을 기준으로 정점에서 세 가지 노이즈 그라디언트를 읽은 다음 보간 된 중심 좌표를 사용하여 원하는 노이즈 계산을 사용할 수 있습니다.
이 방법의 가장 어려운 부분은 각 정점의 노이즈 값을 찾기 위해 삼각형 ID를 세 개의 샘플에 매핑하는 구성표를 만드는 것입니다.
구 모델보다 더 정밀한 해상도에서 여러 옥타브의 노이즈 또는 노이즈가 필요한 경우 정점으로 거친 측지 그리드를 수행하고 픽셀 셰이더에서 몇 가지 수준의 세분화를 수행 할 수 있습니다. 즉, 당신이 삼각형 세분화 그림있는 밖으로 무게 중심 좌표에서 것이다 메쉬가 더 테셀레이션 경우에, 그리고 다음 원시 ID 및 무게 중심의 좌표가 삼각형 것이 무엇인지 파악한다.