The Game Creators
The Game Creators Home Online Shop Click to Login
  Hot: Christmas CompetitionNovember NewsletterModel Pack 36DB Pro Pack 2009DGS BonanzaCharacter PackFPS Creator Bonanza;
The Game Creators
Program Announcements / PureGDK - DarkBasic Programming for PureBasic

Go to the first page of this board Return to the Forum Menu Post Message
49 Messages - Page   of 2   
Bookmark and Share Search the Forum Next 40

Author Message
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 17th May 2008 05:27     Edited: 4th Feb 2009 04:44     | link | toggle



I'm pleased to announce that PureGDK is now ready for sale! The PureGDK Upgrade is available at http://puregdk.com now and will also be available on The Game Creators website as both an Upgrade and a Standalone package.

The difference between the 'Standalone' and the 'Upgrade' is that the Standalone does not require DarkBasic Professional to be installed prior to installing PureGDK. The necessary components are bundled with the installer.

The Game Creators is the exclusive distributor of the Standalone package so if you do not already own DarkBasic Professional and don't want to purchase it as an individual product (it will come bundled with the Standalone anyways) then you'll have to wait a little longer.

A demo of PureGDK is available for download at PureGDK.com. Because the trial of DarkBasic Professional is version 6.2 which is incompatible with PureGDK, the PureGDK demo is based off of the Upgrade version and requires DarkBasic Professional 6.7 or higher to be installed.

A standalone demo will be available once the trial version of DarkBasic Professional has been updated.

More information about PureGDK can be found in the official thread:

http://www.purebasic.fr/english/viewtopic.php?t=32366

Special thanks to all of the PureGDK beta testers. Everyone who participated was a great help squishing bugs!

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Freddix

User


Joined: Thu Sep 19th 2002
Location: France
Posted: 28th May 2008 03:48     Edited: 28th May 2008 03:48     | link | toggle

great news

good work Mistrel.

Gandalf said: "All we have to decide is what to do with the time that is given to us"
Odyssey-Creators - X-Quad Editor - 3DMapEditor
Back to top
-
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 31st May 2008 23:51           | link | toggle

PureGDK is now available from The Game Creators store! Here you can purchase the PureGDK Complete which comes bundled with DarkBasic Professional. The PureGDK Complete installer is slightly different than the upgrade installer in that it does not require DarkBasic Professional to be pre-installed. Some people might consider that to be more convenient.

http://darkbasicpro.thegamecreators.com/?f=puregdk

PureGDK has also been featured in the June 2008 newsletter. Check it out!



http://www.thegamecreators.com/data/newsletter/newsletter_issue_65.html

http://3dfolio.com
Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Duffer

User


Joined: Sun Feb 9th 2003
Location: chair
Posted: 1st Jun 2008 16:52           | link | toggle

@ Mistrel & Freddix - how and in what ways does PureGDK differ from Pureplugin...?

a long time dabbler with DBC and DBPro with no actual talent but lots of enthusiasm...
Back to top
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 1st Jun 2008 19:40     Edited: 1st Jun 2008 20:13     | link | toggle

PurePlugin simplifies the process of writing plugins for DBP in PureBasic. It's a great solution if you want to make plugins for your projects but you still program in DBP.

PureGDK is a replacement for DBP. It lets write everything in PureBasic just like you would in DBP but using the powerful PureBasic language instead. It's similar to DarkGDK but it differs in that it's compatible with all DBP plugins, it uses the same core as DBP so updates don't lag behind like DarkGDK, and because it's a BASIC dialect it's much easier to program.

I've also made improvements to certain characteristics of the DarkBasic Professional language. For example, I've eliminated vector and matrix IDs in favor of structure pointers, you now only need to call one command to retrieve the capabilities of the user's 3D hardware, all of the "Perform Checklist" command names have been shortened (yay!), and many useful commands that were hidden have been exposed and documented.

You can see most of the DBP and more compiled for PureGDK on the examples page:

http://puregdk.com/index.php?f=examples

Have a look at the fire demo (the first one on in the list). The demo demonstrates how to embed the DarkBasic render window into another and how to catch mouse input from the parent window using an API callback.

It also showcases several features of PureBasic including:

Threads
Window callbacks
Linked lists
Enumeration
MDI windows
Gadgets
Windows API

With Direct3D callbacks for a lost render device you can backup and restore important data in your game/application and prevent it from crashing if someone resets their screen resolution, changes desktops/workspaces, or if the screen saver pops up. With a DBP application your program would just crash when all of the data gets wiped from video memory.

PureGDK makes application programming using DarkBasic Professional realistic. It also has a complete GUI library that is superior to BlueGUI. You also have complete access to the Windows API for adding advanced functionality to your program.

PureGDK also comes with support for 21 plugins right out of the box:

Licensed Plugins:

