I am new to these forums, so please be patient with me.
I have two questions to start with:
(1) I have developed a GUI engine (for use with PowerBasic) which is now in its 5th generation and I am currently writing a custom control which supports 3D drawing using OpenGL. If I read the this web page correctly : http://www.opengl.org/about/licensing/ only those who write device drivers (aka. video card manufacturers) are required to license OpenGl from SGI.
Would this mean that software developers who write GUI engines based on OpenGL don't have to buy any license ?
I have a GUI engine (for use with Powerbasic) which is going into its 5th generation and I am currently writing a custom graphic control which uses OpenGL for 3D drawing. My software is sold to programmers who use it to build applications. Am I correct to assume I would fall into the catagory of those who do not have to license OpenGL ?
(2) This question is about actual OpenGL coding.
I currently am using glDrawPixels and it is terribly slow on the common video cards/chips found on mass market computers. Is there any way to optimize it to speed it up to maximum speed (within the hardwares limits of course) ?
The reason I need this, is the custom control I am writing is a superclass of an existing 2D (GDI based) Graphic control I also wrote. The control is a hybrid of sorts. It can draw 2D graphics and has its own sprite engine and I am using what it draws as a background for the OpenGL based control. I need to copy a DIBsection every animation cycle from its buffers to the OpenGL buffer and then draw OpenGL graphics on top of it.
I have it working, its just a bit slow. On Windows XP (2.5 ghz CPU, NVidia GeForce4 MX 4000 video card) I get about 27 frames per second with a window about 640 x 440 pixels.
When I turn off the image copy (just clear OpenGL buffer background with a solid color) I cna get about 250 fps (while animating 5 primitives rotating around their own axes, rotating around the windows center and changing perspective every cycle (appears to moving farther away and then starts coming back closer again).
Any suggestions on how to optimize glDrawPixels would be appreciated.