2012-08-04 47 views
1
float4 color = tex2D(inputSampler, TexCoord); 
    //compute distance from center 
float distance = color.a>0.3f?length(TexCoord - 0.5f):1.0f; 

什麼是color.a&gt以及爲什麼在第二行中間有;有人能告訴我這段HLSL代碼的含義是什麼?

+1

你不應該在接受後完全改變問題。你應該開始一個新的問題。您應該恢復原始版本並開始一個新問題。 – 2012-08-04 07:13:36

+0

我修復了它。新的問題基本上是:「我如何使用這個HLSL代碼來遮蔽事物?」 - 我同意這應該是它自己的問題。 – 2012-08-04 07:54:53

回答

3

響應原來的問題:「誰能告訴我這是什麼片段的HLSL代碼意味着

float4 color = tex2D(inputSampler, TexCoord); 
    //compute distance from center 
float distance = color.a>0.3f?length(TexCoord - 0.5f):1.0f; 

是什麼color.a & GT和爲什麼出現;在那第二條線的中間?「


它是一個html轉義序列擰緊。 >應該是>(「大於」符號)。

所以它應該是:

float4 color = tex2D(inputSampler, TexCoord); 
    //compute distance from center 
float distance = color.a > 0.3f?length(TexCoord - 0.5f):1.0f; 

同樣,如果你遇到&lt;它可能是<( 「小於」 符號)。其他常見的的是:

  • &quot; - > '"'
  • &amp; - > '&'
  • &nbsp; - > ''(空格)

像素着色器實際上是什麼如果此時採樣紋理的alpha大於0.3,distance是從採樣texcoord(U,V)位置到(0.5,0.5)(即紋理中心)的長度從...取樣。如果alpha爲0.3或更少,則distance設置爲1.0f

距離值顯然在着色器後面用於應用某些像素效果。

相關問題