Commit Graph

1411 Commits (35b37510fca537d12c2eabc68be51e370dc6d6ce)

Author SHA1 Message Date
UbitUmarov 01b4b25cdb current priority code uses avatar position not camera, so fix reprioritizer. This may need to be reviewed in future.. it should be camera 2015-12-17 18:15:33 +00:00
UbitUmarov ed74fb5da4 save a expensive call to CameraPosition 2015-12-17 12:24:37 +00:00
UbitUmarov a4ed6111b0 change updates reprioritization control code. Do it under normal avatar updates timing and with a workjob not a timer issued thread. 2015-12-17 12:20:02 +00:00
UbitUmarov 3505ab759d dont bother another thread to try to send if there is no one to listen 2015-12-16 23:54:48 +00:00
UbitUmarov 764f270d34 revert last change and add delays on testing, since child updates now have time control, since they are heavy http connections 2015-12-16 23:13:10 +00:00
UbitUmarov ddd067266b temporary remove the delay on first child updates 2015-12-16 22:43:31 +00:00
UbitUmarov 41ae6f06e0 several changes to parcels access control and scenepresence updates rates 2015-12-16 22:16:51 +00:00
UbitUmarov 6c5005aa3b several changes to telehubs, LandPoint and land access 2015-12-13 16:59:01 +00:00
UbitUmarov 172bb05ec2 suspend the use of DisableSimulator, that is causing teleport and crossing issues 2015-11-25 04:13:13 +00:00
UbitUmarov e9345479c4 remove warning on siting in phantom prims without sittarget 2015-11-23 22:11:27 +00:00
UbitUmarov da5aad87bf start adding LegacySitOffsets option. TRUE will prevent the use of new math for the compensation of SL sittarget bug, and so not break content. (this is the main code change) 2015-11-17 17:41:09 +00:00
UbitUmarov 6ae7341e42 send DisableSimulator messages on closing childagents. Possible still not on at best timming, or on the right source files 2015-10-01 20:50:12 +01:00
UbitUmarov 6df75a927c let hoverheight rest position be a falling state 2015-09-30 20:37:14 +01:00
UbitUmarov 0151c773e2 let sp know about scene before anything else on creation 2015-09-30 06:05:28 +01:00
UbitUmarov 5b7a3c703d clamp all draw distance changes within region limits 2015-09-30 05:57:02 +01:00
UbitUmarov f97807b53f let us see our online friends 2015-09-28 20:57:33 +01:00
UbitUmarov 05db03e809 fix unscripted sits without physics help 2015-09-26 03:14:06 +01:00
UbitUmarov 25677e4a1b try to remove Scenepresence dependence on sog m_linkedAvatars, sitting may still work 2015-09-21 21:31:01 +01:00
Kevin Cozens b412db72be Fix a regression to GetSittingAvatars(). Return List<ScenePresence> once more. 2015-09-21 11:00:34 -04:00
UbitUmarov 3906bb2749 fix missing check for viaHGLogin 2015-09-15 22:24:50 +01:00
UbitUmarov 5becc16acf try to improve vehicles crossing with Xengine. Lag seems main issue now, but needs testing, specially the fail cases, that most likelly need more work 2015-09-14 16:40:01 +01:00
UbitUmarov 209cb840a2 missing file... 2015-09-12 21:56:07 +01:00
UbitUmarov daf8a4d01d fix lost sending of initial terrain to child agents 2015-09-10 01:02:52 +01:00
Robert Adams e5367d822b Merge of ubitworkvarnew with opensim/master as of 20150905.
This integrates the OpenSim refactoring to make physics, etc into modules.
AVN physics hasn't been moved to new location.
Does not compile yet.

