wrenge
c0b916a0d1
Use object pools instead of allocating new lists
2024-11-12 14:47:57 +03:00
wrenge
3e754529e5
Node pool change
2024-11-12 14:10:20 +03:00
wrenge
ff930712ee
Use rented array instead of allocating
2024-11-12 11:18:14 +03:00
wrenge
6fe6844efd
Span access
2024-11-11 14:26:35 +03:00
wrenge
c8104cec4d
Replaced arrays with spans in query. Replaced array allocation with buffer rent in query.
2024-11-11 14:19:43 +03:00
wrenge
724be6f3b2
Backport 20a86b5bae
2024-11-11 11:34:47 +03:00
wrenge
0f28fa26ec
Merge branch 'main'
...
# Conflicts:
# src/DotRecast.Detour.Crowd/DtObstacleAvoidanceQuery.cs
# src/DotRecast.Detour/DtBVNode.cs
# src/DotRecast.Detour/DtNavMesh.cs
# src/DotRecast.Detour/DtNavMeshQuery.cs
# src/DotRecast.Detour/DtPoly.cs
# src/DotRecast.Detour/DtPolyDetail.cs
# src/DotRecast.Recast.Toolset/RcNavMeshBuildSettings.cs
# test/DotRecast.Core.Test/RcRentedArrayTest.cs
2024-11-11 11:09:29 +03:00
Georgiy Sadovnikov
20a86b5bae
fix getting normal vector from raycast
2024-11-05 16:22:24 +03:00
ikpil
ea437ef020
Changed bmin/bmax from int[] to RcVec3i for improved memory efficiency
2024-10-13 16:30:52 +09:00
ikpil
f18bedb02d
force utf-8
2024-09-05 22:57:28 +09:00
ikpil
bc7818a1c5
[Upstream] fix: Fix raycast shortcuts (@Sarofc)
...
Raycast is performed in 2d and it might report reaching the given position even if the Y coordinate is different than the target. Therefore, it is necessary to check what poly is actually hit by raycast before taking a shortcut.
- https://github.com/recast4j/recast4j/issues/196
- https://github.com/recast4j/recast4j/pull/197
- https://github.com/ikpil/DotRecast/issues/72
2024-07-18 20:06:36 +09:00
ikpil
cf7aec90ee
Changed DtNavMeshQuery.GetPolyWallSegments() to use Span<T> for enhanced performance, memory efficiency.
2024-07-16 22:19:41 +09:00
ikpil
84419b1d52
Changed memory handling to use stackalloc in DtNavMeshQuery.GetPolyWallSegments for reducing SOH
...
Refactored to use stack-allocated Span<DtSegInterval> instead of dynamically allocating List<DtSegInterval>. This reduces potential heap allocations and improves performance by efficiently managing memory within a fixed size context.
2024-07-14 23:51:04 +09:00
ikpil
c562f8f6a1
Changed new RcVec3f[3] to stackalloc RcVec3f[3] in DtNavMesh.GetPolyHeight() to reduce heap allocation.
2024-07-14 00:09:08 +09:00
ikpil
ab2c520076
Changed `new float[]` to `stackalloc float[]` in `DtConvexConvexIntersections.Intersect()`
2024-07-05 00:15:03 +09:00
ikpil
4743ba68f9
Changed static readonly to const
2024-07-04 23:34:25 +09:00
ikpil
fa2ff6f133
comment
2024-07-04 01:14:31 +09:00
ikpil
a282a80356
Changed vertCount and triCount to byte in DtPolyDetail
2024-07-02 13:47:31 +09:00
ikpil
35f5c63d77
DtStraightPathFlags int to byte
2024-06-25 00:17:07 +09:00
ikpil
e5d5867c56
rename RcVecUtils to RcVec
2024-06-25 00:02:59 +09:00
ikpil
320c7b4c65
Removed RcVecUtils.Dot2D(this RcVec3f @this, Span<float> v, int vi)
2024-06-08 20:56:55 +09:00
ikpil
ed7173dd51
Removed RcVecUtils.Min(), RcVecUtils.Max()
2024-06-08 14:21:38 +09:00
ikpil
2a45ec021c
added DT_NODE_PARENT_BITS
2024-05-31 23:25:35 +09:00
ikpil
34d2ef639a
update `DotRecast Copyright (c) 2023-2024 Choi Ikpil ikpil@naver.com`
2024-05-25 22:42:57 +09:00
ikpil
e6f515f08a
update comment
2024-05-25 21:37:04 +09:00
ikpil
aeefed7fbb
add DT_VERTS_PER_POLYGON
2024-05-25 00:34:24 +09:00
ikpil
1b4f5af155
update comment
2024-05-24 22:14:57 +09:00
ikpil
886be3712f
Changed `DtWriter` to a static class and renamed it to `RcIO`
2024-05-23 22:39:03 +09:00
ikpil
99224251dc
Changed `List<DtStraightPath>` to `Span<DtStraightPath>` for enhanced memory efficiency
2024-05-23 21:19:16 +09:00
ikpil
5b6905bd8f
Changed `MAX_STEER_POINTS` from class constant to local.
2024-05-22 23:49:15 +09:00
ikpil
c7f03d00ff
Changed `Dictionary<int, List<DtMeshTile>>` to `DtMeshTile[]` to optimize memory usage
2024-05-22 01:34:11 +09:00
ikpil
ec9ebe28b9
long[] -> Span<long>
2024-05-20 00:16:36 +09:00
ikpil
c9a54d4b4e
Added `DtCollectPolysQuery` and `FindCollectPolyTest`
2024-05-19 09:16:25 +09:00
ikpil
3808c13876
Changed `IDtPolyQuery` interface to make `Process()` more versatile
2024-05-18 14:50:22 +09:00
ikpil
3b5e85eeb6
added Tile hash lookup size in DtNavMesh
2024-05-18 00:10:58 +09:00
ikpil
886afd20cd
reduced memory usage of DtLink.
2024-05-17 23:46:48 +09:00
ikpil
c3208f7968
changed polyLinks to firstLinks
2024-05-17 23:46:48 +09:00
ikpil
4543df0b90
update comment
2024-05-15 23:06:52 +09:00
ikpil
a649081a5b
update comment DtMeshTile class
2024-05-14 23:46:54 +09:00
ikpil
4e7afa64c6
update comment in DtNavMeshParams
2024-05-14 23:17:39 +09:00
ikpil
47be4eca70
added DtNavMesh.Init()
2024-05-12 22:05:19 +09:00
ikpil
40306a5302
rename RcRecast, DtDetour
2024-05-12 01:11:03 +09:00
ikpil
3f750ba499
update comment, class member name
2024-05-12 00:36:18 +09:00
ikpil
61e7b7a443
update RandomPointInConvexPoly()
2024-05-12 00:25:53 +09:00
ikpil
dfbd1b2cae
update comment
2024-05-12 00:08:18 +09:00
ikpil
1bf0a88492
update comment in DtPoly class
2024-05-11 23:58:01 +09:00
ikpil
e926c23195
SOH #41
2024-05-09 00:34:22 +09:00
ikpil
59849e1dac
add `int nvisited` in DtPathUtils.functions
2024-05-09 00:00:53 +09:00
ikpil
cfdcc1336c
preparatory work to resolve the SOH issue during path merging.
2024-05-08 00:25:32 +09:00
ikpil
fc673b2c25
test2
2024-05-06 15:45:24 +09:00