Danny wrote:Please clarify this for me: if I get the 'PureGDK - complete' package, besides then getting the two licenses you mention, must I then also purchase a seperate PureBasic license - or not?
Also, am I just obtaining licenses or also (if I want?) the complete installs for DBPro and PB respectively? And thus would I get support & upgrades for DBP & PB?
Do I also understand correctly that I will then be using DBPro's 3D Engine, using PB's language, but in "your" IDE - so to say (= the single install). Or is your package equal to a full DBPro and a full PB license & install as well?
You must also purchase a license for PureBasic, which is not provided in the bundle. You can think of PureGDK as an add-on that provides additional functionality to PureBasic. It installs command libraries that allow you to compile using the DarkBasic Professional engine.
PureBasic offers a lifetime license through their website where you can download it from your account. DBP and PureGDK are also lifetime licenses (no royalties, non-expiring). Updates for DarkBasic Professional are available through The Game Creators website. Updates for PureGDK are available either from The Game Creators website or PureGDK.com, depending on where you purchased it. The updates are the same.
"PureGDK - Upgrade" is provided so people who already own DarkBasic Professional don't need to pay for it twice. It detects an existing installation and copies the files it needs to another folder. "PureGDK - Complete" is a simple all-in-one solution that includes both PureGDK and DarkBasic Professional. The installer is stand-alone, unlike the upgrade version, and does not require DBP to be pre-installed because it already comes bundled with the engine inside the installer.
Once installed PureGDK is a completely transparent add-on for PureBasic. All you do it type the commands in the IDE and compile. You use the PureBasic IDE, of course.
Here is a rotating cube in DarkBasic Professional:
Code: Select all
REM 3D rotating cube demo
SYNC RATE 60
MAKE OBJECT CUBE 1,100
DO
XROTATE OBJECT 1,OBJECT ANGLE X(1)+0.3
YROTATE OBJECT 1,OBJECT ANGLE Y(1)+0.5
SYNC
LOOP
Here is a rotating cube in PureBasic with PureGDK:
Code: Select all
;/ Open a PureBasic window
OpenWindow(0,0,0,640,480,"DarkBasic Professional - PureGDK",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
;/ Initialize the PureGDK screen as a child of window ID 0
OpenDBWnd(WindowID(0),0,0,640,480)
;/ Set the sync rate to 60 frames per second
dbSyncRate(60)
;/ Make a cube
dbMakeObjectCube(1,3)
;/ Loop until the escape key is pressed or the window is closed
Repeat
dbXRotateObject(1,dbObjectAngleX(1)+0.3)
dbYRotateObject(1,dbObjectAngleY(1)+0.5)
dbSync()
Until WindowEvent()=#PB_Event_CloseWindow Or dbKeyState(#VK_ESCAPE)
All of the DBP's commands are either native to PureBasic or supported by PureGDK. Here is the help file where you can browse the current command set. Over 130 commands are being added for the next release which include cloth and particle physics:
http://puregdk.com/files/upload/PureGDK.chm
Also consider that PureGDK is useful for more than just game programming. Because of its support for PureBasic's built-in GUI library and native support for the Win32 API it's possible to create development tools and non-game applications as well:
(Source code included)
http://puregdk.com/files/upload/aspect-ratio.zip
All of the functionality of DarkBasic Professional is natively supported including plugins. It also features many advanced features not supported in DarkGDK (DBP for C++) including all commands being thread-safe, true matrix and vector datatypes, engine enhancements, and the ability to draw the DBP window onto any other window for tools and application programming.