DarkBASIC Professional

From Wikipedia, the free encyclopedia

DarkBASIC Professional
Developed by The Game Creators
Latest release 6.8 (1.068) / 30 April 2008
OS Windows
Genre Compiler
Website [1]

DarkBASIC Professional (often abbreviated DBPro) is a 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.068, which was released on 30th of April 2008 [1] An unofficial DBPro convention has been held in Chichester, England every year since 2003. The First official Game Creators Convention was held on October, 2007 with most of the staff of The Game Creators attending.

Contents

[edit] Sample codes

[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 without having an effect on codeable game.

[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 used to advertise how easy the software is to use. In reality, though, making a real game is much harder.

[edit] Dark GDK and Dark GDK .NET

Dark GDK is a Software development kit for C++. It implements most of the commands available in DBPro as well as give the user lower level access to the API. 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].

The Dark GDK is now also available with Visual C++ 2008 Express.

Dark GDK .NET was created for the same purpose, except it allows the user to create games using Visual C# .NET or Visual Basic .NET.

[edit] Addon Packs

The Game Creators have helped nurture other external programmers who fill the missing gaps and co - 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 PPU.
  • 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
  • WinGUI - Provides an open-source solution to building windows environments

[edit] References

[edit] See also

[edit] External links

Languages