New features:
- Polygon Select Mode
- Automatic neighbor calculating
- Path finding preview
- Nav-Mesh file format ( *.rnm)
I made some more additions to the editor, mostly to make creating these meshes easier. I had to do all the work associated with making a model editor, except my "polygons" can have up to 15 sides ( expandable to 18). All of the navigation data is stored in the one of the most memory-efficient way possible IMO.
I also got around to making a file-format to store the navigation-meshes in! I call it "Ruined Navigation Mesh" format - original and ironic I know. These files are also VERY size efficient.
For all of you out there familiar with XNA, I've written my own importer and processor...
Ruined-Navigation-Mesh-Format:
Ruined-Navigation-Mesh-Format:
Offset
|
Description
|
Size
|
0x00
|
Header "rNavMesh"
|
8 bytes
|
0x08
|
Number of Vertices (v)
|
2 bytes (ushort)
|
0x0A
|
Number of Polygons (p)
|
2 bytes (ushort)
|
0x0C
|
Vertices
|
12 bytes (float3) * p
|
0x0C * v * 12
|
Polygons -
xp vertices ( ushort[] )
yp neighbors ( ushort[] )
|
Sp = Sp-1 + 4 + xp + yp
Data stored in memory as a single ushort[]
|
One of the great things about just reading data directly from the file is that XNA can compress *.rnm files automatically!
So in other words, all that's left to do with this is to actually make the meshes, and program some AI to use them :P
Path-finding, Initial Polygons |
Path-finding, Found Path |
Note : Polygons are stored as a single ushort[] in memory, the actual polygon's data is extracted from this array (Yay! bit-wize Shifts)