나는이 너트를 스스로 깨뜨릴 수없는 것처럼 보입니다. 그리고 내가 비어있는 곳에 올 때, 응답을 찾는 지역 사회로 향할 때가되었다고 생각했습니다.hlsl의 하프 타입의 아래 첨자
내가 작업중인 프로젝트에 약간의 코드가 있는데, 매우 단순화 된 버전을 제공 하겠지만 개념을 보여줄 수 있어야합니다.
//hlsl code
...
ps_main(...) {
half mask = function_calculating_mask_and_returning_half();
half3 color = condition ? a_previously_defined_half3 : mask.rrr;
}
마지막 줄은 여기에 특히 mask.rrr
그것이 정말 무엇을 하는가, 나를 혼란 무엇인가? 내가 이해하는 한 그것은 half3 (mask, mask, mask)
을 반환 할 것이지만, 나는 그 값이 매우 높다고 생각하는데, 만약 내가 mask.r
또는 단순히 mask
이라고 말하면 그것을 변경하면 훨씬 낮은 값의 결과를 얻을 수있다. (내가 말할 수있는 한) .
half3(mask^3, mask^3, mask^3)
과 같은 기능을 수행 할 수 있습니까? 그것이 결과를 볼 때 어떻게 보일까요.
아무리해도 코드가 작동하는 방식과 half
을 .rrr
으로 서브 스크립트하는 방법에 대한 제안이나 설명에 감사하며 어떤 첨자가 가능한지에 대한 참조는 멋진 크리스마스 선물이 될 것입니다. : P HLSL 스칼라 종류
DX 및 쉐이더 모델 버전은 무엇입니까? 이 쉐이더는 정상적으로 작동합니까? – Netherwire
저는 실제로 특히 hlsl에 조금 익숙하며 일반적으로 그것을 사용하는 렌더러입니다. 그러나 DX9 이상을 대상으로합니다. 그것은 작동하고 그것은 무엇을 기대하는 것처럼 보입니다. 유일한 것은이'color'가 지연 단계에서 specularity를 채색하기 위해 사용된다는 것입니다. 그리고'mask.rrr'을 사용할 때 초고속의 specularity를 얻습니다. 그래서 나는 'mask.rrr '이 값의 배수와 같은 것을한다고 의심하고 있습니다. 그래서 주된 부분은'mask.rrr'이라는 하위 첨자를 이해하는 것입니다. – qrikko