211 Commits

Author SHA1 Message Date
Graham Pentheny
b7a83e0afb Fixed rule of 3 violations in many places.
* Added virtual qualifier to a few destructors in subclasses.
* Removed a few empty destructors that didn't need to be explicitly defined.
* Fixed a few typos
* Removed unnecessary empty virtual destructors in some classes with parent's who derrived from a class with a virtual destructor
2016-01-20 11:57:32 -05:00
Jakob Botsch Nielsen
a31da928ba Add settings storage to geometry sets
This adds the ability for geometry sets to store build settings that can
be automatically applied when they are loaded. This should allow sharing
of .gset files to demonstrate problems with certain settings on certain
files. It also allows people to diagnose problems more easily by being
able to dump their own triangle meshes and settings and load them in the
demo, with all of its visualization options. .gset files can be created
from the current mesh and settings by pressing the 9 key, which will
generate it in the same folder as the input mesh.

Also converts more of the demo to use STL.
2016-01-17 20:31:09 +01:00
Ben Hymers
a25b018be9 Merge pull request #76 from grahamboree/warnings
Removed a smattering of compiler warnings
2016-01-14 15:28:02 +00:00
Graham Pentheny
66c6060e95 Fix a bunch of compiler warnings
* Removed some unused vars
* Fixed some signed/unsigned comparison mismatch warnings
* Cast some int's to size_t when appropriate
* Removed some redundant casts
* silenced warnings about implicit conversions that lose precision
* changed origMousePos to an array of ints to match mousePos
2016-01-10 22:41:38 -05:00
Jakob Botsch Nielsen
09080b5272 Fix time measuring on Windows
The demo relied on the build context returning accumulated times in
microseconds. On Windows this was using QueryPerformanceCounter directly
which has a higher resolution, thus returning wrong measured times. We
now report the accumulated times in microseconds on all platforms.
2016-01-10 18:43:34 +01:00
Graham Pentheny
e5f9f21b30 Removed FileList class and replaced it with std::vector<std::string> in RecastDemo 2016-01-07 18:34:18 -05:00
Graham Pentheny
512ec1fdfd Unit testing framework.
* Tests live in a "Tests" folder alongside the other components.  Inside the "Tests" folder, tests are split into folders by the component they test.  For example, the example unit test of "rcVdot" (which is implmemented in Recast/Recast.h) lives in "Tests/Recast/Tests_Recast.h".
* Uses the Catch testing framework
* One example test of "rcVdot"
* Tests are run on Travis and Appveyor after every build.  Failing unit tests will fail the build in both case.
* Added instructions on running unit tests to the readme
2016-01-06 18:22:39 -05:00
Graham Pentheny
2eb3abfb60 Updated RecastDemo to SDL2
* Renamed a bunch of variables in main.cpp to be more descriptive.
* Removed unnecessary SDLMain.h and SDLMain.m OSX objective-c class as well as the plist, strings, xib and icns files, which are not needed.
* included cstdio in imguiRenderGL since SDL2 doesn't do it for us.
* Updated premake5 script to support SDL2 and to set the debug directory, as well as copy the SDL2.dll to the target directory on Windows.
* Updated readme with more descriptive, platform-specific demo project setup instructions
* Updated appveyor build script to build vs2015 as well.
* Updated Travis build script to build SDL2 from source, because they use Ubuntu 12.04 which doesn't have the libsdl2-dev package in its repositories.
2016-01-04 18:56:51 -05:00
Rafael Stahl
15025e8519 handle the case when allocSpan fails to allocate memory. adds bool return types to rcAddSpan, rcRasterizeTriangle and rcRasterizeTriangles 2015-12-18 16:41:02 +01:00
grahamboree
45b36f4d75 Removed redundant dtSqrt function and replaced calls to it with dtMathSqrtf 2015-01-03 16:00:00 -05:00
grahamboree
0482a3104c Fixed potential memory leak deserializing an InputGeom. 2014-12-24 15:35:36 -05:00
grahamboree
ce4c63787b Fixed a potential memory leak when reading a mesh file. 2014-12-24 15:34:01 -05:00
grahamboree
91fbf05ec3 Uninitialized pointer in TempObstacleCreationTool 2014-12-24 15:32:50 -05:00
grahamboree
42afde6273 Fixed potential memory leak when loading test case files. 2014-12-24 15:29:47 -05:00
grahamboree
35ac315b70 Fixed potential memory leak when loading font file. 2014-12-24 15:22:23 -05:00
Mikko Mononen
65b844170f More verbose explanation of tile bounding box. 2014-12-18 12:07:12 +02:00
Mikko Mononen
0d48004dfb Merge pull request #29 from hgaiser/master
Add save/load functionality for TileCache
2014-12-13 13:50:38 +02:00
Mikko Mononen
56b6e1173d Merge pull request #58 from Kromster80/CopyPasteFix
Copy paste fix
2014-12-13 13:48:43 +02:00
Kromster80
dfed678d3d Fixed copy/paste bug 2014-11-28 18:40:53 +03:00
Kromster80
96ff08a255 Removed unnecessary assignments 2014-11-27 22:41:28 +03:00
axelrodR
8816e71535 Merge branch 'master' of https://github.com/memononen/recastnavigation 2014-06-19 17:04:14 +03:00
Mikko Mononen
3cb87f2432 Merge branch 'master' of https://github.com/memononen/recastnavigation 2014-06-13 13:25:07 +03:00
Mikko Mononen
a89bb843d7 Added new method to partition heighfield
- added layer based heighfield partitioning
- the method is a bit slower than monotone partitioning, but does not
suffer from the long thin ploys
- the method partitions the heighfield into non-overlapping areas, but
does not try to resolve holes
- improved contour hole merging so that it can properly handle all
kinds of holes
- improved polygon triangulation to handle overlapping segments
- improved small and long polygon detail mesh generation
- updated samples to include all 3 partition methods and little
documentation to help to choose between them
2014-06-13 13:25:01 +03:00
axelrodR
a246038b2a Merge branch 'master' of https://github.com/memononen/recastnavigation 2014-05-27 23:30:28 +03:00
Mikko Mononen
d477061f83 - fixed missing index in calls to get query filter
- fixed bug in dtCrowd:addAgent getNearestPolygon()
2014-05-24 18:48:43 +03:00
Hans Gaiser
247c1f9b41 Add save/load functionality for TileCache 2014-04-29 13:07:54 +02:00
axelrodR
9b73c5cf51 Merge branch 'master' of https://github.com/memononen/recastnavigation 2014-04-23 14:53:04 +03:00
Mikko Mononen
4bcfb17f57 Merge pull request #22 from jadamcze/windowpos
Constrain the window's aspect ratio
2014-04-11 11:42:33 +03:00
Jonathan Adamczewski
1d05c18c00 Used read length (and suppress warning) 2014-03-24 00:16:35 -07:00
Jonathan Adamczewski
88484cbd7d Remove unused variable 2014-03-23 23:57:46 -07:00
Jonathan Adamczewski
c98c31f33b Constrain the window's aspect ratio 2014-03-23 23:53:57 -07:00
axelrodR
232187b9d6 changed the default options of the pathfinder to 0 (i.e. no raycasts), changed the the tester tool to display all points along the sliced path (a better default for non flat terrain). 2014-02-27 14:21:09 +02:00
axelrodR
5686f4a83c changed the NavMeshTesterTool so that pathFind and straightPath use the default options (i.e. not any-angle) while sliced path uses the any angle search. 2014-02-26 21:30:24 +02:00
Mikko Mononen
6702143bc1 Fix for broken raycasts, changes how findNearestPoly works, slight API change
- test case supports raycasts
- changes how findNearestPoly works directly over polygons
- API change: findNearestPoly has additional parameter
2014-02-11 20:32:00 +02:00
Mikko Mononen
bc964f9994 Fix for U-turn path case 2014-01-21 19:15:08 +02:00
Mikko Mononen
6469a99f11 Fixed item type in PolyRefArray from int to dtPolyRef 2014-01-19 15:32:09 +02:00
grahamboree
683acbb11c Silenced double->float conversion warning. 2013-10-14 16:38:03 -04:00
grahamboree
b493e7e6f6 Added rcIngoreUnused which can be called to ignore unused parameters. 2013-10-14 16:32:20 -04:00
Mikko Mononen
15cd962073 Adjust result height for raycasting 2013-09-25 19:53:13 +02:00
Mikko Mononen
36a967ffcd Fixed google code Issue 234 2013-09-17 21:10:14 +02:00
Mikko Mononen
943ce1b263 Fix0ring r347... 2012-10-21 16:21:47 +00:00
Mikko Mononen
4c6b604ca3 Trying to fix prunetool svn weirdness. 2012-10-21 15:51:58 +00:00
Mikko Mononen
30aed0538e Added small area selection to prune tool. 2012-10-21 15:44:57 +00:00
Mikko Mononen
de6fd8c3ef - use "cylinder distance" for nearest point in polygon
- added option for findStraightPath() to append vertices at get edge crossings
- added scale parameter for .obj loader
2012-09-05 05:57:31 +00:00
Mikko Mononen
a02cc64e4b - fixed issue 203
- fixed debug draw for partial paths
2012-06-12 03:53:16 +00:00
Mikko Mononen
64802ecd0e - Improved unconnected off-mesh connection debug draw
- Fixed connecting off-mesh links which connect to the same tile x,y but different layer
- Fixed crash in navmehs query closestPointOnPolyInTile() when the poly is off-mesh connection
2012-06-12 03:28:43 +00:00
Mikko Mononen
d2b4b09e16 - Added rcOffsetPoly() helper function to expand polygon areas 2012-06-02 10:13:59 +00:00
Mikko Mononen
00edec6ffb - dtCrowd API Changed!
- finalizeSlicedFindPathPartial() returns best if no existing match found
- refactored crowd move requests
- removed adjustMoveTarget()
- added requestMoveVelocity() and resetMoveTarget()
- improved path replanning robustness
- added move visualization to crowd tool
2012-05-31 09:07:54 +00:00
Mikko Mononen
6aa8b1d989 Fix for missing tiles in navmesh. 2012-05-19 09:21:08 +00:00
Mikko Mononen
76e2dcfc6d Fix for issue 197. 2012-04-01 10:07:21 +00:00