Commit Graph

34 Commits

Author SHA1 Message Date
cinder
1a67afb897 Convert Simulator.AvatarPositions to ConcurrentDictionary 2025-06-03 11:16:53 -05:00
cinder
3ebed429e5 Minor cleaning 2025-05-28 18:02:36 -05:00
cinder
5ee53b32ac ObjectsAvatars and ObjectsPrimitives are now ConcurrentDictionary to avoid a rather nasty locking bottleneck. 2025-05-27 14:16:03 -05:00
cinder
f005031b51 Heroic attempt to correct the use of <seealso cref=""/> 2025-01-21 07:27:05 -06:00
cinder
d412aa3905 Prefer WaitOne with TimeSpan 2025-01-13 07:44:05 -06:00
cinder
e27b517918 Refactor EventQueueClient to be much more robust.
- Polling is fired now every thirty seconds as polling too often was causing EQ to send junk acks
- No more recursive calls to PostRequestAsync() that was never going to end well.
2025-01-12 10:32:34 -06:00
Cinder Roxley
942c771aa8 Revert "Primitive does not have CRC member"
This reverts commit 20bb76ba7c.
2024-08-30 20:17:29 -05:00
Cinder Roxley
51287e8d40 InternalDictionary is now LockingDictionary 2024-08-30 15:34:50 -05:00
Cinder Roxley
20bb76ba7c Primitive does not have CRC member 2024-08-28 17:06:06 -05:00
Cinder Roxley
30116e9caf Revert ObjectPrimitives InternalDirectory change for the moment to isolate other changes 2024-08-28 17:05:54 -05:00
Adam Frisby
fdab795023 * ObjectPrimitives now uses ConcurrentDictionary, why? Well, at large scale, locking so frequently actually results in a nasty performance issue.
* EventQueue be checked periodically to make sure it's running. Sometimes it dies. This is a blunt fix (along with the previous commit), but is needed to ensure that event queue-y things keep working.
* Adds a 500ms sleep between connecting to a simulator and CompleteAgentMovement - there's a race condition within the simulator which sometimes results in a faulty login, this seems to help.
* SetSeedCaps has an extra parameter, if the user's simulator hasn't changed, don't do anything.
* Add a lookup which lets you turn full Object UUIDs into LocalID, while LibreMetaverse prefers localID when referencing primitives, the official viewer uses UUIDs - and several things actually work better this way. (For example, avatars can spontaneously change LocalID sometimes). This way we can follow those changes.
2024-08-28 16:52:43 -05:00
Cinder Roxley
e001673498 Missing param tags in Simulator 2024-07-07 10:31:36 -05:00
Cinder Roxley
aa713bcae5 Pedantic, but let's use consistent type keywords 2024-06-30 17:49:24 -05:00
Cinder Roxley
762876802f String interpolation 2024-06-30 16:49:51 -05:00
Robert Adams
d2455d591a Add code to terrain packet compression/decompression to handle LayerType.LandExtended.
Passed flag "largeRegion" around which properly parses ParcelIDs in layer packet headers.
Some notes on functions that won't work for varregions (like GlobalPosToRegionHandle).
2023-06-23 12:28:16 -07:00
Robert Adams
d862b737b0 Add RegionSizeX,RegionSizeY to Simulator class.
Add logic to copy region size info (if supplied) into Simulator class on instance creation.
Add region size fields to definitions of LoginResponse, EnableSimulator, TeleportFinishMessage, CrossedRegionMessage.
Add constants Simulator.DefaultRegionSizeX=256 and Simulator.DefaultRegionSizeY=256
Add display of region size in "RegionInfo" TestClient command
2023-06-16 13:17:13 -07:00
cinder
b4516b68f3 Tweaks to Simulator 2023-01-29 15:27:28 -06:00
cinder
94b51f92e4 Always enable http simulator caps 2023-01-29 14:20:11 -06:00
cinder
c9c84abe3d I before E except after C when or used like an A as in neighbor and weigh 2023-01-27 21:07:12 -06:00
cinder
b73bca2c98 Revert "Compoud assignments are cute"
This reverts commit 6e7bdcb9f3.
2022-11-20 00:08:44 -06:00
cinder
d7de598d7e Revert "So much cuteness"
This reverts commit 28b42ce2d2.
2022-11-20 00:08:33 -06:00
cinder
e5e6103c89 Docu and logging 2022-11-11 10:16:31 -06:00
cinder
9d3ac9d3a6 Seed capabilities using HttpCapsClient 2022-11-03 14:47:34 -05:00
cinder
28b42ce2d2 So much cuteness 2022-10-10 16:38:34 -05:00
cinder
6e7bdcb9f3 Compoud assignments are cute 2022-10-10 16:33:24 -05:00
nopjmp
8d0ea08ca7 misc clean up of locks and add more readonly.
UtilizationStatistics.cs: "deep copy" statistics out
2019-12-16 19:50:19 -06:00
nopjmp
9754a1dc66 switch back to a class object instead of a struct 2019-12-11 21:00:06 -06:00
nopjmp
7a4588e65a Remove custom Queue implementations
* Additionally use a SemaphoreSlim for checking queue size and waiting
* Use ConcurrentQueue for most things
2019-10-26 16:38:51 -05:00
nopjmp
44feb64f46 Clean up UDP Packet buffers 2019-10-25 10:46:20 -05:00
Cinder
6edbf29a4c Cleaning 2019-10-08 20:20:32 -05:00
Cinder Biscuits
def4772802 Second Life now reuses the "TaxFree" flag for AllowAccessOverride. Follow suit. 2017-06-01 09:58:38 -05:00
Drake Arconis
ce4727a1ef Satisfy a complaint about style. 2017-03-23 21:22:38 -04:00
Drake Arconis
eed52751d5 Fix implementation of IDisposable interfaces 2017-03-23 20:49:34 -04:00
Ricky C
f1e4854bab File name change part 1 2017-03-11 22:21:07 -08:00