D3DXFresnelTerm 함수(D3DX10Math.h)

참고

D3DX 유틸리티 라이브러리는 더 이상 사용되지 않습니다. 대신 DirectXMath 를 사용하는 것이 좋습니다.

Fresnel 용어를 계산합니다.

구문

FLOAT D3DXFresnelTerm(
  _In_ FLOAT CosTheta,
  _In_ FLOAT RefractionIndex
);

매개 변수

CosTheta [in]

형식: FLOAT

값은 0에서 1 사이여야 합니다.

RefractionIndex [in]

형식: FLOAT

재질의 굴절 인덱스입니다. 값은 1보다 커야 합니다.

반환 값

형식: FLOAT

이 함수는 극성 광원에 대해 Fresnel 용어를 반환합니다. CosTheta는 인시던트 각도의 코사인입니다.

설명

Fresnel 용어(F)를 찾으려면 다음을 참조하세요.

A가 발생률의 각도이고 B가 굴절 각도인 경우

F = 0.5 * [tan2(A - B) / tan2(A + B) + sin2(A - B) / sin2(A + B)]
  = 0.5 * sin2(A - B) / sin2(A + B) * [cos2(A + B) / cos2(A - B) + 1]

Let r   = sina(A) / sin(B)      (the relative refractive index)
Let c   = cos(A)
Let g   = (r2 + c2 - 1)1/2

그런 다음, trig ID를 사용하여 확장하고 간소화하면 다음을 얻을 수 있습니다.

F = 0.5 * (g + c)2 / (g - c)2 * ([c(g + c) - 1]2 / [c(g - c) + 1]2 + 1)

요구 사항

요구 사항
헤더
D3DX10Math.h
라이브러리
D3DX10.lib

추가 정보

수학 함수