Commit Graph

16431 Commits (c1115e4c2e8a35fee3287add748881f3718deba5)

Author SHA1 Message Date
Robert Adams dce9e323f4 BulletSim: remove degenerate triangles from meshes. This fixes the
invisible barriers in sculptie doorways (Mantis 6529).
Bump up level-of-detail for physical meshes to 32 (the max). This
fixes the invisible barriers that showed up in prim cut arches.
NOTE: the default LOD values are removed from OpenSimDefaults.ini.
   If you don't change your OpenSimDefaults.ini, you will continue
   to see the arch problem.
2013-02-05 16:56:33 -08:00
Robert Adams 13233da66c BulletSim: add debugging looking for doorway sculpty problems 2013-02-05 16:56:28 -08:00
Robert Adams ad438ee59f BulletSim: rework some parameter setting implementation moving functionality that was in BSScene to BSParam. Remove unused parameters that were passed to the unmanaged code. Update DLLs and SOs for the new param block. 2013-02-05 16:56:23 -08:00
Robert Adams 2b6d226911 BulletSim: correct angular vertical attraction to properly correct an upside down vehicle. 2013-02-05 16:56:17 -08:00
Diva Canto 4cdee3dd3c Changed protection of CreateDefaultAppearanceEntries to protected, so extensions of the UserAccountService can reuse this. 2013-02-05 16:28:25 -08:00
teravus 2104e4d4d4 * the root prim was being given an OffsetPosition in addition to setting the position when creating the root prim. The offset position caused the positioning code to re-move the root prim when you selected it and released it. 2013-02-05 18:46:02 -05:00
teravus 1dc09d8e8f We're not really done here.. but we're getting there. Socket Read is working.. Still have to do Header.ToBytes and compose a websocket frame with a payload. 2013-02-05 18:02:25 -05:00
Melanie 6bce4bc112 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2013-02-05 20:09:45 +00:00
Melanie 2163bebeb4 Try to fix uploaded mesh rotations - code from Avination code base. 2013-02-05 20:09:02 +00:00
Justin Clark-Casey (justincc) 562067eb16 Fix bug where viewers would not see the "Module command functions not enabled" error if these were disabled and a viewer attempted to call one.
This was not working because the shouter was wrongly signalled as an agent rather than a prim
2013-02-05 02:09:21 +00:00
Justin Clark-Casey (justincc) 1fc9f282fa Merge branch 'dynamic-attributes2' 2013-02-05 00:35:15 +00:00
Justin Clark-Casey (justincc) 1f1da23097 Bump version and assembly version numbers from 0.7.5 to 0.7.6
This is mostly Bluewall's work but I am also bumping the general version number
OpenSimulator 0.7.5 remains in the release candidate stage.
I'm doing this because master is significantly adding things that will not be in 0.7.5
This update should not cause issues with existing external binary DLLs because our DLLs do not have strong names
and so the exact version match requirement is not in force.
2013-02-05 00:23:17 +00:00
teravus ee4f8ac193 Merge branch 'master' into JSONTCPClient 2013-02-03 08:18:53 -05:00
teravus 8fd99ecab1 Merge branch 'master' of ssh://opensim/var/git/opensim 2013-02-03 08:14:47 -05:00
teravus 6b0310b829 Adds the ability to load more then one IClientNetworkServer thereby allowing additional client network servers at the same time. Use comma separated values in clientstack_plugin in your config. Additional plugins lying around shouldn't be picked up because the loader only loads configured dll assemblies and breaks at the first IClientNetworkServer found in the assembly. (the only new functionality is the ability to specify more in config). Note: The existing functionality also passes in a nini config.. and has a boolean to determine if the client network server should be initialized for a specific scene. 2013-02-03 08:13:52 -05:00
teravus d18fbb98b7 Adds the ability to load more then one IClientNetworkServer thereby allowing additional client stacks. Use comma separated values in clientstack_plugin in your config. 2013-02-03 07:44:45 -05:00
teravus 27a0b3ecbd Commit 1 in of this branch feature. This is one of many... 2013-02-03 06:49:17 -05:00
BlueWall 219a25c985 Merge /home/opensim/src/opensim 2013-02-01 23:14:19 -05:00
BlueWall 0ab68f6c31 Revert "Update assembly version numbers"
This reverts commit 141ad829f4.
2013-02-01 23:13:33 -05:00
BlueWall 840f72f8a8 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-02-01 22:07:08 -05:00
Justin Clark-Casey (justincc) 0d0bfa4dcd minor: change comment about assuming script references are textures in UuidGatherer since this is no longer the behaviour. 2013-02-02 03:02:04 +00:00
BlueWall 57cf89f4a9 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-02-01 21:58:32 -05:00
BlueWall 141ad829f4 Update assembly version numbers 2013-02-01 21:57:49 -05:00
Justin Clark-Casey (justincc) 9822bb664b Log missing assets on "fcache assets" found. This ignores references found by scanning LSL/notecard files since these are the source of false positives.
This also changes UuidGatherer to reutn an AssetType.Unknown for embedded script/lsl references instead of Texture, since these are often not textures.
This is added to help people in determining when they have missing assets such as textures, etc.
In this case, one wants to run "fcache clear" first.
2013-02-02 02:57:38 +00:00
Justin Clark-Casey (justincc) 2ff301ca11 Correct spelling mistake in new RayFilterFlags, LSLPhanton -> LSLPhantom 2013-02-02 01:34:49 +00:00
Justin Clark-Casey (justincc) 9588328242 Stop exceptions being thrown if GenerateMapTiles = false but no static map tile has been set. Do more informative warn instead. 2013-02-02 00:59:26 +00:00
teravus d8d4e7f236 Sit and Spin reduction. If sitting, slam avatar angular velocity to zero. 2013-02-01 15:42:24 -05:00
Robert Adams 5bb85a14d4 BulletSim: fix problem where editting a physical linkset caused the
child prim physical positions to get out of sync with the view.
More reliably compute the offset of children in a physical linkset.
2013-02-01 11:52:27 -08:00
Robert Adams 75a05c16c5 BulletSim: fix crash caused when linksets were rebuilt. A problem added
when individual child pos/rot changes were implementated a week or so ago.
Remove some passing of inTaintTime flag when it was never false.
2013-01-31 15:56:10 -08:00
Robert Adams ed71c939fc BulletSim: make sure vehicle physical properties are set when going
physical by delaying setting until pre-step time. Change vehicle.Refresh()
to schedule the pre-step setting.
Comments and updating of TODO list.
2013-01-31 15:56:02 -08:00
Robert Adams 371449db2f BulletSim: clean up TargetVelocity implementation by using the default defn in the PhysicsActor base class. 2013-01-31 15:55:53 -08:00
Mic Bowman f984922dfd Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-31 14:54:19 -08:00
Mic Bowman 1e0420431f Move the JsonStore regular expressions to static variables to avoid
recompiling on every operation. Added JsonList2Path script function
to simplify array iteration.
2013-01-31 14:53:16 -08:00
Melanie 6a4c8824ea Whitespace fix and removing unneccessary parentheses 2013-01-31 20:46:41 +00:00
Dan Lake b659ccfc80 Merge branch 'master' of git://opensimulator.org/git/opensim 2013-01-31 11:15:22 -08:00
Dan Lake 17440d8a29 Added option for UUID as command parameters. This lets the command handle the UUID parsing and type checking before the command is executed. 2013-01-31 11:14:43 -08:00
BlueWall a8fa8af9fc Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-30 23:44:06 -05:00
Jak Daniels fac72d540b Allow use of MaptileStaticUUID in Regions.ini to override the global setting in OpenSim.ini for each region.
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2013-01-30 23:37:02 -05:00
Mic Bowman a0ef3df194 Add JsonTestStore to determine if a JsonStore is associated with
a particular UUID.
2013-01-30 14:45:03 -08:00
teravus 52ea6eadae * This adds a bit more to the previous flying roll effect by adding additional roll when pressing page down, and reducing your roll when pressing page up to make it feel more responsive and give the user more visual feedback. 2013-01-30 07:34:48 -05:00
teravus 7c4e0ff03c * Adds a satisfying angular roll when an avatar is flying and turning. (General, not physics). Makes flying not feel as stiff. 2013-01-30 06:22:05 -05:00
Justin Clark-Casey (justincc) d42c7afe3f Add JsonDestroyStore() basic regression test 2013-01-30 05:56:30 +00:00
Justin Clark-Casey (justincc) 5a22efe69c refactor: Make invocations of json store functions from the regression test simpler 2013-01-30 05:49:28 +00:00
Justin Clark-Casey (justincc) addf9ada49 Add regression test for script func JsonRemoveValue() 2013-01-30 05:39:34 +00:00
Justin Clark-Casey (justincc) 5ac84a3793 Fix issue where lsl -> c# generation in co-operative termination mode did not correctly handle single statement versions of for, while and do-while loops.
Add regression tests to validate the fix.
This problem will not affect the default abort termination mode.
2013-01-30 03:52:22 +00:00
Robert Adams a61ecee227 BulletSim: fix physics repositioning when under ground to only happen
for physical objects. Non-physical objects can go anywhere they want.
2013-01-29 17:04:28 -08:00
Justin Clark-Casey (justincc) 39700445f2 minor: change name of json script tests to JsonStoreScriptModuleTests instead of copy/pasted LSL_ApiInventoryTests 2013-01-29 04:36:41 +00:00
Justin Clark-Casey (justincc) ccdf86c737 minor: remove EnableLogging() left over in CoopTerminationTests 2013-01-29 04:35:05 +00:00
Justin Clark-Casey (justincc) e0f4e91d22 Try ignoring json tests if they can't be run due to being on <=.net 3.5 2013-01-29 04:26:47 +00:00
Justin Clark-Casey (justincc) fd34a75cde minor: Tidy up disabled logging on AssetTransactionModule for future use. Make it clear that transaction parameter to HandleUDPUploadRequest is an ID. 2013-01-29 04:03:33 +00:00
Justin Clark-Casey (justincc) 77cd74ded6 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-29 03:59:38 +00:00
Justin Clark-Casey (justincc) ca26ff9436 minor: remove some mono compile warnings in XEngine.cs 2013-01-29 03:58:11 +00:00
Robert Adams 47f09ed4c1 BulletSim: enable angular vertical attraction.
Increase terrain collision margin to help vehicles from tunneling
into same.
2013-01-28 17:21:13 -08:00
Robert Adams 531d0429d1 BulletSim: first unit test: vehicle angular attraction 2013-01-28 17:08:34 -08:00
Robert Adams e9aff0a91d BulletSim: do not zero an avatar's standing velocity if it is standing
on a moving object.
Rearrange pre/post action subscription code to put more in locks.
Add meshmerizer params to BulletSimTestUtil scene creation (and fix line endings).
Rebuilt version of DLLs and SOs with cleaned up code and no profiling for sure.
2013-01-28 15:11:50 -08:00
Robert Adams e4c6a19940 BulletSim: rename 'uint' to 'UInt32' to make clear the type that is passed to unmanaged code. 2013-01-28 15:11:20 -08:00
Robert Adams f6380a3ad3 BulletSim: fix the trimming of colliders so only the top 25 are returned. 2013-01-28 09:02:01 -08:00
Robert Adams b546af9ac2 BulletSim: simplify the initialization of some of the parameters.
Disable vertical attraction for vehicles by default (for the moment).
Fix bug where vehicle would go crazy when velocity got above a
   certain speed.
