Best way to render complex model

Started by
4 comments, last by BlackJoker 10 years, 11 months ago

Hello,

I have an interesting question on my opinion and I don`t know an answer yet.

I want to hold in memory and render a models which consist from big amount of different meshes (for ex. a big space ship) It has a lot of decks and dirrerent stuff inside and outside. Of course I want to have possibility to remove and add any item to/from this ship in any time.

Each mesh has it`s own matrix. So, when I start moving a ship I had to multiply all matrices to move all objects correctly. But If I have a lot of matrices I could not do everything in time because multiplying all matrices could take a lot of time and in that case I will have lags.

If I merge all meshes in 3ds max I loose possibility to move separate objects.

So, my question is: what is the effective render algorithm if I want to have models consists from huge amount of other objects?

I don`t want to have a monolithic ship or any other object. I want to have possibility to remove any part away in any time.

Who has the same problem, please, say which way you choose to render meshes!

Advertisement

Do occlusion culling. Do not render/update the objects that are not visible.

For example the inside when you are on the outside of the ship (and vice versa) isn't visible so shouldn't be rendered/updated.

Also, if you are on the inside, only render the decks/objects that you can actually see.

Google a bit for different occlusion culling algorithms.

There is no magic bullet for this so compaire different solutions and pick the best for your situation.

Also ask yourself if you really have to move everything at any time. There is a reason you cannot do that in most (AAA) games.

Yourself

Thanks for clarification. I forgot for occlusion algorithms, but I want to ask is occlusion will work for objects, which are inside model and not behind it?

You can try out a BSP tree culling, and then start having Occlussion culling if that is needed. and i dont know how many objects you are having in your sceen, but you can easily optimize the

matrix multiplication with SIMD & Parrarlism. this will probably have a good effect for you.

But as the previous answer said, is that, there is no "common" way for this, try out some stuff and find the best solution for yourself.

"There will be major features. none to be thought of yet"

you really have 2 types of scenes, exterior, and interior.

for exterior, you should have just the meshes that can been seen from outside.

for interior, its basically a first person shooter level kinda thing. there you'd only have the meshes visible from a particular area or room.

so you'd have one set of meshes for exterior, and another for each interior scene. never would you try to draw it all.

make a copy of your master model and split it up based on which scene it belongs in. then you'd have 2 basic types of drawing routines, one for exterior, and one for interior scenes. almost 2 graphic engines, one a space flight sim, and the other a first person shooter.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

Thaks for clarifying this problem. Now its more clear.

This topic is closed to new replies.

Advertisement