2D Plugin Kit 1.1
3D Cloth & Particles Physics 6.2
Advanced Terrain
Dark Physics Beta 14-12-07
Dark AI 1.05
Dark Lights 1.02
Enhanced Animations 19-11-07
eXtends 1.4
EZ Rotate Enhanced 19-11-07
STYX 2.0
TextureMax 17-05-07
Unity 3.0

Free Plugins:

D3DFunc 3.6.6
DarkSide Starburst
DBP Collisions 2.04
DKAVM 12-07-06
DKSHOP 12-07-06
EZ Rotate Basic
Multisync 1.4.1
Newton Game Dynamics 1.3.2
zParticles 1.11

IanM has said that he will provide libraries for his Matrix Utils. I'm very happy to hear that.

If your favorite plugin isn't supported by PureGDK natively you can add support for it yourself using the plugin framework. Wrapping a plugin is a simple process and doesn't require any programming (except to compile!). You work with string tables similar to TPC DLLs so if you're familiar with that then you're already half way there.

Full documentation for PureGDK is included in a indexed, searchable help file. I've also gone through the trouble of cross-referencing all of the commands from the DBP core libraries so that it's now easier than ever to find the information you're looking for.

http://3dfolio.com
Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Freddix

User


Joined: Thu Sep 19th 2002
Location: France
Posted: 2nd Jun 2008 04:06           | link | toggle

@Mistrel : You said exactly what was needed to

Gandalf said: "All we have to decide is what to do with the time that is given to us"
Odyssey-Creators - X-Quad Editor - 3DMapEditor
Back to top
-
Report this message as abusive
Cash Curtis II

User


Joined: Fri Apr 8th 2005
Location: Ramstein, Germany
Posted: 13th Jun 2008 05:49           | link | toggle

I can't wait to get my hands on this. The RPG Editor is going to be made with this.


Come see the WIP!
Back to top
CashCurtis.com
Report this message as abusive
revenant chaos

User


Joined: Wed Mar 21st 2007
Location: No Hope, MN
Posted: 14th Jun 2008 01:16           | link | toggle

so, could this be used to compile purebasic dll's for use as DBpro TPC's?
Back to top
Report this message as abusive
Freddix

User


Joined: Thu Sep 19th 2002
Location: France
Posted: 15th Jun 2008 10:29           | link | toggle

No,

If you want to compile PureBASIC DLL's to create DBPro TPC's, you must use PurePLUGIN.

Regards,
Fred
Odyssey-Creators

Gandalf said: "All we have to decide is what to do with the time that is given to us"
Odyssey-Creators - X-Quad Editor - 3DMapEditor
Back to top
-
Report this message as abusive
Prime_8

User


Joined: Thu Apr 10th 2003
Location: Canada
Posted: 22nd Jun 2008 00:25           | link | toggle

I tired to run some of the sample binary files in the DL section of the PureGDK.com. The ones in the sample packs .

am i missing a step should not these .exe's just run ?
all fail to load/ run .

clean rig no DBP or PB or any DEV tools on it , i use it to check the protability of my code . (and play games )
Win XP Media center , AMD x2 dual core , 2 gigs of ram , ATI X1600pro
latest drivers for everything ..

Back to top
Ejected Core
Report this message as abusive
Prime_8

User


Joined: Thu Apr 10th 2003
Location: Canada
Posted: 22nd Jun 2008 10:32           | link | toggle

actually
Showcase of New U5 Commands
is the only one that runs ... all others silent crash , no error window or anything .

Back to top
Ejected Core
Report this message as abusive
Freddix

User


Joined: Thu Sep 19th 2002
Location: France
Posted: 24th Jun 2008 01:41           | link | toggle

Which DBPro Version do you have installed in your computer ?

Gandalf said: "All we have to decide is what to do with the time that is given to us"
Odyssey-Creators - X-Quad Editor - 3DMapEditor
Back to top
-
Report this message as abusive
wh1sp3r

User


Joined: Sun Sep 28th 2003
Location: Czech republic
Posted: 4th Sep 2008 05:16           | link | toggle

I have tried demo, but I cant installl it. It says: Coulnt find the Purebasic application data folder. I changed path to another folder, same problem. Have Win XP.


PS: Real programmers aren't afraid of math!.
Back to top
Find user on ICQ
Report this message as abusive
Cash Curtis II

User


Joined: Fri Apr 8th 2005
Location: Ramstein, Germany
Posted: 7th Sep 2008 08:31           | link | toggle

Do you have Purebasic installed?


Come see the WIP!
Back to top
CashCurtis.com
Report this message as abusive
wh1sp3r

User


Joined: Sun Sep 28th 2003
Location: Czech republic
Posted: 7th Sep 2008 09:30           | link | toggle

Yes, I have. On my deskpc, its working, but on my laptop, I have this problem,lol. (deskpc = Vista, laptop = xp)


PS: Real programmers aren't afraid of math!.
Back to top
Find user on ICQ
Report this message as abusive
nrasool

User


