Justin Clark-Casey (justincc)
49d674c74d
refactor: rename XEngineTest to more descriptive XEngineBasicTests
2013-01-22 00:35:56 +00:00
Robert Adams
471c477863
BulletSim: allow changing position and rotation of a child of a linkset
...
without rebuilding the whole compound shape. Should make vehicles move
smoother.
2013-01-21 15:58:22 -08:00
Robert Adams
95c53ecae7
Have SOP and LSL_Api call the proper GetCenterOfMass and GetGeometricCenter
...
routines on the physics engine. Won't make a difference for any
existing scripts since ODE always returned Vector3.Zero.
2013-01-21 15:55:54 -08:00
Robert Adams
3f6698a595
BulletSim: remove unused MaxTaintsToProcessPerStep parameter
2013-01-21 09:19:09 -08:00
Robert Adams
52b341e2e2
BulletSim: More aggressive as setting character velocity to zero
...
when should be standing.
Modify angular force routines to be the same pattern as linear force routines.
BulletSim vehicle turning is scaled like SL and is DIFFERENT THAN ODE!!
Fix some bugs in BSMotor dealing with the motor going to zero.
Add a bunch of parameters: MaxLinearVelocity, MaxAngularVelocity,
MaxAddForceMagnitude, VehicleMaxLinearVelocity, VehicleMaxAngularVelocity,
and most of the values are defaulted to values that are larger
than in SL.
Use the new parameters in BSPrim, BSCharacter and BSDynamic.
2013-01-20 23:09:54 -08:00
Robert Adams
3c4868f613
BulletSim: fix problem of avatar sliding very slowly occasionally after stopping walking. Consolidate movement tests into the one prestep motion action
2013-01-20 23:09:54 -08:00
Robert Adams
2cb1d5240e
BulletSim: small fix making sure terrain height is calculated
...
properly if the vehicle moves during vehicle actions.
2013-01-20 23:09:54 -08:00
Robert Adams
3b0df52d10
BulletSim: modify motors to return correction rather than current value
...
to better use them for incremental updates.
Modify prim and character to use the new motors.
Simplify the vehicle linear movement code to just update the velocity
directly or the basic movement.
2013-01-20 23:09:53 -08:00
teravus
2c517d792f
This updates prebuild to remove BulletSimN, implements the BulletSim API in BulletSPlugin using the BulletXNA Bullet physics engine. It also updates the BulletXNA library to be compatible with the changes. OpenSimDefaults has been updated to describe how to switch engines and terrain implementations.
2013-01-20 08:18:16 -05:00
teravus
6a75949323
* Dumping BulletSimNPlugin in favor of combining the API
2013-01-20 08:07:49 -05:00
teravus
82b954b212
* Tweak the BulletSimN API a bit.
2013-01-20 08:06:15 -05:00
PixelTomsen
9c590e51b6
IRCBridgeModule: optional agent-alertbox for IRC enabled Regions look in OpenSimDefaults.ini / section [IRC]
...
http://opensimulator.org/mantis/view.php?id=6470
idea: https://github.com/ssm2017/IrcBridgeAlert
2013-01-19 02:40:28 +00:00
Justin Clark-Casey (justincc)
fc6115f777
Check the existing ScenePresence.ParentPart to make sure we're not trying to sit on a prim we're already sat upon, rather than looking up the part from scratch.
...
An adaptation of commit 055b8a2
Having both ParentID and ParentPart references now is redundant. ParentID should probably be eliminated.
2013-01-19 02:29:02 +00:00
Oren Hurvitz
b77da5039e
Assign the SmartThreadPool name in the constructor
...
This is required because some threads are created in the constructor, so assigning the name afterwards would be too late.
2013-01-19 02:08:58 +00:00
Justin Clark-Casey (justincc)
3eee991935
Explicitly stop PollServiceRequestManager() rather than relying on its destructor.
...
Hopes to address occasional shutdown failures from http://opensimulator.org/mantis/view.php?id=6503
2013-01-19 02:04:36 +00:00
Talun
27e2ec177a
New constants for llGetObjectDetails
...
New constants for llGetObjectDetails OBJECT_CHARACTER_TIME,
OBJECT_ROOT, OBJECT_ATTACHED_POINT, OBJECT_PATHFINDING_TYPE,
OBJECT_PHYSICS, OBJECT_PHANTOM and OBJECT_TEMP_ON_REZ
also Pathfining constants, 3 of which are used by llGetObjectDetails
2013-01-19 01:50:16 +00:00
Talun
4f70e423df
Mantis 6507 keys returned by llGetAgentList incorrect for llList2Key
...
The type of the keys returned by llGetAgentList corrected to LSL_Key
2013-01-19 01:14:11 +00:00
Justin Clark-Casey (justincc)
652cfa2ee2
Fix use of scene debug commands when region is set to root or a specific region where there is more than one region on the simulator.
2013-01-19 00:27:17 +00:00
Justin Clark-Casey (justincc)
115e1c2abb
Add "debug set set animations true|false" region console command.
...
Setting this logs extra information about animation add/remove, such as uuid and animation name
Unfortunately cannot be done per client yet
2013-01-18 23:22:02 +00:00
Justin Clark-Casey (justincc)
74256c0cc4
Restore previous client AO behaviour by not allowing them to remove the default animation but continue to allow scripts to do so.
...
This keeps the fix from http://opensimulator.org/mantis/view.php?id=6327
and fixes the behaviour regression in http://opensimulator.org/mantis/view.php?id=6483
Animations may still exhibit different behaviour if both scripts and clients are adjusting animations.
A change in the behaviour of client AO to not remove all animations may be a better long term approach.
2013-01-18 22:57:09 +00:00
Robert Adams
c6b6c94ccb
BulletSim: reduce jitter in avatar velocity when walking or flying.
...
OpenSimulator is VERY sensitive to changes in avatar velocity and
will send an avatar update message when velocity changes more than
0.001m/s. This significantly reduces the number of avatar update messages by
smoothing the avatar velocity returned by Bullet.
2013-01-18 11:39:24 -08:00
Robert Adams
482c7b5368
BulletSim: add logic to turn off pre-step actions when object goes
...
non-active. This turns off 'setForce', 'setTorque' and 'moveToTarget'
when the object is selected or made non-physical.
2013-01-18 11:37:36 -08:00
Justin Clark-Casey (justincc)
c8afc8523b
Implement non-wait co-operative termination of scripts for XEngine in addition to termination on wait.
...
This involves inserting opensim_reserved_CheckForCoopTermination() calls in lsl -> c# translation at any place where the script could be in a loop with no wait calls.
These places are for, while, do-while, label, user function call and manual event function call.
Call goes through to an XEngineScriptBase which extends ScriptBase.
IEngine is extended to supply necessary engine-specific parent class references and constructor parameters to Compiler.
Unfortunately, since XEngineScriptBase has to be passed WaitHandle in its constructor, older compiled scripts will fail to load with an error on the OpenSim console.
Such scripts will need to be recompiled, either by removing all *.dll files from the bin/ScriptEngines/<region-id> or by setting DeleteScriptsOnStartup = true in [XEngine] for one run.
Automatic recompilation may be implemented in a later commit.
This feature should not yet be used, default remains termination with Thread.Abort() which will work as normal once scripts are recompiled.
2013-01-17 23:39:09 +00:00
Robert Adams
a6afd2f706
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-01-17 14:51:52 -08:00
Robert Adams
75f710f1e7
BulletSim: Add one function that all actors who act on the physical
...
can use to know if the object is currently active.
Code cleaning including use of Util.ClampV function.
2013-01-17 14:47:35 -08:00
Robert Adams
caad1edabf
Add utility function to clamp a vector to a maximum magnitude.
2013-01-17 14:44:54 -08:00
Melanie
9c99ed26eb
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2013-01-16 16:52:57 +00:00
Melanie
5563a8916e
Complete removal of the now unused state queue
2013-01-16 16:45:18 +00:00
Diva Canto
37fcf87946
Changed a couple of debug messages at the request of osgrid.
2013-01-16 08:20:32 -08:00
Robert Adams
8ee9daa121
BulletSim: add the editting children in linkset going phantom bug to TODO list.
2013-01-15 21:08:47 -08:00
Robert Adams
5d098d8f17
BulletSim: don't modify angular parameters when doing LIMIT_MOTOR_UP.
...
It was a dumb idea to try and do a nose over feature for jumping cars anyway.
Add better logging of native shape creation/reuse so can tell the difference.
2013-01-15 21:08:46 -08:00
Robert Adams
61ff79587b
BulletSim: add debugging messages to know when assets for physical
...
objects have been fetched.
Update TODO list with more work.
2013-01-15 21:08:46 -08:00
Robert Adams
daef2b8d87
BulletSim: reduce maximum force a script can apply (like in llApplyImpulse)
...
to the documented maximum from the outragious number previously.
2013-01-15 21:08:46 -08:00
Justin Clark-Casey (justincc)
0963ece25b
Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)
...
This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability.
If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread.
This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period.
Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
This commit, unlike 1b5c41c
, passes the wait handle as an extra parameter through IScript.Initialize() instead of passing IScriptInstance itself.
2013-01-16 02:07:43 +00:00
Justin Clark-Casey (justincc)
b8949024bc
Revert "Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)"
...
Doing this as a favour to Melanie. This will be back with passing the wait handles directly to the api.
This reverts commit 1b5c41c14a
.
2013-01-16 01:45:09 +00:00
Justin Clark-Casey (justincc)
03a8a4426f
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-01-16 00:20:18 +00:00
Justin Clark-Casey (justincc)
1b5c41c14a
Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)
...
This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability.
If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread.
This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period.
Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
2013-01-16 00:12:40 +00:00
Justin Clark-Casey (justincc)
fccb03227e
Instead of passing separate engine, part and item components to script APIs, pass down IScriptInstance instead.
...
This is to allow the future co-operative script thread terminate feature to detect and act upon termination requests.
This splits the assembly and state loading out from the ScriptInstance() constructor to a separate Load() method
in order to facilititate continued script logic regression testing.
2013-01-15 21:13:22 +00:00
BlueWall
f54b398540
Merge branch 'master' of /home/opensim/var/repo/opensim
2013-01-15 10:08:27 -05:00
BlueWall
ca3e0d67d2
Add Json-Rpc 2.0 To Registered Handlers
...
Added registration json-rpc handlers in the http server. Covers version 2.0
See: http://www.jsonrpc.org/specification
2013-01-15 10:04:16 -05:00
Robert Adams
021964c6e0
BulletSim: tweeks to improve hover.
2013-01-15 04:24:24 -08:00
Robert Adams
181d4c6fcb
BulletSim: temporarily disable banking and direction deflection
...
because the computations are wrong.
Add VehicleTorqueImpulse routines.
2013-01-15 02:58:14 -08:00
Robert Adams
0374b2a0b4
BulletSim: fix logic for enabling unmanaged code debug messages.
...
Free pinned memory when physics engine is unloaded.
2013-01-15 02:21:38 -08:00
Robert Adams
edf198b766
Merge branch 'master' of git://opensimulator.org/git/opensim
2013-01-15 01:46:30 -08:00
Robert Adams
13778c895a
BulletSim: by default, turn on continuious collision detection (CCD)
...
and enable friction computation caching. Remove dangerous BulletSim
settings from OpenSimDefaults.ini.
2013-01-15 01:44:34 -08:00
dahlia
055b8a2d58
move resit fix to ScenePresence.cs and allow for requesting sit on objects other than the object currently sat on
2013-01-14 22:24:24 -08:00
Justin Clark-Casey (justincc)
1c240cd555
Print full stacktrace from plugin loading failure to help determine what went wrong, rather than a possibly unhelpful simple exception message.
2013-01-15 01:07:20 +00:00
Justin Clark-Casey (justincc)
c846cefda9
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-01-15 00:24:51 +00:00
Robert Adams
4e1ca890c2
BulletSim: fix not moving physical objects below terrain to over terrain.
...
Add locking on register prestep action list preventing potential race conditions.
Little comment and formatting changes.
2013-01-14 15:46:46 -08:00
Justin Clark-Casey (justincc)
7978b349bd
refactor: Simplify ScriptInstance by retaining reference to SceneObjectPart instead of sometimes but not always looking it up.
2013-01-14 23:19:47 +00:00
Robert Adams
8bf0a9f85d
BulletSim: disable center-of-mass computation for linksets until debugged. Move physical prim above ground if it is underground. Previously tried to correct by applying and up force but the prim would never go through the ground.
2013-01-14 07:50:58 -08:00
Robert Adams
459fcd81c9
BulletSim: move center of gravity of linkset to its geometric center.
...
Necessitated allowing simulator and physical position of a body to
get out of sync since Bullet assumes that <0,0,0> is the center of mass.
Update DLLs and SOs for the UpdateChildTransform so positions of
individual prim in a linkset can be implemented.
2013-01-11 16:47:53 -08:00
Robert Adams
eacc2561d1
BulletSim: add osGetPhysicsEngineType() LSL function and update
...
the physics engines to return the name that is specified in the INI
file ("physics = XXX") as the type of engine.
This os function is a little different than the others in that it
does not throw an exception of one is not privilaged to use it.
It merely returns an empty string.
2013-01-11 16:47:35 -08:00
Robert Adams
93adc4cb66
BulletSim: Add IsSelected attribute to physical objects. Have vehicles check to see if physical before trying to step. Replace vehicle gravity application. Previously relying on Bullet to apply gravity but since vehicles over-ride the velocity calculation, gravity never had a chance to accelerate the body down. Added AddForceImpulse as well as AddForce for those who need to apply immediate velocity updates. Use the impulse to apply the linear motion.
2013-01-11 16:47:20 -08:00
Robert Adams
daacd4deed
Fix exception reporting in SceneObjectPart so it logs what the exception is rather than just saying it happened.
2013-01-11 16:47:07 -08:00
Robert Adams
7e58bbaac6
BulletSim: Redo linear function coding so they can better interact. New algorithm for limitMotorUp that relies on going up when not colliding rather than distance from ground. Add parameter for turning on and off embedded source vehicle debugging.
2013-01-11 16:46:53 -08:00
Robert Adams
98168edc29
BulletSim: remove double application of buoyancy. Centralize computation of buoyancy. Add motor angular debugging controls.
2013-01-11 16:46:38 -08:00
Robert Adams
b592ec265b
BulletSim: fix the 'No recognised physics mesh found ...' error spew by remembering that the last asset fetch failed until the simulator resets the shape parameters.
2013-01-11 16:44:34 -08:00
dahlia
72cc94cfbc
add some sanity checking to HandleAgentRequestSit handler
2013-01-10 20:21:18 -08:00
Justin Clark-Casey (justincc)
660d36a5b0
Implement a workaround solution for saving manual script state changes by the user before logout instead of wrongly removing the script early.
...
This workaround relies on the fact that a closing client goes inactive before the attachments derez calls happen.
This reverts the change to remove scripts too early instead of stopping them, since the the two step stop then remove is necessary to execute the detach event.
2013-01-11 02:28:43 +00:00
Justin Clark-Casey (justincc)
05ac6d3209
Save attachments on detach/exit if a contained script state has been changed.
...
This involves making Attachments module listen for start/stop script changes.
It also involves removing the script from the region on detach in the same manner as every other DeleteSceneObject() call rather than simply stopping it
This is necessary tue to the bad assymetry of start and stop script triggers but it appears to be the correct behaviour anyway, as detached objects are completely gone from the sim.
Not just in a state where their scripts have been stopped.
2013-01-11 01:46:36 +00:00
Justin Clark-Casey (justincc)
26347307ec
Fix a regression in the last few scene commands changes where setting these via the viewer estate dialog stopped working.
...
Forgot to register the new interface.
Also removes some code which got included by adpating an existing module.
2013-01-11 00:08:52 +00:00
Justin Clark-Casey (justincc)
f3a2bbbd93
Add "debug scene get" console command to list current scene options
2013-01-10 23:56:11 +00:00
Justin Clark-Casey (justincc)
a16ae5d7e3
Move scene debug commands into separate module. Command changes from "debug scene <key> <value>" to "debug scene set <key> <value>" to accomodate future settings
2013-01-10 23:49:48 +00:00
Justin Clark-Casey (justincc)
983e458bb6
refactor: route the final scene backup through the same code that handles periodic backup
...
This is rather than making unnecessary duplicate checks that the SOG later performs again.
2013-01-10 22:59:40 +00:00
Justin Clark-Casey (justincc)
17f21ba9a0
minor: Capitalize GroupsModule command category
2013-01-10 22:46:25 +00:00
Justin Clark-Casey (justincc)
e65737be93
minor: add missing newline to "debug scene" console command
2013-01-10 22:42:33 +00:00
Justin Clark-Casey (justincc)
f566dc0618
Remove unimplemented "debug teleport" console command
2013-01-10 22:42:12 +00:00
Justin Clark-Casey (justincc)
701ca1e4b8
Add "debug scene pbackup true|false" console command. This enables or disable periodic scene backup. For debug purposes.
...
If false, scene is still saved on shutdown.
2013-01-10 22:38:48 +00:00
Justin Clark-Casey (justincc)
170d376967
On baked texture save, replace any HG ID with an ordinary asset ID so the HGAssetBroker doesn't try to save back to the avatar's originating region
2013-01-10 01:45:56 +00:00
Justin Clark-Casey (justincc)
84407e322f
revert accidental change to MemoryWatchdog stat calculation in previous b1b4687
2013-01-10 01:30:00 +00:00
Justin Clark-Casey (justincc)
b1b4687250
Add "show script timers" command to show script timers. For debug purposes.
...
Also, "show sensors" changes to "show script sensors".
2013-01-10 00:57:49 +00:00
Justin Clark-Casey (justincc)
a0000a034f
Add "show sensors" command to show script sensor information for debug purposes.
2013-01-10 00:32:22 +00:00
Justin Clark-Casey (justincc)
290dc274ec
minor: Remove unnecessary commented out code from last commit c28a2f05
and fix up code comment
2013-01-09 01:04:43 +00:00
Justin Clark-Casey (justincc)
c28a2f05ca
minor: make spacing consistent in console help output
2013-01-09 00:54:28 +00:00
Melanie
e4fad4a09d
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2013-01-09 00:21:43 +00:00
Robert Adams
df1d7414ad
BulletSim: Fix hover height (boats float at the correct level).
...
Fix problem of vehicles going crazy when backing up.
2013-01-08 16:37:49 -08:00
Melanie
f16c4a254c
Revert "Prevent empty Anim Packs"
...
This reverts commit 5561333668
.
2013-01-09 00:20:24 +00:00
Melanie
c1c540f454
Revert "Fix sequence id fr default anim"
...
This reverts commit a775931a0c
.
2013-01-09 00:20:14 +00:00
Justin Clark-Casey (justincc)
3d5e3e35b7
minor: Fix command match of "debug script" command to "debug scripts" to match other scripts commands (and it's own short help text)
2013-01-09 00:08:08 +00:00
Justin Clark-Casey (justincc)
5fa4b8b144
minor: Allow "script *" console commands to take multiple script item ids
2013-01-09 00:01:48 +00:00
Melanie
a775931a0c
Fix sequence id fr default anim
2013-01-08 23:36:05 +00:00
Melanie
5561333668
Prevent empty Anim Packs
2013-01-08 23:12:32 +00:00
Melanie
2ac96dd181
Add the new UpdateAgentInformation cap to make maturity on more recent viewers
...
work.
2013-01-08 22:52:14 +00:00
Robert Adams
1603606f1d
BulletSim: improve vehicle angular banking and deflection computation. Rotate angular correction forces to be world relative rather than vehicle relative.
2013-01-07 22:00:50 -08:00
Robert Adams
8452c0a870
BulletSim: add function to push avatar up when hitting stairs.
...
It looks like BulletSim and ODE rely on penetration correction to cause
the avatar to move up and thus allowing walking up stairs. Object
penetration was minimized for walking and flying (so one doesn't go
through walls) and this stopped stairs from working. This commit
introduces avatar movement code to check for collisions at the
feet while walking and attempts to raise the avatar for the steps.
Not yet perfect but movement is better.
2013-01-07 16:05:02 -08:00
Robert Adams
599dbc3d95
BulletSim: fix exception when re-creating the terrain when loading an OAR file
2013-01-07 16:04:21 -08:00
Robert Adams
2e5222055f
BulletSim: comments and removing small compile errors introduced in last commit.
2013-01-06 22:56:16 -08:00
Robert Adams
9393403253
BulletSim: update DLLs and SOs with better debugging output.
...
Add definition of hand crafted avatar mesh. Not used yet.
Comments and cleanup.
2013-01-06 14:01:15 -08:00
Robert Adams
2eba80a8cd
BulletSim: fix problem where mesh shapes were physically just their bounding box and not the complete mesh. Fill mesh physical objects are back.
2013-01-04 17:06:52 -08:00
Robert Adams
48cfc6d089
BulletSim: implement llMoveToTarget by adding PIDActive, etc.
...
Implementation of non-vehicle hover but haven't tested it a lot.
Update TODO list.
2013-01-04 17:06:51 -08:00
Robert Adams
d0c7f7f050
BulletSim: add some features to the PID motor to make it more flexible.
2013-01-04 17:06:51 -08:00
Robert Adams
613f516007
BulletSim: convert avatar movement from a force to an impulse. Shouldn't
...
change functionality but removes an oddity in computing the force.
2013-01-04 17:06:50 -08:00
Robert Adams
2c6b269b6e
BulletSim: add initial implementation of llMoveToTarget and hover height.
...
Not all there yet.
2013-01-04 17:06:50 -08:00
Robert Adams
5432180027
BulletSim: reorganize motor code a little to pull together common functions.
...
Add BSFMotor.
2013-01-04 17:06:50 -08:00
Robert Adams
44492b3a49
BulletSim: add comments to force and impulse setting functions
...
so it is clear what Bullet is actually doing with the set values.
2013-01-04 17:06:49 -08:00
Robert Adams
92a6958b6d
BulletSim: fix problem where pre-step actions would not replaced
...
by new registrations thus causing multiple instances of an action.
2013-01-04 17:06:49 -08:00
Robert Adams
2eda385f5e
BulletSim: add ResetBroadphasePool and ResetConstraintSolver diagnostic
...
functions. If values set from console, the functions are called. Looking
for why the collision pools fill up with unnecessary stuff.
2013-01-04 17:06:48 -08:00
Justin Clark-Casey (justincc)
7232cedd2b
Set default particle burst count to 1 instead of 0 in any set particle system script call that does not have an empty list.
...
As per http://opensimulator.org/mantis/view.php?id=6353
2013-01-04 21:37:11 +00:00
Justin Clark-Casey (justincc)
7e45096314
Fix build break caused by missing ) from dce2809
.
...
Was hand-typing in a line of code I had tested before but not retested this time
2013-01-04 21:22:51 +00:00
Justin Clark-Casey (justincc)
dce2809137
Automatically grant sit-related llRequestPermissions() for subsequent avatars sitting on the same scene obejct, instead of wrongly popping up request permissions dialog.
...
Resolves http://opensimulator.org/mantis/view.php?id=6478
2013-01-04 21:18:53 +00:00
Justin Clark-Casey (justincc)
a3bf3a2aa5
refactor: simplify llGetNumberOfPrims() to return prim count + sitting avatar count rather than independently inspecting every scene presence
2013-01-04 20:56:39 +00:00
Justin Clark-Casey (justincc)
9869ca83b4
Fix llGetLinkName() to return the name of the last avatar sat as the last link number.
...
As per http://wiki.secondlife.com/wiki/LlGetLinkName
2013-01-04 20:54:11 +00:00
Justin Clark-Casey (justincc)
9503383887
Fix llGetLinkKey() to return the last sat avatar as the last link number.
...
As per http://wiki.secondlife.com/wiki/LlGetLinkKey
This is done by keeping a scene-object wide list of sitters.
This also fixes bugs in this function where linknums 0 and 1 weren't treated properly if there were sitting avatars on a single prim.
This also fixes a minor race condition for multiple concurrent sitters on a prim with no current sitters by locking on the object-wide list rather than individual sop lists
Addresses http://opensimulator.org/mantis/view.php?id=6477
2013-01-04 20:34:39 +00:00
Justin Clark-Casey (justincc)
a75f24bb79
minor: Add some doc to the extremely unhelpful 'fudge....' comment as to why we're deselecting the prim in code before scheduling an update on attachment
2013-01-03 21:06:50 +00:00
Justin Clark-Casey (justincc)
7f195de303
Fix problem where object attached from ground often does not get attached properly.
...
It seems this is happening because we send a kill for objects that are selected when attached.
A code comment says that this is to get the client to deselect it, but v3 and v1 clients do this just fine without the kill.
Aims to address http://opensimulator.org/mantis/view.php?id=6456
2013-01-03 20:57:14 +00:00
SignpostMarv
aa78df4a79
Scipt modules get the OpenMetaverse types, so lists passed as arguments to script module functions which then later call LSL_Types.list.GetVector3Item() or LSL_Types.list.GetQuaternionItem() methods would then trigger an InvalidCastException, which is now avoided.
2013-01-03 00:18:33 +00:00
SignpostMarv
a5ac6af16a
Improving documentation of AttachToAvatar and GetLine methods in LSL_Api.cs based on doxygen error output
2013-01-03 00:17:24 +00:00
SignpostMarv
79b7c571ff
updating documentation in SampleMoneyModule based on doxygen error log output; changing an xml-style hint to a uri-style hint in the class summary, improving documentation of Initialise method and removing a superfluous parameter, improving documentating of ClientClosed method and documenting an omitted parameter
2013-01-03 00:17:24 +00:00
Justin Clark-Casey (justincc)
589e3e8686
minor: Change channel digger replacement message in TerrainModule to Info from Warn.
...
This is to stop this unnecessarily triggering log analysis code which reports warn and error level statements.
2013-01-03 00:03:29 +00:00
Oren Hurvitz
1b826b4877
Allow registering regions whose names are equivalent under LIKE but not truly equal
2013-01-02 23:31:19 +00:00
Oren Hurvitz
1a6694b264
Fixed several problems with the Sun: some settings didn't work, or were inconsistently used. - The sun position is always calculated by combining the sun settings in the Region and Estate. This fixes the problem that 'UseEstateSun' didn't work. - To remove ambiguity, the EstateToolsSunUpdate event no longer accepts the sun's position as parameters. That's because the position is always calculated from the Region and Estate settings. - Use only the 'FixedSun' flag to determine whether the sun is fixed; not the 'UseGlobalTime' flag. - Don't change the region's 'SunPosition' field according to the sun's position: this field is used only to set the position when using a FixedSun. (The 'SunVector' field does get updated according to the sun's position in the sky)
2013-01-02 23:16:24 +00:00
Oren Hurvitz
24e486e9df
Fixed: the AvatarEnteringNewParcel event wasn't triggered in some cases
...
If an avatar moved between regions: A -> B -> A, then when returning to region A the AvatarEnteringNewParcel wasn't triggered. This happened because the ScenePresence in region A still remembered its previous 'currentParcelUUID', so it appeared as if the avatar didn't change parcels. Now, however, when a ScenePresence becomes a child presence we clear its 'currentParcelUUID'.
2013-01-02 23:00:23 +00:00
Oren Hurvitz
5097ba81d4
Added locking in NullRegionData.
...
This prevents errors when one thread iterates over the regions (e.g., from RegenerateMaptileAndReregister()) while another thread is adding a region.
2013-01-02 22:48:25 +00:00
Justin Clark-Casey (justincc)
8f31649fad
Fix indenting on ConsoleDisplayTable, align indenting on "show animations" console command
2013-01-02 22:37:50 +00:00
Justin Clark-Casey (justincc)
2db1f22b89
minor: minor code and log formatting fixes to recent changes in LandManagementModule
2013-01-02 22:31:18 +00:00
Oren Hurvitz
9784e4e07d
Changed locks to prevent deadlocks (especially during multi-region Load OAR)
2013-01-02 22:28:41 +00:00
Oren Hurvitz
d2f4ca0dfe
If Save OAR/IAR times-out while waiting for assets then notify the caller that the operation failed
2013-01-02 22:15:00 +00:00
Justin Clark-Casey (justincc)
6b55f51837
minor: Allow objects to be added directly to a row on a ConsoleDisplayTable rather than having to ToString() them first
2013-01-02 22:11:13 +00:00
Oren Hurvitz
70695a6ed9
Implemented Return Objects when it's invoked from the Top Colliders or Top Scripts dialogs
2013-01-02 21:59:01 +00:00
Justin Clark-Casey (justincc)
addab1244e
Add "show animations" console command for debug purposes.
...
This shows the current animation sequence and default anims for avatars.
2013-01-02 21:38:00 +00:00
Justin Clark-Casey (justincc)
30e5e5cce6
If an NPC is unowned, then always auto-grant permissions requested via llRequestPermissions()
...
This is consistent with all other OSSL NPC functions that allow unowned avatars to be manipulated.
Aims to address http://opensimulator.org/mantis/view.php?id=6483
2013-01-02 19:25:52 +00:00
Robert Adams
aa236b2020
BulletSim: add parameter to have Bullet output performance statistics
...
every so many frames. Default to off.
2013-01-01 17:27:34 -08:00
Robert Adams
b14b65ea95
BulletSim: move selection of the unmanaged Bullet DLL from BSPlugin
...
into the unmanaged Bullet interface class.
2013-01-01 17:27:33 -08:00
Robert Adams
9d840fd2ee
BulletSim: move over and port the interface for BulletXNA.
...
Copied BulletSNPlugin.BulletSimAPI to a new
BulletSPlugin.BSAPIXNA.cs and then modifyed the latter to
comply with the BSAPITemplate definition. Not totally debugged
but the code is all there for an INI variable to select either
unmanaged C++ Bullet or the C# version of Bullet.
2013-01-01 17:27:33 -08:00
Robert Adams
0662d109c2
BulletSim: fix line endings.
2013-01-01 17:27:33 -08:00
Robert Adams
04132d3af4
BulletSim: subclass Bullet[World|Body|Shape|Constraint] for unmanaged
...
to have pointers and managed to have objects.
Initial paste of XNA code. Commented out.
2013-01-01 17:27:32 -08:00
Oren Hurvitz
a0739a80a8
Fixed bugs when getting the root folder.
...
1. The error checking for the case where there's no "My Inventory" folder was
incorrect: it checked the wrong variable.
2. If GetSystemFolderForType() is called to get AssetType.RootFolder then
it should return the root folder immediately; not look for another root
folder below it.
2013-01-02 00:04:14 +00:00
Justin Clark-Casey (justincc)
bc9a7ba0d6
minor: Assign names to the different SmartThreadPools for debugging purposes.
...
A different approach to the patch in http://opensimulator.org/mantis/view.php?id=6462
that doesn't involve further forking of SmartThreadPool
2013-01-01 23:57:20 +00:00
Justin Clark-Casey (justincc)
416244051d
refactor: call Util.InitThreadPool() if we are initializing an uninitialized pool on first use rather than constructing it ourselves.
...
No functional change.
2013-01-01 23:50:38 +00:00
Robert Adams
db3b6e8921
BulletSim: remove unused unmanaged memory reference functions from BSAPITemplate.
2012-12-31 19:57:26 -08:00
Robert Adams
6988b5ceaf
BulletSim: remove rigid body contruction functions from BSAPITemplate that relied on prebuilt construction info structures.
2012-12-31 19:57:25 -08:00
Robert Adams
9396ccc078
BulletSim: eliminate the use of the unmanaged HeightMapInfo structure.
...
Remove all related calls from the unmanaged and BSAPITemplate interfaces.
Update DLLs and SOs to include the version without HeightMapInfo structures.
2012-12-31 19:57:25 -08:00
Robert Adams
3d0fc70864
BulletSim: complete movement of BulletSimAPI functions to BSAPITemplate.
...
Update BulletSim DLLs and SOs with simplier step function interface.
2012-12-31 19:57:24 -08:00
Robert Adams
c2a7af18b6
BulletSim: nearly complete in conversion from BulletSimAPI to BSAPITemplate. Only initialization and debug fuctions left.
2012-12-31 19:57:23 -08:00
Robert Adams
5379d6d112
BulletSim: remove all the debug printing of pointer formatting (.ToString(X)) and replace it with a method on BulletBody, BulletShape, ...
2012-12-31 19:57:22 -08:00
Robert Adams
9218748321
BulletSim: another round of conversion: dynamics world and collision object functions.
2012-12-31 19:57:22 -08:00
Robert Adams
9fd0e1b080
BulletSim: add the implementation files for the two versions of Bullet:
...
unmanaged (C++) and managed (C#).
2012-12-31 19:57:21 -08:00
Robert Adams
48f718f39f
BulletSim: first round of conversion from direct BulletSimAPI interfacing by BulletSim core to using the BulletSimAPITemplate. Physical object creation and destruction first.
2012-12-31 19:57:21 -08:00
Robert Adams
203588e3c0
BulletSim: change physical data structures to classes. Add default
...
instantiations for PhysBody and PhysShape when BSPhysObject is created
to account for them being classes and not structures.
Update TODO list.
2012-12-31 19:57:21 -08:00
Robert Adams
4914d6c0ea
Resolve Mantis 6480 ( http://opensimulator.org/mantis/view.php?id=6480 )
...
by reversing the sign on the recoil computation and adding a
[XEngine]RecoilScaleFactor parameter which defaults to zero.
Testing in SL seems to show that there is not a recoil action there.
Or, at least, it is very small. If someone knows how small, the default
for the scale factor should be changed.
2012-12-31 19:57:20 -08:00
Robert Adams
26f364cc5d
Comment out test messages that go directly to the console.
2012-12-31 19:57:20 -08:00
Robert Adams
28a8949b9f
BulletSim: remove check for small motor movement because, while it
...
did the right thing for stopping (speed reducing to zero), it prevented
movement from starting (speed increasing from zero). Will revisit
when the generalize PID motor is debugged.
2012-12-29 10:19:47 -08:00
Robert Adams
0538096fa3
BulletSim: an 'if' to suppress multiple setting of avatar orientation.
...
Looks like the viewer bombards the server with avatar orientation
information (we're talking several hundred a second) when the avatar
is being turned or when walking. This change just reduces the number
of 'set' calls into unmanaged code.
2012-12-29 08:32:57 -08:00
Robert Adams
db6c0363f0
BulletSim: tweeking avatar capsule code in an attempt to have
...
asymmetrical avatar capsule work now that rotation is being passed
from the simulator. Turns out the Bullet capsule is just not very
functional: it doesn't scale properly, the implementation only half
does asymmetry and, in general, is hard to work with.
Avatar shape is about what it was before these changes.
Added initial data structures for avatar shape mesh.
2012-12-29 08:03:57 -08:00
Robert Adams
fdf8732cd7
ScenePresence passes the avatar rotation down to the physics engine. This will be a no-op for ODE but enables asymmetrical avatars for BulletSim.
2012-12-28 16:29:16 -08:00
Robert Adams
7266eeca6e
BulletSim: add 'AvatarAlwaysRunFactor' parameter and use in setTargetVelocity
...
to implement the 'always run' feature.
2012-12-28 12:01:57 -08:00
Robert Adams
70e0a86601
BulletSim: fix problem of avatars appearing to walk through walls
...
by moving the movement motor to a pre-step action and out of its
questionable previous home in UpdateProperties.
2012-12-28 11:56:07 -08:00
Robert Adams
1f6aaad0b5
BulletSim: correct collision mask definition for linkset children.
...
Remove unused code. Add comments and TODOs.
2012-12-27 22:12:28 -08:00
Robert Adams
422f0fd6ec
BulletSim: fix physical object not interacting with static objects.
...
Another instance of the underlying Bullet doing, ah, helpful things
when items are added to the world.
2012-12-27 22:12:28 -08:00