Robert Adams
af9deed135
Revert "Revert "BulletSim: freshen up the code for constraint based linksets.""
...
Found that the vehicle movement problem was not caused by these physics changes.
This reverts commit 44543ebe63
.
2013-07-23 08:11:21 -07:00
Justin Clark-Casey (justincc)
90528c23d9
For stats which can show average change over time, show the last sample as well as the average.
...
This is somewhat cryptic at the moment, need to improve documentation.
2013-07-23 01:13:13 +01:00
Justin Clark-Casey (justincc)
a57a472ab8
Add proper method doc and comments to m_dataPresentEvent (from d9d9959
)
2013-07-23 00:51:59 +01:00
Justin Clark-Casey (justincc)
9fb9da1b6c
Add clientstack.InboxPacketsCount stat. This records the number of packets waiting to be processed at the second stage (after initial UDP processing)
...
If this consistently increases then this is a problem since it means the simulator is receiving more requests than it can distribute to other parts of the code.
2013-07-23 00:35:41 +01:00
Justin Clark-Casey (justincc)
60732c96ef
Add clientstack.OutgoingUDPSendsCount stat to show number of outbound UDP packets sent by a region per second
2013-07-23 00:35:34 +01:00
Justin Clark-Casey (justincc)
8396f1bd42
Record raw number of UDP receives as clientstack.IncomingUDPReceivesCount
2013-07-23 00:35:23 +01:00
Justin Clark-Casey (justincc)
bf517899a7
Add AverageUDPProcessTime stat to try and get a handle on how long we're taking on the initial processing of a UDP packet.
...
If we're not receiving packets with multiple threads (m_asyncPacketHandling) then this is critical since it will limit the number of incoming UDP requests that the region can handle and affects packet loss.
If m_asyncPacketHandling then this is less critical though a long process will increase the scope for threads to race.
This is an experimental stat which may be changed.
2013-07-23 00:35:09 +01:00
Robert Adams
e6b6af62dd
Added check for user movement specification before discarding an incoming
...
AgentUpdate packet. This fixes the problem with vehicles not moving forward
after the first up-arrow.
Code to fix a potential exception when using different IClientAPIs.
2013-07-22 15:41:14 -07:00
Robert Adams
44543ebe63
Revert "BulletSim: freshen up the code for constraint based linksets."
...
The changes don't seem to be ready for prime time.
This reverts commit 803632f8f3
.
2013-07-22 12:10:23 -07:00
Robert Adams
89857378ce
Revert "Add experimental stubs for an extension function interface on both"
...
The changes don't seem to be ready for prime time.
This reverts commit 13a4a80b38
.
2013-07-22 12:09:55 -07:00
Robert Adams
c45659863d
Revert "BulletSim: move collision processing for linksets from BSPrimLinkable"
...
The changes don't seem to be ready for prime time.
This reverts commit b4c3a791aa
.
2013-07-22 12:09:17 -07:00
Robert Adams
5f7b2ea81b
Revert "BulletSim: only create vehicle prim actor when vehicles are enabled."
...
The changes don't seem to be ready for prime time.
This reverts commit acb7b4a09a
.
2013-07-22 12:08:49 -07:00
Robert Adams
7b187deb19
Revert "BulletSim: change BSDynamics to expect to be passed a BSPrimLinkable"
...
The changes don't seem to be ready for prime time.
This reverts commit d0d654e218
.
2013-07-22 12:08:25 -07:00
Robert Adams
84d0699761
Revert "BulletSim: Add logic to linksets to change physical properties for"
...
The changes don't seem to be ready for prime time.
This reverts commit b44f0e1a00
.
2013-07-22 12:07:42 -07:00
Robert Adams
b44f0e1a00
BulletSim: Add logic to linksets to change physical properties for
...
whole linkset.
Override physical property setting for BSLinksetCompound as there are
not children to the compound spape.
2013-07-22 10:27:24 -07:00
Robert Adams
d0d654e218
BulletSim: change BSDynamics to expect to be passed a BSPrimLinkable
...
and start changing the logic to handle the base prim as a complex
object (ie, a linkset).
2013-07-22 10:27:21 -07:00
Robert Adams
acb7b4a09a
BulletSim: only create vehicle prim actor when vehicles are enabled.
2013-07-22 10:27:18 -07:00
Robert Adams
b4c3a791aa
BulletSim: move collision processing for linksets from BSPrimLinkable
...
into the linkset implementation classes.
Add HasSomeCollision attribute that remembers of any component of
a linkset has a collision.
Update vehicle code (BSDynamic) to use the HasSomeCollision in place of
IsColliding to make constraint based linksets properly notice the ground.
Add linkset functions to change physical attributes of all the members
of a linkset.
2013-07-22 10:27:15 -07:00
Robert Adams
13a4a80b38
Add experimental stubs for an extension function interface on both
...
PhysicsScene and PhysicsActor.
2013-07-22 10:27:09 -07:00
Robert Adams
803632f8f3
BulletSim: freshen up the code for constraint based linksets.
2013-07-22 10:27:06 -07:00
Diva Canto
df63bfafef
Better version of previous commit
2013-07-21 15:42:22 -07:00
Diva Canto
f81e289a1b
Add the Current Outfit folder as an available folder in the SuitcaseInventory.
2013-07-21 15:42:05 -07:00
Diva Canto
99a727600b
Minor cosmetic changes.
2013-07-21 10:07:35 -07:00
Diva Canto
8d18ad2f6f
Minor aesthetic change to make things more clear.
2013-07-21 09:02:56 -07:00
Diva Canto
116a449d89
The quaternion delta was a bit to high, now that the head rotation is out of the equation. (head rotation was the problematic one)
2013-07-21 09:01:57 -07:00
Diva Canto
b5ab0698d6
EDIT BEAMS!!! They had been missing from OpenSim since ever. Thanks to lkalif for telling me how to route the information. The viewer effect is under the distance filter, so only avatars with cameras < 10m away see the beams.
2013-07-21 09:01:44 -07:00
Diva Canto
032c637c10
Filter certain viewer effects depending on distance between the avatar that is generating the effect and the cameras of the observers. In particular, this applies to LookAt (which is really verbose and occurs every time users move the mouse) and Beam (which doesn't occur that often, but that can be extremely noisy (10.sec) when it happens)
2013-07-21 09:01:09 -07:00
Diva Canto
3919c80505
A couple of small optimizations over the previous commit
2013-07-21 09:00:57 -07:00
Diva Canto
d5a1779465
Manage AgentUpdates more sanely:
...
- The existing event to scene has been split into 2: OnAgentUpdate and OnAgentCameraUpdate, to better reflect the two types of updates that the viewer sends. We can run one without the other, which is what happens when the avie is still but the user is camming around
- Added thresholds (as opposed to equality) to determine whether the update is significant or not. I thin these thresholds are ok, but we can play with them later
- Ignore updates of HeadRotation, which were problematic and aren't being used up stream
2013-07-21 09:00:42 -07:00
Diva Canto
174105ad02
Fixed the stats in show client stats. Also left some comments with observations about AgentUpdates.
2013-07-21 09:00:27 -07:00
Diva Canto
18d5d8f5dd
Removed verbose debug from previous commit
2013-07-21 09:00:08 -07:00
Diva Canto
edafea6ae6
PollServiceRequestManager: changed the long poll from a Queue to a List. No need to dequeue and enqueue items every 1sec.
2013-07-21 08:59:48 -07:00
Justin Clark-Casey (justincc)
3a6acbcc14
furhter shorten CheckAgentUpdateSignificance(). No real perf impact.
2013-07-21 08:59:31 -07:00
Justin Clark-Casey (justincc)
866de53978
Remove some pointless code in CheckAgentUpdateSignificance()
2013-07-21 08:59:17 -07:00
Justin Clark-Casey (justincc)
61eda1f441
Make the check as to whether any particular inbound AgentUpdate packet is significant much earlier in UDP processing (i.e. before we pointlessly place such packets on internal queues, etc.)
...
Appears to have some impact on cpu but needs testing.
2013-07-21 08:58:55 -07:00
Justin Clark-Casey (justincc)
e5c677779b
Add measure of number of inbound AgentUpdates that were seen as significant to "show client stats" (i.e. sent on for further processing instead of being discarded)
...
Added here since it was the most convenient place
Number is in the last column, "Sig. AgentUpdates" along with percentage of all AgentUpdates
Percentage largely falls over time, most cpu for processing AgentUpdates may be in UDP processing as turning this off even earlier (with "debug lludp toggle agentupdate" results in a big cpu fall
Also tidies up display.
2013-07-21 08:58:39 -07:00
Justin Clark-Casey (justincc)
5a2d4d888c
Hack in console command "debug lludp toggle agentupdate" to allow AgentUpdate in packets to be discarded at a very early stage.
...
Enabling this will stop anybody from moving on a sim, though all other updates should be unaffected.
Appears to make some cpu difference on very basic testing with a static standing avatar (though not all that much).
Need to see the results with much higher av numbers.
2013-07-21 08:58:21 -07:00
Justin Clark-Casey (justincc)
66048e1a70
minor: provide user feedback in the log for now when udp in/out bound threads are started/stopped
2013-07-21 08:58:02 -07:00
Justin Clark-Casey (justincc)
3a476bf60c
Fix up a temporary debugging change from last commit which stopped "lludp stop out" from actually doing anything
2013-07-21 08:57:36 -07:00
Diva Canto
98d47ea428
Delay the enqueueing of non-longpoll requests for 100ms. No need to have these requests actively on the processing queue if it seems they're not ready.
2013-07-21 08:57:16 -07:00
Justin Clark-Casey (justincc)
63c42d6602
Do some simple queue empty checks in the main outgoing udp loop instead of always performing these on a separate fired thread.
...
This appears to improve cpu usage since launching a new thread is more expensive than performing a small amount of inline logic.
However, needs testing at scale.
2013-07-21 08:56:48 -07:00
Diva Canto
9041f4a056
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-07-19 20:27:49 -07:00
Diva Canto
c1705236c7
Fix HGTravelStore.migrations in SQLite (mantis #6709 )
2013-07-19 20:25:33 -07:00
Robert Adams
1d65b0d802
BulletSim: add position resetting for stationary avatars so they don't
...
move around when standing on a stationary object.
Create proper linkage between BSCharacter and its actor by generating
a UpdatedProperties event the same way BSPrim does.
2013-07-18 19:09:55 -07:00
Dan Lake
edef7472d1
Enable storing of environment settings in NullSimulationData
2013-07-18 13:33:50 -07:00
Diva Canto
b5062ae7ee
Changed the timoeut of EQ 502s (no events) to 50 secs. The viewer post requests timeout in 60 secs.
...
There's plenty of room for improvement in handling the EQs. Some other time...
2013-07-18 13:30:04 -07:00
Justin Clark-Casey (justincc)
d9d995914c
try Hacking in an AutoResetEvent to control the outgoing UDP loop instead of a continuous loop with sleeps.
...
Does appear to have a cpu impact but may need further tweaking
2013-07-18 12:28:02 -07:00
Diva Canto
71b1511db5
Revert "Revert "I confuse myself. Let's try this variable name instead.""
...
This reverts commit 52dc7b2a96
.
2013-07-18 12:25:47 -07:00
Diva Canto
a22a4db5ce
Revert "Revert "Do the same trick that dahlia did for Dequeue(timeout)""
...
This reverts commit 5495df7443
.
2013-07-18 12:25:22 -07:00
Diva Canto
552b85d33d
Revert "Revert "Putting the requests back in the queue while testing for count >0 is not the smartest move...""
...
This reverts commit 7127891957
.
2013-07-18 12:25:04 -07:00