Joined: Mon Sep 22nd 2003
Location: Surrey Area
Posted: 12th Sep 2008 13:17           | link | toggle

Hi Mistrel, Please could you answer a pre-sale question from me, I have Purebasic 4.2 and it works fine. I just want to know on your product, PureGDK, the executable that Purebasic produces, if we use plugins, like DarkAI, does this get compiled into the executable - static library, or do you need to copy the necessary dll to the project folder?

Sorry if the question is newbie-ish. I like this, as I really want to molebox my project and you can't with normal DB Pro, so this seems perfect

Kind Regards

A Good Programmer never blames his tools
Back to top
Report this message as abusive
nrasool

User


Joined: Mon Sep 22nd 2003
Location: Surrey Area
Posted: 12th Sep 2008 13:54           | link | toggle

Ah I see, it the same as DBPro, it unpacks itself in the temp folder

I just answered by own question.

A Good Programmer never blames his tools
Back to top
Report this message as abusive
DarkBasic Pro Guy

User


Joined: Fri Jun 4th 2004
Location: Broomfield, Colorado
Posted: 13th Sep 2008 11:39           | link | toggle

So what makes PureBasic so powerful as you say? What makes it better than DarkBASIC Pro?

Back to top
Report this message as abusive
wh1sp3r

User


Joined: Sun Sep 28th 2003
Location: Czech republic
Posted: 14th Sep 2008 10:40           | link | toggle

DarkBasic Pro Guy: I think, you can use Purebasic's commands, etc.


PS: Real programmers aren't afraid of math!.
Back to top
Find user on ICQ
Report this message as abusive
Freddix

User


Joined: Thu Sep 19th 2002
Location: France
Posted: 16th Sep 2008 03:44           | link | toggle

In Fact, you can use both PureBASIC and DarkBASIC Professional commands set ...
Personnaly, the interest I find in PureGDK is that you can combine both DarkBASIC Professional DirectX9 capabilities and PureBASIC calculations performances.

Gandalf said: "All we have to decide is what to do with the time that is given to us"
Odyssey-Creators - X-Quad Editor - 3DMapEditor
Back to top
-
Report this message as abusive
Google Ad
Back to top
 
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 30th Oct 2008 18:07           | link | toggle

PureGDK is being updated for DBP 7.1. If anyone has a bug they need fixed now is the time to say something.

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 11th Nov 2008 15:35     Edited: 11th Nov 2008 15:37     | link | toggle

Someone on the PureBasic forums figured out that you can actually compile PureGDK commands to a DLL and call them from within your program.

This is a bug/feature that I hope to officially support.

http://www.purebasic.fr/english/viewtopic.php?p=266935#266935p

To be clear: you cannot use this method to compile a DBP 'plugin'. This is a DLL, a compiled module of code you can call from within your PureGDK program or share with others.

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Olby

User


Joined: Thu Aug 21st 2003
Location: Studio
Posted: 9th Jan 2009 05:13           | link | toggle

I am planning on buying PureGDK. I wanted to know when will be the latest support of DBP u7.1 available in PGDK? Or maybe you have already updated it?

ACER Aspire 5920G: Core2Duo 2.2GHZ, 2GB Ram, GeForce 8600M GT 1280MB, Windows Vista Ultimate SP1, DirectX10, DBPro 7.1
Back to top
Olby Online
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 9th Jan 2009 18:53           | link | toggle

The PureBasic forum is really the best source of information for PureGDK. It will be released soon.

http://www.purebasic.fr/english/viewtopic.php?t=32366


Quote: "PureGDK is being worked on and will be released soon! There have been major improvements to large portions of the code base that have taken longer than expected. Most of the core portions of PureGDK have been completely re-written to provide a much more stable and verbose compile process. No more "Engine core not found." errors and so forth. Smile

A few highlights:

* New error handling routines
* All core DBP and GDK framework libraries are now 100% threadsafe with the debugger on or off, the new error handler will provide immediate information if a collision with the GDK libraries does occur
* Completely re-written compiler which is faster, more verbose, and command-line enabled
* Better integration with the PureBasic IDE (no more kill program button getting stuck)
* PureGDK rendering is now done in a screen rather than a window. Internal code changes now provide built-in support for interacting with the DBP window using native commands regardless of the parent window. Previously the DBP render window had to be subclassed to capture input.
* Process termination is now much more stable than it was before. Previously there were some stability issues while freeing resources."

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Olby

User


Joined: Thu Aug 21st 2003
Location: Studio
Posted: 10th Jan 2009 03:13           | link | toggle

Thank you, for your information, last night I got rid of some money to buy PureGDK! Will be waiting for the latest release...

ACER Aspire 5920G: Core2Duo 2.2GHZ, 2GB Ram, GeForce 8600M GT 1280MB, Windows Vista Ultimate SP1, DirectX10, DBPro 7.1
Back to top
Olby Online
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 10th Jan 2009 07:30           | link | toggle

I'll update this thread once it's ready.

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Bored of the Rings

