| Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
packet is a mess and shouldn't be used at all (in favor of the event queue message)
* Clean up the way we send AvatarGroupsReply packets, including clamping the group name and group title
|
|
* Unified the way region handles are stored and used in ScenePresence
* Fixed camera position for child agents
* CheckForSignificantMovement now checks avatar and camera position (both are important for scene prioritization)
* Removing debug code from the previous commit
|
|
category to task
* Fixing a bug where the max burst rate for the state category was being set as unlimited, causing connections to child agents to saturate bandwidth
* Upped the example default drip rates to 1000 bytes/sec, the minimum granularity for the token buckets
|
|
* Prints a warning for any future packet splitting failures
|
|
protection against NREs in AddNewMovement()
* Removed the three second limit on ImprovedTerseObjectUpdate. With the latest fixes I don't think this is necessary, and it generates a lot of unnecessary updates in a crowded sim
|
|
* Misc. cleanup in ScenePresence.HandleAgentUpdate()
|
|
|
|
* Added the new AppDomainLoading variable to the [XEngine] section in the example config
|
|
|
|
* Fixed a NullReferenceException regression
|
|
not working
|
|
|
|
* Change the PhysicsCollision callback for objects to send full contact point information. This will be used to calculate the collision plane for avatars
* Send the physics engine velocity in terse updates, not the current force being applied to the avatar. This should fix several issues including crouching through the floor and walking through walls
|
|
|
|
|
|
|
|
default region, any region" before giving up
* Hip offset should have been added not subtracted (it's a negative offset). This puts avatar feet closer to the ground
* Improved duplicate checking for terse updates. This should reduce bandwidth and walking through walls
|
|
drifting prims/avatars
* Added contacts_per_collision to the ODE config section. This allows you to reduce the maximum number of contact points ODE will generate per collision and reduce the size of the array that stores contact structures
|
|
checking for velocity in certain directions, and was calling the get_Velocity() function three times)
|
|
|
|
Signed-off-by: Melanie <melanie@t-data.com>
|
|
avoid floating away forever until a key is pressed (deviates from SL behavior in a hopefully good way)
|
|
|
|
ironed out
|
|
|
|
based clients can use UDP server that is inherited from LLUDPServer.
|
|
|
|
The scene is still the one reporting dilation so this does not break the API or remove flexibility, but it gets the calculation happening in the right place for the normal OpenSim usage. The actual calculation of physics time dilation probably needs tweaking
|
|
always leave a worker thread available for other tasks
|
|
checkout or clean out all *DotNet*.dll assemblies from the bin/ directory to run OpenSim moving forward
|
|
mitigate some of the rubberbanding issues while we are sending incorrect time dilation values
|
|
the [InterestManagement] section in your config or not
|
|
|
|
asynchronously (filling up the threadpool with handlers), which would turn around and try to do parallel operations on the starved threadpool. The solution for now is to disable Parallel.cs operations until we can gracefully handle parallel operations with a potentially starved threadpool
|
|
to use a non-blocking parallel method when operating in async mode
* Minor code readability cleanup
|
|
* Tested the previous patch and found no regressions
|
|
|
|
in faster than the surrounding scene
* Adds duplicate tracking for SceneObjectParts and ScenePresences to avoid sending out duplicate ImprovedTerseObjectUpdate packets
|
|
inside Scene as an implementation detail. This will reduce programming error and make it easier to refactor the avatar vs client vs presence mess later on
|
|
or async to use Scene.ForEachClient() instead of referencing ClientManager directly
* Added a new [Startup] config option called use_async_when_possible to signal how to run operations that could be either sync or async
* Changed Scene.ForEachClient to respect use_async_when_possible
* Fixing a potential deadlock in Parallel.ForEach by locking on a temporary object instead of the enumerator (which may be shared across multiple invocations on ForEach). Thank you diva
|
|
ODE (helps the GC make better scheduling choices), and a call to GC.Collect() right before logins are enabled for a region. Although this doesn't change actual memory usage, it improves the reported usage from OpenSim and the operating system
|
|
dictionary to store unique meshes in Meshmerizer based on creation params. This patch contains a dictionary to map each of those unique meshes to its ODE TriMeshData. This eliminated hundreds of megabytes of memory consumption in the unmanaged heap when there are lots of the same prim (roof tiles, bricks, siding, decks, chairs, etc). The objects do not need to be physical to benefit from this patch.
|
|
list of their prims in the region and none exist. Instead of leaving pack.Data null, this patch sets a new DataBlock[0];
|
|
|
|
track threads once the first call to UpdateThread() has been made, and allow re-tracking of threads that timed out but revived later
* Added a commented out call to Watchdog.UpdateThread() in OdeScene. If it turns out that loading a large OAR file or some other operation is timing out the heartbeat thread, we'll need to uncomment it
|
|
on the async_packet_handling config option, and added a debug log message when a UseCircuitCode packet is handled
|
|
LLUDPClient.BackoffRTO()
|