2016-11-24 122 views
0

我是新來的OpenGL,我想了解頂點和片段着色器。例如,如果您定義每個頂點所需的顏色,您似乎可以使用頂點着色器創建漸變,但似乎您也可以使用片段着色器進行漸變,例如,如果使用FragCoord變量。OpenGL:片段vs頂點着色器的漸變?

我的問題是,既然您似乎能夠使用兩種着色器製作顏色漸變,哪一種更適合使用?我猜測頂點着色器更快或者是因爲每個人似乎都在使用它們,但我只是想確定一下。

+0

這取決於漸變的種類。如果您只需要(每個面)線性漸變,則使用頂點着色器並讓GPU進行插值。對於其他類型,您將主要需要片段着色器。 –

+0

是的,每張臉都是我想要的。謝謝(你的)信息 – MysteryPancake

回答

0

...因爲每個人似乎都使用它們

使用頂點片段着色是現代的OpenGL強制渲染絕對一切。 所以大家都用。頂點着色器負責計算頂點的顏色,OpenGL在它們之間進行插值,片段着色器將插值寫入輸出顏色附件。

†好的,您也可以使用帶有imageStore的計算着色器,但我在此討論柵格化管道。

相關問題