A Vertex Buffer Object (VBO) is an OpenGL feature that provides methods for uploading data to the video device for non-immediate-mode rendering.

learn more… | top users | synonyms

12
votes
3answers
4k views

Why does OpenGL >= 3 only allow VBOs?

I see that OpenGL versions 3 and up eliminate the use of client-side rendering. Immediate mode has been eliminated, and vertex arrays seem to be deprecated. Instead, if I understand correctly, VBOs ...
10
votes
2answers
2k views

What OpenGL version(s) to learn and/or use?

So, I'm new to OpenGL... I have general knowledge of game programming but little practical experience. I've been looking into various articles and books and trying to dive into OpenGL, but I've ...
10
votes
2answers
4k views

OpenGL: VBO or glBegin() + glEnd()?

I recently was given this link to a tutorial site from someone who I gave the original OGL Redbook to. The third header down says distinctly to forget glBegin() & glEnd() as the typical render ...
8
votes
1answer
3k views

How to use multi-thread OpenGL application to update VBO and use it at the same time?

I have simple application. It has two threads. Each thread has it's own rendering context, but they share one VBO (this is working, I tested it). Now what I want: One thread is rendering some data ...
7
votes
1answer
1k views

Should I give each character its own VBO or should I batch them into a single VBO?

I'm making a 3D first person game. Should I give each character its own VBO or should I batch all characters into a single VBO? What are the pros/cons?
7
votes
1answer
2k views

Interleaving Arrays in OpenGL

In my pursuit to write code that matches todays OpenGL standards I have found that I am completely clueless about interleaving arrays. I've tried and debugged just about everywhere I can think of but ...
6
votes
1answer
450 views

How would one draw many objects using the same VBO

I'm kind of stuck with this question for some time now, maybe because I don't know exactly what to search for, it might be a term I have not heard of yet as most tutorials ends after drawing one ...
6
votes
1answer
287 views

Why do mesh classes still contain vertex arrays if VBO's exist?

I find I'm a bit confused about the practical use of resource management in combination with memory not tied to the CPU. Correct resource management is often recommended in game tutorials, books and ...
6
votes
1answer
1k views

How is animation handled in non-immediate OpenGL?

I'm a newbie to modern OpenGL. I'm comfortable with the immediate OpenGL methodology, but I've never done any serious use of VBOs. My question is about animation. In immediate mode, to achieve ...
6
votes
1answer
182 views

How to debug framerate drops with VBOs, OpenGL

I'm working on an experimental app to test how VBOs perform when rendering a minecraft-like world. If the performance is better than what I use now I'll update my actual game. Based on what everyone ...
5
votes
2answers
2k views

OpenGL: Is it possible to use VAO's without specifying a VBO

On all the tutorials I can find about VAO's (Vertex Array Objects), they show on how to use them by configuring vertex attributes and binding a VBO (Vertex Buffer Object). But I want to create a VAO ...
5
votes
2answers
652 views

How can I make the switch from immediate mode to VBOs?

I've been using OpenGL for a short time now- and I'd like some clarification on VBOs. As I understand it, a VBO is an object stored on VRAM. In immediate mode, to apply a texture we simply bind it and ...
5
votes
1answer
780 views

VBO and gl*Pointer management practises?

I'm aware it's not a simple yes/no question and for the moment I can't tell if it can be simply answered, or is it topic for a long discussion which is not suitable for our Q&A format. I want to ...
4
votes
1answer
163 views

Are display lists faster than VBOs?

I'm making a voxel rendering engine. My "chunks" are 32 * 32 * 256 blocks and I can render a 16 * 16 square of them (which corresponds to Minecraft's maximal render distance). I'm using VBOs holding ...
4
votes
2answers
684 views

Manage VBO/VAO in a graphic engine

I'm trying to make a 2D Graphic engine for training me. I've actually made it with immediate draw and I've made the renderer outside (so I can switch between OpenGL and DirectX). How can I manage ...
4
votes
3answers
663 views

Error when trying to use VBO “array vertex_buffer_object must be disabled to call this method”

EDIT I have effectivley re-wrote this question in order to greatly imrpove its quality - see revision logs if you must I have narrowed down my problem to the initialisation phase of my program, when ...
3
votes
2answers
189 views

How can I improve the performance of this rendering code?

