785 Commits

Author SHA1 Message Date
Graham Pentheny
baa1a5a858 Merge pull request #184 from hymerman/slideshow-removal
Remove SlideShow, and stb_image
2016-02-17 11:00:52 -05:00
Ben Hymers
13edcb54ce Update stb_truetype to latest version 2016-02-17 13:16:59 +00:00
Ben Hymers
aac9ae6e11 Remove SlideShow, and stb_image 2016-02-17 13:14:34 +00:00
Jakob Botsch Nielsen
8378805d35 Merge pull request #180 from Janiels/more-text-and-warnings
Fix warnings and increase demo text pool size
2016-02-16 13:20:47 +01:00
Jakob Botsch Nielsen
e30a6635a2 Fix warnings and increase demo text pool size
Fix three warnings added in fc5df2c, and increase the text pool size in
the demo. This would frequently be overflowed, even just by building
with the default settings and expanding the log.
2016-02-16 10:27:18 +01:00
Ben Hymers
1f97552d02 Merge pull request #177 from hymerman/contributing-screenshots
Add note to CONTRIBUTING doc to mention screenshots and debug draw
2016-02-15 21:31:38 +00:00
Ben Hymers
5098d88ee8 Add note to CONTRIBUTING doc to mention screenshots and debug draw interface 2016-02-14 20:08:58 +00:00
Jakob Botsch Nielsen
8259fe6763 Merge pull request #176 from hymerman/contributing-doc
Add CONTRIBUTING.md
2016-02-09 18:59:00 +01:00
Ben Hymers
f0c09d7583 Add CONTRIBUTING.md
Contains a first pass of contributing guidelines and code of conduct

Fix #174
2016-02-09 17:52:55 +00:00
Ben Hymers
0a9e36d91b Merge pull request #175 from Janiels/fix-107
Add API to query polygons in batches
2016-01-27 15:18:04 +00:00
Jakob Botsch Nielsen
fc5df2c6fd Add API to query polygons in batches
This adds a version of queryPolygon that takes an interface which is
passed batches of polygons in the search area. This new API is then used
from the old queryPolygons to collect polygons, and from findNearestRef
to find the nearest poly in an arbitrarily sized area. Previously
findNearestPoly had an arbitrary poly limit of 128 which could cause it
to return potentially wrong results.

Fix #107
2016-01-25 23:25:48 +01:00
Graham Pentheny
6ee79b25a8 Merge pull request #169 from wbierman/master
Detect, log and fail in the event of an overflow of region ids in watershed partitioning
2016-01-21 13:21:03 -05:00
Bill Bierman
e49017ac63 Detect, log and fail in the event of an overflow of region ids in watershed partitioning 2016-01-21 07:07:40 -10:00
Ben Hymers
41de583d97 Merge pull request #166 from grahamboree/rule_of_three
Fixed rule of 3 violations
2016-01-21 15:20:59 +00:00
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
Graham Pentheny
43a3a0104a Merge pull request #165 from wbierman/master
Change if to else-if to avoid unnecessary comparison
2016-01-19 17:08:03 -05:00
Bill Bierman
92bc6ce5bd Change if to else-if to avoid unnecessary comparison 2016-01-19 11:34:04 -10:00
Graham Pentheny
451c87b687 Merge pull request #160 from Janiels/settings-presets
Add settings storage to geometry sets
2016-01-18 15:58:21 -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
Graham Pentheny
f8d6d3976d Merge pull request #158 from recastnavigation/allocators-use-size-t
Use size_t for rcAlloc and dtAlloc
2016-01-15 01:03:41 -05:00
Graham Pentheny
d873a73853 Merge pull request #159 from recastnavigation/readme-issue-stats-badges
Add Issue Stats badges to README.md
2016-01-15 00:38:12 -05:00
Ben Hymers
dd02c843a1 Merge pull request #157 from recastnavigation/fix-multiple-buildcontext-definition
Fix possible compile/link error with multiple BuildContext definitions
2016-01-15 00:43:14 +00:00
Ben Hymers
5d58cf40c1 Add Issue Stats badges to README.md
The readme was looking lonely after the BitDeli badge was taken away. Here are some nice badges to replace it, which also helpfully show how active a project this has become! They show recent average time to close issues and PRs.
2016-01-15 00:40:33 +00:00
Ben Hymers
a4a97dc03f Merge pull request #156 from recastnavigation/hymerman-remove-bitdeli-badge
Remove BitDeli badge from README.md
2016-01-15 00:37:46 +00:00
Ben Hymers
551d1b250e Use size_t for rcAlloc and dtAlloc
This was already partly done by @cexikitin in #65, I'm just finishing it
off in their absence!

