glsl

    1熱度

    2回答

    我只是將一些幾何着色器弄成一個GL_POINTS列表並輸出一個帶有三角形條紋的框。我有它基本上工作,但是當我放大/縮小或平移三角形帶走遍各地,並沒有保持其在世界上的位置,但仍然正確畫框。 例如,如果我給輸入端(5,5,0),它會繪製這些點的三角形帶,使一個框: (5,5,0) (5.5,5, 0) (5,5.5,0) (5.5,5.5,0) 頂點着色器: // Vertex Shader #v

    1熱度

    2回答

    同樣的制服變量我有兩個變量,我是從着色器獲得在OpenGL。我做這樣的事情。 vLoc = glGetAttribLocation(progId,"vPosition"); nLoc = glGetAttribLocation(progId,"vNormal"); matViewLoc = glGetUniformLocation(progId,"matView"); matPro

    0熱度

    1回答

    在檢查着色器實例我最近發現,它是相當經常 傳遞世界逆轉置矩陣與世界和世界觀投影 矩陣。 float4x4 worldMatrix; float4x4 worldViewProjectionMatrix; float4x4 worldInverseTransposeMatrix; 不幸的是,我無法理解它的目的以及它的用途。有人可以解釋嗎? 謝謝。

    1熱度

    1回答

    我正在嘗試將我的固定管線代碼(OpenGL ES 1.1)轉換爲使用着色器管線(OpenGL ES 2.0)的代碼。但是隻有一個紋理似乎工作,我得到的錯誤: Validation Failed: Sampler error: Samplers of different types use the same texture image unit. - or - A sampler's text

    1熱度

    1回答

    好吧,試圖調試我有的另一個問題,我決定確保我的紋理在我的片段着色器中正確渲染。但是,事實並非如此。我所得到的全部是整個圓柱體上的灰色。如果我註釋掉「setShaders()」,則紋理在固定功能管線中正確應用。 我在片段着色器中做的所有事情是將紋理值分配給片段顏色。它應該工作,對吧?我發誓我已經完成了所有的作品。 GRR 下面的代碼之前,我畫我的缸: vertexShader = "fish.ver

    5熱度

    1回答

    我試圖用一維數組作爲查找表在我的頂點着色器..所以爲什麼當我打電話 texture1D(tex,gl_TexCoord[0].s); 它返回一個vec4?我的意思是我知道這就是它的作用,但這4個值代表什麼?我想要的只是基於座標的紋理中的一個值。

    0熱度

    2回答

    我有一個關於OpenGL渲染管道的問題。 我最近一直在閱讀有關GLSL的幾何着色器的理論。我認爲我確實瞭解如何發佈新幾何並將顏色分配給新頂點的基礎知識。但是,我不確定如果其中一個新頂點與從Vertex着色器進入的頂點具有相同的位置,則該片段將獲得什麼顏色。 考慮這個例子: 據我所知,我能夠使用頂點着色器處理單個頂點。我做了一些轉變,並將其存儲在glPosition中。此外,還可以將顏色分配給該頂點

    2熱度

    1回答

    底線: 如果您想使用Flex /野牛添加一個非常小的功能到C++,你會怎麼做呢?例如,能夠使用語法聲明void xxx()函數:foo%%: xxx? 原委: 一次,我已經編碼的內置準備使用的CG/GLSL像素和頂點着色器從多個塊的自定義着色器處理程序。我添加了一些功能,主要涉及靜態編譯(像「更好的預處理器」)。 例如,一些看起來像 #if LIGHT_TYPE == POINT flo

    3熱度

    1回答

    在我的Mac應用程序中,我根據來自連接的相機的YUV 4:2:2數據定義了矩形紋理。使用標準的頂點和紋理座標,我可以將其繪製到屏幕上的矩形區域,而不會出現任何問題。 但是,我想使用GLSL片段着色器來處理GPU上的這些圖像幀,並且無法將矩形視頻紋理作爲統一信息傳遞給片段着色器。當我嘗試這樣做時,紋理簡單地讀爲黑色。 着色器程序編譯,鏈接並通過驗證。我從着色器程序收到了制服的正確地址。其他制服(如浮

    36熱度

    2回答

    我對HSL轉換有着相當不錯的着色器,但它都是用老派的GLSL編寫的,而且從我所看到的顯然它所做的很多東西在更新版本的OpenGL中已棄用。但是我發現很難找到關於如何更新着色器代碼的信息。所有非常好的OpenGL教程似乎都適用於老派的GL技術。 有誰知道我在哪裏可以找到關於如何編寫現代GLSL的教程?如果它解釋如何更新較舊的着色器腳本,則爲獎勵點。