User


Joined: Fri Feb 25th 2005
Location: Middle Earth
Posted: 14th Jan 2009 03:05     Edited: 14th Jan 2009 03:06     | link | toggle

I recently bought Purebasic version 4.3 and the current installation of PureGDK only works with 4.1/4.2. So If anyone only has 4.3 of Purebasic, I wouldn't bother buying PureGDK untill a new installation is available that actually works with 4.3. Sent Query to TGC support and was advised to contact Purebasic. Contacted Purebasic support twice and no replies.
Back to top
Report this message as abusive
Olby

User


Joined: Thu Aug 21st 2003
Location: Studio
Posted: 15th Jan 2009 03:54     Edited: 15th Jan 2009 04:05     | link | toggle

Easy man,... just read the above posts and you will see that author of PureGDK is currently working on the latest release that will support PureBasic 4.30 and DBPro 7.1. He is somewhere in the process of finishing/releasing a beta version if I am correct.

And PureBasic has nothing to do with PureGDK, because it is a third-party extension that is not created by FANTAISIE Software (creators of PureBasic) so your best way to get the latest information is to contact Mistrel or go to www.puregdk.com

[EDIT]

By the way I did some tests with PureGDK compiled files and original DBPro demo executables and it's nice to see that using PureGDK we get somewhere from 20 to 60 FPS gain depending on what type of commands are used. Most performance gain as I noticed is in set of 3D commands. Combine this with powerful possibilities of PureBasic internal language and commands - you will get the most out of DarkBasic Professional.

ACER Aspire 5920G: Core2Duo 2.2GHZ, 2GB, GeForce 8600M GT 1280MB, Windows Vista Ultimate SP1, DirectX10, DBPro 7.1
Back to top
Olby Online
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 17th Jan 2009 22:04           | link | toggle

I apologize for the inconvenience. There seems to be an oversight with the information listed in The Game Creators store. The official PureGDK website clearly states the software requirements before purchase.

There is no malicious scheme here. PureBasic 4.30 was only recently released and it's Fantaisie Software's policy not to list previous versions of PureBasic for download. You'll have to request an earlier version through their support.

I'm sure TGC will be more than willing to offer a refund however you will be ineligible for the new release which does support 4.30.

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Bored of the Rings

User


Joined: Fri Feb 25th 2005
Location: Middle Earth
Posted: 20th Jan 2009 02:42           | link | toggle

Thanks Mistrel,

I will send another email to Purebasic support.

Mike
Back to top
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 20th Jan 2009 15:21           | link | toggle

I hope to get the beta out this week. See the PureBasic thread for more information:

http://www.purebasic.fr/english/viewtopic.php?p=275031#275031

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 23rd Jan 2009 00:00           | link | toggle

Here it is! PureGDK 1.1 Beta1, finally.

I am mirroring this post here but please make any support requests either to support@puregdk.com or in the official PureBasic thread:
http://www.purebasic.fr/english/viewtopic.php?p=275290#275290

This is an open beta so anyone who owns DarkBasic Professional 7.1. There is no nag screen like in the demo but it will expire after a couple of weeks.

http://PureGDK.com/files/upload/PureGDK_Upgrade-1.1b1-4.30.zip
http://PureGDK.com/files/upload/PureGDK-Examples-7_1.zip

This release of PureGDK does not contain any documentation for the new commands added since 6.7. Please refer to your DarkBasic Professional documentation and the status bar hints instead.

There have been a lot of fundamental changes. Projects will need to be tweaked before they will compile with the new release. Please refer to the PureGDK documentation and also the example projects provided here.

Please uninstall your existing version of PureGDK first! There ARE conflicting files which will most likely cause projects not to compile.

Quote: "PureGDK 1.1.0 Beta 1
====================

DarkBasic Professional 7.1 is the version officially supported by this release of PureGDK.

Bug Fixes:
- Several errors were corrected in the Styx framework library that prevented it from working properly.
- The PureGDK compiler will no longer get stuck due to an infinite include loop.
- Fixed a bug where a PureGDK application would fail to run on certain hardware configurations and crash silently at startup. This affects all previously compiled executables.
- Rewrote the PureGDK's cleanup routines to end more gracefully.
- Fixed a bug in dbHideMouse which caused it to fail.
- Runtime errors caused by PureGDK's internal functions will now call the PureBasic debugger or, if the debugger is off, identify the line number of the offending function in your PureBasic source code.
- Fixed a bug in GDKLib Builder.exe where it would build the function incorrectly if it returned a value and had only one parameter.
- Fixed bugs in various vector functions that caused problems when calling from threads and catching runtime errors.
- Updates have been made to GDKLib Builder.exe to support the new internal threadsafe functions. All third-party libraries must be rebuilt and recompiled using this new version to be compatible with PureGDK.
- Fixed a bug where commands with the parameters SSLL, SSL, and SS that returned a long would crash the executable.
- Fixed a bug where the PureGDK did not end cleanly, causing the PureBasic IDE to continue debugging after the program had already ended.
- Fixed a bug in dbSetObjectToObjectOrientation which caused it to fail. Also added missing parameter and updated documentation.
- dbMouseX() and dbMouseY() now work beyond the extents of the 3D screen. Some code may need to be modified to support the new values which can extend in the negative and positive outside the screen resolution.
- Fixed a bug in SyncRate which caused it to fail.
- Show/hide mouse will no longer lag when entering/exiting the client area of the render window.
- Fixed a bug which caused dbLightExist, dbLightType, and dbLightVisible to fail to return a value with the debugger off.

