aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/OdePlugin (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-10-18Temporarily put in log lines to record time taken to set terrain in OdeScene.Justin Clark-Casey (justincc)1-0/+6
2011-10-18Store scene identifier passed in to OdeScene for later debug messagesJustin Clark-Casey (justincc)1-2/+5
2011-10-18Don't bother taking OdeLock during OdeScene construction, since there can be ↵Justin Clark-Casey (justincc)1-16/+13
no contention until the object is constructed.
2011-10-18Remove unnecessary lock of OdeLock in OdePrim.changeadd()Justin Clark-Casey (justincc)1-18/+13
This taint can only ever be processed from the OdeScene.Simulate() loop, which already locks OdeLock.
2011-10-18minor: method doc to explain a lock of OdeLockJustin Clark-Casey (justincc)2-1/+3
2011-10-18Remove the unused CollisionLocker from ODEJustin Clark-Casey (justincc)4-97/+81
Despite its name, this wasn't actually being used in any collision checking
2011-10-17Implement osNpcSit(). This is still in development so don't trust itJustin Clark-Casey (justincc)1-0/+1
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-15reduce access to ODECharacter methods to make code analysis easier. ↵Justin Clark-Casey (justincc)2-54/+36
Eliminate redundant argument on ProcessTaints()
2011-10-15restrict unnecessary access levels on ODEPrim fields/propertiesJustin Clark-Casey (justincc)1-19/+17
2011-10-15refactor: make methods that do not need to be public in ODE private or ↵Justin Clark-Casey (justincc)2-128/+195
internal to aid code reading/analysis. Remove some unused method arguments
2011-10-14Change hardcoded ODE total frame time to match the default total frame time ↵Justin Clark-Casey (justincc)1-1/+1
(0.09375 -> 0.089). No apparant ill effects - because the default stepsize is 0.2, there are still 5 physics steps per physics frame. This is a precursor to using the elapsed value passed in (and now changeable in config).
2011-10-13More method doc and formatting changes. Makes DestroyOdeStructures() privateJustin Clark-Casey (justincc)1-6/+10
2011-10-13refactor: move 3x copy/pasted ode structure removal code in ODECharacter ↵Justin Clark-Casey (justincc)1-90/+57
into a DestroyOdeStructures() method also adds some method doc
2011-10-05Remove unused local variable i from OdeScene.Simulate()Justin Clark-Casey (justincc)1-3/+0
2011-09-17adjust some whitespace to trigger another build, to check the last failure ↵Justin Clark-Casey (justincc)1-2/+2
was just a glitch
2011-09-16Stop the avatar stalling on its first boarder cross when using the ODE pluginJustin Clark-Casey (justincc)1-6/+13
When upgrading the previously child agent to a root, the code was setting the Size parameter on the ODECharacter PhysicsActor. This in turn reset Velocity, which cause the border stall. I'm fixing this by commenting out the Velocity = Vector3.Zero lines since they don't appear to play a useful purpose
2011-08-11If SP.MoveToTarget has been called with a force walk, begin by landing the ↵Justin Clark-Casey (justincc)1-1/+5
avatar. There is a bug here - once an avatar has landed it glides to its new position instead of performing a walk animation
2011-08-10Add a OS_NPC_LAND_AT_TARGET option to osMoveToTarget()Justin Clark-Casey (justincc)1-0/+2
Default for this function is now not to automatically land. This allows better control by scripts when an avatar is going to be landing on a prim rather than the ground. Stopping the avatar involves faking a collision, to avoid the pid controller making it overshoot. A better approach would be to gradually slow the avatar as we near the target
2011-08-01Move common gemo/agent map name code into CreateGeom()Justin Clark-Casey (justincc)1-11/+5
Fix build break.
2011-08-01Instead of preserving old name in geom_name_map in change size or shape, use ↵Justin Clark-Casey (justincc)1-7/+3
the Name property instead. This is equivalent since the prim 'name' is never changed. In fact, this propery is never used for prims
2011-08-01comment out unused code in OdeScene.TriCallback()Justin Clark-Casey (justincc)1-12/+12
2011-08-01On geom removal, remove the name from the OdeScene.geom_name_map tooJustin Clark-Casey (justincc)1-0/+1
2011-08-01remove the unused ODEPrim.prev_geom fieldJustin Clark-Casey (justincc)1-3/+0
2011-08-01When an ODE geom is removed (as when a non-phantom prim is deleted, resized ↵Justin Clark-Casey (justincc)1-0/+2
or shape changed, also remove the OdeScene.actor_name_map entry pointing to the phys actor This is to stop a small memory leak over time when prims are deleted or phantom-toggled
2011-08-01refactor: centralize prim geom removal code from four places to oneJustin Clark-Casey (justincc)2-43/+44
2011-08-01minor: add note to RemovePrimThreadLocked() to the effect that it contrary ↵Justin Clark-Casey (justincc)2-1/+4
to the summary, it is being called from within Simulate() lock (OdeLock)
2011-08-01If a prim changes size or shape, add actor to _parent_scene.actor_name_map ↵Justin Clark-Casey (justincc)1-1/+4
with new prim_geom key, as the old one becomes invalid. This resolves http://opensimulator.org/mantis/view.php?id=5603 where changing size or shape would stop collision_start being fired in a running script. In both this and existing code we are not removing old actors from actor_name_map when the existing prim_geom is removed, which leads to a small memory leak over time. This needs to be fixed.
2011-08-01minor: indentation correctionJustin Clark-Casey (justincc)1-17/+13
2011-07-31Remove _mesh field since the mesh data no longer needs to be stored after ↵Justin Clark-Casey (justincc)1-49/+16
it's initially used. This may improve memory usage for regions using mesh and sculpts, though I suspect that it doesn't address the current memory leak.
2011-07-31refactor: Remove argument to pass in an initial mesh to OdePrim since this ↵Justin Clark-Casey (justincc)2-27/+5
is no longer required and it prevents removal of the _mesh field (which is only used temporarily) If passing in a mesh becomes important again in the future then this can be reinstated.
2011-07-31minor: correct method doc for last commitJustin Clark-Casey (justincc)1-1/+1
2011-07-31refactor: rename CreateGeom _mesh argument to mesh, so as to not confuse ↵Justin Clark-Casey (justincc)1-3/+3
this with the pre-existing _mesh field
2011-07-31minor: method docJustin Clark-Casey (justincc)2-4/+20
2011-07-30Refactor: Replace instances of m_isphysical with IsPhysical rather than have ↵Justin Clark-Casey (justincc)1-33/+40
some code reference the private var and other the public var without any functionality difference. Add some method doc to IsPhysical
2011-07-30refactor: Rename ODEPrim.ParentPrim() to AddChildPrim() for code readabilityJustin Clark-Casey (justincc)1-11/+14
2011-07-30minor: remove mono compiler warnings, some code spacing adjustmentsJustin Clark-Casey (justincc)3-7/+8
2011-07-30minor: Add method doc to collision subscription methods. Change method case ↵Justin Clark-Casey (justincc)3-7/+26
to reflect OpenSim standards.
2011-07-29fix extremely minor Ode bug where the _taintedPrimL list would always be ↵Justin Clark-Casey (justincc)1-3/+14
cleared on every OdeScene.Simulate() even if it was already empty.
2011-07-29refactor: Move another chunk of ninja code out of the OdeScene.Simulate() ↵Justin Clark-Casey (justincc)1-28/+36
loop for consistency and readability.
2011-07-29refactor: Simplify reading OdeScene.Simulate() loop by shunting all the ↵Justin Clark-Casey (justincc)1-182/+191
NINJA joints stuff into its own method. Now if ninja joints isn't active (which is the default) don't have to wade through a lot of massively indented irrelevant code.
2011-07-29refactor: unindent the OdeScene.Simulate() loop to ignore the long commented ↵Justin Clark-Casey (justincc)1-270/+274
out ifs and locks This is to make it more readable.
2011-07-19Apply the localID to the Physics actor to prevent null calls laterCareminster Team1-3/+3
2011-07-16Fix physics proxy regeneration when a mesh with more than one submesh is resizedJustin Clark-Casey (justincc)1-0/+1
Addresses http://opensimulator.org/mantis/view.php?id=5584
2011-07-15Fix some local id issues in physics glueroot2-8/+2
2011-07-12Port implementation of llCastRay() from Aurora.Justin Clark-Casey (justincc)2-17/+103
I haven't been able to test this since the viewer won't parse the llCastRay() function. Maybe some activation cap is missing. Could wait until it is activated by default in the viewer.
2011-07-12temporarily fix the build break with building the OdePlugin tests assembly.Justin Clark-Casey (justincc)1-2/+3
This needs to be fixed properly.
2011-07-12minor: remove whitespace to trigger another buildJustin Clark-Casey (justincc)1-1/+0
2011-07-12When a mesh object is added to a scene, delay adding the physics actor until ↵Justin Clark-Casey (justincc)2-25/+29
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-11When a sculpt/mesh texture is received by a part on a callback request, ↵Justin Clark-Casey (justincc)2-2/+3
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-11comment out accidential ProcessTaints physics debug line left in codeJustin Clark-Casey (justincc)1-1/+1