[0.2.1] LDForge


Re: [0.2.1] LDForge
#69
VBO has been around since OpenGL 1.5, but I don't think it was an officially required part of 1.5. However, if my reading of the Wikipedia article is correct, it became required functionality in OpenGL 2.1. LDView uses VBO, and as far as I can tell by my source control, has been doing so for close to 10 years.

On Windows, LDView uses wglGetProcAddress() to get function pointers for all GL extensions, and it treats VBO as an extension. (On other platforms, its function pointers point to the functions declared in the GL headers.) LDView also uses glGetString(GL_EXTENSIONS) to get the list of extensions, and only uses VBO if GL_ARB_vertex_buffer_object is in the list of extensions. Note that if VBO became main-line in OpenGL 2.1, you could also check that the GL version is at least 2.1, but checking for GL_ARB_vertex_buffer_object is more inclusive. Warning: if you call glGetString(GL_EXTENSIONS), don't make any assumptions about the length of the returned string by copying it into a fixed-sized buffer. The extensions string is extremely long. Also, don't use a substring search to see if an extension is present. Parse the string, separating it out into separate tokens separated by space.

LDView does have fallback code if VBO is not available, so I don't have any real way of knowing how widespread its support is. However, I'm pretty sure that even really old cards (made before 2004) support VBO if they have the latest available drivers installed. Both nVidia and ATI add functionaity to older cards in driver updates when the cards can support that functionality.
Reply
« Next Oldest | Next Newest »



Messages In This Thread
[0.2.1] LDForge - by Santeri Piippo - 2013-03-22, 18:48
Re: LDForge - by Roland Melkert - 2013-03-22, 20:20
Re: LDForge - by Santeri Piippo - 2013-05-22, 20:14
Re: LDForge - by Santeri Piippo - 2013-05-22, 20:16
Re: LDForge - by Philippe Hurbain - 2013-05-23, 7:41
Re: LDForge - by Michael Heidemann - 2013-03-22, 21:17
Re: LDForge - by Santeri Piippo - 2013-03-23, 22:56
Re: LDForge - by Tim Gould - 2013-03-23, 23:01
Re: LDForge - by Philippe Hurbain - 2013-03-24, 6:55
Re: LDForge - by Santeri Piippo - 2013-03-24, 23:15
Re: LDForge - by Michael Heidemann - 2013-03-25, 7:59
Re: LDForge - by Santeri Piippo - 2013-03-31, 15:20
Re: LDForge - by Michael Heidemann - 2013-03-31, 18:34
Re: LDForge - by Santeri Piippo - 2013-04-03, 10:35
Re: LDForge - by yugioh - 2013-04-03, 19:00
Re: LDForge - by Santeri Piippo - 2013-04-05, 12:07
Re: LDForge - by Santeri Piippo - 2013-04-16, 17:20
Re: LDForge - by Philippe Hurbain - 2013-04-16, 17:50
Re: LDForge - by Santeri Piippo - 2013-05-05, 13:16
Re: LDForge - by Michael Heidemann - 2013-05-05, 14:24
Re: LDForge - by Santeri Piippo - 2013-05-22, 13:17
Re: LDForge - by Philippe Hurbain - 2013-05-22, 14:25
Re: LDForge - by Magnus Forsberg - 2013-05-22, 15:52
Re: LDForge - by Santeri Piippo - 2013-05-22, 20:17
Re: LDForge - by Philippe Hurbain - 2013-05-23, 7:46
Re: LDForge - by Rolf Osterthun - 2013-05-23, 11:09
Re: LDForge - by Santeri Piippo - 2013-05-23, 13:39
Re: LDForge - by Santeri Piippo - 2013-05-23, 20:22
Re: LDForge - by Philippe Hurbain - 2013-05-23, 20:37
Re: LDForge - by Santeri Piippo - 2013-05-23, 20:50
Re: LDForge - by Magnus Forsberg - 2013-05-23, 22:40
Re: LDForge - by Philippe Hurbain - 2013-05-24, 13:13
Re: LDForge - by Santeri Piippo - 2013-05-24, 15:12
Re: LDForge - by Philippe Hurbain - 2013-05-24, 15:39
Re: LDForge - by Roland Melkert - 2013-05-24, 17:24
Re: LDForge - by Santeri Piippo - 2013-05-24, 19:19
Re: LDForge - by Santeri Piippo - 2013-06-14, 16:11
Re: LDForge - by Santeri Piippo - 2013-06-15, 22:31
Re: LDForge - by Fyodor Kolov - 2013-08-06, 10:33
Re: LDForge - by Santeri Piippo - 2013-08-16, 21:55
Re: [0.1 Alpha] LDForge - by Santeri Piippo - 2013-07-05, 22:32
Re: [0.1 Alpha] LDForge - by Philippe Hurbain - 2013-07-10, 15:45
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-07-09, 23:55
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-07-17, 13:26
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-08-03, 1:34
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-09-22, 20:11
Re: [0.2 Alpha] LDForge - by Philippe Hurbain - 2013-11-11, 13:14
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-12-19, 12:03
Re: [0.2 Alpha] LDForge - by Philippe Hurbain - 2013-12-19, 13:29
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-12-19, 14:14
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-10-16, 12:59
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-10-16, 16:26
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-10-16, 17:01
Re: [0.2 Alpha] LDForge - by Santeri Piippo - 2013-10-16, 19:08
Re: [0.2.1] LDForge - by Santeri Piippo - 2013-12-19, 13:27
Re: [0.2.1] LDForge - by Michael Heidemann - 2013-12-21, 7:40
Re: [0.2.1] LDForge - by Stan Isachenko - 2013-12-21, 17:41
Re: [0.2.1] LDForge - by Michael Heidemann - 2013-12-21, 19:50
Re: [0.2.1] LDForge - by Michael Heidemann - 2013-12-21, 20:00
Re: [0.2.1] LDForge - by Santeri Piippo - 2013-12-22, 14:01
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-22, 11:41
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-22, 17:16
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-22, 22:23
Re: [0.2.1] LDForge - by Tim Gould - 2014-01-22, 22:26
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-22, 22:42
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-23, 16:15
Re: [0.2.1] LDForge - by Travis Cobbs - 2014-01-23, 18:37
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-23, 20:44
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-23, 21:04
Re: [0.2.1] LDForge - by Travis Cobbs - 2014-01-23, 22:34
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-24, 16:30
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-24, 18:03
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-24, 18:45
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-24, 19:16
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-24, 19:24
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-24, 19:44
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-24, 19:50
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-24, 19:53
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-24, 19:54
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-24, 19:57
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-24, 20:03
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-24, 20:14
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-02-25, 14:20
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-01-24, 20:05
Re: [0.2.1] LDForge - by Roland Melkert - 2014-01-24, 19:52
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-02-25, 14:21
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-03-24, 18:17
Re: [0.2.1] LDForge - by Willy Tschager - 2014-03-31, 18:18
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-03-31, 18:37
Re: [0.2.1] LDForge - by Willy Tschager - 2014-03-31, 19:06
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-03-31, 19:24
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-04-17, 18:49
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-07-03, 18:06
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-07-29, 20:47
Re: [0.2.1] LDForge - by Philippe Hurbain - 2014-07-30, 13:34
Re: [0.2.1] LDForge - by Santeri Piippo - 2014-08-31, 17:33

Forum Jump:


Users browsing this thread: 4 Guest(s)