我正嘗試在JOGL中使用這個class。它引用了BufferUtil,我找不到任何地方。我發現documentation,但沒有實際的代碼。 Eclipse不建議從任何地方導入它。我需要做些什麼才能使用此代碼?Java:BufferUtil?
回答
我認爲他們拉回了BufferUtil
(看起來它從來沒有做過任何超級有用的事情),但由於代碼只是分配了一個新的ByteBuffer
,所以你不需要它。相反,只需做一個ByteBuffer unpackedPixels = ByteBuffer.allocate(packedPixels.length * bytesPerPixel);
。
還有一個更新的JOGL類,它有一些類似com.jogamp.opengl.util.texture.TextureIO
的幾個newTexture(...)
方法。
我遇到了同樣的問題,同時移植一個JOGL 1.x的應用JOGL 2,發現在新gluegen庫BufferUtil等效方法:com.jogamp.common.nio.Buffers
的JavaDoc:http://jogamp.org/deployment/jogamp-next/javadoc/gluegen/javadoc/com/jogamp/common/nio/Buffers.html
在NeHe JOGL教程中,有很多地方使用BufferUtil
來創建緩衝區。使用JOGL 2.0,我們可以使用com.jogamp.common.nio.Buffers
。
例如,
BufferUtil.newIntBuffer(BUFSIZE)
成爲Buffers.newDirectIntBuffer(BUFSIZE)
BufferUtil.newByteBuffer(BUFSIZE)
成爲Buffers.newDirectByteBuffer(BUFSIZE)
而是使用com.jogamp.common.nio.Buffers來做到這一點。 GLBuffers主要用於內部使用,它甚至不應該在公共API中。 – gouessej 2012-02-24 11:54:25
根據@ gouessej的評論我更新了這個答案,我們不應該使用'com.jogamp.opengl.util.GLBuffers'類。 – 2012-05-29 04:07:59
您已經添加到了'jogl.jar'文件的引用到您的項目? – 2010-09-19 17:54:20
是的。其他JOGL類,如GL2,工作正常。 – 2010-09-19 17:56:25
JOGL 2.0中沒有jogl.jar,它被命名爲jogl.all.jar。還有另一個沒有AWT依賴的JAR。 – gouessej 2012-02-24 11:52:01