I certainly don't want to step on any toes here, as I believe DarkGDK.NET is APEXnow's product, not TGC's. But I'm hoping to provide a solution for your customers if they require support for the latest version of DBP for their products.
Please let me know if you would rather I not post this information here, APEXnow. I will remove it if you request it.
To DarkGDK.NET users:
For those of you who don't know, PureGDK is a port of the DLL-based DarkBasic Professional engine to a language agnostic C interface. This is in contrast to DarkGDK which is statically linked.
PureGDK is binary compatible with all "Darkbasic Professional" plugins. This includes any plugin listed to support DBP in TGC store and any user plugin. It also provides additional features not found in DBP and DarkGDK products such as:
All of DBP compressed down into a single DLL
Engine customization; basic 3D in less than 800 KB!
Future support is anticipated for additional programming languages.
Language agnostic interface; all exports are C function calls
Internal multithreading support. Go thread crazy!
Enhanced commands including true support for structured parameters
Potential support for rendering in a web browser
Rewritten, extremely fast 3D math library
New support for char, byte, word, quad, and pointer datatypes
New support for pragmatically defining constants and structures
Improved documentation for all DarkBasic Professional commands
Superior runtime error support that is thread-aware
Easy to use command line tools for automated compiling
Plugin-based parser. Adding support for your own language is a breeze!
C++ Projects supported by PureGDK out of the box:
GNU make/g++ (gcc compiling may require setup)
nmake/vc++ (vcvars32.bat compiling should work out of the box)
Visual Studio 6
Visual Studio .NET
Visual Studio .NET 2003
Visual Studio 2005
Visual Studio 2008
Visual Studio 2010
The new engine is extremely lightweight and highly customizable. And best of all, it's fully compatible with DBP's plugins.
Now you can enjoy the power of DarkBasic Professional from your favorite language. And if you have multiple favorites-- no problem!
Program using your favorite IDE. Any IDE. Any language!
Screenshot of PureGDK and the PureBasic IDE:
Screenshot of PureGDK and the Qt Creator C++ IDE:
Here is a video of a C++ example project being run and debugged from the Qt Creator IDE. It also demos the flexibility of PureGDK by compiling from a UNIX (cygwin) command line using Make and the GNU g++ compiler. It should work with most any C/C++ compiler.
PureGDK 2.0 comes with support out of the box for the PureBasic language (building on previous PureGDK releases) as well as C++. It can generate headers to work with other languages by writing a simple plugin for the library builder tool.
Additionally, an added bonus is that this open design is that the implementation is not hidden. It is described within the plugin used to build the headers for the target language. So if you prefer to use your own implementation for ID handles with reference counting perhaps, or some other custom wrapper object instead of IDs, it's possible to override the default function's behavior.
For example, by applying an override template parameter and reimplementing the ID allocation and return type, you can perform something like this:
DBPObject object = dbMakeObjectCube(20)
The potential for PureGDK is an immense improvement over the existing DarkGDK products and I encourage my users to dive into the code and truly customize the engine to suite their needs.
What does this mean for DarkGDK.NET?
PureGDK does not provide out-of-the-box support for anything .NET and I do not have any personal experience with .NET programming. However, the interface is designed to be extensible and header generation programmatic. Support for your favorite .NET language can be added by authoring a new plugin to generate the headers by modifying one of the existing plugin's source code in the PureGDK SDK.
I would love to see .NET support for PureGDK and would be willing to offer a free copy to any participants in the development of a .NET plugin (see the PureGDK SDK!) to generate the headers.
PureGDK is completely free right now while it's in beta. It is also compatible with the free version of DarkBasic Professional so you can be up and running without having to spend a dime.
Download and install your own copy of DBP or the free version here:
Update DarkBasic Professional to the latest supported release. PureGDK is currently being tested on the 7.5 release but should be compatible with future versions barring unforeseen changes.
Download and install the PureGDK beta:
Navigate to the program files directory and you can run any of the examples provided there. Precompiled binaries are also included.