Robmaister / SharpNav

Advanced Pathfinding for C#
sharpnav.com
Other
537 stars 129 forks source link

How do you load Collada data and generate a Mesh? #1

Closed SallyDT closed 10 years ago

SallyDT commented 10 years ago

How do you load Collada data and generate a Mesh?

Robmaister commented 10 years ago

Loading a Collada file is outside the scope of this library. You need to parse out the raw geometry from the file before sending the data to SharpNav. Heightfield accepts data only as an array of Triangle3 structs at the moment. In the near future I'm going to add a few other methods that accept float[], Vector3[], and indexed versions of both of them.

As for the rest of the process, you create a Heightfield class, send it all your geometry, run the filter functions, create a CompactHeightfield from it, use that to generate regions, create a ContourSet from it, simplify the contour, then generate a Mesh and a MeshDetail from that.

We're still in the process of porting over the Recast source and C#-ifying it, so the public API isn't stable yet and won't be for at least a few more weeks. So far, everything up to region generation has been tested and works well, but there are some issues around the region/contour area that I'm working through right now.

I would recommend waiting for at least 3 weeks when all of that should be working and stable. You can take a look at the Example project to see how we're currently doing things (though be aware that it's a very hacked together project that I'm just using to visualize data for debugging purposes). The Examples project will likely also be modified heavily in the next 3 weeks.