So 2 weeks have already passed and we are into the third week now. Last week I shared about my progess about polymesh generation. The next step was basically polymesh detail generation, which was pretty simple and did not require much effort. Along with that, I managed to draft a PR, over which the mentors suggested a lot of changes, mostly related to code styling and naming of variables, members, functions and classes. I edited the code, and since there are many variables involved, that process took some time (Yeah, I obviously tried Find and Replace XD).
Also, I added functions to generate polymesh as per the properties of the actor/agent. For example, set_actor_height(float h) would generate polymesh such that polygons with verticle space of size less than actor's height 'h' would not be add to the polymesh. Similarly, set_actor_radius(float r) does the same work, but here regarding area covered by the actor. Some other functions included are: set_actor_max_climb(), set_actor_max_slope(), etc...
Also, I have started working on off-mesh-connection-tool which would connect separate geometries (example islands). Hopefully, by this week I would be able to complete this feature. Also, I aim to add NavMeshQuery class this week..
If you compare both the images, the first is the polymesh generation for actor_height = 1.0 while second is polymesh generation for actor_height = 10.0. As suggested by the red marker in the second image, the space between the roof and floor of the marked part is less than 10 units, so for actor_height = 10, it was not included in the generated polymesh. In a similar way, other functions also affect the polymesh.
PS: sorry if you don't like the colours used, I was just having some fun XD.
Thank you. Have a great and safe week!