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.

DarkBASIC Professional Discussion / Performance differences between DBPro and DarkGDK

Author
Message
Alduce
23
Years of Service
User Offline
Joined: 26th Oct 2002
Location: Rama spaceship
Posted: 7th May 2013 12:16
Hi all, I would to know :

1)There is some "code converter" to convert DBPro code in DarkGDK code?

2)I make the same game in DarkBasicPro and in DarkGDK.
So, is DarkGDK game faster than DarkBasicPro game? and how much?
Chris Tate
DBPro Master
17
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 7th May 2013 17:27 Edited at: 7th May 2013 17:29
It has been said by a group of people that DarkGDK runs faster than DarkBASIC pro; but I do not fall under that group and have alternate beliefs that the difference is trivial in most situations.

I've used both systems and have seen that both contain similar bottlenecks and issues.

You should choose DarkGDK over DarkBASIC if you want to collaborate in a medium to large size team anytime soon because more people are skilled with C++ than with DarkBASIC; you should take that route if you want to work on something large so you can take advantage of Visual Studio debugging and organization.

But for working on your own or with one or two people; or for working on something medium to small over the course of just a 6 or so months, choose DarkBASIC because all of C++/C#/Visual Basic's benefits won't mean much if you are making something rather simple. You can even talk to DarkBASIC using windows messaging or networking if you want to take advantage of the debugging tools or GUI perks.

That's my advice, literally from recent experiences.

Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 7th May 2013 17:59
The benefit in using GDK shouldn't be just speed, because like Chris says, it's probably fairly slim. The benefit in GDK besides using C++ which is more of a standard, is that you can do things that DBPro simply cannot. For instance, in GDK you can make a terrain system that is faster and more efficient than in DBPro...
Like having your own specific mesh format that can be optimised to your needs.

It's not the sort of thing that most people would encounter - not everyone would even want to write their own system with GDK, it's just a matter for the experts I guess. Like a highly experienced programmer will be able to do much more with GDK than with DBPro, because there are potentially less limits.

For smaller projects, well development speed is really more important than the speed of the final .exe - so I concur with Chris again on that. Also it's probably good practice to do tech demo's and tests in DBPro before implimenting them in GDK - with languages like C++ you should always know what your trying to achieve - it warrants a much tighter level of control than DBPro, which can be very organic (mostly why I like it so much).

I got a fever, and the only prescription, is more memes.
Alduce
23
Years of Service
User Offline
Joined: 26th Oct 2002
Location: Rama spaceship
Posted: 8th May 2013 13:52
Thanks guys!
WLGfx
18
Years of Service
User Offline
Joined: 1st Nov 2007
Location: NW United Kingdom
Posted: 9th May 2013 03:33
Some time ago I wrote a really crappy bike game in 3 of TGC's languages, PureGDK (which doesn't work anymore), GDK and DBP. DBP came out on top without any need to optimise any of my code with approx 22FPS while GDK gave a result of about 16FPS. I gathered at the time that DBP being natively written it will run the fastest, while GDK acted like a wrapper for the engine. Whether this is true or not I didn't explore further. My problem at the time was GDK was not as updated as DBP was which caused me to move on. I prefer coding in C/C++ than Basic.

My laptop at the time could hardly handle anything so the low FPS's ratings benchmark for me meant something at the time and DBP proved the more powerful. I had even optimised some of the code in C/C++ in the GDK version which made little or no difference to the render loop.

All being said, C/C++ offers a plethora of stuff that DBP can not do. DBP is faster in my opinion.

Mental arithmetic? Me? (That's for computers) I can't subtract a fart from a plate of beans!
Warning! May contain Nuts!
basjak
16
Years of Service
User Offline
Joined: 16th Apr 2010
Location: feel like signing up for mars
Posted: 9th May 2013 10:07
Dbpro is fast enough. You can make very tough operations with it. So don't worry much about it.plus with dgdk you will not be able to use all c++ standard libraries. You will have to reinvent those libraries so better use dbpro.

Mr Bigglesworth
18
Years of Service
User Offline
Joined: 4th Mar 2008
Location:
Posted: 9th May 2013 16:19
Quote: "So don't worry much about it.plus with dgdk you will not be able to use all c++ standard libraries. You will have to reinvent those libraries so better use dbpro."


You can use all the standard libraries with GDK, there is absolutely no need to "reinvent" them.
basjak
16
Years of Service
User Offline
Joined: 16th Apr 2010
Location: feel like signing up for mars
Posted: 10th May 2013 00:33
mmmm.. actually, this what put me off from using dark gdk. I remember when I wanted to use it with c++, I was left with no use of strings, vectors, iostream ...........

so I left it to work with DBpro editor

Mr Bigglesworth
18
Years of Service
User Offline
Joined: 4th Mar 2008
Location:
Posted: 10th May 2013 01:03
Quote: "I remember when I wanted to use it with c++, I was left with no use of strings, vectors, iostream ..........."


It is totally up to you whether you use DarkGDK with or without the Standard Template Libary, I personally use it heavily.
basjak
16
Years of Service
User Offline
Joined: 16th Apr 2010
Location: feel like signing up for mars
Posted: 10th May 2013 02:14
What I meant is I remember that I couldn't call those libraries within the dark GDk . You got me thinking now.

Rudolpho
20
Years of Service
User Offline
Joined: 28th Dec 2005
Location: Sweden
Posted: 10th May 2013 04:43 Edited at: 11th May 2013 21:50
Quote: "What I meant is I remember that I couldn't call those libraries within the dark GDk"

Just write yourself some wrapper functions, or do the (relatively slight) extra work in-line.

Examples:


I just wrote that up off the top of my head and it's 03:40 here by the way, so consider it pseudo code


"Why do programmers get Halloween and Christmas mixed up?"
Mr Bigglesworth
18
Years of Service
User Offline
Joined: 4th Mar 2008
Location:
Posted: 10th May 2013 05:52 Edited at: 10th May 2013 05:52
You also need to make sure your code generation is set to /MT for release build or /MTd for debug build, or else it won't compile when you use STL stuff.
Morcilla
23
Years of Service
User Offline
Joined: 1st Dec 2002
Location: Spain
Posted: 20th May 2013 18:53
I can tell that there is a difference when loop time comes and for common (not DBPro related) operations.

All evaluations for loops, if's, math calculus like square roots, etc in C/C++ will greatly outperform DBPro.

I noticed this when I had to perform math calculus in a loop over an array of 10,000 items. DBPro was sluggish when compared to C.

So, it also depends on your code and how many things it has to do.
If you use intensive loops and calculus, DGDK over C will perform much faster than DBPro, mainly because we talk about C code, which is faster than anything else useable out there.

Login to post a reply

Server time is: 2026-07-08 03:03:27
Your offset time is: 2026-07-08 03:03:27