Jump to content

All my products and services are free. All my costs are met by donations I receive from my users. If you enjoy using any of my products, please donate to support me. My bare hosting costs are currently not met so please consider donating by either clicking this text or the Patreon link on the right.

Patreon

Recommended Posts

Posted

Here's another version 1 of a logo... The texture works fine for this one in GameEx.

Cool, thanks.

Sorry, I have not had a chance to look at the issue with the gameex logo yet. Although got your upload.

  • 3 weeks later...
Posted

Although I'm not the "GameEx developer" I wrote the basic model loading and rendering code and did the conversion of 3D Arcade models to .x format (which was a long and tedious job BTW). It's an idea I was nagging Tom about for a while so in the end just wrote up a demo to show him (I have written an engine in MDX so have the great fortune of being able to fast track ideas by presenting code lol). The main issue was with scaling the models so they can be rendered in the same area which is probably why it's a bit slow loading large models, as it needs to go through the vertex data, calculate the centre based on it's radius and then scale it to a certain size and then shift the centre to be exactly centre to the model. The arcade models for example have their point of origin at the base of the model and of course not all models are created to the same scale so all this was necessary just to display a rotating model. Also the models often contain textures with alpha channel so they needed two rendering passes to render correctly. The actual demo I wrote renders the models fine so I think there is a problem with the render target Tom is using. That or his render states are such that they are not rendering as nicely as they could be. There are other optimizations so poly's are smoothed around their edges and giving the textures linear filtering etc. so I hope Tom does a bit of an investigation in that. Even so with my demo I'm sure it was a decent amount of work on Tom's part to implement into GameEx so I can't take all the credit for it. But I'm chuffed you and others seem to like it.

Anyway that particular Atari 2600 model you've converted to .x does indeed look great although there does seem to be a stray poly around the 3rd switch from the left. You can see it more clearly using the DirectX SDK's mview .x file model viewer. I'll attach the program so people can test their models without having to load up GameEx first.

Thanks again Tom for fixing the .X texture displays! Re-reading HeadKaze's post made me wonder... If the preparation work of the .X files is a big time hit, could Tom create a way to pre-compile the .X files and save them so that on future runs of GameEx we wouldn't see the calculation time hit? (I'd even do this as an outside step to GameEx if necessary) I don't know if the .X file format supports flags of some sort that could be set so GameEx could determine if the file was already prepared... If not, you could write out a dummy Material in the .X file and use it as a flag?.?.?

Would this speed up display? enough so that I can keep my 35MB GameEx logo?

Posted

Im not sure off hand. It may be possible to cache some of it but Im thinking not. Ill have a look.

Tom - I wasn't really thinking of cache... Headkaze had mentioned that after the .X file was loaded,

The main issue was with scaling the models so they can be rendered in the same area which is probably why it's a bit slow loading large models, as it needs to go through the vertex data, calculate the centre based on it's radius and then scale it to a certain size and then shift the centre to be exactly centre to the model
.

It's these calculations that I was thinking about doing outside of GameEx (or just once in GameEx), and then outputing a new .X file that has all of the vertex already scaled and centered. I thought that you could use a flag or dummy material in the new .X file to indicate to GameEx upon loading it that the scaling and centering would not be required, thus speeding up the rendering. I would use this new .X file in the theme as opposed to the original .X file.

I'm not sure if this is possible, or if the calculations are really the issue, or if they are even in the GameEx SW or linked in library, or the big time hit is simply the file I/O for 35MB...

Thanks for thinking about it! I look forward to hearing about what you find out.

Posted

There is a Mesh.Save() method so Tom might be able to do the pre-processing, save it out as an .x again and mark it as optimized. Next time it will not need to loop through the vertices. I still think there will be a delay though as it is a large file.

Guest
This topic is now closed to further replies.
×
×
  • Create New...