2013-05-22 81 views
1

我想在Apple的OpenGL Shader Builder中創建着色器,並且我需要紋理作爲片段着色器的輸入。Opengl Shader Builder:使用紋理作爲片段着色器的輸入

輸入的定義如下:

uniform sampler2D texture; 

它似乎很明顯,我可以以某種方式使用已經加載到OpenGL着色生成的紋理,但我無法弄清楚如何。

回答

2

在主窗口中,您應該看到三個選項卡:渲染,紋理和符號。 單擊「紋理」選項卡,然後將圖像文件拖放到第一個可用插槽中。每個插槽代表一個紋理單元,並且將始終按照您的制服順序排列。

如果您沒有設置任何紋理,結果將是黑屏。

+0

您還可以使用layout(binding = 0)sampler2D texture指定製服綁定的紋理單位,其中0是上述紋理單位的索引。 – fluffels

+1

@fluffels [佈局限定符](http://www.opengl.org/wiki/Layout_Qualifier_(GLSL))似乎是答案,但只在OpenGL 4.2中可用(迄今爲止OS X似乎只支持4.1):( –

+0

@Jaysen確實。 – fluffels

1

一旦你爲紋理定義了一個統一的sampler2D符號,你可以去符號窗格,在那裏你可以設置符號的紋理單元的數量(我認爲第一個輸入字段是一個,但不會傷害如果你填寫所有三個)。

相關問題