Jump to content
  • Advertisement
Sign in to follow this  
masha2

3d navigation algorithm

This topic is 2747 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi

I'm working currently on application that needs 3d navigation and I wonder what are usual logic behind 3d GPS navigation application?

Currently my implementation is like this:

1.Load static size area (4 km)
2.Navigate through the area using frustum culling.
In parallel check if we are coming close to area boundaries, if yes then start thread to
load in temporary buffer new area relative to the current position . When the thread finished
the job , copy to the drawing buffer .

What do you think?


I didn't see it in action yet, cause other parts of the application needed to run the whole thing aren't finished yet, so I'm
kind of nervous how it will work out.

Thanks a lot in advance

Share this post


Link to post
Share on other sites
Advertisement
This is geometry streaming, and it works, ive done it a little, if its only low poly information it should work quite well, its only once the data gets too detailed it can be a problem, you dont even really need to load in a static sized area, you can literally stream it per frame as the user sees it, and throw it away as the data store gets too big, last seen areas get ditched from memory first.
Megatexturing and voxel raycasting both do this. If you still want to do the "buffer a larger area and stream in large chunks" that idea should work too, but im just saying your computer can actually stream pretty well just instantaniously.

Share this post


Link to post
Share on other sites

This is geometry streaming, and it works, ive done it a little, if its only low poly information it should work quite well, its only once the data gets too detailed it can be a problem, you dont even really need to load in a static sized area, you can literally stream it per frame as the user sees it, and throw it away as the data store gets too big, last seen areas get ditched from memory first.
Megatexturing and voxel raycasting both do this. If you still want to do the "buffer a larger area and stream in large chunks" that idea should work too, but im just saying your computer can actually stream pretty well just instantaniously.


Thanks! You gave me a lot of info just in few sentences. My decision to go with "buffer a larger area and stream in large chunks" was because of significant data preprocessing I need to do .
So I think my solution is best from all others you mentioned. Of course megatexturing would be an option too, but instantaneous streaming can be problematic and voxel ray casting even less appropriate.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!