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.

AppGameKit Classic Chat / AGK2 vs DBPro

Author
Message
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 16th Apr 2017 19:44
I could have sworn there was a discussion about this a looong time ago, but I couldn't find it, so now I'll ask since it's AGK2.

If you wrote a test app in both AGK2 and DBpro, would AGK2 perform faster?
Stab in the Dark software
Valued Member
21
Years of Service
User Offline
Joined: 12th Dec 2002
Playing: Badges, I don't need no stinkin badges
Posted: 16th Apr 2017 22:16
Both would require a good GPU to get 60FPS.
The coffee is lovely dark and deep,and I have code to write before I sleep.
=PRoF=
21
Years of Service
User Offline
Joined: 17th Mar 2003
Location: Milton Keynes, UK
Posted: 17th Apr 2017 00:55
It really depends on what your program was I guess?

The real differences between the two is one is DX9 and the other is OpenGL, and also AppGameKit is multi-platform.

Since DBP has been 'retired' now, and DX9 is a few versions out of date, I would (and indeed did) choose AppGameKit to develop with.

I'd run some tests quickly now, but I don't even have DBP installed these days
BatVink
Moderator
21
Years of Service
User Offline
Joined: 4th Apr 2003
Location: Gods own County, UK
Posted: 17th Apr 2017 09:49 Edited at: 17th Apr 2017 09:50
I don't write overly complex games, but I have never dropped below 60 FPS. Generally, I get around 400-600 FPS on Windows.
Speed only matters once you start dropping below 60 FPS, and you have written reasonably efficient code.

Mobile is a different matter, as the hardware is much more limited. But you can't compare the 2 as only AppGameKit has cross-platform capability.

Here is an example of an AppGameKit game clamped to 60FPS (I was running Fraps to monitor the FPS), with plenty of activity...

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Quidquid latine dictum sit, altum sonatur
TutCity is being rebuilt
MikeHart
AGK Bronze Backer
21
Years of Service
User Offline
Joined: 9th Jun 2003
Location:
Posted: 17th Apr 2017 11:26
Is DBPro a compiled language or an interpreted one? AGK2 is interpreted.
Running Windows 7 Home, 64 bit, 8 GB ram, Athlon II X2 255, ATI Radeon HD 4200. Using AGK2 Tier 1.
Phaelax
DBPro Master
21
Years of Service
User Offline
Joined: 16th Apr 2003
Location: Metropia
Posted: 17th Apr 2017 13:41
DarkBasicPro is compiled to machine code. But I believe DarkBasic Classic was interpreted.

"I like offending people, because I think people who get offended should be offended." - Linus Torvalds
IBOL
Retired Moderator
20
Years of Service
User Offline
Joined: 30th Mar 2004
Location: @IBOL17
Posted: 17th Apr 2017 16:26
i recently wrote a game in DBP, but most of my users can't get it to run on windows 10.
AGK2 is powerful and cross-platform. I work exclusively in that now.
PSY
Developer
8
Years of Service
User Offline
Joined: 3rd Jul 2016
Location: Laniakea Supercluster
Posted: 17th Apr 2017 18:07 Edited at: 17th Apr 2017 19:06
Just made a simple speed test in AGK2

Got 380FPS on Windows @ 1920x1080, displaying and moving 2000 space fighters simultaneously...

More than enough speed
PSY LABS Games
Coders don't die, they just gosub without return

Attachments

Login to view attachments
RobbSnow
8
Years of Service
User Offline
Joined: 14th Oct 2015
Location:
Posted: 17th Apr 2017 20:22 Edited at: 17th Apr 2017 20:31
AGK2 Tier 2 likely crushes both of them in every category. Not saying that Tier 1 is bad or stinks, but if performance is that important to you, you have another option in AGK2 that DBPro doesn't.
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 17th Apr 2017 21:07
@RobbSnow, yeah, I've been thinking about that too.

It's honestly been nearly a decade since I started with DBPro and I've written TONS of code with it.
Even wrote DBConn for it, which is an ODBC database plugin for MySQL and MSSQL connections.

At the beginning of that decade ago I jumped in full tilt to prove that you could actually write an MMO with DBPro.
It took a few years but the end result was able to handle 30 players where the server and client were both written
in DBPro and used DarkNet along with some fancy coding..

I want to try it again. I think in the end I'll go ahead and do it with AGK2 Tier 2. I'm just working up the courage to
go through all the steps, trials, tribulations, crying, and screaming fits needed to get the build environment set up again.
I'm hoping that maybe by now there's been some improvement on that front and it's a little easier to just install this, then
that and start coding. (fingers crossed)

Stab in the Dark software
Valued Member
21
Years of Service
User Offline
Joined: 12th Dec 2002
Playing: Badges, I don't need no stinkin badges
Posted: 17th Apr 2017 22:12
Better off in Tier2 C++ because it is not as limited as Tier1.
The coffee is lovely dark and deep,and I have code to write before I sleep.
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 17th Apr 2017 22:30
What would be really helpful right now is some sample code for a working demo game in Tier 2 C++.

I haven't been able to find anything written in C++ for AppGameKit Tier 2 that I can look at and test and start to glean some insights from.
I've always learned the best by looking at existing code, so I'm kind of stuck for the moment.
Stab in the Dark software
Valued Member
21
Years of Service
User Offline
Joined: 12th Dec 2002
Playing: Badges, I don't need no stinkin badges
Posted: 17th Apr 2017 22:59
Quote: "What would be really helpful right now is some sample code for a working demo game in Tier 2 C++."


Only a hand full of users are coding in Tier2 so there probably not any available.

You could take any tier 1 demo game and convert it to Tier2 it would be a good way to learn.
Lee made a couple of videos on how to convert Tier1 to Tier2, should find them somewhere on the forums.
The coffee is lovely dark and deep,and I have code to write before I sleep.
MadBit
VIP Member
Gold Codemaster
15
Years of Service
User Offline
Joined: 25th Jun 2009
Location: Germany
Posted: 17th Apr 2017 23:01
KISTech wrote: "What would be really helpful right now is some sample code for a working demo game in Tier 2 C++."


Maybe like this?
Converted T1 SpaceShooter-Demo to T2

Hope this help.
Share your knowledge. It\'s a way to achieve immortality. (Tenzin Gyatso)
Pixie-Particle-Engine
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 17th Apr 2017 23:31
Outstanding. That should help a lot. Thanks.
CJB
Valued Member
20
Years of Service
User Offline
Joined: 10th Feb 2004
Location: Essex, UK
Posted: 18th Apr 2017 14:39
I recall some speed tests comparing Tier1 and Tier2. Hardly any difference (after all, they are both using the same functions). The added flexibility of Tier 2 could be a bonus, unless you don't know C++, then the learning curve could be prohibitive for most hobysists, and of course you lose the multi-platform support if you start using non AppGameKit commands. Better off with Tier 1 in my opinion.
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 18th Apr 2017 18:43
After playing around with a few things yesterday I'm actually leaning towards AppGameKit Tier 1. Someday I may dig deeper into C++.

I found a thread yesterday talking about the ability to make Plugins for AppGameKit that are usable in Tier 1.
If I can figure some of that out I may try and port my DBPro SQL database plugin over.
That would be a huge step towards what I need on the server side for this project.
Stab in the Dark software
Valued Member
21
Years of Service
User Offline
Joined: 12th Dec 2002
Playing: Badges, I don't need no stinkin badges
Posted: 18th Apr 2017 19:48
Quote: "If I can figure some of that out I may try and port my DBPro SQL database plugin over.
That would be a huge step towards what I need on the server side for this project"


That would be C++
The coffee is lovely dark and deep,and I have code to write before I sleep.
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 18th Apr 2017 20:30
I wrote the original plugin for DBPro in C#, and in the thread over in AppGameKit Showcase they mention it's been done now with C++, C# and Delphi.
BatVink
Moderator
21
Years of Service
User Offline
Joined: 4th Apr 2003
Location: Gods own County, UK
Posted: 18th Apr 2017 20:44 Edited at: 18th Apr 2017 20:48
Quote: "I wrote the original plugin for DBPro in C#,"


If you can help the community with getting AppGameKit DLLs working with C# you will be a hero.
Chamaeleon has created a simple DLL using C# and the DLLExport library. However it is very temperamental and as soon as I add anything else, it stops working.
The reported problem is that ReceiveAGKPtr must be exported undecorated. But I have never changed this method, it is exactly as Chamaeleon wrote it.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Quidquid latine dictum sit, altum sonatur
TutCity is being rebuilt
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 18th Apr 2017 20:48
If there's some documentation outlining how to integrate a plugin with AppGameKit I can see what I can do over the next few days.
It's been long enough I wouldn't know where to start to write a new DBPro plugin...
Jack
19
Years of Service
User Offline
Joined: 4th Oct 2004
Location: [Germany]
Posted: 18th Apr 2017 21:29
Quote: "If you can help the community with getting AppGameKit DLLs working with C# you will be a hero."

I would nominate you for a special badge.

I am working on an advanced clouds and skybox system plugin like the one from DBPro,
but it was build up on DirectX as I now have to rebuild it on OpenGL.

Right now plugins are limited to windows, so it would be a good start to port "Blue GUI" for window management. This would allow everyone to create custom Software like model viewers or content creators for their own engine.
I know there is a GIT of blue gui somewhere, so it does not have to be rewritten.

The portation of most of the D3d based plugins will be very risky, as you won't know for shure if and how they will perform on other devices like android or mac,
the plugins could have to be rewritten for that purpose.

Good plan!




[/url]
Stab in the Dark software
Valued Member
21
Years of Service
User Offline
Joined: 12th Dec 2002
Playing: Badges, I don't need no stinkin badges
Posted: 18th Apr 2017 21:50 Edited at: 18th Apr 2017 21:51
Unfortunately you do not have full access to the core of AppGameKit as you do in Tier2.
In DBPro you could get full access to the core so there was no problem making DLLs for DBPro.
The coffee is lovely dark and deep,and I have code to write before I sleep.
BatVink
Moderator
21
Years of Service
User Offline
Joined: 4th Apr 2003
Location: Gods own County, UK
Posted: 18th Apr 2017 22:10
Attached is Chamaeleon's working Adder project. I think it is VS2015. It will grab a Nuget package for the DLLExport functionality.
Hopefully this will be a good starting point for you.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Quidquid latine dictum sit, altum sonatur
TutCity is being rebuilt

Attachments

Login to view attachments
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 29th Apr 2017 21:01
The one thing that plugin doesn't demonstrate is how to return a string to AGK. You have to call agk::CreateString from inside your plugin,
fill it and then pass it back to AppGameKit, then I think call agk:eleteString. Gaining access to calling those 2 functions is where I'm stuck, otherwise
the port of my plugin is working perfectly.

Login to post a reply

Server time is: 2024-09-30 03:16:08
Your offset time is: 2024-09-30 03:16:08