2013-01-27 12:50:07 -08:00
Robert Adams 26d4596080 BulletSim: reinstate the supression of rotational velocity for vehicles 2013-01-27 12:50:07 -08:00
Robert Adams a345a2feb7 BulletSim: add framework for BulletSim unit tests. No tests yet. 2013-01-27 12:50:06 -08:00
Robert Adams 05adf4b30f BulletSim: disable center-of-mass computation because it does not work yet 2013-01-27 12:50:06 -08:00
Robert Adams 80f0a978db BulletSim: fix compile error from last commit 2013-01-27 12:50:06 -08:00
Robert Adams 36f401d850 BulletSim: parameterize the value for gravity reduction for ground vehicles on the ground. Set defaults for vehicle factors to one. Debug logging changes. 2013-01-27 12:50:05 -08:00
Robert Adams ddef8f16e5 BulletSim: first attempt at reporting top colliders 2013-01-27 12:50:05 -08:00
Robert Adams dd08e1fba6 BulletSim: parameterize several vehicle debugging values: physical linear and angular force factors now default to less than 1 (0.2) vehicle friction and restitution now default to low values 2013-01-27 12:50:05 -08:00
Robert Adams c44a8e9f92 BulletSim: finish the post step event for physical object actions. Modify vehicle to use post step event for logging. 2013-01-27 12:50:04 -08:00
Melanie 776cc33541 Prevent items being destroyed by rename operations. Renaming of a wearable also
sends an asset transaciton but it is empty. So we can't ignore name data
when a transaction is present and can't treat every transaction as valid.

