# ThomasYoung

Member

5

118 Neutral

• Rank
Newbie
1. ## Blog post: Measuring memory allocation cost, by eliminating it

Posted this, about a technique I've used at PathEngine for measuring overhead from dynamic memory allocation: http://upcoder.com/15/measure-memory-allocation-cost-by-eliminating-it   Thoughts and feedback welcome.
2. ## Using infinitesimal offsets to avoid mesh special cases

Doesn't actually matter, as long as it's a finite range. :D But you can find this information, in the case of PathEngine, here: http://pathengine.com/Contents/ProgrammersGuide/WorldRepresentation/PathEngineCoordinates/page.php   For info, the range supported for points in PathEngine is based on the need to apply expansion shape offsets, and mutliply up, for side tests and so on for *line intersections represented as fractions*.
3. ## Using infinitesimal offsets to avoid mesh special cases

Not so.   Remember that the un-offset points (from which you must choose p1 and p2) are on a discrete grid, and also (importantly) have a restricted range.   Try choosing some pair of points p1 and p2 to construct a small but non-zero offset from that grid intersection. The range limit on these points means that you end up with a fixed range of integers to work with, and can therefore only construct a *finite* offset.
4. ## Using infinitesimal offsets to avoid mesh special cases

Sure, there *can* be situations where you get a lot of these special cases. But I'm really just talking about motivation there, and the possibility for such situations doesn't change the point of the article, I think.   Note that, even in situations with *lots* of vertex crossing, you can still apply the technique and end up with simplified traversal code.
5. ## Using infinitesimal offsets to avoid mesh special cases

A blog post about a technique I used at PathEngine to eliminate mesh special cases, for stuff like mesh traversals: http://upcoder.com/10/infinitesimal-offset-meshes/   PathEngine does something a bit different from traditional nav mesh pathfinding, because we do stuff like projecting obstacles on to the ground, and actually generate a corresponding set of motion space boundaries on top of our 'ground meshes'. The infinitesimal offsets technique described in that post has been particularly important for us in making this all work properly, but I think the technique can also be applied usefully to more direct nav mesh pathfinding situations..   Feedback appreciated!   Thomas