[問題] OPENGL 在UV上取圖片材質的座標偏移量

看板C_and_CPP (C/C++)作者 (魯塞)時間12年前 (2013/10/21 09:50), 編輯推噓2(207)
留言9則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) GCC 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) GLEW 問題(Question): 不瞭解為什麼OPENGL取UV材質都必須用5的偏移量? glVertexAttribPointer(gProgram->attrib("vc"), 2, GL_FLOAT, GL_TRUE, 5*sizeof(GLfloat), (const GLvoid*)(3 * sizeof(GLfloat))); 查過官方文件和google大神, 沒有說明,倒是找到一篇英文直接說偏移量用5就對了... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 36.224.215.106 ※ 編輯: ruthertw 來自: 36.224.215.106 (10/21 09:51)

10/21 12:18, , 1F
我自己猜測是UV+XYZ共5個
10/21 12:18, 1F

10/21 12:18, , 2F
不過不知道對不對就是了....
10/21 12:18, 2F

10/21 12:48, , 3F
第五個參數叫 stride
10/21 12:48, 3F

10/21 19:18, , 4F
其實官方文件有說明用法......stride是走一步的意思
10/21 19:18, 4F

10/21 19:20, , 5F
也就是橫跨一整個頂點,需要五個float(XYZUV)的大小
10/21 19:20, 5F

10/21 19:21, , 6F
最後一個是指offset,因為是按照XYZUV的走法,所以要
10/21 19:21, 6F

10/21 19:21, , 7F
先把開頭的XYZ(3個float)空出來,這樣再往下五個才會對
10/21 19:21, 7F

10/22 08:59, , 8F
謝謝~ 受益良多~
10/22 08:59, 8F

10/22 18:51, , 9F
希望我沒有講解錯誤XDlll
10/22 18:51, 9F
文章代碼(AID): #1IP8XRrw (C_and_CPP)
文章代碼(AID): #1IP8XRrw (C_and_CPP)