ByteBuffer.allocateDirect()
とglGenBuffers()
の違いは何ですか?従来のOpenGLのようにglGenBuffers()
の代わりにandroid ByteBuffer.allocateDirect()
を使用する理由は?ByteBuffer.allocateDirect()とglGenBuffers()の相違点
0
A
答えて
0
しかし、三角レンダリングの基本的なOpenGLチュートリアルでは、OpenGLオブジェクトとOpenGLオブジェクトの代わりにJavaオブジェクトが使用されています。
可能です。
ByteBuffer
はCPUメモリ割り当てを表します。 OpenGLバッファオブジェクトは、GPU - アクセス可能なメモリ割り当てを表します。
OpenGL ES 2.0では、CPUメモリまたはバッファオブジェクトから頂点データを指定できます。デスクトップのコアOpenGL が削除されました 2009年以来のこの能力。そのため、最新のデスクトップOpenGLチュートリアルでは、頂点データにバッファオブジェクトを使用しています。
は、OpenGL ES 2.0との下位互換性を維持するために存在しているが、それはこれらの機能のための可能性があるとして、その使用はお勧めしません:ES 3.0が明示的に「クライアント側の頂点配列」と言うこと
注意将来のバージョンで削除される可能性があります。
まだ削除されていません。しかし、彼らはいくつかの機能に干渉します。たとえば、gl_VertexID
は未定義です。
ByteBuffer
を頂点配列に直接使用しないでください。そして、他の悪い習慣を教えるかもしれないので、そうする教材を習得するのは避けるべきです。
関連する問題
- 1. IE標準、相違点および相違点の相違点
- 2. importとconstとの相違点とcommonjsでの相違点
- 3. =と:=の相違点
- 4. PHPUnitとPHPSpecの相違点と相違点
- 5. CBUUIDとNSUUIDの相違点
- 6. NSTimeZoneとGMTの相違点
- 7. ListViewとArrayListの相違点
- 8. pictureBox.Update()とpictureBox.Refresh()の相違点
- 9. ApplicationContextInitializerとBeanFactoryPostProcessorの相違点
- 10. システムとshell_execの相違点
- 11. AsyncSocketとAsyncUdpSocketの相違点
- 12. .textと.get_text()の相違点
- 13. plt.close()とplt.clf()の相違点
- 14. `BeginSubscribeToStreamingNotifications`と` SubscribeToStreamingNotifications`の相違点
- 15. Delegate.InvokeとDelegateの相違点
- 16. InternalResourceViewResolverとUrlBasedViewResolverの相違点
- 17. tf.nn.convolutionとtf.nn.conv2dの相違点
- 18. Backbone.Layout.extendとBackbone.view.extendの相違点
- 19. JavaとMacOSの相違点
- 20. Yocto:CORE_IMAGE_EXTRA_INSTALLとIMAGE_INSTALLの相違点
- 21. window.someRandomVarとsomeRandomVarの相違点
- 22. CDRとxDRの相違点
- 23. gst_bus_add_watch()とg_signal_connect()の相違点
- 24. EventStreamとEventBusの相違点
- 25. System.Threading.Tasks.DataflowとMicrosoft.Tpls.Dataflowの相違点
- 26. mkfifo()とmknod()の相違点
- 27. java.homeとJAVA_HOMEの相違点
- 28. $ httpParamSerializerJQLikeと$ httpParamSerializerの相違点
- 29. doAfterTerminateとdoFinallyの相違点
- 30. Boost.CoroutineとBoost.Coroutine2の相違点
2つの機能は全く同じではないため、私はあなたの質問を理解しているかどうかはわかりません。あなたが 'glBufferData'を意味していても、それはまだそれほど似ていません。違いはかなり明白です.1つはOpenGLオブジェクトで、もう1つはJavaオブジェクトです。 –
@NicolBolasはい、ありがとうございます。しかし、なぜ三角形をレンダリングするための基本的なOpenGLチュートリアルでOpenGLオブジェクトを使用し、三角形をレンダリングするためのすべてのAndroid OpenGL ESチュートリアルでOpenGLオブジェクトの代わりにJavaオブジェクトを使用するのですか?例:https://www.khronos.org/opengl/wiki/Tutorial:_OpenGL_3.1_The_First_Triangle_(C%2B%2B/Win)およびhttps://developer.android.com/training/graphics/opengl/shapes。 html – seqedugi