wrenge
0876d3adcf
Merge branch 'risky_optimizations'
2024-11-13 13:55:25 +03:00
wrenge
815a83e3cb
Use precached queue instead of linked list
2024-11-13 13:42:43 +03:00
wrenge
38a8029b6e
Merge branch 'risky_optimizations'
2024-11-13 12:57:33 +03:00
wrenge
418a39a576
MergeCorridorEndMoved alloc fix
2024-11-13 12:57:19 +03:00
wrenge
05613f196f
MergeCorridorStartShortcut alloc fix
2024-11-13 12:52:33 +03:00
wrenge
4dee6b20b5
typo fix
2024-11-13 12:48:02 +03:00
wrenge
49da3fb454
Removed allocations from MergeCorridorStartMoved
2024-11-13 12:09:48 +03:00
wrenge
c7c6e53d61
Made list in DtPathCorridor.cs readonly
2024-11-13 11:32:38 +03:00
wrenge
858e094ea0
Revert "Allocation free merge corridor"
...
This reverts commit acd3f8d879
.
2024-11-13 11:11:12 +03:00
wrenge
acd3f8d879
Allocation free merge corridor
2024-11-13 10:22:04 +03:00
wrenge
2397f23fc3
Queries change
2024-11-12 16:56:11 +03:00
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