It also includes a few features that C programmers will be familiar with, such as support for pointers, structures and most importantly the entire OpenGL v1.1 API.
History
Tom Mulgrew created Basic4GL from a desire to be able to run OpenGL functions easily and quickly, without all of the setup normally required in a language such as c++ and be more stable. He built a virtual machine similar to one used at his workplace. It started simply, with few OpenGL functions and minimal other functionality. The first version was relatively popular. The first version was named GLBasic, which also happens to be a commercial programming language. The issue was civilly resolved, and Mulgrew's project renamed Basic4GL. Mulgrew set himself the goal to expand Basic4GL to the point that it could load and display and MD2 model.
Versions
2.3.0 - Added networking capability 2.3.5 - Support for code compilationat runtime 2.4.2 - Changed sound system from OpenAL to Audiere 2.4.3 - Support for PluginDLLs added 2.5.0 - Support for functions added 2.5.8 - Support for hexadecimal numbers
Currently Basic4GL is being ported over to Linux. The major difference between Basic4GL for Windows and the new Linux version is that it uses the SDL library rather than Windows specific libraries to initialize an OpenGL enabled window. There is also a Linux-based project to create an extended version of Basic4GL that wraps more closely to the SDL library known as .
Basic4GL for Mac
A version for Mac OS is currently under development. No working versions have been released.
Example code
Dim A For A = 0 To 4 Printr "Hello "; A Next
When the above code is entered into Basic4GL and executed, the following is output to the monitor screen.
Hello 0 Hello 1 Hello 2 Hello 3 Hello 4
Features
Support for sound and music
When Basic4GL was first released it could only play sounds but in 2006 support for music was added using the Open Alsound engine but later replaced with Audiere.
In August 2006 support for Plugin DLLs was added to Basic4GL. This means that you can write your own commands and include them in the Basic4GL programming language, all you need is a C++ Compiler. Plugins expand the capabilities of Basic4GL and many exist, providing such things as physics engines, TrueType Fonts, collision detection etc.
Basic4Games
A successor to Basic4GL is currently being developed dubbed "Basic4Games". Only one preview has been released.