Updates:
- Removed redundant dbMessage command.
- The PureGDK functions for handling errors have changed. Please consult the 'How to... -> Reference Manual -> PureGDK' section of the documentation to see a list of revised commands.
- Most input commands for the keyboard and mouse are no longer limited to the client area of the render window. Some code may require changes to support this behavior.
- dbScanCode() is obsolete and has been removed. Use GetKeyState_() and MapVirtualKeyEx_() instead to obtain multiple scancodes asynchronously.
- dbCLS2 (Basic2D) has been renamed to dbCLSFill to prevent cross-library include conflicts with dbCLS from DBProCore.dll.
- PureGDK now supports changing the mouse using the SetCursor function of the Win32 API.
- The command dbSyncDelay has been removed to facilitate the changes made to OpenDBWnd which now require use of PureBasic's window event functions.
- Added missing command dbSetObjectMask
- DBP 6.9 Added new optional parameters to dbSetDisplayMode and dbCheckDisplayMode.
- DBP 6.9 Added new stereoscopic command dbSetCamerasStereoscopic.
- DBP 7.0 Added additional parameter Orientation to dbMakeObjectPlain
- DBP 7.0 Removed the obsolete commands dbTextureBackdrop and dbScrollBackdrop
- The compiler has been completely re-written and now includes a compile-time GUI
- Updated Newton Game Dynamics plugin commands for consistency where those that were preceded by NDB_Newton now begin with just NDB_
- DBP Added additional parameter SilentFail to dbLoadSound and dbLoad3DSound
- All PureGDK commands now use the same threadsafety code. Previously commands were only threadsafe while the debugger was off when compiling to a threadsafe executable.
- Added a new function dbGetActiveFunctions which will return the sum of all PureGDK functions currently waiting in queue. This is useful for debugging threadsafe executables that use PureGDK commands.
- Sounds are now loaded with the global flag set. This allows sounds to be played while the render window is a child of another window or changes parents during runtime. Unlike DBP's native command, this flag is not optional in PureGDK.
- Added mouse button 5 to dbMouseClick().
- dbSync functionality has been restored. It previously used only FastSync internally. Each Sync type should now function as expected.
- PureGDK no longer supports automatic thread cleanup. You must end all of your threads before ending the program or it will crash on exit. Additionally, exiting from within a user-defined thread is not supported by PureBasic and will also crash your executable.
- The following commands have been moved to the GameFX library:
* dbSetGlobalShadowsOn
* dbSetGlobalShadowsOff
* dbSetGlobalShadowColor
* dbSetShadowShades
* dbSetShadowPosition
* dbPerformCSGUnion
* dbPerformCSGDifference
* dbPerformCSGIntersection
* dbPerformCSGClip
- Revised command names (Commands moved to GameFX library included):
* dbPerformCSGUnion -> dbCSGUnion
* dbPerformCSGDifference -> dbCSGDifference
* dbPerformCSGIntersection -> dbCSGIntersection
* dbPerformCSGClip -> dbCSGClip
* dbPerformCSGUnionOnVertexData -> dbCSGUnionOnVertexData
* dbPerformCSGDifferenceOnVertexData -> dbCSGDifferenceOnVertexData
* dbPerformCSGIntersectionOnVertexData -> dbCSGIntersectionOnVertexData
* dbPerformCSGUnionOnVertexData -> dbCSGUnionOnVertexData
* dbPerformCSGDifferenceOnVertexData -> dbCSGDifferenceOnVertexData
* dbPerformCSGIntersectionOnVertexData -> dbCSGIntersectionOnVertexData
- New commands added for DBP 7.0
* dbMakeStaticObject
* dbMakeStaticLimb
* dbDeleteStaticObjects
* dbDeleteStaticObject
* dbSetStaticPortalsOn
* dbSetStaticPortalsOff
* dbBuildStaticPortals
* dbSetStaticObjectsWireframeOn
* dbSetStaticObjectsWireframeOff
* dbStaticLineOfSight
* dbGetStaticCollisionHit
* dbStaticRayCast
* dbStaticVolume
* dbGetStaticCollisionX
* dbGetStaticCollisionY
* dbGetStaticCollisionZ
* dbGetStaticCollisionCount
* dbGetStaticCollisionValue
* dbGetStaticCollisionFloor
* dbAddStaticObjectsToLightMapPool
* dbAddObjectToLightMapPool
* dbAddLightMapLight
* dbCreateLightMapS
* dbAddLimbToLightMapPool
* dbDeleteLightMapLightS
* dbAddStaticScorch
* dbLoadStaticObjects
* dbSetStaticScorch
* dbSetShadowLight
* dbReduceMesh
* dbAttachObjectToStatic
* dbDetachObjectFromStatic
* dbAddLODToObject
* dbSaveStaticObjects
* dbMakeStaticCollisionBox
* dbSetStaticUniverse
* dbFlushLightMaps
* dbCSGUnionOnVertexData
* dbCSGDifferenceOnVertexData
* dbCSGIntersectionOnVertexData

