Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / Is DarkGDK worth switching too?

Author
Message
cassius
20
Years of Service
User Offline
Joined: 31st Oct 2003
Location:
Posted: 30th Aug 2008 05:27
I am a long time user of DarkBasic Pro and I am considering switching to DarkGDK. I have purchased numerous plug-ins over the years such as the Cloth and Particle Pack and EzRotate to name a few. I also dabbled with Newton for DBPro. From all of the reading and forum posts I have been looking at, it appears that C++ is the better choice for all of the non-game engine stuff, but what I wanted to know is loosing all of that functionality worth it? Is Sparky's Collision DLL still usable with DarkGDK or will I have to use the built in collision? Would I have to write my own collision? I saw some conflicting doc on what commands are really available in DarkGDK. Is it the 6.8 core code or as the FAQ page for the DarkGDK Information states, is it the 5.9 engine?

I am happy using DBPro, but prospects coming out of schools (colleges) will not know DarkBasic, they will know C++, so that to me makes it appealing for building a Indie Game Company around. I am just not sure if the juice is worth the squeeze...

How many of you that use DarkGDK have come from the DBPro side of developement and do you think that it is worth the tradeoff? What do you feel are the Pro/Cons of using it besides the speed that the GameCreators have already pointed out?

Many thanks.

Cassius
Mista Wilson
16
Years of Service
User Offline
Joined: 27th Aug 2008
Location: Brisbane, Australia
Posted: 30th Aug 2008 08:16
Well, first, im not sure what you mean by losing functionality.. All of the functions that are available in DarkBasic are available in the DarkGDK under c++(as far as im aware), there are also a number of undocumented functions defined in the headers, you can read through them to uncover those functions....

Sparky's collision DLL works very well with DarkGDK, i have used it myself, and all of the DarkBasic plugins that you have mentioned are mostly also availalbe to DarkGDK users. If you vist your Order History where you originally downloaded your plugins from, you should be able to just download the GDK version aswell straight up(no extra cost provided that you have already purchased the product, you can download DBP and GDK versions of plugins that you have purchased).

The core engine, im not sure on that one, i believe it is the current DarkBasic Pro engine under the hood, but perhaps one of TGC devs would be able to better answer that one.

As for the advantages of progamming in C++ over Darkbasic, they are almost too numerous to mention, compeltely aside from the DarkBasic/GDK side of things, C++ will allow you to plug your programs directly into DirectX, MFC(not express editions) etc, C++ is an object oriented language, allowing you to structure your programs much more efficiently than a procedural language such as DarkBasic. What i mean, is that the "Pros" are that C++ is a superior development environment in almost every way compared to darkbasic(my opinion, others may think differently). Programs compile faster and run faster. There is also the issue that you raised in you post in regards to coming out of school/college.. Knowing how to code in C++, would allow alot more freedom in regards to job prospects and entry into the industry as opposed to DarkBasic, and not just in the gaming industry...

The disadvantes.... well, there is one big one... Learning to code properly in C++. It can be a daunting and time consuming task, once learnt however, the degree of control you get over your apps in C++ is second to none and much greater than that afforded by DarkBasic, also, the internet contains a massive amount of resources dedicated to teaching people the fundamentals of C++ and beyond..

For C++, I would recommend to everybody as a first read :

Ivor Horton's Beginning Visual C++ 2008

Product Details

* ISBN: 0470225904
* ISBN-13: 9780470225905
* Format: Paperback, 1356pp
* Publisher: Wrox Press, Inc.
* Pub. Date: March 2008

I have found this book to be an invaluable resource. It details the VS C++ 2008 IDE, and although based around the Commercial Editions, it talks about everything from the very basic "hello world" console programs, through to fully developed applications, ANSI/ISO, CLR, .NET, MFC... everything.. Just google the title, it shouldnt be too hard to find a copy(got mine thru amazon).
This book is just my personal perference, there are, as i have said, an almost unlimited resource of C++ tutorials/lessons on the web, aimed at everybody from the total novice to total professional.. again, google away

Hope I have been of some help.. Good Luck

If it ain't broke.... DONT FIX IT !!!
dark coder
21
Years of Service
User Offline
Joined: 6th Oct 2002
Location: Japan
Posted: 30th Aug 2008 10:53
If you look at the Sparky's collision download it comes with the static lib and header file for c++, and EZ Rotate does the same. No idea about cloth.

Quote: "How many of you that use DarkGDK have come from the DBPro side of developement and do you think that it is worth the tradeoff? What do you feel are the Pro/Cons of using it besides the speed that the GameCreators have already pointed out?"


