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 / 3DS OBJECT ISSUE (HELP REQUIRES!)

Author
Message
TinTin
18
Years of Service
User Offline
Joined: 16th May 2006
Location: BORG Drone Ship - Being Assimilated near Roda Beta (28)
Posted: 29th Oct 2023 19:32 Edited at: 29th Oct 2023 19:33
Hi Guys
I am trying to update an old DBPro project from memory (Code Backup has went off somewhere!)
Anyway, My Application is working so far...

It Initializes Window OK
It Displays Skydome OK
It Displays Status Info OK
It Configures & Controls Camera OK
Displaying a Loaded 3DS is another story!

I've created a simple Object to test with, initially with each polygon sharing corner vertices i.e. a basic box made of 8 vertices and 12 triangles, DIDN'T WORK surface smoothing occurred even when it's set to off or zero
I've re-configured the Object with each polygon only sharing corner vertices with polygons from the same face i.e a simple square made of 4 vertices and two triangles, DIDN'T WORK see attached picture.
I've went through every option turning CULL, TRANSPARENCY, ZORDER (list is endless) ON & OFF, DIDN'T WORK see attached picture.

If you look at the attached picture, it displays an object (a 3D model of a simple home) every single polygon has been meticulously aligned. the whole object has had an enclosing box surrounding it, but still I get the same
jumble of surfaces showing through some (not all) of the other surfaces.

Initially I thought the object had an error, but the same issue goes for the initial project surfaces that worked fine before.

Any Ideas of what I may be doing wrong?

Attachments

Login to view attachments
Scorpyo
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: italy
Posted: 30th Oct 2023 09:22
Why don't you convert it to .X format ?. There's plenty of apps on line for that.
TinTin
18
Years of Service
User Offline
Joined: 16th May 2006
Location: BORG Drone Ship - Being Assimilated near Roda Beta (28)
Posted: 30th Oct 2023 14:08
Hi Scorpyo
Quote: "Why don't you convert it to .X format ?. There's plenty of apps on line for that."

I'm sure there is, but that wasn't the question, and can you guarantee after doing the conversion will the issue be fixed?
if it will fix the problem Great, but I still want to know why is it happening in the first place?
James H
17
Years of Service
User Offline
Joined: 21st Apr 2007
Location: St Helens
Posted: 30th Oct 2023 20:20 Edited at: 30th Oct 2023 20:21
.3ds was never fully supported and was dropped in later updates - at what point idk. So I imagine the update you currently have installed needs reverting back to what it was when you created the project for it to work as it once did.

In terms of conversion to x, well you are going to have to try various programs whether you like it or not unfortunately

With Blender I used to get different results based on which version of blender I was using, never had much luck with animated 3ds. Old versions of blender are still available afaik. In fact as I recall I had a model pack that they(TGC) sold that had a bunch of 3ds - I ended up just getting my money back

If you happen to have the old DB classic on a physical disk there is in fact a program on it that converts 3ds to x...although again I think the output might be static ie no anims but I don't quite recall.

So the short answer is that 3ds support was never fully implemented and then later dropped altogether but whatever they left behind stayed and just does not work as it once did.

Notably if you do a forum search of the dbp board for 3ds you will see time and again this issue and the general response is to switch to .x or .dbo(as some model viewers users created supported dbo export...again found via forum search - I don't recall any specific one that imported 3ds though).
Win 10 Home 64, Intel(R) Core(TM) i5-10300H, 8GB DDR4, NVidia GeForce GTX 1650 4GB GDDR6
Kuper
16
Years of Service
User Offline
Joined: 25th Feb 2008
Playing: Planescape:Torment
Posted: 30th Oct 2023 20:45
I if you need polygon smoothing try SET OBJECT SMOOTHING command
It will recalculate smoothing groups based on polygon normals. It will take time if your object is complex, so you better switch to .x format with precalculated smoothing.
Mage
17
Years of Service
User Offline
Joined: 3rd Feb 2007
Location: Canada
Posted: 30th Oct 2023 21:16
If the model does not animate, which probably is the case being .3DS then import it into Milkshape3D, maybe do a weld (with or without auto smoothing set depending on your desires) then export it to X. The editor is free.

The X exporter in MS3D does not support weighted vertices (used in animations). So if you needed that you may need to save as an MS3D file, then use Fragmotion to export it to X Format instead.

Alternatively, DBP allows loaded objects to be saved as DBO, there is a command for that SAVE OBJECT. You could use an older version of DBP to convert the media for a newer DBP version. Etc.

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!
TinTin
18
Years of Service
User Offline
Joined: 16th May 2006
Location: BORG Drone Ship - Being Assimilated near Roda Beta (28)
Posted: 31st Oct 2023 10:33
Well Thanks Guys

Unfortunately, I took Scorpyo's advice and tried several online converters to output my file into X format must have gone through all of them even downloaded a few installable converters (you know, the free ones that you need to send money if your object has more than one vertex!) anyway if things weren't bad enough the converters did appear to convert the 3ds file into an X file but for some reason all the materials were missing and more obvious some of the polygons to. I had to manually modify the limb colours to give the displayed object some suitable colour, texturing will be looked at when I get the displaying working first.
I've checked the 3ds models on several different online viewers even my test object and they all seem to be displaying perfect?

None of these objects are animated and will eventually be static objects. but for now, I just want them to display correctly, I'll then look into texturing, sound and animations next.
Typically, the objects are basically flat polygons not sharing corner points as that caused smoothing even though smoothing was set to 0% and disabled.

The Application is just a glorified screen saver that moves the camera around several different environments. on a constant loop.
load random environment, pick random start point, perform pathfinding to random end point then loop, most of the environments are totally static with the exception of flowing water, smoke & particle effects.
Sound is supported but is usually disabled (gets annoying after an hour of passing the same steam pipe!)

James H, Thats a plan unfortunately I can't activate my CD version and it was Lee who suggested I download the free version from GIT! btw. I've noticed a few commands that F1 doesn't display or give syntax for, I don't need them, but they would be useful 'Message Box' and GET DMEM AVAILABLE crashes the application now where the others don't?

Searching the forums is what I've been doing for several days now, a good part of the info is either wrong (i.e., not what I'm looking for) or no longer has working links, 20+ years full of posts from who knows how many subscribers

newsflash for some reason, my new app has just decided to stop working. it compiles ok no errors but won't run?

Guess I'll need to reinstall DBPro any Ideas what the best (stable) version is, I don't need the plugins?

Thanks Again Guys.
TinTin
18
Years of Service
User Offline
Joined: 16th May 2006
Location: BORG Drone Ship - Being Assimilated near Roda Beta (28)
Posted: 31st Oct 2023 15:18
Found the bug

After copying my initialization code into an initialization function my Width & Height variable definitions went awol these were being used to SET CAMERA ASPECT(Width / Height)
as these had disappeared, I can only guess they both had a value of zero, which the compiler never picked up on 'Undefined Variable' or 'Divide By Zero' so Zero/Zero = Zero or Infinity and Setting the ASPECT to whatever! allows me to create spheres MAKE OBJECT SPHERE Obj, 1000, 180, 360 as many as I want, without using any polygons or points
World Wide Size 3D Game Level coming to a consol near you soon

James H
17
Years of Service
User Offline
Joined: 21st Apr 2007
Location: St Helens
Posted: 31st Oct 2023 15:53 Edited at: 31st Oct 2023 15:55
Quote: " I can't activate my CD version"

I was referring to DBP's predecessor DBC which is why I stated "classic", when originally released TGC sold hard copies of DBC on the high street - going back years now as it was directx7. When DBP was released it was originally directx8 and progressed from there to directx9c as there where many different versions of directx9. DBC has the converter program not DBP. They are 2 different BASIC languages.

I do not have a hard copy of DBP I bought it online via TGC directly BUT as I recall whatever version you have all you needed to do to activate it was to copy over the certificates folder from either your backup(which you obviously won't have) or Git to the DBP - with a fresh install of DBP that folder does not exist but did once activated online. Once that service was no longer available we all backed up our certificates folder as the Git version was not available at that time. My install is the online version from my TGC account and can confirm that the certificates folder available on Git does work as I have described - it goes in The Game Creators>Compiler folder directly.

F1 works fine here for help files. The best IDE I ever used was Indigo by user Ballad(should find it with forum search if it is still available), maybe you will have better luck there? Just a possibility is all. There are a number of available IDE's some of which there are several versions such as the synergy editor for example, another IDE was one called codesurge.The helpfiles where never at any one point 100% accurate from what I recall - apparently this is common or at least was back then amongst coders.

DMem is video memory - even when it was working it will crash if you call it every frame, you are supposed to call it once and it would take a good while to return a value, but yes it no longer works and crashes as clearly new hardware would require an update to fix that. It has been like this since at least 2010 if not earlier. This is a clear example of the help files not reflecting changes that it should.

In terms of stability everyone has a different view based on what they are doing with it. For example some plugins would or would not work(aside from conflicts when having some plugins in use at the same time). I cannot recall if I ever even used the Git version, I probably did at one point at the very least checked it out as is. Finding said updates is another matter lol. Last release was U7.7RC7. User Evolved who has done the best free examples of shaders uses 6.9 with only 1 plugin(jGfx by user revenant chaos) for the advanced lighting system project is one example. When TGC started making their next game maker at the time, they themselves went back to U7.1 I think it was - at first - and then later switched languages altogether. In essence there is no stable version per se, you had to find your feet on your own in this respect, every update had different benefits and caveats alike. Evolved's stuff is still available and works fine here, however the projects can be very large with long compile and load times. It can be found here http://www.evolved-software.com/

There was a newer update I think by user Rudolpho that partially gave us some directx11 support. I forget if it is the same user or another user but there was also a newer version called 9Ex that allowed stuff like changing resolution on the fly and generally was supposed to bring DBP up to date with the most relevant version of dx9.

TGC also produced FPSCX10 using an in-house version of DBPX10 ie using directx10(FPSCX9 was written in standard DBP with a small number of plugins included to deal with lightmappng and CPU usage data for benchmarking), this FPSCX10 version was called the X10 modders kit but that is no longer available.

For what you are doing I would simply think about starting from scratch in DBP using .x or even AppGameKit if you are unable to get it going from your own source. There is never any guarantee of getting projects that once worked up and running again when the products used to create it no longer get updates. Updates are a general requirement for any software to remain relevant.

I actually have full backups of the stuff I mentioned but obviously I have zero permission to distribute so cannot provide any sadly. Odd really as I have lost the vast majority of my own DBP projects due to HD failures, spilled coffee and such on my other HD backups and the only 2 USB sticks I had from that time eventually failed, yet I have a boat load of the DBP software verssions/plugins/updates!!! My own fault clearly.

These days I use AppGameKit, 3d is nothing compared to DBP among other things BUT it is at least currently being kept relevant with updates for the time being at least. The 3D is not bad though, on a basic level that is - things are handled somewhat different as it is NOT direct x but OGL/Vulkan renderers.

Beyond that I don't think I can offer any more useful info and yes I am aware that I just muddied the water a whole lot more for you, but don't let that stop you!

Best of luck


EDIT; aaaaand it took me so long to type that up while cooking that I did not see your last post
Win 10 Home 64, Intel(R) Core(TM) i5-10300H, 8GB DDR4, NVidia GeForce GTX 1650 4GB GDDR6
Raven
19
Years of Service
User Offline
Joined: 23rd Mar 2005
Location: Hertfordshire, England
Posted: 2nd Nov 2023 22:38


Swap out the default model for your .3ds... does anything happen?
Ideally it would be easier to debug with the model itself, just saying
TinTin
18
Years of Service
User Offline
Joined: 16th May 2006
Location: BORG Drone Ship - Being Assimilated near Roda Beta (28)
Posted: 6th Nov 2023 00:28 Edited at: 6th Nov 2023 00:33
Hi Guys

Hi Raven, the .3DS objects are my default models, this is a sort of screen saver application where I have a collection of .3ds which get swapped over every minute or so as the camera randomly navigates between points within these objects, unfortunately I can't supply these but even a basic .3ds box fails?

It is Nuts.

If I load the object into any one of those converters or even MilkShape it displays Ok, but if I export it to .x it all gets messed up!
random polygons become transparent or disappear altogether, ceiling and floor polygons seem to be overwriting everything as if depth sorting is off. the layers (materials) are all missing though I
can manually fix this by just setting the layer colour.

I've Just got back into DBPro so still refreshing my memory of all the different ways to achieve my goal as well as discovering some commands that appear to no longer work 'ABS()' for instance, seems to crash the application (an easy fix!) but 'SYSTEM DMEM AVAILABLE ()' isn't so easy; The IDE also appears to be playing up! and HELP seems to be missing some commands? I thought this would have been all fixed by now!

I'm looking into creating an exporter to convert .3DS into .DBO to solve this issue so if any of you guys know of a good example, I'm all ears. I'd like to code this, that way I can make suitable optimisations as and when needed.

Who Said Programming was Fun
Mage
17
Years of Service
User Offline
Joined: 3rd Feb 2007
Location: Canada
Posted: 6th Nov 2023 05:06
Milkshape3D: Make sure you are using the DirectX JT exporter. You should also double check if your polygons are facing the correct direction, otherwise you will need to reverse the vertex order on each polys that aren't. Try the flat shaded view option, any black polys are facing the opposite direction. This can allow you to find polys facing the wrong direction (back facing). Any polygons facing the wrong direction (back facing) will appear invisible in DBP under default conditions. The SET OBJECT command has a cull flag that when set to 0 will cause back facing polygons to be drawn to screen.

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!
TinTin
18
Years of Service
User Offline
Joined: 16th May 2006
Location: BORG Drone Ship - Being Assimilated near Roda Beta (28)
Posted: 6th Nov 2023 22:23
Nah Sorry Mage, Milkshape3D is no longer free, and I've decided to attempt creating my own exporter to convert .3ds to .dbo or .x format, it doesn't need to handle any complex models just the ones I have and this would enable me to modify the code to guarantee the exported files work with the current version of DBPro.
It looks like this may be the main issue as I've tried a few simple samples from the website that also don't work as expected!
Mage
17
Years of Service
User Offline
Joined: 3rd Feb 2007
Location: Canada
Posted: 6th Nov 2023 23:51
No I am mistaken. It never was free. I forgot I bought a license like 20 years ago.

You should be able to use fragmotion for this, it is free but the author last I heard had a misguided religious thing and programmed it so you had to type the whole "Lords Prayer" each time you wanted to load the app. Who does this?

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!
Scorpyo
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: italy
Posted: 9th Nov 2023 08:47
Dele 3D from delgine software is totally free.
After install, you can download and add Import/Export plug-ins from the site.
There is a 3ds import plug-in and .x import and export plug-ins
Cheers
TinTin
18
Years of Service
User Offline
Joined: 16th May 2006
Location: BORG Drone Ship - Being Assimilated near Roda Beta (28)
Posted: 9th Nov 2023 23:31
Thanx Scorpyo,

I'll give that a try, not sure if it'll fix the issue though, while looking elsewhere for a solution I've managed to upload my file to several online viewers and my '.3ds' file appears as expected as soes the converted '.x' files, none appear to work in DBPro I've went through all the settings, came up with checklist code that sets the limb colours based on limb.
name but even using a case default with a luminous colour some limbs still don't display this colour? but I can hide each of them? (wierd!)

cheers

Login to post a reply

Server time is: 2024-11-21 08:34:06
Your offset time is: 2024-11-21 08:34:06