Commit Graph

730 Commits

Author SHA1 Message Date
Melanie
52a4dbccbe Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/RegionInfo.cs
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2011-12-12 11:42:22 +00:00
Melanie
943b37b8e6 Send changed animation event asynchronously 2011-12-12 11:08:50 +01:00
Melanie
323ffd7a89 Fix a regression that causes data from the attachments module to fail loading 2011-12-10 15:28:32 +01:00
Melanie
db98698bbe Prevent spurious error message when client tries to move a null item 2011-12-10 14:47:00 +01:00
Melanie
3f42183797 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
2011-12-10 00:40:41 +00:00
Justin Clark-Casey (justincc)
af3cd00048 Get rid of IScene.PresenceChildStatus() which always had to execute a lookup in favour of IClientAPI.ISceneAgent.IsChildAgent instead. 2011-12-09 23:07:53 +00:00
Melanie
5f6a4c4111 Merge branch 'master' into careminster 2011-12-09 22:55:08 +00:00
Justin Clark-Casey (justincc)
fc27806e90 remove some unused fields in ScenePresence 2011-12-09 22:52:54 +00:00
Melanie
d913303875 Merge branch 'master' into bigmerge 2011-12-09 08:13:57 +00:00
Justin Clark-Casey (justincc)
0e265889dd Remove unnecessary AgentCircuitData null check from Scene.AddNewClient().
The only caller is the LLUDP stack and this has to validate the UDP circuit itself, so we know that it exists.
This allows us to eliminate another null check elsewhere and simplifies the method contract
2011-12-08 19:25:24 +00:00
Justin Clark-Casey (justincc)
55de189752 minor: remove some mono compiler warnings 2011-12-08 18:56:07 +00:00
Justin Clark-Casey (justincc)
54360dd20e When a client connects to a scene, send other avatar appearance data asynchronously to reduce hold up in the IN UDP packet processing loop.
This is already being done for the initial object data send.
2011-12-08 18:39:56 +00:00
Justin Clark-Casey (justincc)
f61e54892f On a new client circuit, send the initial reply ack to let the client know it's live before sending other data.
This means that avatar/appearance data of other avatars and scene objects for a client will be sent after the ack rather than possibly before.
This may stop some avatars appearing grey on login.
This introduces a new OpenSim.Framework.ISceneAgent to accompany the existing OpenSim.Framework.ISceneObject and ISceneEntity
This allows IClientAPI to handle this as it can't reference OpenSim.Region.Framework.Interfaces
2011-12-08 18:34:23 +00:00
Melanie
96539ffc79 Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2011-12-08 18:29:19 +00:00
Melanie
5ab536a1e9 Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2011-12-05 17:10:51 +00:00
Melanie
35800d6a86 Reinstate setter for OffsetPosition to allow setting the offset by script
while seated
2011-12-05 15:26:22 +01:00
Melanie
19d6aa2bc9 Don't allow position update on sitting avatar. Don't bounds check sitting
avatars as they will be crossed by the vehicle and not individually
2011-12-04 20:16:07 +01:00
Justin Clark-Casey (justincc)
585fc5e79d Update SP.PhysicsCollisionUpdate() doc.
It might be inefficient, but there are collisions every frame if the avatar is walking/standing on the ground or a prim surface
2011-12-03 02:51:17 +00:00
Justin Clark-Casey (justincc)
b66fe3e9ff Add method doc to SP.PhysicsCollisionUpdate() to make it clear that it's called continuously even where there are no collisions 2011-12-03 02:45:02 +00:00
Justin Clark-Casey (justincc)
a009871827 Add basic TestFlyingAnimation() regression test 2011-12-03 02:39:21 +00:00
Justin Clark-Casey (justincc)
feef1dd732 Stop calling Animator.UpdateMovementAnimations() at the end of HandleAgentUpdate().
There's no point doing this if it's being called via PhysicsCollisionUpdate
2011-12-03 02:05:11 +00:00
Justin Clark-Casey (justincc)
f08aad8a40 For now, disable mechanism to limit avatar animation updates since this causes avatars to never reach the correct animation after some actions.
This reverts to situation where animation updates are made each frame on SP.PhysicsCollisionUpdate (though a packet is only sent if the anim actually changes).
m_updateCount was not being update on various avatar state changes, causing the correct animations to never be sent.
Always setting in HandleAgentUpdate() is not enough since the avatar is continually sending AgentUpdate packets.
One would need to identify all the conditions under which animations need to play out and set m_updateCount appropriately in SP.HandleAgentUpdate()
2011-12-03 01:47:12 +00:00
Justin Clark-Casey (justincc)
8185ce8b4a Do a cagent.Anims != null check in SP.CopyFrom() 2011-12-03 00:30:13 +00:00
Justin Clark-Casey (justincc)
96c191f4fd Stop SP.HandleAgentUpdate() and PhysicsCollisionUpdate() from being processed if we're dealing with a child ScenePresence.
Neither of these can have any effect on child agents
Now leaving warning about trying to set animation on a child agent active.  Might temporarily pop up now and again.
2011-12-03 00:09:18 +00:00
Justin Clark-Casey (justincc)
054ebe8878 Stop some places where we're trying to reset animations in child agents where such requests are ignored. 2011-12-02 23:56:01 +00:00
Justin Clark-Casey (justincc)
2a6597f61e Remove pointless Animator.TrySetMovementAnimation("STAND") in ScenePresnece constructor.
Comment was right - it is indeed useless since SP always starts off as child and TrySetMovementAnimation screens out child SP
2011-12-02 22:14:47 +00:00
Melanie
a8270cb48c Merge branch 'master' into bigmerge 2011-11-24 01:16:37 +00:00
Justin Clark-Casey (justincc)
b0fe0464af Stop an exception being thrown and a teleport/border cross failing if the desintation sim has no active script engines.
This involves getting IScene.RequestModuleInterfaces() to return an empty array (as was stated in the method doc) rather than an array containing one null entry.
Callers adjusted to stop checking for the list reference being null (which never happened anyway)
2011-11-22 22:13:57 +00:00
Melanie
31736b1aac Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
2011-11-17 19:04:27 +00:00
Justin Clark-Casey (justincc)
b6d83e9c0f Stop OdePrim and OdeCharacter insanely overriding set LocalID to set their own private m_localID property but leaving get to return the then unset PhysicsActor.LocalId!
Instead, just have both subclasses use the PhysicsActor.LocalID property.
This restores collision functionality that fell away in 45c7789 yesterday
2011-11-16 23:01:59 +00:00
Justin Clark-Casey (justincc)
828e4a5b09 Add comments about trying to avoid synchronous work off the EventManager.OnMakeRootAgent event since this is on the critical path for transfer of avatars from one region to another. 2011-11-15 20:26:42 +00:00
Justin Clark-Casey (justincc)
64784bc0cf remove SceneCommunicationService.OnAvatarCrossingIntoRegion. This stuff is not being used any more - it's now IEntityTransferModule and SimulationService instead 2011-11-15 17:30:58 +00:00
Dan Lake
ed19284d85 Merge branch 'remove-scene-viewer' 2011-11-14 12:37:48 -08:00
Melanie
df35720cf5 Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneViewer.cs
2011-11-14 20:34:49 +00:00
Melanie
afca742392 Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
2011-11-14 20:03:47 +00:00
Justin Clark-Casey (justincc)
49ec85ae15 Do a ScenePresence null check in HGMessageTransferModule.SendIMToScene() to stop a NullReferenceException being thrown if an HG IM is sent to a simulator running multiple regions
This is an attempt to address http://opensimulator.org/mantis/view.php?id=5791
2011-11-14 15:24:02 +00:00
Dan Lake
5fd1749150 Remove SceneViewer from ScenePresence to reduce quadruple queueing of
prim update to only triple queuing. Existing method was:
1. Schedule prim for update, adding to scene update list
2. Update on SOGs during heartbeat queues update onto each SceneViewer
3. Update on SPs during heartbeat queues update onto each IClientAPI
4. ProcessEntityUpdates queues updates into UDP send stack