Merge branch 'osmaster' into mbworknew1
2015-09-08 04:54:16 -07:00
UbitUmarov cdaed11387 at last we can login and see objects ( friends is dead and disable in
scenepresence)
2015-09-03 18:39:08 +01:00
UbitUmarov a11edceb00 seems to compile ( tests comented out) 2015-09-02 19:54:53 +01:00
UbitUmarov 371c9dd2af bad merge? 2015-09-01 14:54:35 +01:00
UbitUmarov 31a50a73cb dont change camera on crossings 2015-08-31 14:21:50 +01:00
UbitUmarov 4905c74ddf start sending terrain patchs in completmovement where we know its
position. Also reset camera to position on makeroot
2015-08-31 14:08:32 +01:00
Diva Canto ce2c67876e More namespace and dll name changes. Still no functional changes. 2015-08-30 21:05:36 -07:00
Diva Canto 2c0cad6dd3 Renamed the namespaces too 2015-08-30 20:29:31 -07:00
UbitUmarov 0edffae7e4 more on tps and crossings 2015-08-30 19:17:35 +01:00
Robert Adams 11209c72f5 In ScenePresence, when removing from the physical scene, unsubscribe
from collisions before removing the collision callbacks.
Should not make operational differences.
2015-08-23 21:13:40 -07:00
UbitUmarov 0b105da626 Merge branch 'mbworkvar2' into ubitvar 2015-08-19 08:48:50 +01:00
Diva Canto cc22d81b4d The only purpose of this commit is to remove an erroneous comment. It turns out that rezzing the attachments is necessary in modern viewers too. Proof: commenting the lines below the comment results in no attachments seen in the avatar. 2015-06-05 09:47:36 -07:00
Magnuz Binder beba2ce781 Fix stand position for differing seat and root rotation.
Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
2015-04-12 12:53:47 -04:00
Robert Adams 07dead7dcb varregion: any conversions of use of Constants.RegionSize converted into
Util.cs routines to convert region coords to and from world coords or handles.
2015-03-29 14:25:12 -07:00
Melanie Thielker 752901c5f4 Make attachment rezzing async again for NPC. Doing that sync causes a deadlock
with the script thread.
2015-03-24 01:37:14 +01:00
Robert Adams 9f18e3ba80 Varregion: first cut at removing Border class checks for region crossings.
Added Scene.PositionIsInCurrentRegion(pos) to sense when new position needs some crossing work.
Many changes made to EntityTransferModule to accomodate new crossing sense logic.
2015-03-22 21:53:02 -07:00
dahlia 83e58ebc7c oops someone set individual quaternion members and forgot to normalize 2015-03-17 13:14:03 -07:00
Justin Clark-Casey (justincc) 310e44f250 Re-enabled ability for avatar to ascend and descend whilst controlling view with lmb held down on avatar (in most viewers).
This had been disabled by 30b7863 (Fri Feb 27 2015).
Relates to http://opensimulator.org/mantis/view.php?id=6835
2015-03-17 18:55:33 +00:00
BlueWall 7e8bad05ec Fix erratic Npc movement 2015-03-02 20:09:22 -05:00
Justin Clark-Casey (justincc) 59d6d03909 Comment out now unused and not properly working private SP.m_leftButtonDown with a comment on how probably to implement it properly if it is needed in the future 2015-02-27 23:48:05 +00:00
Justin Clark-Casey (justincc) 30b786351e Don't slow down avatar walk speed if camera is changed (e.g. by holding down lmb on an avatar and moving the mouse).
Does this by not applying unwanted direction components to the avatar self movement calculation (exception is flying in mouse look).
Matches behaviuor on linden lab grid
Addresses http://opensimulator.org/mantis/view.php?id=6835
2015-02-27 23:43:12 +00:00
Justin Clark-Casey (justincc) ca7cc9b2e2 Don't slide crouching avatar when camera is panned around them with left mouse button
This matches linden lab grid behaviour
2015-02-27 19:43:31 +00:00
Justin Clark-Casey (justincc) 412dd7dfc5 When an avatar is walking across a region border, force the first AgentUpdate received on the new root agent to update movement parameters.
This prevents the avatar from drifting in its last direction of travel if a movement key was released at certain moments in the cross.
Relates to http://opensimulator.org/mantis/view.php?id=7435
2015-02-26 00:48:51 +00:00
Justin Clark-Casey (justincc) e901253b49 Fix recent regression where a race condition meant SP.MakeRootAgent() would sometimes look to start attachment scripts before ETM.HandleIncomingSceneObject() had added them.
Probably a regression since ghosts branch merge on Nov 26 2014
2014-12-17 00:25:24 +00:00
Justin Clark-Casey (justincc) dcc36507f3 Halve the prediction lag for region crossing to improve most flying region crossings without degrading the walk cross experience (neither of which have been that great anyway). 2014-11-29 00:48:26 +00:00
Justin Clark-Casey (justincc) 265fe349e0 Somewhat improve avatar region crossings by properly preserving velocity when avatar enters the new region.
This commit addresses the following issues were causing velocity to be set to 0 on the new region, disrupting flight in particular
* Full avatar updates contained no velocity information, which does appear to have some effect in testing.
* BulletSim was always setting the velocity to 0 for the new BSCharacter.  Now, physics engines take a velocity parameter when setting up characters so we can avoid this.
This patch applies to both Bullet and ODE.
2014-11-29 00:12:11 +00:00
Justin Clark-Casey (justincc) 86367d7219 refactor: Move methods to start a monitored thread, start work in its own thread and run work in the jobengine from Watchdog to a WorkManager class.
This is to achieve a clean separation of concerns - the watchdog is an inappropriate place for work management.
Also adds a WorkManager.RunInThreadPool() class which feeds through to Util.FireAndForget.
Also switches around the name and obj arguments to the new RunInThread() and RunJob() methods so that the callback obj comes after the callback as seen in the SDK and elsewhere
2014-11-25 23:56:32 +00:00
Justin Clark-Casey (justincc) 28d1dbfee4 Move conditionals which control whether a task is placed in the JobEngine inside Watchdog.RunJob() (renamed from RunWhenPossible) and generalize them. 2014-11-25 23:23:11 +00:00
Justin Clark-Casey (justincc) ec8d21c434 Label all threadpool calls being made in core OpenSimulator. This is to add problem diagnosis.
"show threadpool calls" now also returns named (labelled), anonymous (unlabelled) and total call stats.
2014-11-25 23:23:10 +00:00
Justin Clark-Casey (justincc) 1c9529aa9e If JobEngine is active, then use it to copy/rez attachments for an avatar entering the scene that isn't initially logging on. This will execute tasks consecutively rather than concurrently.
This has two aims
1) Reduce initial teleport failures when a foreign Hypergrid user enters a region by not holding up the teleport for attachment rez (this can be particularly costly when HG gets all assets in the object graph.
2) Reduce server load that may impact other simulator activities.
This complements existing JobEngine options that perform initial login attachment rez and appearance send in consecutive tasks.
2014-11-25 23:21:38 +00:00
Justin Clark-Casey (justincc) 9fb3065d33 Temporarily add root agent rez attachments work to job engine if it is running rather than as a fire and forget.
Experiment to see if serializing attachment rez and send initial data jobs improves other parts of sim performance.
2014-11-25 23:18:38 +00:00
Justin Clark-Casey (justincc) 859b1c5ba4 Add experimental job engine to see if queueing some existing async work during root agent entry to a region improves perf rather than always attempting to execute everything concurrently
Job engine is controlled via "debug jobengine start|stop|status".
Can only currently be enabled and disabled dynamically at runtime.
Currently only applies to code sending initial region data (objects, other avatar data) to a client.
2014-11-25 23:18:37 +00:00
Melanie Thielker bec456c2a5 Remove the Invisible stuff and add more baked caching. Refactor selection of textures to save to Bakes module. 2014-11-11 07:09:30 +01:00
Melanie Thielker 64deb6ae6f Second part of invisible base avatar option 2014-11-10 19:49:58 +01:00
Melanie Thielker 6d2e924f24 Call the bake module each time we see a new attachment to see if the attachment
needs textures
2014-11-10 04:46:51 +01:00
UbitUmarov caddabb5c4 scale ChildAgentThrottles with distance (internal to child server and not
root as was done before )
2014-11-06 22:25:16 +00:00
UbitUmarov ead78764ab allow drawdistance to change between 32 and MaxDrawDistance, configurable
value default to 256, so should have no effect. Next steps needed: reduce
 client udp Throttles with distance, update childreen connections with
 significat movement and view range changes, Make disconnect be delayed in time, make disconnects be receiving region action not sender on region changes. Allow distance less than 256 to only connect to visible regions, even none. Make this be relative to camera and not agent position or region centers as it is now.
