DarkBASIC Professional
DarkBasic Pro 7.6 | |
Developer(s) | The Game Creators |
---|---|
Stable release | 7.62 (1.0762) / 12 May 2012 |
Operating system | Microsoft Windows |
Type | Game engine |
License | MIT License |
Website |
www |
DarkBASIC Professional (often abbreviated DBPro) is a BASIC dialect targeted specifically at 2D and 3D game development. It is available from software company The Game Creators and is an offshoot of their original DarkBASIC programming language. Since 2010, it has been available to download free from The Game Creators' website,[1] however a license is required if games made with it are distributed commercially.
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 Direct3D rendering for hardware acceleration, 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, which 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 7.62 (1.0762), which was released on 12 May 2012.[2] 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.
License
Licenses for DarkBASIC Professional were made freely available for individual home users in November 2009 although business and educational establishments cannot use the free version and so must purchase licenses.[3] However the license still means that anything produced using DarkBASIC Professional is royalty free.[4] In early 2010, The Game Creators also made DarkBASIC Professional open source by making the source code freely available on Google Code.
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. Dark GDK's API is very similar to that of DarkBASIC Professional, such that code can be very easily ported between C++ code utilising Dark GDK and DarkBASIC Professional code.
The Dark GDK is available with Visual C++ 2008 Express. Dark GDK is free for personal use, however a license purchase is required to sell games produced using it.
A Microsoft .NET version, DarkGDK.NET, also exists. This makes it possible to use DarkGDK functions from Common Language Runtime languages such as C# or VB.NET. Unlike Dark GDK, Dark GDK .NET is only available commercially and has no free version.
PureGDK
PureGDK is an implementation of the DarkBASIC Professional engine for the PureBasic programming language. Like DarkGDK, PureGDK supports many of the same features and runs on DirectX 9.[5] An additional license for the commercial PureBasic language is required to use it.
The software comes in two editions: PureGDK Upgrade and PureGDK Complete. PureGDK Upgrade is designed to accommodate existing users of DarkBasic Professional by offering a low-cost upgrade path. PureGDK Complete is a stand-alone product for users who don't already own the engine by providing licenses for both DarkBasic Professional and PureGDK. Either solution still requires the user to own or purchase a license for PureBasic.
Plugin architecture
Plugins allow extra commands to be added to the language. Plugins are DLLs with an embedded string resource detailing the routines implemented in the DLL.[6] At compile time the compiler bundles the relevant plugin DLLs into the executable.[7]
DarkBASIC's built-in commands are themselves implemented with a plugin. This allows third party plugins access to built-in commands by calling the correct function in the relevant DLL.
Currently available plugins provide a wide range of addition commands from language extensions and utility functions.[8] to integration with physics engines[9] or accessing a Database.
Addon packs
The Game Creators have helped nurture other external programmers who fill the missing gaps and co-released a number of additional .DLL addons for DarkBasic Professional. These include:
- 2D Plugin kit- Add particle effects and fake 2d light easily.
- Advanced Terrain - Limited free version and pay version. Creates 'fast' terrain based on a black and white bitmap heightmap.
- Box2D - Adds a range of 2D commands including 2D physics
- Dark AI - Adds artificial intelligence commands such as pathfinding
- Dark Clouds - Allows you to make high quality clouds for your games
- Dark Data - Adds database management commands
- Dark Ink - Adds printing commands
- Dark Lights - Adds new light mapping commands
- Dark Net - Adds networking commands using both UDP and TCP protocols
- Dark Physics - Adds physics related commands compatible with the new nVidia Physics Processing Unit (PPU). The new version now has fluid support without a PPU.
- Dark Shader - Adds the ability to create homemade shaders easily
- Dark Video - Adds movie encoding, decoding and playback commands
- Enhanced Animations - Adds new commands for manipulating 3D models
- Enhancement Pack - Adds numerous commands such as user information gathering
- eXtends - Adds a large range of commands, especially in relation to 2D and 3D graphics. However it does not support Windows Vista or Windows 7
- EZrotate - Adds powerful maths commands
- Green-Ear - Adds Voice and text chat commands for multiplayer games
- Nuclear Glory - Adds complex 3D collision commands
- STYX - Adds over 200 commands including XML reading and writing commands, dialog commands and some lower level commands
- Texture Max - Adds commands for manipulating textures
- Unity - Adds commands allowing Lua scripts to be executed[10]
There are also a number of free addon packs created by the community, these include:
- BlitzTerrain - Free LOD Terrain plugin
- BlueGUI - Use windows dialog commands in applications and games
- Box2D Plugin Wrapper - Free 2D rigid body physics plugin, wrapping Box2D for DBPro
- DBPTime - Adds time commands
- DBP Collision DLL - Provides ray casting and collision
- Matrix1Utils plugin pack - Huge collection of commands, almost essential for DBPro programmers
- MultiSync - Free plugin for added networking capabilities
- Newton Physics - Provides rigid body physics
- Octree Culling Plugin - Free plugin to allow easy octree based culling of DBPro objects
- Tempest - Free plugin for added networking capabilities
- ViewGUI - Free, simple to use GUI using Direct3D with a WYSIWYG editor
- WinGUI - Provides an open-source solution to building windows environments
Integrated design environments
The community and The Game Creators themselves have produced a number of IDEs for editing DBP source code. These include
- CodeSurge - Alternative editor for DBP. Version. 1 is free but version 2 will be sold commercially.
- Indigo - Community produced editor and the successor to BlueIDE.
- Legacy Editor - Editor built for DBP by TGC when it was first launched. Has not been the official editor since v. 75.
- Synergy - Editor adopted by TGC and developed to become the official editor after v. 75.
See also
References
- ↑ DarkBASIC Professional - Games Programming - The Game Creators
- ↑ DarkBASIC Professional - Upgrades
- ↑ The Game Creators Newsletter 82
- ↑ DarkBASIC Professional key features page
- ↑ "DarkGDK - Game Developer's Toolkit". Puregdk.com. Retrieved 10 December 2012.
- ↑ "Third Party Commands SDK". Developer.thegamecreators.com. Retrieved 10 December 2012.
- ↑ "Darkbasic pro and classic exe format information". Winch.pinkbile.com. 11 May 2008. Retrieved 10 December 2012.
- ↑ "Matrix1Utils plugins collection". Forum.thegamecreators.com. Retrieved 10 December 2012.
- ↑ NewtonDBPro - Newton Game Dynamics plugin.
- ↑ DarkBASIC Professional Addons page
- Notes
- DarkBASIC Pro Game Programming (Second Ed.) - Jonathan S. Harbour & Joshua R. Smith, 2006, ISBN 978-1-59863-287-3
- Manufacturer's website
External links
|