Commit Graph

665 Commits

Author SHA1 Message Date
ikpil 94ee6f9366 extended RcStackArray up to 512 elements (#41) 2024-01-21 13:05:08 +09:00
ikpil 07b50d9391 refactor: added RcStackArray4, RcStackArray8
- https://github.com/ikpil/DotRecast/issues/41
2024-01-21 13:05:08 +09:00
ikpil 17f13dd681 refactor: Remove unused List<int> overlaps in the MergeAndFilterLayerRegions function. 2024-01-20 00:57:09 +09:00
ikpil 66a3d73b8f refactor: add RcDirtyEntry 2024-01-19 00:08:01 +09:00
ikpil d7244bd0ff fix: invalid index 2024-01-18 23:39:32 +09:00
ikpil e0e31c19b9 refactor: int[3] -> RcLevelStackEntry 2024-01-18 23:39:32 +09:00
ikpil 78b29920cb add RcDirtyEntry, RcLevelStackEntry 2024-01-17 13:55:09 +09:00
ikpil af5b70d7f4 small refactoring 2024-01-13 22:06:06 +09:00
ikpil 4c8c596450 bugfix: creating convex volume with two points(#34)
- Issue reporter @adambennett55
- https://github.com/ikpil/DotRecast/issues/34
2024-01-12 01:46:52 +09:00
ikpil 9de4b1ee40 update comments 2024-01-11 13:54:46 +09:00
ikpil 87ef05feb8 refactor: BuildCompactHeightfield 2024-01-11 00:30:46 +09:00
ikpil 278fb6cc1b refactor: 2 step loop -> 1 step loop 2024-01-10 13:47:42 +09:00
ikpil 85c3cfdcf6 refactor: update comments 2024-01-10 01:20:03 +09:00
ikpil ebca91e64d rename DtLayerSweepSpan to RcLayerSweepSpan 2024-01-09 14:09:01 +09:00
ikpil f51f2479ba update comments 2024-01-08 14:08:07 +09:00
ikpil 2edabd3d44 rename RcTelemetry to RcContext 2024-01-07 13:00:38 +09:00
ikpil 648d7bd703 update comments 2024-01-07 12:53:28 +09:00
ikpil 507e3548ef refactor: aligned the parameter order of RasterizeTriangles() to match that of rcRasterizeTriangles() in the recastnavigation project. 2024-01-05 00:37:40 +09:00
ikpil 48a1e18101 refactor: made variable names identical to those in the DividePoly function of the recastnavigation project 2024-01-05 00:09:22 +09:00
ikpil cbdc670c6a refactor: align variable names to match those of the recastnavigation project. 2024-01-04 23:59:00 +09:00
ikpil 10bf4ce164 typo 2024-01-04 23:38:13 +09:00
ikpil be73850965 [Upstream] Cleanup filter code and improved documentation (https://github.com/recastnavigation/recastnavigation/pull/683)
- https://github.com/recastnavigation/recastnavigation/pull/683

This mostly just changes variable names and adds some comments to make the code more clear.

It also has a few small fixup changes to the unit tests.
2024-01-03 23:54:01 +09:00
ikpil 9d01b5243f Code cleanup and small optimizations in RecastFilter.cpp rcFilterLedgeSpans (https://github.com/recastnavigation/recastnavigation/pull/672)
- 3e94c3b6fc

* Code cleanup and minor refactor in RecastFilter.cpp rcFilterLedgeSpans

Because span.smax is always > 0, bot > 0 as well, and (-walkableClimb - bot) is always < -walkableClimb. Furthermore, as long as minNeighborHeight < -walkableClimb' at least once, there is no need to continue the traversal.

* Code cleanup and minor refactor in RecastFilter.cpp rcFilterLedgeSpans

Because span.smax is always > 0, bot > 0 as well, and (-walkableClimb - bot) is always < -walkableClimb. Furthermore, as long as minNeighborHeight < -walkableClimb' at least once, there is no need to continue the traversal.

* Update RecastFilter.cpp

Revise Comment
2024-01-01 14:11:28 +09:00
ikpil 2d36b5f639 fixed null mesh data in tiles. 2023-12-31 17:12:45 +09:00
ikpil 69c1e795df small refactoring static readonly 2023-12-30 16:17:42 +09:00
ikpil b341a41fae typo public property getter -> readonly 2023-12-29 21:07:44 +09:00
ikpil 19088d31f2 feat - Added UI scaling feature based on monitor resolution in Demo 2023-12-26 20:39:30 +09:00
c0nd3v b1db6df033 Fix typo 2023-12-23 11:14:00 +09:00
c0nd3v 9c7f34c521 Fix updated struct version 2023-12-23 11:11:48 +09:00
c0nd3v e782208faa Allow Radius 0 in Demo
Recast C++ demo allows radius 0 and I have a use case for it. I think it should be allowed
2023-12-23 11:04:28 +09:00
ikpil 6474f234a3 [Upstream] Make detail mesh edge detection more robust (recastnavigation #657)
- https://github.com/recastnavigation/recastnavigation/pull/657

Instead of using a distance check which can fail at large magnitudes due
to low precision we can check whether the edges are actually on the
hull.
2023-12-22 22:21:57 +09:00
ikpil fa8369f209 upgrade Silk.NET 2.19.0 -> 2.20.0 2023-12-13 23:37:07 +09:00
ikpil 19f5b05d6a fix: 'RANDOM_POINTS_IN_CIRCLE' mode where random points accumulate in RecastDemo 2023-12-06 00:52:09 +09:00
ikpil b24d6492a8 typo 2023-12-06 00:47:05 +09:00
ikpil d7676913d7 upgrade: Serilog.Sinks.Console 5.0.0 -> 5.0.1 2023-11-29 14:07:01 +09:00
ikpil 9c6ddfffe0 [Upstream] 248275e - Fix: typo error (#153)
- 248275e07f
2023-11-29 00:03:59 +09:00
Ikpil 7e472fae55
Pr/support net8 (#20)
* support net8
2023-11-16 14:05:19 +09:00
ikpil 43abc7d1e3 upgrade: silk.net 2.17.1 -> 2.19.0 2023-11-15 14:08:39 +09:00
ikpil cd509ad010 typo 2023-11-13 23:35:53 +09:00
ikpil 4c29fa0686 [Upstream] fix:rcBuildLayerRegions missing areaType (#470)
- ddaa361b08

It's already been modified, just align the code.
2023-11-13 23:35:43 +09:00
ikpil 8fcd8b5006 typo 2023-11-12 17:11:20 +09:00
ikpil 69c8c950d2 refactor: add type-safe array copy function 2023-11-11 13:08:52 +09:00
ikpil a50ba0b1b1 refactor: changed float[6] to RcVec3f[2] in DtOffMeshConnection class 2023-11-11 12:36:40 +09:00
ikpil 195c684fb2 upgrade: serilog 3.1.0 -> 3.1.1 2023-11-10 22:04:52 +09:00
ikpil 056408fed2 typo 2023-11-09 22:36:00 +09:00
ikpil b9ec4391f2 refactor: class NavMeshSetHeader -> struct NavMeshSetHeader 2023-11-09 22:19:43 +09:00
ikpil afabec2b7d upgrade: nuget 2023-11-09 22:11:35 +09:00
ikpil 54b04947de refactor: class NavMeshTileHeader -> struct NavMeshTileHeader 2023-11-09 22:09:27 +09:00
ikpil ac3f667bcc refactor: readonly struct DtPolyDetail 2023-11-09 21:57:38 +09:00
ikpil bb2041e253 refactor: added RcCompactSpanBuilder 2023-11-07 22:28:14 +09:00
ikpil 5aa482d35e refactor: readonly struct 2023-11-07 22:12:42 +09:00
ikpil 5b2e9591c2 refactor: use ref readonly RcCompactCell c = ref ... 2023-11-02 00:11:54 +09:00
ikpil 8f91328fd9 fix: fix bug where obstacle tile cache rebuild wasn't being reflected.
- https://github.com/ikpil/DotRecast/issues/14
2023-10-31 23:29:58 +09:00
ikpil 2245f70fcf refactor: revert this part due to a mix of C# and C++ style in array and interface usage 2023-10-31 23:06:42 +09:00
Gabriel Alexandre 99cbba7586 Migrated some small types to structs 2023-10-30 23:40:46 +09:00
ikpil ca019c19b3 refactor: support netstandard2.1 vector3 2023-10-28 13:39:05 +09:00
ikpil 0924b82f62 refactor: support .netstandard2.1 vector3 2023-10-28 13:22:02 +09:00
ikpil ffdbdb7ed8 refactor: support netstandard2.1 vector3 2023-10-28 13:04:06 +09:00
ikpil 26309e79f8 refactor: support net6.0 2023-10-28 12:30:49 +09:00
ikpil 5176ee036a refactor: support .netstandard2.1 vector3 2023-10-28 12:08:17 +09:00
ikpil 2e7a75624c refactor: vector3 2023-10-27 23:52:55 +09:00
ikpil 21b3cd6caa refactor: RcVec3f.Lerp 2023-10-27 00:03:03 +09:00
ikpil 93b6b52b8f refactor RcVec3f.IsFinite 2023-10-27 00:01:52 +09:00
ikpil 9a62fbf9f4 refactor: RcVec3f.Mad, IsFinite, Lerp 2023-10-26 00:05:00 +09:00
ikpil 18a195404f refactor: RcVec3f.Dist2D, Dist2DSqr, Perp2D 2023-10-25 23:50:54 +09:00
ikpil 7eba4e0c9d refactor: RcVec3f.Min/Max 2023-10-25 23:44:01 +09:00
ikpil 28ad34b032 refactor: RcVec3f.DistSqr, RcVec3f.LenSqr 2023-10-25 00:40:00 +09:00
ikpil 182c230c10 refactor: Math.Tan -> MatF.Tan 2023-10-25 00:17:20 +09:00
ikpil d99666048b refactor: Math -> MathF 2023-10-25 00:09:34 +09:00
ikpil 04fa38bb96 refactor: RcVecUtils.SafeNormalize 2023-10-24 23:46:45 +09:00
ikpil ef8ef94826 refactor: TestVectorDot 2023-10-24 23:33:24 +09:00
ikpil 617eaa1287 refactor: RcVec3f.Distance 2023-10-24 00:20:42 +09:00
ikpil 0d805b5d07 refactor: RcVec3f.Copy -> RcVecUtils.Copy 2023-10-23 23:11:47 +09:00
ikpil a9888bd281 refactor: added test RcVec3f.CopyTo 2023-10-23 22:51:09 +09:00
ikpil e4dc81b027 refactor: RcVector.Copy 2023-10-23 22:43:53 +09:00
ikpil f5194e63b2 RcVec3f.Add, Subtract now corresponds to System.Numerics.Vector3.Add, Subtract in the switching build. 2023-10-22 12:56:16 +09:00
ikpil cb4a7b37d7 refactor: RcVec3f.Cross now corresponds to System.Numerics.Vector3.Normalize in the switching build 2023-10-22 12:44:50 +09:00
ikpil 3861b0a2c1 refactor: RcVec3f.Normalize now corresponds to System.Numerics.Vector3.Normalize in the switching build 2023-10-22 12:26:54 +09:00
ikpil 33fa18cd0e refactor: move Dot2D function 2023-10-21 00:27:48 +09:00
ikpil bc7b02d8bb refactor: reuse 2023-10-20 00:11:10 +09:00
ikpil 45ede19e61 refactor: preparing for switching build with System.Numerics.Vector3 2023-10-20 00:10:11 +09:00
ikpil 8d5b4c0c95 refactor: preparing for switching build with System.Numerics.Vector3 2023-10-19 00:07:50 +09:00
ikpil 3ab732e900 refactor: preparing for switching build with System.Numerics.Vector3 2023-10-19 00:03:18 +09:00
ikpil 0368afea23 refactor: preparing for switching build with System.Numerics.Vector3 2023-10-18 23:52:47 +09:00
ikpil 5c2dd6b757 refactor: cleaning up the API to .net 8 Sytem.Numerics compatibility. 2023-10-18 00:08:28 +09:00
ikpil 75d00916f3 feature: cleaning up the API to accommodate .net 8 Numerics compatibility. 2023-10-17 23:40:07 +09:00
ikpil 587cebd32c feat: added DotRecast.Core.Collections namespace 2023-10-17 00:24:09 +09:00
ikpil cfcdf86f2d feat: change namespace RcVec2f, RcVec3f, RcMatrix4x4f for dotent 8 2023-10-16 23:55:34 +09:00
ikpil 628c4ef0ce refactor: new float[3] -> RcVec3f 2023-10-15 21:30:55 +09:00
ikpil 30cbf7119b feat: multiple target frameworks 2023-10-14 19:46:55 +09:00
ikpil 5aac44c440 refactor: remove RcVec3f.Of(float[] f, int idx) 2023-10-14 19:30:33 +09:00
ikpil 19136129ab refactor: remve RcVec3f.Of(float[] f) 2023-10-13 00:04:46 +09:00
ikpil 228bdc9e4d refactor: remove RcVec3f.Of(x,y,z) 2023-10-12 23:52:32 +09:00
ikpil adfded5a94 refactor: float[2] -> RcVec2f 2023-10-12 23:31:25 +09:00
ikpil 61a21327e9 refactor: new float[2] -> RcVec2f 2023-10-12 23:21:24 +09:00
ikpil fe305e6fd1 refactor: const float EPSILON 2023-10-12 23:14:17 +09:00
ikpil 7965af390e refactor: Change 'xyz' to uppercase in preparation for switching to System.Numeric.Vector3 2023-10-12 23:04:29 +09:00
ikpil 8d3a1d2d68 refactor: typo 2023-10-11 23:55:37 +09:00
ikpil 3df6036ebb refactor: typo 2023-10-11 23:31:15 +09:00
ikpil 26387de859 refactor: Move constants from class DtNavMesh to class DtDetailTriEdgeFlags
- moved constraints DT_DETAIL_EDGE_BOUNDARY
2023-10-10 23:47:20 +09:00