opengl-2.0

    0熱度

    2回答

    我讀過,優化OpenGL 2(尤其是ES)中非透明對象渲染順序的最佳方法是優先避免上下文排序中的上下文更改(綁定不同的緩衝區,着色器程序等)。 如果您使用已綁定的緩衝區調用glBindBuffer,或使用已經是當前程序等的着色器程序執行glUseProgram等操作,它們是否仍會導致低效的管線刷新,或者庫是否足夠靈巧以識別他們作爲NOOPs?如果我可以在需要時綁定所有內容而無需跟蹤已綁定的內容並檢

    0熱度

    1回答

    我正在研究一個非常簡單的像素遊戲體素,但由於某些原因,OpenGL並未正確測試深度。 下面是相關代碼: //Render function: void display() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glLoadIdentity(); glTranslatef(2.5, 2.5, -5

    0熱度

    1回答

    我一直在試圖在獨立的Java應用程序中使用JOGL。我在Android上完成了OpenGLES的工作,並將我的代碼從Android OpenGL移植到此Java應用程序。已經有一些語法改變,但是方法和構建步驟是相似的並且是適當的。 我可以在畫布上繪製頂點浮點數組,並將顏色數據傳遞給着色器。現在我正在研究紋理。這是我的問題所在。我能夠紋理化,甚至通過Java將其他顏色應用於着色器,但現在我希望能夠在

    0熱度

    1回答

    我知道StackOverflow中充滿了類似的問題(Like this one或that one),但所給出的解決方案似乎對我無效。 我的目標是使用gluProject從3D空間中獲取某點的屏幕座標。在此之前,我期望通過執行以下操作獲取矩陣: GLint view[4]={0}; GLdouble proj[16]={0}; GLdouble model[16]={0}; glGetDou

    0熱度

    1回答

    首先:是的,我知道這是一個非常過時的編程界面。但是一些目標機器甚至不保證OpenGL 2.1,這就是爲什麼它仍然需要使用。 我的問題:使用OpenGL繪製某些幾何圖形時,未繪製包含2點的點和折線。是否有至少有三個座標點的多段線,它可以平穩運行。所以這是行不通的: glBegin(GL_POINT); glVertex3f(...); glEnd(); glBegin(GL_LINE_STR

    1熱度

    2回答

    有很多OpenGL教程 - 我認爲其中90%以上的人使用glBegin()/ glEnd(),並在這兩個調用之間設置頂點。現在我發現有些人告訴我這些函數已被棄用,並且不再可用於新版本的OpenGL。 所以:這是正確的嗎? 在我的應用程序中,我必須與OpenGL 2.1兼容。

    0熱度

    1回答

    我無法找到glTextureVertexPointer定義的位置,在我的C++或java opengl遊戲中沒有這樣的函數,並且我已經包含並測試了來自opengl的所有東西。 我試圖把它這樣 glTextureVertexPointer(2, GL_FLOAT, texVerts); 我真的需要這個功能,以從我的紋理spritesheet吸取一定的精靈。 我無法在谷歌, 這個功能,如果可能的話

    0熱度

    1回答

    在OpenGL管道之前:我想爲我渲染的某些對象使用特殊的頂點着色器。所以我想這個: int currProgram = glGetInteger(GL_CURRENT_PROGRAM); int currVertexShader = 0; if (currProgram == 0) { glUseProgram(programName); } else { currVer

    3熱度

    1回答

    所以我試圖用LibGDX實現「Polygon Art/Low Poly」風格。我首先構建一個由三角形組成的模型。 然後與頂點着色器,我計算用於基於高度每個頂點的顏色。 問題是,地勢體着色時,我希望它是平面着色這樣的: 我知道,與更高版本的OpenGL有一個「平」 glsl中的關鍵字將禁用頂點之間的顏色插值。從我在線閱讀和在這篇文章中看到:http://i.stack.imgur.com/DrNx9

    1熱度

    1回答

    我正致力於使我七年前寫的一個程序復活。它全部用Qt編寫,並使用一些OpenGL在應用程序顯示的圖像上繪製一些框線。問題是'gluOrtho2D'被使用,但不再被發現。我想知道如何解決這個問題。下面是代碼: void MSContext::ResizePaint(int width, int height) { // setup viewport, projection etc.: