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 / Is there a 64bit DBP ?

Author
Message
Nomad Soul
Moderator
15
Years of Service
User Offline
Joined: 9th Jan 2007
Location: United Kingdom
Posted: 11th Aug 2022 12:48
Hi

Can anyone confirm if there is a 64bit DBP somewhere that can compile executables which are fully 64bit.

I have been patching 32bit executables to be large address aware but that only provides up to 3GB and not very stable.

Thanks
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 11th Aug 2022 13:57
weird you must be reading my mind, I'm literally just compiling DBPro to x64 in Visual Studio.
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Nomad Soul
Moderator
15
Years of Service
User Offline
Joined: 9th Jan 2007
Location: United Kingdom
Posted: 11th Aug 2022 14:29
WOW

Please let me know how it goes. I would be very grateful if we can test this with BIMA.
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 12th Aug 2022 11:05
it's going very well at the moment, I will let you know when I complete it. it will be exciting to use these in projects. I should have done this yonks ago. Time is never on my side.
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Nomad Soul
Moderator
15
Years of Service
User Offline
Joined: 9th Jan 2007
Location: United Kingdom
Posted: 12th Aug 2022 16:17
That's great news and thanks very much.

Definitely will be a significant achievement for DBP and hopefully BIMA too.
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 12th Aug 2022 16:53 Edited at: 12th Aug 2022 19:57
All compiling ok except animation, music, objects, sound, system and setup projects (i'll keep adding here which projects don't convert so easily). Figuring it out. This is pretty awesome.
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
sman512
7
Years of Service
User Offline
Joined: 28th Nov 2014
Location: Russia
Posted: 12th Aug 2022 18:44
Wow that a very good news! Can you also change a index size of vertices, indexes of meshes from word to dword if it possible? DBPro can't make meshes that contains more than 65k vertices and it is very frustrating...
GS
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 12th Aug 2022 22:31
I'll certainly be looking into the directx 64 bit side of things
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Kuper
14
Years of Service
User Offline
Joined: 25th Feb 2008
Playing: Planescape:Torment
Posted: 13th Aug 2022 21:33
Main reason for 64 bit version is to overcome memory limit?
And what about plugins ( Physics for example )?
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 13th Aug 2022 22:54
There is no source code for dark physics , unless anyone knows different
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Nomad Soul
Moderator
15
Years of Service
User Offline
Joined: 9th Jan 2007
Location: United Kingdom
Posted: 15th Aug 2022 18:51
Yeah I was also wondering if making the core DBP 64bit will be sufficient for things like Dark Lights and Dark AI.

The desire for us is to remove the 32bit memory limitation for BIMA but we have a dependency on some of the DBP plugins.
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 16th Aug 2022 15:59
ok, I just found the source for Dark Dynamics, Dark Physics, DArk Lights etc. I will attempt to compile
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Kuper
14
Years of Service
User Offline
Joined: 25th Feb 2008
Playing: Planescape:Torment
Posted: 16th Aug 2022 20:30
Quote: "The desire for us is to remove the 32bit memory limitation for BIMA but we have a dependency on some of the DBP plugins."

Yeah sounds wonderfull, however some plugins are widely used in many projects ( like physics and Matrix utils ) and i hope they will be still usefull.
It will be a new compiler, I guess? Or just another versions of main DBPro dlls?
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 17th Aug 2022 08:10 Edited at: 17th Aug 2022 08:10
the source can be found here:

C:\Dark-Basic-Pro-Initial-Files\Dark Basic Public Shared\Official Plugins, depending if and where you have downloaded/installed dbpro from github.
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others

Attachments

Login to view attachments
Mage
15
Years of Service
User Offline
Joined: 3rd Feb 2007
Location: Canada
Posted: 19th Sep 2022 03:30
Kuper makes a good point. Yeah this would be huge. However I am dependent on Sparky's Collision, Image Kit v2, Dark Animation, for various things.


Also Bored' last time I talked with you was years ago, I was attempting to convert MS3D animations to DBO. You were working on a similar conversion program. I was able to load an MS3D file into memory. All the vertices, polys, and other relationships into arrays and variables perfectly fine. However I just couldn't figure out how to pack it all back up into a DBO file. I got so close I could export the model as a DBO without weights and without animation. The documentation is just so vague and I was always screwing up some of the bytes. I just couldn't get it done.

Were you ever able sort out that DBO conversion?

Mage's Modular Code - Get awesome UI controls and powerful Bitmap Fonts!
Screen Device Recovery - Stop your apps from crashing when minimized/tabbed/screen locked.
CPU Friendly Frame Limiter - Make your app generate less computer heat + noise, and use less battery life!
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 19th Sep 2022 09:26
@Mage: Yes, it's been a while, had 2 children since we last talked, so it's been hectic. I will see if I can find time to convert MS3D anims to DBO. I have been looking to get various formats into DBO, but life gets in the way.
64bit conversion for DBO has been going ok, It's been a few weeks since I last managed to convert Darh Physics/ligts to 64 bit. More time is needed.
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Mage
15
Years of Service
User Offline
Joined: 3rd Feb 2007
Location: Canada
Posted: 19th Sep 2022 16:37 Edited at: 19th Sep 2022 16:39
@Bored
What a hopeful surprise, I hope your kids are well. gz.

To that end, this might lighten the load. I have attached a dba that loads the MS3D file into variables/arrays, then takes it all and writes the MS3D file again using that data. Basically most of the leg work figuring out the file format.

Things to consider:
1. DBO seems to limit a vertex to one set of u/v coords. MS3D allows multiple. This example corrects that problem.
2. MS3D uses XYZ Euler rotations and DBO uses Quaternions.

Mage's Modular Code - Get awesome UI controls and powerful Bitmap Fonts!
Screen Device Recovery - Stop your apps from crashing when minimized/tabbed/screen locked.
CPU Friendly Frame Limiter - Make your app generate less computer heat + noise, and use less battery life!

Attachments

Login to view attachments
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 27th Sep 2022 09:33 Edited at: 27th Sep 2022 09:34
@Mage= I've used my own code to rework the importing of MS3D format files so it uses less memory and I've made the use of pointers where I needed to also, all I have to do now is get the format into DBO, I have some ideas, just need to find a bit more time to do it all. I am also working on getting B3D (BlitzBasic) format imported which I luckily had done some code for that a while back. If Ihad tons of time I would do this in VS C+ or Purebasic, DBPro is just quicker to develop in.
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Mage
15
Years of Service
User Offline
Joined: 3rd Feb 2007
Location: Canada
Posted: 29th Sep 2022 06:33
Wow I hope you can succeed, having a converter like that would make things very convenient. MS3D is a very simple editor to use and it's convenient to create simple objects quickly. It's currently a problem exporting with animation weights, which was my motivation for trying to make the conversion.


Some thoughts about DBO Format:

The MS3D code is definitely really rough, zero polish. The priority at the time was just get it working. I never got back to tending to it. It was part of a larger project where an MS3D file could be converted to and from DBO, just without the weights and animations. The DBO file format specification is rather vague in areas, and I was constantly getting some of the bytes wrong. Especially with the weights. However the huge hurdle came down to rotational values, converting from Euler XYZ to Quaternion. In the end I figured it out, it took really long time, but I was too spent to tackle the last mountain which was encoding the animation at the end of the DBO. The angle conversions are just the first step, in that process since you need to make sure all bones have correct initial rotational values. Not to mention new angles in animation frames.

Plus good grief the non animation section of DBO it was a mess of convoluted parent frames, sibling frames, child frames, empty frames. In MS3D format they just list the bones, list the rotations, etc. So simple. In DBO its so vague it's all a big tree of frames, and half of them don't seem to do anything. Like all of the mesh data was packed in the parent frame, and there's even a list of all of the bones in there somewhere. There are Matrices all over the place, with empty of default data sets, no explanation why they are needed just that they have to be there.

Mage's Modular Code - Get awesome UI controls and powerful Bitmap Fonts!
Screen Device Recovery - Stop your apps from crashing when minimized/tabbed/screen locked.
CPU Friendly Frame Limiter - Make your app generate less computer heat + noise, and use less battery life!
Bored of the Rings
17
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 29th Sep 2022 12:30 Edited at: 29th Sep 2022 12:30
@Mage-I will probably shed light on the DBO mystery.The specs are dreadful but worked it all out eventually. I will post code and try to explain what's going on and why the code is doing what it's doing. Maybe a kind of tutorial. I use(d) same code to convert GG MAX DBO to .X, fully animated/textured and get them in GG Classic which uses the same .FX files. There's a few werd things I had to do to get rotations working and when converting to OBJ I had to use matrices / directx SDK math to get the groups to position correctly. So if you need to see my code on weights etc I'll upload and do my best to explain.
Pro Programmer / Data Scientist, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Mage
15
Years of Service
User Offline
Joined: 3rd Feb 2007
Location: Canada
Posted: 30th Sep 2022 01:37
I'm sure it would be an interesting read. We're probably the only two people on earth at this point who are aware + care about DBO file format specs. I thought mentioning some of the trials and tribulations would be interesting. Someone else trying to bust their brain on the same issues and so on.

Mage's Modular Code - Get awesome UI controls and powerful Bitmap Fonts!
Screen Device Recovery - Stop your apps from crashing when minimized/tabbed/screen locked.
CPU Friendly Frame Limiter - Make your app generate less computer heat + noise, and use less battery life!

Login to post a reply

Server time is: 2022-10-04 13:54:32
Your offset time is: 2022-10-04 13:54:32