Conflicts:

	OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
2013-01-27 01:07:37 +00:00
Justin Clark-Casey (justincc) b0cff35d96 Fix issue where the "set terrain texture" console command did not tell the viewers that textures had updated (hence they did not display the changes).
Addresses http://opensimulator.org/mantis/view.php?id=6513
2013-01-26 04:27:01 +00:00
Justin Clark-Casey (justincc) 53833babf9 Add OnScriptMovingStartEvent and OnScriptMovingEndEvent to EventManager so that these can be triggered by future code (not yet implemented).
Also hooks up moving_start and moving_end script events, eliminating itemID on XEngine EventManager methods since this is completely unused.
An adaptation of the patch in http://opensimulator.org/mantis/view.php?id=6515
Thanks Garmin Kawaguichi and Signpost Marv.
2013-01-26 03:57:51 +00:00
Justin Clark-Casey (justincc) 8ea112a5b2 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-26 02:58:10 +00:00
Talun ceabb1b49a Mantis 6343: Turn a prim to flexy to OFF don't work llSetPrimParams
Correction so that scripts can turn Flexi off as well as on.
2013-01-26 02:55:24 +00:00
teravus 5128ae7b86 * This adds llVolumeDetect functionality to the C# implementation of BulletSim. 2013-01-25 20:15:37 -05:00
Justin Clark-Casey (justincc) c3fb114461 minor: Fix full scene part console report to show proper Light* names rather than all wrongly FlexiDrag 2013-01-26 00:31:50 +00:00
Justin Clark-Casey (justincc) d6d6618f62 minor: Call down to base OpenSimTestCase.SetUp() in NPCModuleTests to disable any enabled logging from previous tests 2013-01-26 00:28:45 +00:00
Justin Clark-Casey (justincc) 7a139f8e53 Remove the accidental PrimShapes column that I added back to the SQLite region store 2013-01-25 04:35:06 +00:00
Justin Clark-Casey (justincc) 7789415148 Fix tests by adding DynAttrs add column commands to RegionStore.migrations (these were originally in 021_RegionStore.sql which I might have forgotton to add 2 years ago). 2013-01-25 04:22:32 +00:00
Oren Hurvitz 6daf559fb6 Added unit tests for Dynamic Attributes 2013-01-25 04:03:30 +00:00
Oren Hurvitz 23f0610f0c Disabled DAExampleModule 2013-01-25 04:03:28 +00:00
Oren Hurvitz af6a7cf95d Added DynAttrs to the serialized XML format of prims. When copying prims, use deep copy for DynAttrs. 2013-01-25 04:03:26 +00:00
Oren Hurvitz 86802bcf93 Store NULL in the 'DynAttrs' column if the prim doesn't have any dynamic attributes 2013-01-25 04:03:24 +00:00
Oren Hurvitz fdec05a15e Stopped storing dynamic attributes in the PrimShape 2013-01-25 04:03:20 +00:00
Oren Hurvitz 8b4441d940 Changed DAMap to be the container of "data stores", which are OSDMaps. Store names must have at least 4 characters. 2013-01-25 04:03:18 +00:00
Oren Hurvitz 918b062866 Added missing DynAttrs references in MySQL 2013-01-25 04:03:15 +00:00
Justin Clark-Casey (justincc) 1650846df3 Lock DAMap rather than encapsulated OSDMap
This allows external lockers to preserve atomicity of dynamic attribute changes
2013-01-25 04:03:13 +00:00
Justin Clark-Casey (justincc) a6d9c26365 Encapsulate an OSDMap in DAMap (was DynAttrsOSDMap) rather than inheriting from it
This is the easier way to give us control over locking, rather than asking that OSDMap IDictionary methods be virtual
2013-01-25 04:03:11 +00:00
Justin Clark-Casey (justincc) a3e1e6dd61 Implement dynamic attribute persistence on mysql and mssql
mssql is untested
2013-01-25 04:03:09 +00:00
Justin Clark-Casey (justincc) d3095e2649 Add DAExampleModule to demonstrate dynamic attributes
This module demonstrates that we can add an arbitrary persisted value to SOP without any changes to core code.
Every time the object is moved, the move record is updated and the users in the scene alerted
The number of moves is persisted over server restarts in sqlite
2013-01-25 04:03:07 +00:00
Justin Clark-Casey (justincc) 1bd0b06ec1 Implement Dynamic Attributes for SOP and PBS. Implement storage in SQLite 2013-01-25 04:03:04 +00:00
Justin Clark-Casey (justincc) d977bb77cb Disable json tests for now - I see this is failing on jenkins because mono 2.4.3 doesn't have Funcs >5 params, though mono 2.6 onwards does.
Standardize logging in JsonStoreScriptModule and some minor code formatting.
2013-01-25 03:19:56 +00:00
Justin Clark-Casey (justincc) 614d4eda3e See if getting the registering JsonReadNotecard with MethodInfo works around an apparent issue with registering methods with more than 5 parameters on mono 2.4.3 2013-01-25 03:02:08 +00:00
Justin Clark-Casey (justincc) 4f52acaa83 Increase logging by enabling during test setup rather than during individual tests of for JsonStore 2013-01-25 02:32:38 +00:00
Justin Clark-Casey (justincc) 8c68451856 Enable logging in new json store tests to find out why they fail on jenkins but not locally. 2013-01-25 02:22:24 +00:00
Justin Clark-Casey (justincc) 844e60da0f Add JsonTestPath() regression test 2013-01-25 02:12:28 +00:00
Justin Clark-Casey (justincc) f32361d595 Add regression test for JsonSetValue() 2013-01-25 02:08:33 +00:00
Justin Clark-Casey (justincc) b914fb98c4 minor: remove mono compiler warning in SceneCommandsModule 2013-01-25 01:56:41 +00:00
Justin Clark-Casey (justincc) ba369c5cfe Add basic JsonGetValue() regression test. 2013-01-25 01:55:27 +00:00
Justin Clark-Casey (justincc) f557d7e828 Add basic JsonCreateStore() regression test 2013-01-25 01:48:31 +00:00
Robert Adams 6a5d088197 BulletSim: reduce the force of gravity on ground vehicles when they
are on the ground. Makes them a little more stable.
2013-01-24 16:26:04 -08:00
Robert Adams a2a32fc844 BulletSim: reduce the zeroing threshold for rotational velocity.
Sometimes settling of a vehicle from gravity introduces small
velocities that need to be kept.
2013-01-24 14:36:00 -08:00
Robert Adams 591faac3ac BulletSim: disable CCD (continuious collision detection) and
contact processing threshold since the first didn't solve tunneling
problems but used resources and the latter caused instabilities.
2013-01-24 14:35:42 -08:00
Robert Adams 2cf29c87bc BulletSim: zero motion on an object that we pop up because it is
below terrain. If the position is being corrected because it is out
of bounds, all other movement rules are out the window.
2013-01-24 14:35:23 -08:00
Robert Adams 3ecfddd791 BulletSim: remove exception that can happen when setting physics parameters from the console. 2013-01-24 14:35:05 -08:00
Talun 71f7bfc2ff Mantis 6508 llHTTPResponse body is incorrectly interpreted by IE
This patch html escapes responses going to IE so that they cannot be
interpreted as HTML if the response type is "text/plain". This has no
effect if the reponse type has been set to "text/html" by
osSetContentType

