Comments (7)
Right, noticed this while fixing the other bug. I'll add overloads to accept a Random
object.
from sharpnav.
Wouldn't it be better to just keep one instance inside NavMeshQuery? Or it's supposed to be used in a multithreading environment?
from sharpnav.
IMO a Random object is something that's tangentially related to a query in that a handful of functions need one, but the rest of the class doesn't. It can also be useful for people who want to reproduce a state from a stored seed. Passing the random to the constructor of NavMeshQuery
makes it a bit harder to keep track of where the random object is generating numbers.
from sharpnav.
Alright, that should do it. Reopen if you have any issues with the new overloads.
from sharpnav.
There are no issues with the new overloads but there are still with old ones. The problem is not fixed. I'd recommend you to use "default" random instance passed to the constructor in case if the overload without rand parameter is used.
from sharpnav.
I'm not going to add any more members to NavMeshQuery, I'm already planning on slimming it down and possibly moving to a LINQ-esque API. I'll mention to not call it more than once at a time in the documentation for the old overloads, though.
from sharpnav.
@AqlaSolutions now that I'm revisiting this and cleaning up the pathfinding code, I ended up removing the Random
parameter and taking one in the constructor mostly because it will reduce the possibility of thread-safety mistakes on the user's end.
from sharpnav.
Related Issues (20)
- Agents do not move when requested target is on the same polygon HOT 4
- Using SharpNav.SharpDX in conjunction with SharpDX 3.0.1 HOT 4
- FixupCorridor IndexOutOfRangeException HOT 11
- FindRandomPointAroundCircle IndexOutOfRangeException HOT 2
- No nearby polys InvalidOperationException
- Fail to compile against .NET 3.5 HOT 8
- .Obj exported from Unity3D causes System.IndexOutOfRangeException HOT 9
- OpenGL error on Example HOT 10
- .net standard version HOT 2
- ERROR HOT 1
- How to import NavMesh from Unity? HOT 1
- How are SharpNav dealing with Licenses? HOT 3
- CalcSlabEndPoints - Struct by reference needed HOT 1
- Dynamic Obstacle
- Is this library appropriate for my usage? HOT 3
- Mesh generation time. Testing on big meshes. HOT 2
- The "filter" in InitSlicedFindPath
- TiledNavMesh not lining up HOT 2
- Exception: The provided PolyMesh has no vertices. HOT 1
- MergeCorridorStartMoved does not resize the path HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sharpnav.