I've created a practice application for rendering triangles/squares/cubes using VBOs. This is mainly so I can get it right before upgrading a 3D block world game I've written that currently is using ...
3
votes
1answer
188 views

When do I use VBO?

My drawing code currently draws by calling glVertex3f(x, y, z) for each of my object's vertexes, and I've been suggested to use VBO as it'd enhance the performance of my drawing code. After checking ...
3
votes
1answer
420 views

Proper way to maintain Vertex Buffer Objects

I've started learning WebGL, currently I'm building a 2D lighting system, but there is some confusion going on inside my head. How the lighting works is based on this tutorial ...
2
votes
2answers
238 views

Can I optimize my voxel meshing regardless of different textured blocks?

At the moment, I mesh every voxel in my terrain data to a block with 4 vertices for each face. This makes assigning texture coordinates of my texture atlas very easy, since I can just pick the desired ...
2
votes
2answers
437 views

OpenGL - drawElements 2D imposible z-sorting (textured)

I am creating a 2D program in OpenGL 3.2 Now to render what I do is have a VBO for each texture and add the elements of the objects that use that texture to this vbo. Now as you know the order you ...
2
votes
1answer
355 views

How to modify VBO data

I am learning LWJGL so i can start working on my game. In order to learn LWJGL I got the idea to implement the map builder so I can get comfortable with graphics programming. Now, for the map ...
2
votes
1answer
238 views

VBO and shaders confusion, what's their connection?

Considering OpenGL 2.1 VBOs and 1.20 GLSL shaders: When creating an entity like "Zombie", is it good to initialize just the VBO buffer with the data once and do N glDrawArrays() calls per each N ...
2
votes
2answers
458 views

VBO triangle not rendered using Freeglut Opengl 3.x, not understanding the weird fixes

I've just started to learn OpenGL 3 and I'm using freeglut for the context. I ask for a 3.3 context using: glutInitContextVersion(3,3); glutInitContextFlags(GLUT_FORWARD_COMPATIBLE | GLUT_DEBUG); I ...
2
votes
1answer
116 views

Add vertices to “middle” of VBO

I've been playing around with VBOs as of late (mostly because my game necessitates it), and I've found the need to add new vertices to a VBO, but not necessarily at the end. The game in question is a ...
2
votes
2answers
474 views

How to convert a Maya object to a VBO?

I'm currently trying to teach myself OpenGL... and quickly discovering that the Immediate Mode taught in old OpenGL tutorials is basically obsolete... which leads me to VBO's... which I kind of get ...
2
votes
0answers
169 views

VBO = glGenBuffers() IllegalStateException [closed]

i'm kinda noob in OpenGL but I have this problem: I get an IllegalStateException at this code: int vboVertex = glGenBuffers(); In-detail exception: Exception in thread "main" ...
2
votes
0answers
514 views

Geometry Shader and Stream Output with Directx11

I am having trouble trying to send verticies generated in the Geometry Shader to Stream Output. What I am trying to accomplish is to generate verticies from the Geometry Shader and store them to a ...
2
votes
0answers
375 views

FPS Drop after upgrading to XCode 4.3 [closed]

I'm hoping someone else has experienced this and subsequently found a solution as I am about to light my own hair on fire in frustration. Simply put, I was creating a Cocos2D app using XCode 3.2.6 ...
2
votes
1answer
709 views

Need some help implementing VBO's with Frustum Culling

i'm currently developing my first 3D game for a school project, the game world is completely inspired by minecraft (world completely made out of cubes). I'm currently seeking to improve the ...
1
vote
2answers
1k views

VBO with texture index buffer different than vertex index buffer

I am trying to write my own OBJ importer and renderer in OpenGL (yes, I know, reinventing the wheel) and I found a problem that I don't knwo how to handle. In an OBJ file faces are defined by a list ...
1
vote
2answers
204 views

LWJGL - If I use VBOs what can I do about separate textures?

So basically this is my problem: I am creating a game that needs a texture for each object. Now I would use a sprite sheet but the textures are different sizes. I am using VBOs and I need to some how ...
1
vote
1answer
1k views

Why doesn't my texture display with this GLSL shader?

I am trying to display a DXT1 compressed texture on a quad using a VBO and shaders, but I have been unable to get it working. All I get is a black square. I know my texture is uploaded properly ...
1
vote
2answers
451 views

