2013-07-02 3 views
0

안녕하세요 거리 페이딩을 추가하려고하면 HLSL 코드가 제대로 작동하지 않습니다.HLSL 음영 거리 페이드

나는 이것을 시도했다 :

Output.Color = baseColor*(diffuseLightingFactor + xAmbient * (1/xDistance)); 

이를 :

diffuseLightingFactor *= 1/xDistance; 

xDistance 카메라와 모델 사이의 거리입니다.

내가 쉐이더를 처음 사용하는 사람이라면 도움을받을 수 있습니까? 전혀 모릅니다.

미리 감사드립니다.

답변

0

이 시도 : 이것은 알파 (투명도)는 항상 1을 보장

Output.Color = 
    float4(saturate(
     baseColor * ((diffuseLightingFactor + xAmbient) * (1/xDistance)) 
    ).rgb, 1); 

을, 다른 색의 조명 요소의 합 주위 0과 1 I도 추가 괄호 있도록한다는 안개 계수가 둘 다 적용됩니다.