Commit Graph

13118 Commits

Author SHA1 Message Date
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
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
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
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
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