It is highly recommended that projects be recompiled with this update to ensure compatibility across all systems.

All plugins compiled by third-parties that utilized GDKLib Builder.exe should recompile using the new version to ensure that all functions are built properly."

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Bored of the Rings

User


Joined: Fri Feb 25th 2005
Location: Middle Earth
Posted: 26th Jan 2009 03:31           | link | toggle

many thanks for this Mistrel.

M
Back to top
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 4th Feb 2009 04:27           | link | toggle

PureGDK 1.1b2 is out!

The some of the examples have been revised to support changes in this in beta. Please replace your existing example source with the sources from beta 2 otherwise they might not compile or could produce unexpected results.

http://puregdk.com/files/upload/PureGDK_Upgrade-1.1b2-4.30.zip
http://puregdk.com/files/upload/PureGDK-Examples-7_1.zip

Changelog:

Quote: "PureGDK 1.1.0 Beta 2
====================

Bug fixes:
- Fixed a bug which caused executables to crash when ending the process on Windows Vista.
- Fixed a bug where an access violation would occur in ndb.dll when ending the process if the Newton Game Dynamics library was used.
- Fixed a bug where the PureGDK compiler would diplay both the GUI and the command-line window at the same time. The command line window is now hidden when compiling from the IDE as it was intended.
- The executable will no longer report an "active functions" notification when terminating on a runtime error if only one active function is locked.

Updates:
- dbKeyState now uses virtual-key codes to prevent scan code conflicts across multilingual keyboards. Please consult the documentation for more information.
- dbGetClipboardData and dbSetClipboard are obsolete and have been removed.
- dbCheckDisplayMode is obsolete. Use EnumDisplaySettings_() instead. Consult the documentation under "From DarkBasic to PureGDK -> Fundamental Differences" for more information on alternative solutions.
- Removed unsupported color depth parameter from dbSetDisplayMode. Use ChangeDisplaySettings_() instead.
- Added new commands from DBP 7.1 dbTextureScreen, dbSetScreenEffect, dbAddMemblockToObject, dbGetMemblockFromObject, and dbDeleteMemblockFromObject.
- Updated the documentation and added example sources to the "From DarkBasic to PureBasic" section of the help file."

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Bored of the Rings

User


Joined: Fri Feb 25th 2005
Location: Middle Earth
Posted: 5th Feb 2009 00:17     Edited: 5th Feb 2009 00:17     | link | toggle

Unfortunately, when I compile using the beta version, I now get a message saying that it can't compile because the beta is out of date. I am using a fully licensed version of DBPro 7.1 and Purebasic 4.3. I get the same message for all of the examples too. Does anyone else have the same problem?

Please, please help.

Many thanks
Mike
Back to top
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 5th Feb 2009 00:25     Edited: 5th Feb 2009 00:29     | link | toggle

The previous beta has expired. You'll need to download the new update (PureGDK 1.1b2) to continue using it. The condition for participating in the public beta is that the releases you download will expire.

I will always upload a new one before the current beta expires.

See my previous post in this thread for the links.

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Bored of the Rings

User


Joined: Fri Feb 25th 2005
Location: Middle Earth
Posted: 6th Feb 2009 00:47           | link | toggle

thanks again Mistrel, sorry I didn't see the update doh!!.

Mike
Back to top
Report this message as abusive
Siddy

User


Joined: Tue Dec 16th 2008
Location: Cyberspace
Posted: 12th Feb 2009 02:13     Edited: 12th Feb 2009 02:15     | link | toggle

Has anyone written up a comparison of DarkBASIC and PUREGDK?

The only difference i can see is that PureBASIC works on Linux and Mac, but can the functions of DBPro (direct x 9.0c) work on these systems?

What else is different? - can you used DBPro commands in the 64-bit vr. of pure basic?
Back to top
Report this message as abusive
Mistrel

PureGDK Moderator


Joined: Wed Nov 9th 2005
Location: Cyberspace
Posted: 12th Feb 2009 13:30     Edited: 12th Feb 2009 14:21     | link | toggle

DBP is DirectX 9 so it will not run on Mac/Linux, but it might work on WINE. DBP is 32-bit so PureBasic can only access it as a 32-bit executable.

