난기류 효과
난기류 효과를 사용하여 Perlin 노이즈 함수를 기반으로 비트맵을 생성합니다.
난기류 효과에는 입력 이미지가 없습니다.
이 효과에 대한 CLSID는 CLSID_D2D1Turbulence.
예제 이미지
난기류 효과는 Perlin 노이즈 함수의 하나 이상의 옥타브의 합계를 계산합니다. Perlin 노이즈는 빈도, 위치 및 시드 값에 따라 값이 달라지는 의사 임의 함수입니다. 이 효과는 이러한 수식 중 하나를 사용하여 RGBA 값을 생성합니다.
D2D1_TURBULENCE_NOISE_FRACTAL_SUM 노이즈 모드를 선택하면 효과가 이 수식을 사용합니다.
D2D1_TURBULENCE_NOISE_TURBULENCE 노이즈 모드를 선택하면 효과가 이 수식을 사용합니다.
참고
함수의 PerlinNoise
범위는 [-1, 1]입니다.
이 효과는 미리 곱한 알파로 픽셀 값을 출력합니다.
효과 속성
표시 이름 및 인덱스 열거형 | Description |
---|---|
Offset D2D1_TURBULENCE_PROP_OFFSET |
난기류 출력이 생성되는 좌표입니다. Perlin 노이즈를 생성하는 데 사용되는 알고리즘은 위치에 따라 달라지므로 다른 오프셋으로 인해 다른 출력이 생성됩니다. 이 속성은 바인딩되지 않으며 단위는 DIP에 지정됩니다. 참고: 노이즈 함수 출력이 무한하고 함수가 타일 주위에 래핑되므로 오프셋은 변환과 같은 효과가 없습니다. 형식이 D2D1_VECTOR_2F. 기본값은 {0.0f, 0.0f}입니다. |
크기 D2D1_TURBULENCE_PROP_SIZE |
난기류 출력의 크기입니다. 이 속성은 바인딩되지 않으며 단위는 DIP에 지정됩니다. 형식이 D2D1_VECTOR_2F. 기본값은 {0.0f, 0.0f}입니다. |
BaseFrequency D2D1_TURBULENCE_PROP_BASE_FREQUENCY |
X 및 Y 방향의 기본 주파수입니다. 이 속성은 float이며 0보다 커야 합니다. 단위는 1/DIP로 지정됩니다. 기본 주파수의 값이 1(1/DIP)이면 Perlin 노이즈가 두 픽셀 사이의 전체 주기를 완료합니다. 이러한 픽셀에 대한 보간이 용이하면 픽셀 간에 상관 관계가 없으므로 완전히 임의 픽셀이 생성됩니다. 기본 주파수에 대해 0.1(1/DIP) 값인 Perlin 노이즈 함수는 10개의 DIP마다 반복됩니다. 이로 인해 픽셀과 일반적인 난기류 효과가 표시됩니다. 형식이 D2D1_VECTOR_2F. 기본값은 {0.01f, 0.01f}입니다. |
NumOctaves D2D1_TURBULENCE_PROP_NUM_OCTAVES |
노이즈 함수의 옥타브 수입니다. 이 속성은 UINT32이며 0보다 커야 합니다. UINT32 형식입니다. 기본값은 1입니다. |
Seed D2D1_TURBULENCE_PROP_SEED |
의사 임의 생성기의 시드입니다. 이 속성은 바인딩되지 않습니다. UINT32 형식입니다. 기본값은 0입니다. |
노이즈 D2D1_TURBULENCE_PROP_NOISE |
난기류 노이즈 모드입니다. 이 속성은 프랙탈 합계 또는 난기류일 수 있습니다. 프랙탈 노이즈 또는 난기류 함수를 기반으로 비트맵을 생성할지 여부를 나타냅니다. 자세한 내용은 노이즈 모드를 참조하세요. 형식이 D2D1_TURBULENCE_NOISE. 기본값은 D2D1_TURBULENCE_NOISE_FRACTAL_SUM. |
스티치 가능 D2D1_TURBULENCE_PROP_STITCHABLE |
스티치를 켜거나 끕니다. 출력 비트맵을 스티치할 수 있도록 기본 빈도가 조정됩니다. 이는 난기류 효과 출력의 여러 복사본을 타일화하려는 경우에 유용합니다.
BOOL 형식입니다. 기본값은 FALSE입니다. |
노이즈 모드
열거형 | 설명 |
---|---|
D2D1_TURBULENCE_NOISE_FRACTAL_SUM | 출력 범위를 [-1, 1]에서 [0, 1]로 이동하여 옥타브의 합계를 계산합니다. |
D2D1_TURBULENCE_NOISE_TURBULENCE | 각 옥타브의 절대값 합계를 계산합니다. |
참고
두 모드 모두 출력 값의 명시적 클램프를 포함하지 않습니다.
출력 비트맵
이 효과는 논리적으로 무한 크기의 비트맵을 생성합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 7용 Windows 8 및 플랫폼 업데이트 [데스크톱 앱 | Windows 스토어 앱] |
지원되는 최소 서버 | Windows 8 및 Windows 7용 플랫폼 업데이트 [데스크톱 앱 | Windows 스토어 앱] |
헤더 | d2d1effects.h |
라이브러리 | d2d1.lib, dxguid.lib |