DarkBASIC Professional
From Wikipedia, the free encyclopedia
DarkBASIC Professional | |
Developer: | The Game Creators |
---|---|
Latest release: | 1.062 / 3. July 2006 |
OS: | Windows |
Use: | Compiler |
Website: | [1] |
DarkBASIC Professional (often abbreviated DBPro) is a powerful BASIC dialect targeted specifically at 2D and 3D game development. It is available commercially from UK software company The Game Creators and is an offshoot of their original DarkBASIC programming language.
DBPro diverges from DarkBASIC in many different ways. DBPro uses DirectX 9c unlike the original DarkBASIC which used DirectX 7. Other additions include better support for networked multiplayer commands, BSP level support, bump, sphere, and light mapping, pixel shader and vertex shaders, commands for physics control, multiple camera viewpoints, better interfaces to external DLLs, advanced sprite commands using 3D to render them quickly in 2D, a particle system, and built-in queue and stack manipulation.
One of the most important changes was that DarkBASIC Pro uses true machine level compilation which allows it to be significantly faster than DarkBASIC. DarkBASIC created executables by appending a program's source code to a copy of the interpreter. Another notable change was the inclusion of a new IDE with builtin syntax highlighting, debugger, and project resource management. DBPro also allows access to existing or user created DLLs written in any other language. This feature can be used to expand its command set or access system resources and hardware otherwise not supported by default.
The latest version is version 1.066, which was released on 21st of March 2007 [1] An unofficial DBPro convention has been held in Chichester, England every year since 2003. The last one was held in September 2006.
Contents |
[edit] Sample code
[edit] Hello World
REM Hello World Example PRINT "Hello World." WAIT KEY
Prints the phrase Hello world. to the screen and then waits for a keyboard button to be pressed (WAIT KEY could be replaced with WAIT MOUSE to instead wait for a mouse button to be pressed). When REM is used, the computer ignores this line completely, allowing the user to add comments and/or descriptions to parts of the code.
[edit] Rotating cube
REM Turns on synchronization so the user can refresh the screen in the middle of the game loop. SYNC ON : SYNC RATE 100 REM PURPOSE OF CODE: Create a cube and rotate it on the Y-Axis REM Create the cube with the identification number 1, and a size of 100 MAKE OBJECT CUBE 1,100 REM Signals the start of a loop DO REM Take the y-angle of the object and add 0.1 to it YROTATE OBJECT 1,OBJECT ANGLE Y(1) + 0.1 REM Refresh the screen SYNC REM Signals the end of the loop, and go back to "Do" LOOP
This is one of the sample programs which is downloaded with DarkBASIC pro. It shows the user how to make basic graphics with a spinning cube. Many times, this code is code is used to advertise how easy the software is to use. In reality, though, making a real game is much harder.
[edit] Dark Game SDK
Dark Game SDK is a Software development kit for C++. It implements most of the commands available in DBPro but significantly increases the execution speed and frames per second in 3D intensive applications. Currently Microsoft Visual Studio 6 and Visual Studio .NET 2003 are supported but The Game Creators have stated that they are planning to support Dev-C++ in future versions, although they have not yet extended support to Dev-C++, and the plans may dropped now that Visual C++ 2005 is supported[citation needed].
[edit] Addon Packs
The Game Creators have developed and released a number of additional .DLL addon's for DarkBasic Professional. These include:
- Advanced Terrain - Limited free version and pay version. Creates 'fast' terrain based on a black and white bitmap heightmap.
- BlueGUI - Use windows dialog commands in applications and games
- Enhancement Pack - Adds numerous commands such as user information gathering
- Dark AI - Adds artificial intelligence commands
- Dark Lights - Adds new light mapping commands
- Dark Physics - Adds physics related commands compatible with the new Ageia Physics Processing Unit (PPU).
- Dark Physics Update: - New version now has fluid support without a psu.
- Dark Shader - Adds the ability to create homemade shaders easily
There are also a number of free addon packs created by the community, these include:
- Newton Physics - Provides rigid body physics
- "Sparky's Dll" - Provides ray casting and collision
[edit] References
- DarkBASIC Pro Game Programming (Second Ed.) - Jonathan S. Harbour & Joshua R. Smith, 2006, ISBN 978-1598632873
- Manufacturer's website