Of course it's worth the trade-off, C++ and VS or other IDEs are far superior to DBPro in too many ways to list. The syntax is just so much easier and logical, of course you have to learn a lot more to truly understand and utilize the power of it. But the switch from DBPro to C++ can be very simple if you want it to be, as you can write procedural code like DBPro, once you learn how to handle arrays/containers and strings you should be able to write both fairly similarly. However it's best to learn a bit about various aspects of OOP before you begin rewriting any large projects else you'll aoon realise how you could have better structured your program later on!

jezza
16
Years of Service
User Offline
Joined: 8th Mar 2008
Location: Bham, UK
Posted: 30th Aug 2008 12:00
Quote: "All of the functions that are available in DarkBasic are available in the DarkGDK under c++"

not true. That was true when GDK was first released, but since then DBPro has been updated and GDk hasn't, so some of the newer functions are missing in GDK.
Mista Wilson
16
Years of Service
User Offline
Joined: 27th Aug 2008
Location: Brisbane, Australia
Posted: 31st Aug 2008 10:14
Quote: "not true. That was true when GDK was first released, but since then DBPro has been updated and GDk hasn't, so some of the newer functions are missing in GDK. "


I guess that would come down to which "engine" GDK is running with at the moment( i have no idea, i just assumed TGC would try to keep their products as inline as possible).. but out of curiosity, in which areas are us GDK users missing upgraded/extra functions ?(core, 3d, terrain, memblock, etc), and do you think that we could replicate those functions ourselves, using the GDK(or directx directly)?( thats probably a silly question actually, ofcourse u can replicate any function you want to... if you know how it works lol )... If there is another thread somewhere deatiling the difference, maybe you could point me there

Thanx..

If it ain't broke.... DONT FIX IT !!!
sydbod
16
Years of Service
User Offline
Joined: 14th Jun 2008
Location: Just look at the picture
Posted: 31st Aug 2008 14:32
Quote: "( thats probably a silly question actually, ofcourse u can replicate any function you want to... if you know how it works lol )"


It is not only the functions but things like the ability to force the game to use AA as it starts, as one example.

I believe that "DarkBasic Pro" has that feature currently but "DarkGDK" does not.

The solution is NOT to turn it on within the driver, as many normal people do not know how to do this themselves.

There are also some broken functions within DarkGDK that require fixing, like "void dbFogColor ( int iRed, int iGreen, int iBlue )"

It actually acts like "void dbFogColor ( int iGreen, int iBlue, 0 )", There is just no RED.
cassius
20
Years of Service
User Offline
Joined: 31st Oct 2003
Location:
Posted: 31st Aug 2008 19:27
Thank you to everyone that has posted on this thread. Your comments a very well appreciated. I know C++ has been a long standing standard for Object Oriented Programming, and I can see the power there, I just need to bite the bullet and dive back into that world.

Judging by the FAQ page and the date stamps on the files that came with GDK, I am guessing that the engine under the hood is 5.9. In hindsight I guess that is kind of trivial since I am not really smart enough to write my own 3D engine anyway.

@Mista Wilson - You make a interesting comment about controlling DirectX directly with C++. Have you found that you can augment what the GDK does by adding new features through maniputlating DirectX around it? This is a extreme example but, if I was unhappy with GDK's particle system, I could just write my own through C++ and Directx and it would be visible when I run the executable for GDK? Forgive for my lack of knowledge on this topic, I had Borland C wayyyyy back in college and this stuff didn't exist back then.

Do you all feel that GDK will be something that the GameCreators will stay behind? Other seeing it in the newsletter as being free, I don't see many updates to it. It seems a lot more attention is paid to the DBPro side of the house and FPS Creator.

Thanks again for everyones input.

Cassius
jezza
16
Years of Service
User Offline
Joined: 8th Mar 2008
Location: Bham, UK
Posted: 31st Aug 2008 21:48
afaik, you cannot use DirectX properly with GDK. If you were unhappy with the particles, you could recreate your whole game in DirectX, with a different particle system. Easier said than done. I'm slowly trying to learn D3D, and this stuff isn't easy.
Lilith
16
Years of Service
User Offline
Joined: 12th Feb 2008
Location: Dallas, TX
Posted: 31st Aug 2008 22:38
Quote: "afaik, you cannot use DirectX properly with GDK"


That depends on your point of view. There is an undocumented function in Dark GDK that gives you enough information to gather up the necessary info for accessing an image directly. I'm not keen on 3D but there may be some give aways in the header files that give you some access to 3D functionality.

Lilith, Night Butterfly
I'm not a programmer but I play one in the office
sydbod
16
Years of Service
User Offline
Joined: 14th Jun 2008
Location: Just look at the picture
Posted: 1st Sep 2008 03:27
Everything is possible.