Signed-off-by: nebadon <michael@osgrid.org>
2013-01-24 14:48:20 -07:00
Robert Adams 427ab219b8 Add JSONification of WebStats module. Adds a '?json' query parameter
to the fetch URL to return the data in JSON format. Also adds a simple
'sim.html' that uses JavaScript to display the JSON data. Not pretty
but an example.
2013-01-24 10:44:57 -08:00
teravus d5b950633d * Added in the manifold point dept on collision desc. In BulletSim engine BulletXNA. 2013-01-24 07:36:24 -05:00
teravus ba9d6b7337 * Repairs the Object updates, Collision updates, and Child Prim methods making the bulletXNA engine work again.
* The only thing that had an issue was when creating a new RigidBody, BulletXNA didn't know the type SimMotionState and the upcast type is unknown in the constructor.   Therefore, I had to update the IMotionState with a new method 'SetBody'.    All of the duplicated type information has been removed and BulletXNA is not relying on any non-standard types external to the library.
2013-01-24 07:11:32 -05:00
teravus 878df52515 * This makes the non-physics llCastRay 'better'. It's not 'correctly working', and if you look deep enough, you see that the results are not really stable depending on the direction of the ray. 2013-01-23 21:58:51 -05:00
Justin Clark-Casey (justincc) f7feed4d44 Remove unnecessary System.Linq reference from Compiler.cs
Hopefully will fix windows build via compile.bat
2013-01-24 01:11:04 +00:00
Justin Clark-Casey (justincc) b775761104 Disable the not very useful infinite recursion co-op termination tests for now as they appear to cause failures with testing in jenkins.
These tests are not very useful anyway as they never actually get a chance to try termination before the script runs out of stack
2013-01-24 00:31:42 +00:00
Justin Clark-Casey (justincc) 957cea59a0 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-24 00:24:13 +00:00
Justin Clark-Casey (justincc) 1a610f30d8 Fix mono 2.4.3 build break by using CreateInstanceAndUnwrap 9 method call deprecated in later .net versions 2013-01-24 00:23:12 +00:00
Robert Adams 5b334079e0 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-23 16:23:11 -08:00
Robert Adams 1c3d84fe03 BulletSim: pass up and report the real collision penetration. 2013-01-23 16:20:44 -08:00
Justin Clark-Casey (justincc) 55c6753b13 Merge branch 'master' into cooptermination 2013-01-24 00:03:44 +00:00
Justin Clark-Casey (justincc) 8a22ac3f94 Pass narrower WaitHandle rather than EventWaitHandle as co-op termination wait handle to script APIs.
APIs don't need to reference any methods on EventWaitHandle
2013-01-23 23:38:08 +00:00
Justin Clark-Casey (justincc) 72dd3633ee Improve logging by making it clearer which script is failing if an assembly fails to load.
Moves the noise co-op start/stop debug log messages to only display if xengine debug level >= 1
Logs which stop strategy is being used (abort or co-op)
Adjusts some other logging to remove not very useful stuff
2013-01-23 23:34:15 +00:00
Robert Adams a7b810ddee BulletSim: remove setting of vehicle InterpolationRotationalVelocity.
This doesn't seem to help the vehicle stability.
Rename vehicle internal variables adding a "V" or "W" so it is clear
when coordinates are vehicle or world relative.
2013-01-23 14:25:42 -08:00
Robert Adams 13182904da BulletSim: small change to center-of-mass computation left out last commit 2013-01-23 14:25:30 -08:00
Robert Adams a5e9c665f0 BulletSim: center-of-gravity linkset changes. Not working yet.
Conflicts:

	OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
