| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This now works again except that it requires a click or avatar mvmt to get going
This is because the ScenePresence.HandleAgentUpdate() method doesn't trigger until the client does something significant, at which point autopilot takes over.
Even clicking is enough to trigger.
This will be improved presently.
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
consistency
|
| |
|
|
|
|
| |
The only obviously broken things right now are the undo of the position of just a root prim (stays in place) and the fact that resizes need two undoes.
|
| |
|
|
|
|
|
| |
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
|
|
|
|
| |
undo resize, rotation and position still needs fixing when only editing root prim of a linkset
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This is utterly pointless scene we already know which sog we're dealing with.
|
| |
|
|
|
|
|
|
| |
trigger the physics actor taint.
In the last commit, the fix was made by updating all the child prim physics actors with the new size rather than just the root part.
|
|
|
|
| |
Addresses http://opensimulator.org/mantis/view.php?id=5584
|
| |
|
|
|
|
| |
initial value of localID
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
actually deals with the part into a SceneObjectPart.CheckSculptAndLoad() method
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
prim. Thanks, MisterBlue
|
|
|
|
|
|
| |
future use.
At the moment, client and scene objects are being garbage collected as expected, at least in simple scenarios.
|
|
|
|
| |
backup is not used.
|
|
|
|
| |
attach) work well again.
|
|
|
|
| |
the agent and all attachments. Preserves backwards compatibility -- older sims get passed attachments one by one. Meaning that I finally introduced versioning in the simulation service.
|
|\ |
|
| |
| |
| |
| | |
this change makes it possible to set an absolute position on a group before it is put into a scene.
|
|/
|
|
|
|
|
|
| |
to the entity update queue. The number of property packets can
become significant when selecting/deselecting large numbers of
objects.
This is experimental code.
|
|
|
|
|
| |
This updates prim counts correctly if an object is moved by something other than an avatar (e.g. scripts, region modules)
Create TestMoveOwnerObject() regression test for this case.
|
|
|
|
| |
with the fact that it's one word rather than two.
|
|
|
|
|
|
| |
unpersisted delink
This considerably improves delete performance for objects with large linksets
|
|
|
|
|
|
| |
viewer's edit tools.
This event used to trigger only when the scale was changed with a script.
|
|
|
|
|
|
|
| |
save properly, as will the results of a resizer script working. Attachment
positions are no longer saved on each move, but instead are saved once on
logout. Attachment script states are saved as part of the attachment now
when detaching.
|
| |
|
| |
|
|
|
|
|
|
| |
made more useful.
If a separate UUID parameter is better for the future then this can be added later on.
|
|
|
|
|
|
|
|
| |
scene, remove the old uuid reference from m_parts as well as adding the new one.
The separate remove and set operations is SOG.set_UUID() are both locked under m_parts.SyncRoot since they are logically atomic (though this isn't such an issue if the SOG isn't part of a scene)
Added unit test for this behaviour.
Also changed the second m_parts.AddOrReplace() to m_parts.Add(). As the old reference is now removed we never end up replacing an identical uuid. And if we replace a uuid that's already there (from a child part) then this is an error.
|
| |
|
|
|
|
| |
MapAndArray collection
|
|
|
|
| |
code readability
|
|
|
|
|
|
|
|
| |
scene, iterate over an unlocked list instead
Previously, deadlock was possible because deleting a group took a SOG.Children lock then an m_entityUpdates.SyncRoot lock in LLClientView
At the same time, a thread starting from LLClientView.ProcessEntityUpdates() could take an m_entityUpdates.SyncRoot lock then later attempt to take a SOG.Children lock in PermissionsModule.GenerateClientFlags() and later on
Taking a children list in SOG appears to be a better solution than changing PermissionsModule to not relook up the prim. Going the permission modules root would require that all downstream modules not take a SOG.Children lock either
|
|
|
|
| |
This can get very spammy with regularly changing objects. Please uncomment if required.
|
|\ |
|