the only question one has to ask is ....... if one has to learn about DirectX to get significant functionality that is currently missing from GDGK, then why not spend a little more time learning DirecctX properly so one can do it all in DirectX.
It will be a faster program.

I personally am hoping that DGDK will be upgraded within the next 6 months when my project should be reaching completion, and am gambling on not being required to learn DirectX coding ..... but knowing my luck, it will probably have been the wrong decision.
Mista Wilson
16
Years of Service
User Offline
Joined: 27th Aug 2008
Location: Brisbane, Australia
Posted: 1st Sep 2008 07:47
Quote: "You make a interesting comment about controlling DirectX directly with C++. Have you found that you can augment what the GDK does by adding new features through maniputlating DirectX around it? This is a extreme example but, if I was unhappy with GDK's particle system, I could just write my own through C++ and Directx and it would be visible when I run the executable for GDK?"


The task of integrating directx control with the GDK would be massive i think, and not trivial in any way, you would need to learn to use the DirectX classes etc, completely, and be able to include them in your project in a way that wouldnt conflict with the use of those same classes by the GDK( thus having to know how the GDK uses D3DX iteslf).. the problem i can see from your example question would be, yes, you could write your own particle system using directX and display it to your screen etc... however, integrating it, and controlling it with the GDK(using them together) would be very dificult, if not almost impossible, without knowing exactly how the GDK interfaces with directX itself.. not impossible, from a strict yes/no point of view... but perhaps impossible from the point of view of not knowing c++ and the GDK and directX/D3DX, and not knowing how they all "interface", bak to front ( on a slightly different topic, i know its possible to use some directx D3DX classes directly in the gdk, as using EZ-Rotate, you instance new DirectX D3DXMATRIX, D3DXVECTOR3, and D3DXQUATERNION classes to hold the info of your object... i guess that the use of these classes is specifically allowed through the EZ-Rotate plugin(which used to use its own matrix/vector classes in previous versions, but changed to use the D3DX classes in version 4), i havent played around with trying to access any other D3DX classes directly at all yet, as i have found no need to lol)

On the other hand, to use your example of a broken particle system again( just to clarify, the GDK particle system is NOT broken as far as i know, and i am using it as an example only), perhaps the answer would not be to use DirectX, thus bypassing the GDK, which is meant to act as an easy to use interface between directx and programmers), but to use the other GDK functions themselves to write and manage your own particle system..

If it ain't broke.... DONT FIX IT !!!
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 1st Sep 2008 18:48
DBpro has AA and now also has CSG, and unfortunately DarkGDK does not have any of these features. I wonder if DarkGDK will ever be updated at all, it seems that TGC simply don't put any attention to its development
DarkBasic Pro Guy
20
Years of Service
User Offline
Joined: 4th Jun 2004
Location: Broomfield, Colorado
Posted: 1st Sep 2008 20:18
What I can say is... strings, I found strings hard to deal with in DarkGDK, although I finally got it, I'm still with DarkBASIC for now (Only really been programming in db for less than a year though)

Mike J
Retired Moderator
18
Years of Service
User Offline
Joined: 7th Jul 2006
Location: Binghamton, NY, USA
Posted: 1st Sep 2008 20:24
I've recently exchanged some e-mails with Lee Bamber in which he indicated that TGC will in fact be bringing DarkGDK in line with DBPro, although he did not give an exact time frame.

Everyone here should understand that TGC is still a relatively small company and they must pick their battles carefully. By no means should anyone infer that they are abandoning their users.

If users are so impatient that they choose to start making ill comments and unfounded accusations, then perhaps they should choose another product and go complain on its support forums, so that we don't have to listen to it here.

"The early bird may get the worm, but the second mouse gets the cheese."
sydbod
16
Years of Service
User Offline
Joined: 14th Jun 2008
Location: Just look at the picture
Posted: 2nd Sep 2008 06:56
Quote: "If users are so impatient that they choose to start making ill comments and unfounded accusations, then perhaps they should choose another product and go complain on its support forums, so that we don't have to listen to it here."


That may be a little harsh when one looks at what has been posted.
No post here has critisized DGDK or even critisized TGC.
There was mention of what is still lacking or not working properly in the current version of DGDK.
There was a mention that since DGDK is behind feature wise compared to its brother versions, that it looks like DGDK has the lowest priority.

We all do welcome the extra information about DGDK being upgraded in the near future, and the reason why it has taken so long to bring DGDK in line with the others.

You are correct in observing that users are impatient, but that should be taken as a compliment for DGDK rather than an insult. We are all impatient, because we can see how good DGDK is at the moment, and we can see how much better it has the potential to become with some more work done on it. None of us would be here if we thought badly about DGDK.
Mista Wilson
16
Years of Service
User Offline
Joined: 27th Aug 2008
Location: Brisbane, Australia
Posted: 2nd Sep 2008 08:24
@ Sydbod.... /AGREED Wholeheartedly(if thats even a word lol)..

