我正在嘗試使用spidergl已經使用的implements示例代碼實現webgl陰影映射。我試圖直接在WebGL上實現它。頂點位置三元組如何映射到着色器中的vec4?
我相信我有幾乎相似的代碼,但我沒有得到結果。我已經將問題縮小到了代碼的一小部分。我的着色器代碼定義了a_position
(頂點位置屬性),如vec3;而spidergl代碼將其定義爲vec4。我梳理了spidergl代碼,以瞭解它們的頂點位置屬性(它們是x-y-z三元組)如何填充到vec4中。我期望在調用vertexAttribPointer時找到訣竅。但是他們所傳遞的大小和步幅的值如預期的那樣:3和12.我改變了我的代碼來做同樣的事情,但我還沒有得到相同的結果。
有人可以解釋位置三元組被映射到vec4
的基本機制嗎?我從來沒有見過這樣的代碼,它還提到了立方體角的x,y,z座標,但有着色器將a_position
作爲vec4
。那麼什麼會被填入vec4的第四個浮點數?
+1 for _food for thought_。我會在GLSL規範中期待這一點,但第二個想法是,它並不真正屬於那裏。 – 2012-04-02 18:23:20