2014-11-06 19:03:25 +00:00
UbitUmarov e4d84d8ff6 try to make a avatar usesable if its siting part didn't cross, or crossed
back. This situation points to that sitted avatars should be sent in same
 http connection that crosses the object
2014-10-28 13:52:00 +00:00
UbitUmarov 4571e5bc3e try to make SOG crossings full async. Simplify some borders checking.... 2014-10-24 18:10:28 +01:00
UbitUmarov b1ccf3f110 make sure we return false if catch() is triggered on crossing 2014-10-21 13:04:26 +01:00
UbitUmarov 59413adcee do agent crossing async, including QUERYACCESS ( need to check vehicles for
this also ), so it doesn't stop heartbeat
2014-10-21 11:57:47 +01:00
UbitUmarov afa9b4a002 Assume childreen don't need to know caps seeds 2014-10-20 09:14:27 +01:00
UbitUmarov f44c29effb try to fix propagation of seeds to all relevante regions 2014-10-19 15:51:12 +01:00
UbitUmarov f9588730cf debug makeroot timing 2014-10-17 14:36:02 +01:00
UbitUmarov 2bea66ed27 send motion control state in update to childs. Reset CollisionPlane on
makechild
2014-10-17 14:07:11 +01:00
UbitUmarov 94f42cef90 added a missing angularVelocity.Zero on sitting, removed odd camera based
movement vectors, plus little other things
2014-10-03 18:32:52 +01:00
UbitUmarov b9be9097aa fix a incomplet landing handling case 2014-09-30 17:02:24 +01:00
UbitUmarov 3052a53889 change avatar physics and motion control. Still not that good :( 2014-09-29 20:17:05 +01:00
UbitUmarov 8c68772624 bug fix: add missing attach to region heartbeat event to update animations 2014-09-26 00:54:06 +01:00
UbitUmarov 6d2cdd31fe populate collision lists with LinkNumber, and detected structure in
Xengine
2014-09-23 23:59:05 +01:00
UbitUmarov 9c552212a9 exclude npcs from baked cache 2014-09-19 16:51:51 +01:00
UbitUmarov 1953a0f4e0 Dont add to physics in a child update. It is missing several checks like
sit. makeroot should to it
2014-09-17 13:36:39 +01:00
UbitUmarov affcdcce8b try to send fly state on tps 2014-09-16 21:25:06 +01:00
Justin Clark-Casey (justincc) a3bd708e77 Fix regression from recent a02dae5 where stand positions are no longer correct when a sit target is specified.
Adjusts stand position using just avatar position relative to the root prim instead.
Fixes http://opensimulator.org/mantis/view.php?id=7315 and preserves previous fix for http://opensimulator.org/mantis/view.php?id=7299
2014-09-11 20:59:20 +01:00
UbitUmarov f66b58cf00 *TEST* add movement states SIT and SITGROUND. ScenePresence on SIT,
SITGROUND or STAND, sets directly the state, and desired sitAnimation for
default sits
2014-09-10 19:30:57 +01:00
UbitUmarov e37fd5e716 force update of movement animation 2014-09-09 22:27:21 +01:00
UbitUmarov 9d815e2d2a on SetAnimationOverride do a UpdateMovementAnimations(); 2014-09-09 22:07:03 +01:00
UbitUmarov 016e58e354 *test* 2014-09-09 21:53:27 +01:00
Melanie Thielker 87a4abac50 Plumb the rest of the serverside AO 2014-09-09 20:50:41 +02:00
Melanie Thielker 2d2823f1de Add some case magic and send an anim pack when an override is set 2014-09-09 20:16:02 +02:00
UbitUmarov 46abe0c86d Merge branch 'master' into ubitworkmaster 2014-09-09 13:54:00 +01:00
UbitUmarov 683f2cc892 only cancel attchment needed update type on sending sheduled updates.
This is wrong but its as original worked
2014-09-09 13:32:22 +01:00
UbitUmarov 4ed3461573 huds bug fix 2014-09-09 05:20:43 +01:00
Melanie Thielker 18023169e7 Actually do the overriding 2014-09-09 04:12:10 +02:00
Melanie Thielker f2390f7c72 Plumb llSetAnimationOverride 2014-09-09 03:01:05 +02:00
Justin Clark-Casey (justincc) 41f2f3132b For monitoring purposes, start non-timeout tasks (which do not currently use a threadpool) via Watchdog.RunInThread() rather than Util.RunThreadNoTimeout()
The functionality is the same but this allow us to monitor such tasks via "show threads" and abort them for test purposes, etc.
Also extends thread names to provide more info (e.g. SendInitialDataToClient says what client the task is for).
2014-09-05 23:20:59 +01:00
Justin Clark-Casey (justincc) ac866a1c46 Add [EntityTransfer] AllowAvatarCrossing setting to determine whether avatars are allowed to cross regions at all.
Defaults to true.  For test purposes.
2014-09-03 00:25:56 +01:00
Justin Clark-Casey (justincc) d582db6132 Fix recent regression from 473c5594 where camera started to judder on moving vehicles.
Other parts of OpenSimulator are relying on SP.Velocity == 0 for vehicles.
So add and use SP.GetWorldVelocity() instead when we need vehicle velocity, along the same lines as existing SP.GetWorldRotation()
2014-09-02 23:39:52 +01:00
Justin Clark-Casey (justincc) 473c559478 As per the LL grid, if an avatar is sitting then return it's velocity relative to the region rather than relative to its seat.
Resolves http://opensimulator.org/mantis/view.php?id=7175
2014-08-30 01:09:33 +01:00
Justin Clark-Casey (justincc) a02dae566c Fix issue where moving a seated avatar would not adjust their subsequent stand position.
Addresses http://opensimulator.org/mantis/view.php?id=7299
2014-08-30 00:26:18 +01:00
UbitUmarov 38fc1cc445 try to make child presence know its root region. Incomplete, some paths dont send the information. 2014-08-28 00:44:59 +01:00
UbitUmarov b871029a30 dont create a cadu that is not used. Add a root region global position 2014-08-27 18:05:40 +01:00
UbitUmarov 73cdafd6c9 dont mess throotles values sent to child presences. Some cleanup 2014-08-27 15:57:12 +01:00
UbitUmarov 07ee101a05 bug fix. Was not deleting attachments if on public parcel 2014-08-27 01:09:11 +01:00
UbitUmarov 620443f858 on TPs to nearby regions, only send kills if needed by parcel privacy 2014-08-27 00:37:05 +01:00
UbitUmarov dde2ac2544 still testing 2014-08-26 02:22:25 +01:00
UbitUmarov 3ee6144d0c even less kills on tps 2014-08-26 00:00:21 +01:00