LWJGL3 has two methods of creating buffers that I know of: Auto-managed buffers that clean up the buffers automatically using the MemoryStack class, and manually managed buffers that must be manually cleaned, are are created with the MemoryUtil class. What I am wondering is should I always use MemoryStack, or are there certain times when one method would be more efficient than the other?