2013-01-23 14:25:18 -08:00
Robert Adams c1371ab786 BulletSim: working on COM 2013-01-23 14:25:06 -08:00
Robert Adams 775fd6f8cc BulletSim: fix build break introduced by previous commit 2013-01-23 14:24:54 -08:00
Robert Adams a0d460e6bf BulletSim: remove the unused RestoreBodyDependencies used by linksets
and vehicles and clean up code by removing their kludgyness.
2013-01-23 14:24:42 -08:00
Melanie c1795ed399 Add the Avination physics raycast glue so Core Physics can implement raycast 2013-01-23 21:03:24 +00:00
Melanie 6a2b673fca Remove the return value from llGiveMoney and add llTransferLindenDollars. Also
make llGiveMoney async so the script thread is not held up waiting for comms
to an external server.
2013-01-23 19:45:36 +00:00
BlueWall 2841ed05cf Merge branch 'master' of /home/opensim/var/repo/opensim 2013-01-23 08:16:18 -05:00
BlueWall 1776986dc3 Add additional return status
Adding additional return status for JsonRpcMethod. Now returns true/false
2013-01-23 08:14:21 -05:00
Justin Clark-Casey (justincc) cf168194e5 If ScriptStopStrategy hasn't been set to co-op in [XEngine] config, then continue to generate C# that is functionality identical to historical generation
This is to eliminate disruption until co-op termination has been well-tested.
In non co-op mode, XEngine will continue to load DLLs of the existing Script class and the new XEngineScript class.
Moving to co-op mode still requires existing script DLL deletion to force recompilation, either manually or by setting DeleteScriptsOnStartup = true for one run.
This change also means that scripts which fail to initialize do not still show up as running scripts.
2013-01-23 02:36:43 +00:00
Robert Adams 80b1e32bfa BulletSim: Tweeks to vehicle motion.
Pass through old angular velocity making for smoother transitions.
Remove some old kludges for angular motion (damping and rotvel suppression).
2013-01-21 23:43:24 -08:00
Justin Clark-Casey (justincc) 9a4914e58c Add co-op termination regression test for infinite recursive manual call on event function.
Such code would normally terminate quickly with a stack overflow exception anyway.
2013-01-22 02:32:40 +00:00
Justin Clark-Casey (justincc) 0727784186 Set script delay factor to 0 in co-op termination tests
This is to ensure loops aren't actually terminating from a wait on an LSL function.
This was not the case with any of the existing tests.
2013-01-22 02:26:04 +00:00
Justin Clark-Casey (justincc) 679dc811dd Add regression test for co-op termination on infinite user function call regression.
Such a script would probably run out of stack pretty quickly anyway.
2013-01-22 02:22:58 +00:00
Justin Clark-Casey (justincc) b93e8020e2 Add regression test for co-op stop of an infinite jump loop
Also fixes bug in do-while test
Improves detection of failure due to invalid script in test
Sets up xengine anew for each test rather than once for the while testsuite to improve isolation between tests.
Stop listening for chat after the first 'script is running' chat is received to reduce test run time.
2013-01-22 02:16:10 +00:00
Justin Clark-Casey (justincc) cf0b5e4f27 Add do-while co-op termination test
Minor changes to scripts in other tests.
2013-01-22 01:53:10 +00:00
Justin Clark-Casey (justincc) fbdfe43d75 Add single and comound while loop co-op termination test 2013-01-22 01:40:18 +00:00
Justin Clark-Casey (justincc) c6ba27d096 Fix bug in generating termination checks in compound statement for loop.
Add regression test for this case.
2013-01-22 01:23:10 +00:00
Justin Clark-Casey (justincc) a558f9797d factor out common code in existing co-op termination regression tests 2013-01-22 01:13:45 +00:00
Justin Clark-Casey (justincc) 419f8e0f76 Increase WaitForEventCompletionOnScriptStop to 120 secs to show that the co-op setting is active in its regression tests. 2013-01-22 01:08:24 +00:00
Justin Clark-Casey (justincc) 1730de14a4 minor: comment out Console.WriteLine debugging message in XEngine 2013-01-22 01:00:53 +00:00
Justin Clark-Casey (justincc) cd446c32d6 Add regression test TestStopOnLongForLoop() 2013-01-22 00:59:46 +00:00
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
Robert Adams c1e7539c77 BulletSim: Parameterize nominal frame rate (55) and add parameters to dynamially turn on/off detailed, unmanaged data dumping of prims and vehicles. 2012-12-27 22:12:28 -08:00
Robert Adams 7a5f598399 BulletSim: move logic for IsColliding, CollidingGround and CollidingObj from individual sub-classes and up to parent BSPhysObject class. 2012-12-27 22:12:27 -08:00
Robert Adams 5afab9bcfe Add check to always push terse updates for presences that have new velocities of zero. 2012-12-27 22:12:27 -08:00
Robert Adams e57c0e6731 BulletSim: fix buoyancy so it's properly set by a script when an
object is selected.
Update TODO list.
2012-12-27 22:12:26 -08:00
Robert Adams 7230990679 BulletSim: fix odd code that wasn't really recomputing the mass of a
rebuilt linkset. I was burnt by making get/set methods with side
effects. I should know better.
2012-12-27 22:12:26 -08:00
Robert Adams f3baed5827 BulletSim: add physical parameter min/max constants in BSParam. I just don't like raw numbers scattered around the code. 2012-12-27 22:12:25 -08:00
Robert Adams e98e223927 BulletSim: complete applyImpulse function in BSCharacter (like I said
I did last time).
2012-12-27 22:12:25 -08:00
teravus 29cdf0f3dd * Merges BulletSim Updates to BulletSimN(BulletSNPlugin) 2012-12-18 15:00:10 -05:00
Robert Adams 225b564573 BulletSim: scale the force for external AddForce by the simulation
step time so it will be applied completely the next step. The internal
AddForce routine does not scale the force.
2012-12-26 10:25:50 -08:00
Robert Adams d1ede1df3a BulletSim: make llBuoyancy work. For some reason, Bullet resets an
object's individual gravity to the world gravity when the object
is added to the physical world.
2012-12-25 23:55:25 -08:00
Robert Adams 5f71ee57c4 BulletSim: stop avatar from sliding VERY slowly after walking by
only zeroing the movement motor in the UpdateProperties routine.
2012-12-25 23:54:10 -08:00