Closes #65
2016-01-15 00:36:18 +00:00
Ben Hymers
f117bf4a91 Fix possible compile/link error with multiple BuildContext definitions
There is a class and a struct called BuildContext in two different files,
one .h and one .cpp. Depending on how the user structures their program,
it's possible that this would cause a compile or link error, as seems to
have happened in #44. I've just renamed the struct to get around this.

Fixes #44
2016-01-14 23:57:48 +00:00
Ben Hymers
f22f431a90 Remove BitDeli badge from README.md
It appears that BitDeli is defunct; their website has had a banner about a change in the GitHub API for a long time, which is a dead link to a blog article, and none of the example stats have been updated for years. Let's just remove it!
2016-01-14 23:43:19 +00:00
Jakob Botsch Nielsen
0143337a64 Merge pull request #154 from Janiels/fix-detail-unsampled-heights
Increase recover radius for unsampled heights
2016-01-14 22:18:43 +01:00
Jakob Botsch Nielsen
b99d62047b Increase recover radius for unsampled heights
When the detail mesh sampling sees an unset height it previously tried
to recover by looking for heights of neighbors. When the heightfield was
not eroded this recovery would fail since the contour simplification
could mean that the nearest valid cell was further away than a neighbor.
We now walk adjacent cells in a spiral to find a height and do this
depending on the max simplification error.

Fix #153
2016-01-14 19:20:43 +01:00
Jakob Botsch Nielsen
f002387afc Merge pull request #151 from Janiels/fix-detail-sampling
Use flood fill for potentially overlapping polys
2016-01-14 16:48:13 +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
Jakob Botsch Nielsen
e5242b7165 Merge pull request #141 from Janiels/fix-30
Fix heap corruption when collecting region layers
2016-01-14 13:19:51 +01:00
Jakob Botsch Nielsen
5fce286267 Use flood fill for potentially overlapping polys
This changes the detail sampling to find height data by using the flood
fill method for polygons that were merged because of a border vertex
removal. This could potentially cause overlapping polygons to receive
the same region IDs which would later make the fast-path sampling in
getHeightData sample the wrong heights.

Also includes optimizations for this path and getHeightData itself.
Previously the seeding was responsible for 25% of the total time spent
in getHeightData in these cases. We now use the direction and prefer
moving directly towards the center of the polygon. This makes the
overhead of seedArrayWithPolyCenter virtually nonexistent (~2%
according to profiling).

Fix #146
2016-01-14 11:25:48 +01:00
Graham Pentheny
894aa9461f Merge pull request #152 from Janiels/fix-149
Add documentation about data to addTile
2016-01-13 20:26:16 -05:00
Jakob Botsch Nielsen
67590642c7 Add documentation about data to addTile
dtNavMesh needs exclusive access to the data passed to addTile since it
will make dynamic changes to this at runtime. For that reason the data
should not be reused until the tile has been removed from the nav mesh
again.

Fix #149
2016-01-14 00:27:40 +01:00
Ben Hymers
5a342b83e8 Merge pull request #150 from Janiels/fix-windows-timing
Fix time measuring on Windows
2016-01-11 09:57:04 +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
ac0316e6a8 Merge pull request #79 from mynz/master
change DebugUtils/Source/DetourDebugDraw.cpp no executable
2016-01-08 15:38:51 -05:00
Ben Hymers
26f2650df8 Merge pull request #75 from grahamboree/demo_project_improvements
Replaced FileList class with std::vector<std::string>
2016-01-08 07:53:37 +00: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
Ben Hymers
8563b84a8d Merge pull request #147 from grahamboree/unit_testing
Unit testing framework.
2016-01-07 08:47:02 +00: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
e2c0eadc99 Merge pull request #145 from Janiels/fix-paths-with-spaces
Ensure SDL2.dll is copied for paths with spaces
2016-01-05 11:51:23 -05:00
Jakob Botsch Nielsen
7230dea2e3 Ensure SDL2.dll is copied for paths with spaces
The generated VS project would fail to copy the SDL2.dll file
if the solution or Bin path contained spaces.
2016-01-05 12:08:27 +01:00
Jakob Botsch Nielsen
1b50ceaa9a Merge pull request #144 from grahamboree/SDL2
Updated RecastDemo to SDL2
2016-01-05 09:00:21 +01: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
Graham Pentheny
43a20cce42 Merge pull request #109 from Kromster80/patch-2
Updated dtFindPathOptions description and options
2016-01-02 10:30:37 -05:00
Jakob Botsch Nielsen
c1f9fd8406 Fix heap corruption when collecting region layers
The collecting could overflow the neighbours array due to a missing boundary
check.

Fix #30
2016-01-02 13:33:27 +01:00
Ben Hymers
d6ab8fdf86 Merge pull request #139 from Janiels/fix-113
Correctly remove off mesh links to other layers
2015-12-30 12:05:59 +00:00