glsles

    1熱度

    1回答

    我將桌面OpenGL應用程序移植到GLES-2(iOS專用)。在桌面版本中,一些GLSL着色器依賴於整數位操作,而GLES缺乏。 此函數,最初使用在片段着色器: int reverseByte(int a) { int b = 0; for (int i = 0; i < 8; i++) { b <<= 1; b |= ((a & (1 <<

    0熱度

    1回答

    我不能編譯以下片段着色器: uniform vec3 color; uniform sampler2D tDiffuse; varying vec2 vUv; void main() { vec4 texel = texture2D(tDiffuse, vUv); vec3 luma = vec3(0.299, 0.587, 0.114); float v =

    3熱度

    2回答

    我試圖在一個PointCloud中使用ShaderMaterial使用多個紋理。我將紋理數組與紋理索引屬性一起傳遞給着色器,並選擇適當的紋理用於片段着色器。 相關設置代碼: var particleCount = 100; var uniforms = { textures: { type: 'tv', value: this.getTextures()

    1熱度

    1回答

    我有一個片段着色器,將顏色降採樣爲4種不同的顏色。 要做到這一點,我計算基於從0變化到3。 顏色索引然後我查找在vec4的均勻陣列的最終顏色的值: 陣列的聲明: uniform vec4 u_colors[4]; 查找: gl_FragColor = u_colors[int(index)]; 這非常適用於一些設備,但在某些設備(在Tegra的4個這樣的)似乎我不能用可變訪問數組,並且輸出

    0熱度

    1回答

    我有一個遊戲使用GLSurfaceView.Renderer在通常的方式來渲染與OpenGL ES 2.0的3D圖形。 所有的渲染代碼都在onDrawFrame()方法中,並且當定時需要大約24ms才能完成;這很容易給出30 FPS的結果。 但是我發現onDrawFrame()調用本身通常只會每50到100ms被調用一次,因此onDrawFrame()的總時間實際上是70到120毫秒,最多給出14

    2熱度

    2回答

    當我切換到使用OpenGL ES 3 GLSL 300,我在FRAG着色器滿足以下錯誤 未聲明的標識符gl_FragColor使用GLSL 100時 ,一切安好。

    3熱度

    2回答

    我想爲iPhone上的OpenGL ES應用程序編寫一個簡單的頂點着色器,但是我的數組構造函數給我帶來了麻煩。 attribute vec4 normal; attribute vec4 position; void main(void){ const vec4 vertices[3] = vec4[](vec4(0.25, -0.25, 0.5, 1.0),

    3熱度

    2回答

    我需要使用極座標將矩形紋理變形爲紋理。傳播光在我的問題,我要說明吧: 我的形象: ,我必須使用着色器變形它是這樣的: 然後我要把它映射到一架飛機上。 我該怎麼做?任何幫助將不勝感激!

    3熱度

    2回答

    我嘗試使用OpenGL和GLSL API在我的3D引擎中實現parralax映射,但顯示不正確。要了解並應用這種技術,我用以下的PDF教程(16頁,17和18)的啓發的複雜性: https://www.opengl.org/sdk/docs/tutorials/TyphoonLabs/Chapter_4.pdf 產生非常基本的parralax效果(沒有任何照明效果)我需要使用2個紋理: - 1 d

    0熱度

    1回答

    我想了解頂點和片段着色器如何在OpenGL ES 2.0中工作。 我着色器看起來像這樣: 頂點着色器: // source code for the vertex shader attribute vec4 vPosition attribute vec2 a_texCoord; varying vec2 v_texCoord; void main() { gl_Positio