Now the SceneViewer has been eliminated so updates are scheduled at any
time and then put onto the IClientAPI priority queues immediately during
SceneGraph.UpdateObjectGroups.
2011-11-11 17:16:52 -08:00
Melanie
a4ec97cfdd Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
	OpenSim/Services/AuthenticationService/PasswordAuthenticationService.cs
2011-11-11 23:43:18 +00:00
Justin Clark-Casey (justincc)
a3052e40ad extract ground sit code into SP.HandleAgentSitOnGround() for consistency with other sitting code. 2011-11-11 23:28:32 +00:00
Justin Clark-Casey (justincc)
2a2cdaa211 As with prim sitting avatars, make an avatar phantom when it sits on the ground and solid again when it stands.
This is to avoid http://opensimulator.org/mantis/view.php?id=5783 when a collision with a ground sitting avatar causes that avatar to automatically stand and sometimes not be able to move
A better solution may be to keep gound sitting avatars solid but remove their collision status.  However, this requires some physics code work.
2011-11-11 23:10:43 +00:00
Justin Clark-Casey (justincc)
2a7f4e0602 remove unncessary IClientAPI parameter from SP.SendSitResponse() 2011-11-11 21:53:00 +00:00
Justin Clark-Casey (justincc)
b1cb4f5b04 As per mailing list last week, remove facility that would automatically move the avatar if prim with no sit target was out of sitting range.
Now, no movement occurs.
Note that you can still sit on a prim with an explicit sit target from any distance, as was the case before.
2011-11-11 21:42:58 +00:00
Justin Clark-Casey (justincc)
a658bddbcd Bump warp sit distance up to 10 meters, as discussed on opensim-dev mailing list last week.
This means that if the avatar is within 10 meters of the selected target, it sits on it immediately without walking.
Existing autopilot outside this range will be disabled in a later commit
2011-11-11 19:59:12 +00:00
Melanie
0daece6f2b Fix turn left and turn right properly. Works for both built-ins and LSL AOs 2011-11-10 23:42:48 +00:00
Melanie
f5abae5ac6 Implement nudging support for strafing motion 2011-11-10 23:03:05 +00:00
Melanie
008b213ec0 Fix turn left and turn right properly. Works for both built-ins and LSL AOs 2011-11-10 23:15:03 +01:00
Melanie
81fbe7ffb1 Implement nudging support for strafing motion 2011-11-10 22:34:54 +01:00
Melanie
48d2300b8a Fix misaligned sit animation on scripted sit caused by the default sit
animation being run after the scripted one.
2011-11-10 20:54:15 +00:00
Melanie
063920e0a2 Fix misaligned sit animation on scripted sit caused by the default sit
animation being run after the scripted one.
2011-11-10 20:26:14 +01:00
Melanie
d40d0e4596 Fix the ability to move the seated avatar via LSL 2011-11-08 23:15:09 +01:00