VMware Communities
stgatilov
Contributor
Contributor

Cannot create VBO larger than 64 MB in GL3-core

I'm using VMware Workstation Player to test a free video game on Linux.

The game is based on Doom 3 engine, and thus uses OpenGL to render stuff. Right now it works fine on GL 3.3 core profile.

However, I am facing the following problem: I cannot allocate a Buffer Object of size larger than 64 megabytes. Anything below 64 MB works fine, I can e.g. allocate two buffers of size 65535 KB. But when I allocate a buffer larger than 64 MB, glBufferData returns error GL_OUT_OF_MEMORY.

I know that this is not a bug, and OpenGL implementation is allowed to impose any limit on buffer size. However, this limit seems to sound very arbitrary, and is quite small by today standards. Given that the game strives to keep all vertex data in a single large VBO, it would take considerable effort to workaround this limitation.

The question is: is it possible to somehow increase or remove this limit on a size of single Buffer Object?

I'm using Windows 10 host and Linux guest, both 64-bit.

My GPU is: NVIDIA GeForce 1050 ti    (it allocates 256 MB buffers on host without problem).

VMware Workstation Player 15.0.2 build-10952284

In the VM settings, I have "Accelerate 3D graphics" on, and "Graphics memory" set to "2 GB".

Tags (2)
0 Kudos
0 Replies