At the risk of sounding like a bit of a goose, I must comment on how much I enjoy developing and working with the GDK.. regardless of any "imperfections" it may or may not have.. It IS a product that is DEFINATELY worth switching too....

I believe that one of the big plusses of working with the GDK and cpp over the DarkBasic environment, is the fact that it gives us the freedom to intereact directly with our pc's at a much lower level than is possible through the use of DarkBasic on its own, allowing us to implement features into our applications that can be as complex or as simple as we please, those choices are ours to make, as we develop.

Personally, and I speak only for myself here, I love the product and what it does.. regardless of whether it is inline with the DBP versions or not, the power it provides, and the freedom to develop what u want, how u want the way u want.. is unmatchable....(apologies for my vulgarisation of the english language, im an aussie lol.. and the above is only my personal opinion, others may, and im sure alot do, feel differently.)

Lastly, if there is an update coming to GDK...

in the words of the famous Montgommery Burns of Springfield...... Exxxxcccellent..... LOL

I look forward to it.. but personally, I would prefer to wait as long as is required to get the best possible product from TGC... I look at it from a point of view of the longer they spend working on it(DarkBasic/GDK isnt the only product that these guys develop, and it all takes time to do properly), debugging, testing etc.. the better the product we get in the end, a product with less bugs and better functionality etc..

Here's to TGC... You guys are Great, please keep up the good work.

If it ain't broke.... DONT FIX IT !!!
cassius
20
Years of Service
User Offline
Joined: 31st Oct 2003
Location:
Posted: 2nd Sep 2008 21:30
@Mike J

I hope you do not view these posts as being impatient or abusive. I had no intention on making this thread seem that way in any shape or form. I am simply asking some hard questions I myself cannot answer.

I have made several small projects in DBPro and entered in most of the competitions using DBPro and I love using it. I am a one man shop and about two years ago I decided that I was going to make a game engine; essentially a foundation that I could clone over and over to make games so that the wheel would not have to re-written every time. I used DBPro, LUA, Newton Physics and Sparkies collision dll for non-physics collisions, and the Cloth and Particles Pack for some of the effects. Things went along great and the engine was really shaping up, and then one of my friends asked me what I would do if I wanted to expand and ask for help from the local market or college grads here. I had to think seriously about that and did some research and started looking at GDK as a solution.

I only have experience from the DBPro side of the house and not the GDK side and I knew there had to be some people that made the jump. I just needed their thoughts on the jump and what they percieved to be the pros and cons of the switch.

I think the Game Creators are terrific. I am kind of a self taught game programmer and I started a long time ago on 3DRad and then switched to A4 before I finally found DarkBasic Pro way back in 2003. I haven't used anything else since. I like the company and all of the products that you release. The community is great and very supportive.

In my opinion, I think GDK could be The Game Creators real diamond in the rough. DBPro is great, don't get me wrong, but from all of the things the people in this thread posted, the combination of C++ and GDK is very appealing and powerful. If given the attention we all hope it gets, it could very well compete out there with the big dogs.

I know you guys are a small shop and I appreciate the "choosing your own battles" philosphy. Coming from a shop of one, I couldn't agree more with your approach.

Thanks again for everyone who posted.

@ Mista Wilson

I took your recommendation and purchased that C++ book. Very good tool so far.

Cassius
Mike J
Retired Moderator
18
Years of Service
User Offline
Joined: 7th Jul 2006
Location: Binghamton, NY, USA
Posted: 3rd Sep 2008 16:54 Edited at: 3rd Sep 2008 17:00
I was looking mostly at the post by bjadams:

Quote: "DBpro has AA and now also has CSG, and unfortunately DarkGDK does not have any of these features. I wonder if DarkGDK will ever be updated at all, it seems that TGC simply don't put any attention to its development"


The part 'TGC simply don't put any attention to its development' just kind of irked me. That's what I call an unfounded accusation.

I did not mean to imply negativity on the part of anyone else in particular. In retrospect I obviously should have addressed my comments to that specific user... sorry if I offended anyone.

"The early bird may get the worm, but the second mouse gets the cheese."
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 3rd Sep 2008 19:58
as someone who specifically bought darkphysx to use with dgdk i am disappointed with the situation right now.

its true that dbpro gets attention in the form of regular updates, and dgdk no i have already suggested in the past, make dgdk updates as a product you can buy - i would be happy to buy a dgdk update if it had AA support.

Login to post a reply

Server time is: 2024-09-30 05:23:10
Your offset time is: 2024-09-30 05:23:10