PureGDK is a replacement for DBP. It lets you write everything in PureBasic just like you would in DBP but using the powerful PureBasic language instead. It's similar to DarkGDK but it differs in that it's compatible with all DBP plugins, it has an improved command library (many functions have been re-written/improved/replaced, and because it's a BASIC dialect it's much easier to program.

I've made many changes to several of the DarkBasic Professional libraries to add improvements. For example, I've eliminated vector and matrix IDs in favor of structure pointers, you now only need to call one command to retrieve the capabilities of the user's 3D hardware, all of the "Perform Checklist" command names have been shortened (yay!), and many useful commands that were hidden have been exposed and documented.

You can download DBP and PureGDK compiled examples with sources on the examples page of the PureGDK website:

http://puregdk.com/index.php?f=examples

Have a look at the fire demo (the first one on in the list). The demo demonstrates how to embed the DarkBasic render window into another and how to catch mouse input from the parent window using an API callback.

It also showcases several features of PureBasic including:

Threads
Window callbacks
Linked lists
Enumeration
MDI windows
Gadgets
Windows API

With Direct3D callbacks for a lost render device you can backup and restore important data in your game/application and prevent it from crashing if someone resets their screen resolution, changes desktops/workspaces, or if the screen saver pops up. With a DBP application your program would just crash when all of the data gets wiped from video memory.

PureGDK provides custom error handling so that you can capture and resolve runtime errors yourself. For example, if your program crashes you can prompt the user for information about the crash and send the data to yourself with the internal error number, line number, source file, and any other information that might allow you to locate the source of the problem. Or maybe you'll ask user's to optionally input their e-mail so you can follow-up.

PureGDK makes application programming using DarkBasic Professional realistic and easy. It also has a complete GUI library that is superior to BlueGUI. You also have complete access to the Windows API for adding advanced functionality to your program. With the addition of threads it's now possible to perform complex calculations in the background without the cursor lagging or mouse-clicks becoming lost.

On the topic of threads, PureGDK is 100% thread safe. That means you can run one thread for your rendering, one thread for input, and another thread for physics. PureGDK handles all of the additional code required for threaded programming using the DBP engine for you.

PureGDK comes with support for 21 plugins right out of the box:

Licensed Plugins:

2D Plugin Kit
3D Cloth & Particles Physics
Advanced Terrain
Dark Physics
Dark AI
Dark Lights
Enhanced Animations
eXtends
EZ Rotate Enhanced
STYX
TextureMax
Unity

Free Plugins:

D3DFunc
DarkSide Starburst
DBP Collisions
DKAVM
DKSHOP
EZ Rotate Basic
Multisync
Newton Game Dynamics
zParticles

The real advantage is the power of the PureBasic language. Things that would be cumbersome and in some cases impossible in DBP are easily done in PureBasic.

Some examples of useful things:

Structured linked lists:
http://www.purebasic.fr/english/viewtopic.php?t=34139

Loading icon resources:
http://www.purebasic.fr/english/viewtopic.php?t=35534

Changing the cursor at runtime:
http://www.purebasic.fr/english/viewtopic.php?t=35069

There are also a lot of fundamental changes to the way DBP works to make it easier to use. To highlight a few things:

Data structures to replace vector and matrix IDs

Quote: "PureGDK uses structures to instead of IDs to pass vector and matrix data between functions. To pass a vector to a function it must first be passed by address using the " @ " operator. The following example will create two variables with vector 2 structures and then add them together.

+ Code Snippet
;/ Declare variables with pre-defined structures
Vector2a.Vector2
Vector2b.Vector2

;/ Set vector data
Vector2ax=3: Vector2bx=7
Vector2ay=5: Vector2by=5

;/ Add vectors together
dbAddVector2(@Vector2Result, @Vector2a, @Vector2b)

;/ Output results
Debug Vector2Resultx ; 3 + 7 = 10
Debug Vector2Resulty ; 5 + 5 = 10
"

How to use optional flags

Quote: "PureBasic uses optional parameter flags in some functions like OpenWindow(). To use these optional flags simply use the bitwise OR operator " | " to separate each flag. This example will open the DarkBasic render window with a titlebar and center it on the screen by using a combination of the #PB_Window_SystemMenu and #PB_Window_ScreenCentered flags.

+ Code Snippet
WindowID = OpenWindow(#PB_Any, 0 ,0, 320, 240, "Window Title", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
"

How to change the resolution:

Quote: "Unlike DBP, PureGDK does not stretch the resolution of the render window by default. If you want to use a lower resolution at a higher screen size then you can resize the window yourself:

+ Code Snippet
;/ Initialize PureBasic desktop library
ExamineDesktops() 

;/ Show the PureGDK render window 
OpenWindow(0,0,0,DesktopWidth(0),DesktopHeight(0),"DarkBasic Professional - PureGDK",#PB_Window_BorderLess) 
hDBWnd=OpenDBWnd(WindowID(0),0,0,640,480)
MoveWindow_(hDBWnd,0,0,DesktopWidth(0),DesktopHeight(0),1) 

;/ Resize the PureBasic window
dbSetWindowSize(DesktopWidth(0),DesktopHeight(0))  

dbMakeObjectCube(1,3) 

;/ Rotate the cube and update the screen 
Repeat
   x.f+0.2: y.f+0.4: z.f+0.8 
   dbRotateObject(1,x.f,y.f,z.f) 
   dbText(15,15,Str(dbscreenfps())) 
   dbSync() 
Until WindowEvent()=#WM_CLOSE Or Not dbInKey()="" 
End
"

Quote: "Identifying supported resolutions is also very easy using the Win32 API. Consider this example which lists all resolutions supported by the user's monitor that is of the same frequency and aspect ratio:

+ Code Snippet
;/ Initialize PureBasic desktop library
ExamineDesktops()

;/ Iterate through supported display settings and display only select criteria
While EnumDisplaySettings_(0,i,@DevMode.DEVMODE)
 If DesktopWidth(0)*1.0/DesktopHeight(0)=DevModedmPelsWidth*1.0/DevModedmPelsHeight And DevModedmDisplayFrequency=DesktopFrequency(0) And DevModedmBitsPerPel=DesktopDepth(0)
  Debug Str(DevModedmPelsWidth)+" "+Str(DevModedmPelsHeight)+" "+Str(DevModedmDisplayFrequency)
 EndIf
 i+1
Wend
"

Function improvements:

Quote: "All of the functions for retrieving hardware capabilities have been reduced to a single function so you can now do call one function and check the user's hardware by transversing a structure (just like a DBP type):

+ Code Snippet
hDBWnd=OpenDBWnd(0,0,640,480,32,#GDK_Window_SystemMenu|#GDK_Window_ScreenCentered)

dbGetD3DCapabilities(@Result.D3DCaps)

Debug "TnL Captable: "+Str(ResultTnL)
Debug "ZFog Captable: "+Str(ResultZFog)

dbWaitKey()
End
"

Automatic ID association:

Quote: "PureGDK has automatic ID association when passing #GDK_Any or -1 as the ID. For example:

+ Code Snippet
ObjectID=dbMakeObjectCube(#GDK_Any,3)


Where ObjectID is automatically assigned as the next free ID available. I've found this to be very convenient for keeping track of assets. You can do this, for example:

+ Code Snippet
ObjectID=GameData_AddObject(dbMakeObjectPlain(#GDK_Any,TileWidth,TileWidth))
dbRotateObject(ObjectID,90,0,0)
dbPositionObject(ObjectID,x*TileWidth,0,y*TileWidth)
dbTextureObject(ObjectID,*GameDataImagesLevel1FloorMetal)


This way it's easy to capture IDs in your own lists for enumeration without all of those cumbersome FindFree..() functions."

Back to top
http://puregdk.com Send AIM user a message
Report this message as abusive
Olby

User


Joined: Thu Aug 21st 2003
Location: Studio
Posted: 12th Feb 2009 15:00     Edited: 12th Feb 2009 15:03     | link | toggle

And besides all above I wanted to tell that there is very good support for PureBasic. It has many libraries, lots of various code editors and such, so you will never experience any difficulties while coding with PGDK.

The best thing besides better coding techniques is the speed that PGDK gives you, on the one side it is easier and faster to develop extremely large and functional applications (excellent GUI support in PB is very helpful here) and on the other side you will still have a speed increase over applications compiled with DBPro.

My previous tests show that PureGDK is faster where your applications have to do many not Direct3D related things like list/array variable handling and such. So it is very great that you can have that much power and speed increase with this software.

Besides I see that Mistrel is dedicated to this project and keeps it updated so you will never miss anything!

I was planning to switch over to PGDK whole last year as soon as I saw PGDK release and have not regret it.

And last but not least if you look into PB commands you will see that all of them are extremely carefully planned and work very well together with other and also PureGDK command set unlike DBPro - where many commands are not working as expected or are very uncomfortable to integrate into your applications. This is not the case with PB and PGDK.

Over and out!

ACER Aspire 5920G: Core2Duo 2.2GHZ, 2GB, GeForce 8600M GT 1280MB, Windows Vista Ultimate SP1, DirectX10, DBPro 7.1
Back to top
Olby Online
Report this message as abusive

Go to the first page of this board Return to the Forum Menu Post Message
49 Messages - Page   of 2   
Search the Forum Next 40

This is a multi-page thread older than 30 days.
Go to the last page to check if you can reply to it.

Forum Search

Enter a word or phrase to search our Forum for:

Thread Subject Search
Search Phrase:
Search Scope: Entire forum
Just this board
 
Google Forum Search
Search Phrase:
 
Apollo v2.02


Dark Game Studio
Privacy Policy AUP Top of Page