2013-10-21 154 views
5

我對如何使用片段着色器繪製具有特定寬度(或多個線條)的線感興趣。我偶然發現了this post這似乎解釋它。片段着色器 - 繪製線條?

我的挑戰是瞭解它背後的邏輯。

幾個問題:

  1. 我們的座標空間在這個例子中是(0.0-1.0,0.0-1.0),是否正確?
  2. 如果是這樣,什麼是「紫外線」變量的目的。由於厚度爲500,「uv」變量將非常小。因此從它到第一和第二列的距離(存儲在a和b變量中)?
  3. 最後,是什麼爲H變量背後的邏輯是什麼?

回答

2

我會嘗試逐一回答你所有的問題:

1)是的,其實這是正確的。

2)是常見的三維計算機圖形0和1之間(或-1之間具有浮點值來表示的座標(一定範圍內)1)。首先,這使得判斷給定值是否跨越所述邊界非常容易,並且從「像素」作爲離散圖像單元的概念中抽象出來;此外,這種常見的做法,可以發現幾乎其他任何地方(想想設備座標或紋理座標)

不要怕,你正在使用的值小於一個;事實上,在計算機圖形學中,您通常會使用浮點算術處理FLOAT類型,它們很適合在「1」點附近表示Real值線。

3)式給出用於h由兩個部分組成:平方根部分,和2/C係數。平方根部分應該從scholl數學類別中廣爲人知 - 這是三角形區域(a,b,c之間)的Heron公式。 2/c提取所述三角形的高度,所述三角形存儲在h中,並且也是點uv與三角形的「地面線」之間的距離。這個距離然後用來決定uv與p1-p2的關係。

相關問題