glxCtl.ocx v1.4

glxCtl.ocx is a library of support routines for OpenGL. It is distributed with a simple template project which uses the ocx. Together the ocx and the template project comprise a working OpenGL app. The ocx handles setup of GL and fires various events to which the main class of the project responds. The events are modeled after GLUT events. Sample code written in C can be easily ported to VB by pasting it directly into the main class of the project. When you load and run the template project, you'll see this:


This is your OpenGL window. The ocx is drawing the grid and axes (for debugging purposes), and the project is drawing a sphere at the origin. To develop an OpenGL app, just turn off the grid and substitute your drawing code in the 'Draw' event.

glxCtl provides support for bitmaps, rgba, rgb, la and bw image files, palettes, color index mode, GLUT shape primitives, the GLE Extrusion library, fonts, textures, picking and more. Version 1.3 adds support for gifs and jpegs and some new texturing functions. Version 1.4 adds support for offscreen rendering and camera navigation.

This distribution is source code and exe. Note that almost all the samples on this site use the ocx, so you'll need it to run them.



Notice!

v1.4 is a VB6 compilation. You will need the VB6 runtimes to use it. There are some language enhancements in VB6 but I haven't used any of them in the ocx code, so it will compile under VB5. I'll leave v1.2 - compiled with VB5 - on the site for a while, but I recommend you try to use the ocx compiled in VB6 or else compile the latest source code in VB5.



Users of earlier versions - unregister glxCtl1.2 BEFORE you delete it.
Use regsrvr32:
regsvr32.exe /u glxctl.ocx
1.3 and up is not binary compatible with 1.2.

To compile the v1.4 source code in VB5:

VB6 inserts a section at the top of class files which must be removed. The section looks like this:
    BEGIN
       Something = whatever
       ... more of this
    END
Delete the BEGIN/END lines and everything in between. Then the code will compile in VB5.
You can do this manually, or you can try the following utility:

ClassConverter.exe

VB5 Users:
If you find you have weird problems using the VB6 source or exe files, try the VB5 files. VB5 seems more robust than VB6. You can paste the VB6 code into your VB5 projects to achieve the same functionality.

Notice!

Version 1.4 breaks some of the samples - Pipes, Texture, and maybe others - but most of the samples are OK. I'll update the broken ones as I can. Please notify me of problems.


VB6 exe and source

Download glxCtl 1.4 executable (approx. 237K)
Last changed: 3/99

Download glxCtl 1.4 source code (approx. 220K)
Last changed: 3/99


Template projects

ProjectZ - uses the compiled ocx to create a simple OpenGL application (approx. 12K)
Last changed: 3/99

ProjectX - uses the source code of the ocx to create a simple OpenGL application (approx. 5K)
Last changed: 3/99

ProjectM - uses the compiled ocx to create an OpenGL application which uses a memDC and the new Camera facilities. (approx. 19K)
Last changed: 3/99





VB5 exe and source

Download glxCtl 1.2 executable (approx. 130K)
Last changed: 10/98

Download glxCtl 1.2 source code (approx. 195K)
Last changed: 10/98


The documentation for glxCtl is very rudimentary at present (circa 1.1). You can get what there is here:

Download glxCtl docs(approx. 30K)
Last changed: 5/98

Or view it online here.

Installation:

Create a directory where you can place the control project. All the samples will also need to go into this directory. Expand the zip file. To minimize setup problems with the samples, set up this dir structure:

        - YourDir
            - glxCtl
                - gle
                - ProjectX
                - ProjectZ
            - Samples
                - sample1
                - sample2
                - more dir's for samples you download here
For each sample project, create a separate directory for it under 'Samples'. This will reduce problems with paths which VB writes into the project files.





Please send suggestions, bug reports, and such to:



Home Page   |  Related Sites