[edit]
http://Danjeruz.servegame.com\DOwnloads\meshstreaming.zip
[edit]
I just thought id post about this....
Ive designed a lil system i think y'all might find useful.
what it does is this:
1) Load mesh using Loadmesh command
2) Create a streamable mesh out of it using CreateStreamedMesh()
3) whenever an update is required, do
UpdateMesh(streamedmesh,positionentity,distance)
of course, this isnt designed to work realtime, every frame, but its good enough to run it every second or so.
What it does is store the entire mesh in an array, and upon updating, recreates only the parts of the mesh within Distance of PositionEntity...
Ive added this idea to Supernova and have managed to speed it up by almost 100% again by killing collision maths. (this is what i designed it for)
Now, it has a couple of issues... like, Lightmapping doesnt work with it. but normal meshes seem to work fine. Of course, Lightmapping is quite widely used, so itd be great to see if someone fixes the issue. The other issue is that with very large meshes, theres a slight delay when the mesh is rebuilt. Thats why it should not be used totally realtime, but say, once a second, or when a player reaches the edge of the loaded section
Well, what do you lot think of the idea? its pretty much complete, just sitting at home waiting for me to plop up here for y'all!
http://Danjeruz.servegame.com\DOwnloads\meshstreaming.zip
[edit]
I just thought id post about this....
Ive designed a lil system i think y'all might find useful.
what it does is this:
1) Load mesh using Loadmesh command
2) Create a streamable mesh out of it using CreateStreamedMesh()
3) whenever an update is required, do
UpdateMesh(streamedmesh,positionentity,distance)
of course, this isnt designed to work realtime, every frame, but its good enough to run it every second or so.
What it does is store the entire mesh in an array, and upon updating, recreates only the parts of the mesh within Distance of PositionEntity...
Ive added this idea to Supernova and have managed to speed it up by almost 100% again by killing collision maths. (this is what i designed it for)
Now, it has a couple of issues... like, Lightmapping doesnt work with it. but normal meshes seem to work fine. Of course, Lightmapping is quite widely used, so itd be great to see if someone fixes the issue. The other issue is that with very large meshes, theres a slight delay when the mesh is rebuilt. Thats why it should not be used totally realtime, but say, once a second, or when a player reaches the edge of the loaded section
Well, what do you lot think of the idea? its pretty much complete, just sitting at home waiting for me to plop up here for y'all!