Justin Clark-Casey (justincc)
7b46506822
fetch SOP.RotationOffset once in UpdateRotation() and compare rather than fetch four separate times.
...
No functional change.
2011-10-28 23:15:51 +01:00
Dan Lake
06577d7299
Continuation of previous checkin. Found more places where ForEachScenePresence can be changed to ForEachRootScenePresence.
2011-10-27 01:25:12 -07:00
Justin Clark-Casey (justincc)
820242bc49
Fix a bug I introduced yesterday in ODE physics where prim scripts would only receive the very first collision.
2011-10-27 02:05:59 +01:00
Justin Clark-Casey (justincc)
c825c9a945
Get rid of the pointless null checks on collision listeners. Add warning about synchronicity for PhysicsActor.OnCollisionUpdate event doc
2011-10-25 22:35:00 +01:00
Justin Clark-Casey (justincc)
5d37f0471e
For ScenePresence collision events, instead of creating a new CollisionEventsThisFrame every time we need to send some new ones, reuse the existing one instead.
...
This assumes that the listener is using the data synchronously, which is currently the case.
2011-10-25 22:19:17 +01:00
Justin Clark-Casey (justincc)
62a63f834b
refactor: Use SOP.SitTargetAvatar instead of calling a special GetAvatarOnSitTarget() which returned exactly the same thing
2011-10-17 02:04:20 +01:00
Justin Clark-Casey (justincc)
0c041ce12f
Implement osNpcSit(). This is still in development so don't trust it
...
Format is osNpcSit(<npc-uuid>, <target-uuid>, OS_NPC_SIT_IMMEDIATE)
e.g. osNpcSit(npc, llGetKey(), OS_NPC_SIT_IMMEDIATE);
At the moment, sit only succeeds if the part has a sit target set.
NPC immediately sits on the target even if miles away - they do not walk up to it.
This method is in development - it may change so please don't trust it yet.
Standing will follow shortly since that's kind of important once you're sitting :)
2011-10-17 01:42:31 +01:00
Justin Clark-Casey (justincc)
528cc8136e
fetch physical_prim switch from [Startup] config from inside scene, as is done for most other scene config params
2011-10-15 02:54:43 +01:00
Justin Clark-Casey (justincc)
5ddefc2564
remove now redundant m_physical_prim flag from SOP.ApplyPhysics()
2011-10-15 02:47:27 +01:00
Justin Clark-Casey (justincc)
3843efe478
Restore [Startup] physical_prim flag which can stop any prims being subject to physics
...
This had stopped working. However, at the moment it still allows the physics flag to be set even though this has no effect. This needs to be fixed.
Default for this flag is true as previously.
2011-10-15 02:42:43 +01:00
Justin Clark-Casey (justincc)
f2889d7ce9
remove redundant PhysActor.IsPhysical call from SOP.UpdatePrimFlags() as its done immediately afterwards in DoPhysicsPropertyUpdate()
2011-10-15 02:12:46 +01:00
Justin Clark-Casey (justincc)
732e937379
refactor: Remove redundant code in SOP.UpdatePrimFlags()
2011-10-15 02:07:05 +01:00
Justin Clark-Casey (justincc)
c93c9ea072
factor common code out into SOP.RemoveFromPhysics()
2011-10-15 02:02:39 +01:00
Justin Clark-Casey (justincc)
aa19ccf65c
refactor: rename IClientAPI.SendPrimUpdate() to SendEntityUpdate() since it sends entity updates (including presence ones), not just prims.
2011-10-14 01:45:46 +01:00
Justin Clark-Casey (justincc)
fe3594c5ea
Start recording object updates per second statistic (analogue of agent updates per secod) and expose via monitoring module as ObjectUpdatePerSecondMonitor
...
A useful diagnostic to find out how object updates are burdening a scene
2011-10-11 22:17:05 +01:00
Justin Clark-Casey (justincc)
56dbab35e1
Remove unimplementated UpdateMovement() methods from SOG, SOP.
...
SP still has an implementation but this is now just a public method on SP rather than an abstract one in EntityBase.
No point making the code more complex until it actually needs to be,
2011-10-01 01:26:50 +01:00
Snoopy Pfeffer
2b2580e3a1
Fix for rezzing and derezzing HUDs (see Mantis #5406 ). From now on updates are only sent to affected clients.
2011-09-25 00:51:43 +02:00
Justin Clark-Casey (justincc)
bec0cbe82b
remove unused SOP.Create() method
2011-09-23 22:20:15 +01:00
Justin Clark-Casey (justincc)
de19dc3024
refactor: rename SOG/SOP.GetProperties() to SendPropertiesToClient() to reflect what it actually does
...
This also makes it consistent with some other methods that send data to the client.
2011-09-15 18:58:58 +01:00
Justin Clark-Casey (justincc)
af7c6c5f39
stop passing FromUserInventoryItemID right down into the deserializer.
...
the code becomes simpler if this is set from the outside - only one place needs to do this.
2011-09-02 00:50:16 +01:00
Justin Clark-Casey (justincc)
9c0a03731d
Move more of IAM.RezObject() into DoPreRezWhenFromItem()
2011-09-02 00:41:21 +01:00
Justin Clark-Casey (justincc)
c491cdcb95
refactor: use SOG register target waypoints and rots directly instead of calling through the SOP, which doesn't make conceptual sense anyway.
2011-09-01 02:18:31 +01:00
Justin Clark-Casey (justincc)
10d883dc88
refactor: use ParentGroup.UUID directly instead of SOP.GetRootPartUUID()
2011-09-01 01:41:53 +01:00
Justin Clark-Casey (justincc)
63bf710237
Fix issue with llGetTorque() where it would only ever return a zero vector.
2011-09-01 01:37:35 +01:00
Justin Clark-Casey (justincc)
095b3e5756
Remove pointless cluttering SOP.ParentGroup != null checks.
...
The only times when ParentGroup might be null is during regression tests (which might not be a valid thing) and when scene objects are being constructed from the database.
At all other times it's not possible for a SOP not to have a SOG parent.
2011-09-01 01:22:28 +01:00
Justin Clark-Casey (justincc)
33a894f3d2
refactor: move SOP.IsAttachment and AttachmentPoint up into SOG to avoid pointless duplication of identical values
2011-08-27 00:15:21 +01:00
Justin Clark-Casey (justincc)
15a514fcbc
refactor: simplify SOP.AttachedAvatar into SOG.AttachedAvatar
...
This does a tiny bit to reduce code complexity, memory requirement and the cpu time of pointlessly setting this field to the same value in every SOP
2011-08-26 23:06:41 +01:00
Robert Adams
bb5b396fc5
Fix exception when using BasicPhysics
2011-08-19 00:53:57 +01:00
Justin Clark-Casey (justincc)
cba40de109
extend phantom flag regression test to toggle back off
2011-08-06 00:22:14 +01:00
Justin Clark-Casey (justincc)
c6c91e6599
refactor: Fold most SOP.ScriptSet* methods back into script code. Simplify.
2011-08-06 00:13:08 +01:00
Justin Clark-Casey (justincc)
ba89fc3aa1
Add regression test for setting phantom status on a scene object. This is not yet complete.
2011-08-05 23:42:05 +01:00
Justin Clark-Casey (justincc)
b757583662
Comment out SOP logging message I accidentally left in
2011-07-31 03:41:35 +01:00
Justin Clark-Casey (justincc)
aea7007533
refactor: split out ninja joint part of SOP.DoPhysicsPropertyUpdate() so that we don't have to look at it if it's not relevant
2011-07-31 02:50:50 +01:00
Justin Clark-Casey (justincc)
d917010433
minor: Add method doc to collision subscription methods. Change method case to reflect OpenSim standards.
2011-07-30 03:11:36 +01:00
Justin Clark-Casey (justincc)
aadc4eb3b8
Fix problem where sculpts were not getting physical proxies
...
Fixed this by inspecting Shape.SculptEntry at various places instead of Shape.SculptType. Sculpties actually have a SculptType of Cylinder - only true mesh is SculptType.Mesh
This addresses http://opensimulator.org/mantis/view.php?id=5595
2011-07-22 19:23:38 +01:00
Careminster Team
51c47677a1
Tidy up a superfluous AddPrimShape override in PhysicsScene
2011-07-19 18:17:19 +01:00
Justin Clark-Casey (justincc)
ee829a71c2
On all undo/redo operations, consistently lock the undo object for everything, in order to avoid any deadlock issues.
2011-07-19 06:13:05 +01:00
Justin Clark-Casey (justincc)
c50533659a
If we store an undo, wipe anything already present on the redo stack
...
This stops problems when we undo a few steps and start off down another path.
Surprisingly, apart from this now fixed problem, redo appears to be working too.
2011-07-19 06:11:16 +01:00
Justin Clark-Casey (justincc)
ec1ecd3633
stop redo throwing an exception if there is nothing to redo
2011-07-19 06:05:23 +01:00
Justin Clark-Casey (justincc)
bc3679b67d
Fix undo when changing just the root prim's position in a linkset.
...
I think (ha ha) this largely fixes undo, except for the fact that rotation a set of prims with 'edit linked parts' selected doesn't quite work properly (though this works fine if the checkbox isn't selected).
Also, the double undo bug for resize is still present.
Redo might be incredibly buggy, haven't even looked at that yet.
2011-07-19 05:46:17 +01:00
Justin Clark-Casey (justincc)
62325829ec
comment out all kinds of debugging guff
2011-07-19 05:14:58 +01:00
Justin Clark-Casey (justincc)
97f1edfd95
Fix undo of prim group rotation.
...
This isn't that great since I think I broke it a few commits earlier.
Undo of rotation of individual prims in a linkset is still broken
2011-07-19 04:15:27 +01:00
Justin Clark-Casey (justincc)
7c468cda36
Stop undo of just the root prim position in the linkset from shifting the whole linkset.
...
However, what happens now is that undo just doesn't do anything when the root prim is selected on its own. This requires more code than just fiddling with undo states.
2011-07-19 03:38:22 +01:00
Justin Clark-Casey (justincc)
430a4aeba8
Fix undo for resizing linksets
...
This involves implementing a boolean in UndoState to signal whether the undo needs to be done for an entire group/linkset or just a single prim
Resizing individual components of linksets is still dodgy.
Resizing still has to be down twice, since for some reason the client is sending two multiobjectupdate packets on every resize except the very first. This applies to single prims and linksets. Need to look into this.
2011-07-19 03:01:54 +01:00
Justin Clark-Casey (justincc)
86f45f6fe7
remove undo state storage in a few places where it's pointless
...
no functional effect - existing bugs still remain
2011-07-19 01:24:43 +01:00
Justin Clark-Casey (justincc)
6fc74b36d1
Make various tweaks to undo code in an effort to get things working better.
...
Undo rotation and position appear to be working.
Resizing a single prim appears to be working, though the undo has to be done twice.
Resizing a group of prims still does not work properly - possibly because in the UndoState we don't store a knowledge of when we're resizing a whole group rather than individual prims.
This needs to be addressed.
2011-07-18 04:54:21 +01:00
Justin Clark-Casey (justincc)
3f8e571b78
Use a standard generic system stack for the undo/redo stacks instead of our own homebrew.
...
system stack also uses an array, so no performance penalty.
Also exposes undo count and adds a test assertion for correct undo count after resize
2011-07-18 02:01:12 +01:00
Justin Clark-Casey (justincc)
e9a739f45f
refactor: group all the undo/redo code in SOP into one place for easier code reading
2011-07-18 01:33:57 +01:00
Justin Clark-Casey (justincc)
f5ddf37112
Replace ifs in SOG.GroupResize() with Math.Min()
...
Also fiddle a bit with undo. This is not currently working properly, though to be fair it also didn't appear to work in 0.7.1.1 either (at least for resize).
Will get some more attention soon.
2011-07-16 05:23:21 +01:00
Justin Clark-Casey (justincc)
122745fe1c
refactor: replace scale limiting code with more elegant Math.Min calls
2011-07-16 04:28:49 +01:00
Justin Clark-Casey (justincc)
2b68ac4ba3
refactor: Push all part resize code down into SceneObjectPart.Resize()
2011-07-16 04:22:57 +01:00
Justin Clark-Casey (justincc)
0f9882db5b
minor: add a log warning if a sculpt/mesh async asset request returns no data
2011-07-16 03:24:36 +01:00
Justin Clark-Casey (justincc)
6f9b855719
refactor: remove pointless sender != null tests, etc, in AssetReceived, since the method called always belongs to the object that generated the request
2011-07-16 03:16:24 +01:00
Justin Clark-Casey (justincc)
3fc12e7224
Eliminate the pointless textured id argument to SculptTextureCallback
2011-07-16 03:02:28 +01:00
Justin Clark-Casey (justincc)
18652eb87e
Fix physics proxy regeneration when a mesh with more than one submesh is resized
...
Addresses http://opensimulator.org/mantis/view.php?id=5584
2011-07-16 01:36:27 +01:00
root
e9dbe54ab1
Fix some local id issues in physics glue
2011-07-15 20:07:59 +01:00
Justin Clark-Casey (justincc)
df0e5cc9fe
When a mesh object is added to a scene, delay adding the physics actor until the sculpt data has been added to the shape (possibly via an async asset service request)
...
This prevents spurious 'no asset data' for meshes added on startup.
2011-07-12 02:33:09 +01:00
Justin Clark-Casey (justincc)
8e44a8e2b9
Properly regenerate physics proxy when a mesh is resized.
...
This is done in SOP.Resize(). More common code from callers needs to be refactored into this method to reduce confusing copy/pasting
2011-07-11 03:47:49 +01:00
Justin Clark-Casey (justincc)
0badf3718d
refactor: push the part of SceneObjectGroup.CheckSculptAndLoad() that actually deals with the part into a SceneObjectPart.CheckSculptAndLoad() method
2011-07-11 03:35:29 +01:00
Justin Clark-Casey (justincc)
2f3d0e209f
When a sculpt/mesh texture is received by a part on a callback request, don't do the unnecessary work of copying the base shape.
...
Just setting the new base shape is enough to reinsert the sculpt data and set the taint.
Also cleans up a few more left-in debugging messages.
2011-07-11 03:13:59 +01:00
Justin Clark-Casey (justincc)
c6d4304a04
refactor: very minor space insertion
2011-07-11 02:11:16 +01:00
Justin Clark-Casey (justincc)
c964114f7e
refactor: make argument to SOP.UpdatePrimFlags() more readable
2011-07-11 02:09:11 +01:00
Justin Clark-Casey (justincc)
5e8900dfd0
minor: code tidy and inserted log lines for future use.
...
Unable to get to the bottom of why resizing a mesh fails to properly reset the physics proxy, when toggling phantom does
After a mesh is generated, the existing sculptdata is set to zero in PrimitiveBaseShape to save memory
When phantom is toggled, the sculptdata is regenerated before remeshing.
But on resize, the sculptdata is not regenerated.
So clearly, resetting sculptdata is possible, but haven't quite been able to pin down how this is being done when phantom is toggled.
2011-07-09 00:35:30 +01:00
Justin Clark-Casey (justincc)
1dcad4ac66
minor: commented out log lines for future use and very small code tidy
2011-07-08 17:58:01 +01:00
Justin Clark-Casey (justincc)
1a0a9d2290
Implement the latest mesh mechanism so that rezzing the uploaded mesh now works again.
...
Many thanks to the aurora project for pioneering this.
This code is almost certainly not bug free, but it does at least appear to handle simple meshes (except when the viewer crashes - but it is beta!).
2011-06-24 21:54:01 +01:00
Mic Bowman
ad84728aba
Add localID to physical object creation functions.
2011-06-15 11:31:32 -07:00
Justin Clark-Casey (justincc)
b5518dc906
minor: Add some commented out destructor logging messages for potential future use.
...
At the moment, client and scene objects are being garbage collected as expected, at least in simple scenarios.
2011-06-10 20:40:14 +01:00
Melanie
e398c33648
Add PayPrice to serialization format Xml2
2011-05-25 12:17:46 +01:00
Mic Bowman
3fe22126ca
First pass at moving object property requests into a queue similar
...
to the entity update queue. The number of property packets can
become significant when selecting/deselecting large numbers of
objects.
This is experimental code.
2011-04-13 15:37:25 -07:00
Justin Clark-Casey (justincc)
c81f5bfc5c
Adjust the quanterions used in the rez coalsced object tests to get sensible bounding box and offset numbers.
...
Extend test to check position of objects in the rezzed coalescence.
2011-04-13 22:29:12 +01:00
BlueWall
c75e916ccf
Set filter to send proper rotations for root part
...
This allows the root prim, alone or in a set, to send it's
rotation. This fixes unsitting the avatar on sit-offsest
type teleports where the sit target is in the root prim of
a linkset.
2011-02-13 07:42:53 -08:00
Kevin Cozens
034327b51f
Send object date to viewer in microseconds (Fixes mantis bug #3990 )
2011-02-04 20:55:41 +00:00
Marck
7f0350b988
Trigger event with flag CHANGED_LINK when agent sits on objects that have not a sit target defined. This fixes Mantis #4692 .
2010-12-12 20:12:34 +01:00
Diva Canto
7d24dbca3c
Added some comments. Better than listening to the boring speaker...
2010-12-01 16:01:22 -08:00
Marck
d63965cf94
Let CHANGED_SHAPE trigger. This fixes Mantis #1844 .
2010-11-22 19:38:44 +01:00
Diva Canto
c617d658dd
Added creator info across the board -- TaskInventoryItems and InventoryItems themselves. Tested. Seems to be working, main tests pass. Nothing done for IARs or HG transfers yet -- this only works for OARs for the time being.
...
New migration in inventory table in order to make CreatorID varchar(255).
2010-11-21 17:19:24 -08:00
Diva Canto
6a9ae9e7cb
Global creator information working on MySQL DB and on load/save OARs. Creator name properly shown on the viewer as first.last @authority.
...
New option added to save oar -profile=url. Migration on RegionStore making CreatorID be 255 chars.
Moved Handling of user UUID -> name requests to a new module UserManagement/UserManagementModule.
2010-11-21 13:16:52 -08:00
Melanie
644eb9fd7f
Fix playing sound from HUDs
2010-11-05 13:45:28 +00:00
Diva Canto
7038f2b406
Deleted all [XmlIgnore] from SOP, since those are meaningless now.
2010-10-17 10:41:38 -07:00
Diva Canto
22eff055d4
.NET automagical serialization of SOPs replaced by manual serialization across the board.
2010-10-17 10:35:38 -07:00
Melanie
f2febb89fc
Change the part for sound playback to be the root part / object UUID instead
...
of the child prim because using the child prim plain doesn't work.
2010-10-10 22:07:36 +01:00
Jeff Ames
bc9f793a92
Formatting cleanup.
2010-10-04 21:28:17 -04:00
Justin Clark-Casey (justincc)
6325fa515d
Add UUID to physics prim name parameter so that diagnostic messages can be made more useful.
...
If a separate UUID parameter is better for the future then this can be added later on.
2010-09-25 00:51:40 +01:00
root
1b2edfe75f
JustinCC is evil. f7b28dd3
broke script persistence. This fixes it.
2010-09-16 23:19:46 +01:00
Jeff Ames
f1f0bc23f4
Formatting cleanup.
2010-09-12 13:43:49 -04:00
Justin Clark-Casey (justincc)
f7b28dd321
If a scene object part UUID is changed (only possible when not in a scene), then adjust the inventory items to point to the new uuid as well
2010-09-07 03:41:29 +01:00
Justin Clark-Casey (justincc)
df702417dc
Remove mono compiler warnings
2010-08-26 16:27:41 +01:00
Justin Clark-Casey (justincc)
39a748b47a
refactor: Use SOP.Flags rather than SOP.ObjectFlags
2010-08-13 20:23:53 +01:00
Diva Canto
c98c6a2930
File wants to be committed
2010-08-11 20:38:10 -07:00
Marck
4f62f00ca0
Changing prim color generates event CHANGED_COLOR.
...
Signed-off-by: Melanie <melanie@t-data.com>
2010-08-10 19:38:39 +01:00
Justin Clark-Casey (justincc)
2a1c11fda9
On shift-copy of an object, set up a new physics actor (as appropriate) for every copied prim, not just the root
...
This addresses http://opensimulator.org/mantis/view.php?id=4295
2010-08-10 20:15:44 +01:00
Justin Clark-Casey (justincc)
0a81038dd5
Reduce number of paths in SOP code by setting flags via Flags property rather than _flags
...
Both ObjectFlags and Flags are effectively exactly the same property, except that ObjectFlags is uint and Flags is PrimFlags
Both reference the PrimFlags _flags underneath, so you couldn't set a non PrimFlags uint anyway.
Deprecated ObjectFlags in favour of Flags.
2010-08-10 17:26:31 +01:00
Justin Clark-Casey (justincc)
6c8c8d669b
minor: a few miscellaneous comments
2010-08-07 00:45:04 +01:00
Justin Clark-Casey (justincc)
1270727c96
Merge branch 'moap'
2010-08-06 18:29:30 +01:00
Melanie
120f3a18f2
Correct some script constants.
2010-08-06 15:11:18 +01:00
Melanie
1869572297
Prevent setting the hovertext from firing changed_color
2010-08-05 08:19:46 +01:00
Justin Clark-Casey (justincc)
f067f733ea
add userExposed parameter to part copy event
2010-07-28 19:38:20 +01:00
Justin Clark-Casey (justincc)
0f15ccb2cf
relocate moap specific cloning code to MoapModule
2010-07-28 19:23:30 +01:00
Justin Clark-Casey (justincc)
5aa56b1274
Fix problem where changes to media textures for prims duplicated by shify copy would change both prims until server restart
...
I also found out that you can crash the current viewer by giving it more media entrys than it's expecting
2010-07-28 18:55:29 +01:00
Justin Clark-Casey (justincc)
eb5e39d6ef
Fire CHANGED_MEDIA event if a media texture is set or cleared
2010-07-26 23:34:20 +01:00