Chessboard colors with VBO

I am trying to draw a chessboard pattern using VBO. Geometrywise, I have it implemented and working nicely. However, I have come to the point where I want to color up the board and I have realized ...
1
vote
2answers
145 views

How can I create a VBO when I don't yet know how many vertices it will contain?

I'm trying to convert my 3D block work rendering from immediate mode and display lists to VBOs. I'm having trouble understanding how to properly handle creating the buffers: I really don't know how ...
1
vote
1answer
565 views

OpenGL VBO - load a normals index

Okay I have the following code that works correctly. It loads a vertex array, a normal array and a vertex index array then draws them with some simple light shading. To load the buffers: //Load ...
1
vote
1answer
199 views

How should I setup my minecraft-like world rendering for the best performance?

I want to know what technique will give me most fps in game. I have minecraft-like world and I need to display it. Now I have only one cube, created as VBO and if i need to display cube I just display ...
1
vote
2answers
389 views

Drawing multiple objects from one Vertex Buffer Object in OpenGL/OpenTK

I am trying to experimenting drawing method using VBO in OpenGL. Many people normally use 1 vbo to store one object data array. I was trying to do something quite opposite which is storing multiple ...
1
vote
2answers
591 views

Changing the sprite position: Modify VBO data or translate it?

I am beginning with VBO and I want to know if it's better use GL_STATIC_DRAW to make a quad and them translate it, or use DYNAMIC_DRAW and modify the vertex position data directly. Also when I modify ...
1
vote
1answer
518 views

Octrees and Vertex Buffer Objects

As many others I want to code a game with a voxel based terrain. The data is represented by voxels which are rendered using triangles. I head of two different approaches and want to combine them. ...
1
vote
1answer
171 views

How many VBOs should I use and should I keep a copy of their data?

Firstofall, I am sorry if my question is to broad. I am developing a tile based game and switched from those gl.Begin calls to using VBOs. This is kind of working allready, I managed to render a ...
1
vote
1answer
170 views

OpenGL VBO Additional Attributes

If I have a buffer with my vertices, normals and texture coordinates, and I use glDrawArrays to draw the VBO to the screen, how can I send attributes per vertex that I placed in an array to the shader ...
1
vote
2answers
537 views

Animate sprite/texture position with VBO

I'm currently worlking on a renderer for my projects and I want animate a sprite on screen. I've got a spritesheet but I don't know what is the the best way to update the texture coordinates for each ...
1
vote
2answers
97 views

What is the correct way to draw layered Sprites in modern OpenGL?

So what do I mean by layered sprites? Layered Sprites are Sprites that consist of multiple layers, e.g. you have sprite sheets for the basic Body, the Head, Clothes, Weapons, etc. Well now I wanted ...
1
vote
1answer
33 views

VBOs no longer renger when gluPerspective applied

I've written a basic program so I can make sure I'm properly learning VBOs before converting my 3d game's rendering to them. Essentially, this question is why changing the perspective is the GL setup ...
1
vote
0answers
135 views

Strange and erratic transformations when using OpenGL VBOs to render scene

I have an existing iOS game with fairly simple scenes (all textured quads) and I'm using Apple's "Texture2D" class. I'm trying to convert this class to use VBOs since the vertices of my objects ...
0
votes
3answers
329 views

How to deal with VBOs when rendering mesh's that may or may not be displayed?

I'm working on a multiplayer game and will be displaying other players near the player. At most 16 players could be near the gamer however there could also be 0. What I'm thinking of doing is ...
0
votes
2answers
616 views

Multipule VBO in Opengl [closed]

I have currently in my application 2 VBO one which is a streamed buffer and for the moment the other is a static buffer. However even when the steam buffer is not bound and the static buffer is bound ...
0
votes
3answers
481 views

Sprite batching seems slow

I have implemented a sprite batching system in OpenGL which will batch sprites based on their texture. However, when I'm rendering ~5000 sprites all using the same texture I'm getting roughly 30fps. ...
0
votes
4answers
1k views

Should I use a VBO if the vertex data changes from time to time?

If I have a very large number of vertices, but they're static for about 70% - 80% of their life time, should I use a VBO for them? If so, what usage should I specify? This doesn't sound like a case ...