Commit Graph

19266 Commits (285dc554ece0b504cb549193096f84c9c0cfe89f)

Author SHA1 Message Date
Robert Adams 285dc554ec BulletSim: new algorithm for vertical attraction which uses quaternion
arithmetic to compute the shortest path between the current tilt
and vertical.
2013-03-25 15:40:46 -07:00
Robert Adams c96a6f1de6 BulletSim: small tweaks and formatting in the parameter fetching code. 2013-03-25 15:40:44 -07:00
Robert Adams 953090fd62 BulletSim: fix possible race condition where an prim's asset can be requested quicker than the asset fetcher returns and thus falsely reporting that an asset was not fetched and defaulting the assset to a bounding box. 2013-03-25 15:40:43 -07:00
Robert Adams f783b9169f BulletSim: parameterize C# HACD hull creation. Add feature of reducing max hull count for simple (non-cut prims) meshes. 2013-03-25 15:40:41 -07:00
Justin Clark-Casey (justincc) 128c72a234 Start recording inter-region teleport attempts, aborts, cancels and failures in statistics for monitoring/debugging purposes
These are recorded as 'entitytransfer' stats as seen by the "show stats entitytransfer" console command.
2013-03-25 21:53:27 +00:00
Justin Clark-Casey (justincc) 01636ca900 Fix teleporting into the non-SW 256x256 corner of a megaregion, though currently with a 10 second delay before auto-reteleport to the correct location.
This now does a check for border crossing (required to trigger the teleport) immediately in SP.MakeRootAgent().
If left any later, it looks like the physics scene changes the position and stops the cross happening.
If done any earlier, nothing happens because the cross-code currently requires a PhysicsActor to be in place, thuogh it's probably not necessary for this case.
2013-03-23 00:47:59 +00:00
Justin Clark-Casey (justincc) 93206ef0fa Add "show borders" command to show the borders of a region.
This is relevant to mega-regions where the borders are very different to a regular region.
Also adds some method doc and other code comments.
2013-03-23 00:45:21 +00:00
Justin Clark-Casey (justincc) c4d9a23f26 Following on from 476a7d3e (which wasn't enough), make chat across regions on different simulators work.
Also resolves an issue of multiple chatting if the originating simulators had more than one region and they were neighbours
2013-03-22 01:43:18 +00:00
Justin Clark-Casey (justincc) 1f17ef6d3c Take out a testing sleep I accidentally left in the teleport code from last commit 7471bc7 2013-03-22 01:06:56 +00:00
Justin Clark-Casey (justincc) 7471bc7775 At strategic points in the teleport process, if the client has simultaneously logged out then do not continue.
This aims to reduce any side effects if the process tries to complete after the client has logged back in (e.g. it was delayed due to a slow destination region response).
This introduces a new Aborting entity transfer state which signals that the teleport should be stopped but no compensating actions performed.
2013-03-22 01:00:13 +00:00
Justin Clark-Casey (justincc) 476a7d3eee Implement chat across region borders since we can tell if avatars in neighbouring regions are in range. 2013-03-22 00:03:10 +00:00
Justin Clark-Casey (justincc) e23a0dcc5d minor: On teleport, signal a child agent before we send the viewer TeleportFinish in order to avoid a theoretical race condition when teleporting to a neighbour.
If we do this after TeleportFinish, then it's possible for a neighbour destination to request the source to create a child agent whilst its still treated as root.
This closes the original presence which we don't really want to do.
This is probably okay (albeit with warnings on the console) but afaics there's no reason not to move the child agent signal.
2013-03-21 23:37:23 +00:00
Justin Clark-Casey (justincc) 46c833810c On a teleport, lock m_agentsInTransit whilst we grab the value to check for completion just to be sure we're not using a thread cached version. 2013-03-21 00:46:08 +00:00
Justin Clark-Casey (justincc) 4de530af45 minor: disable logging on regression TestCrossOnSameSimulator() that I accidentally left on a few commits ago. 2013-03-20 23:13:12 +00:00
Justin Clark-Casey (justincc) b1cd1d917e minor: don't bother with the pause before rezzing attachments if we are running regression tests (fire and forget calls launched on the same thread).
Also adds code comments as to why this pause exists.
2013-03-20 23:12:13 +00:00
Justin Clark-Casey (justincc) 16af5b87f8 Add file missing from last commit 36651be 2013-03-20 23:08:35 +00:00
Justin Clark-Casey (justincc) 36651bed71 On the later forms of teleport failure, tell the user if this was because viewer couldn't/didn't connect with destination or if destination didn't signal teleport completion.
Also adds regression test for the case where the viewer couldn't connect with the destination region.
Also refactoring of regression test support code associated with entity transfer in order to make this test possible and the code less obscure.
2013-03-20 23:01:16 +00:00
Justin Clark-Casey (justincc) 8de933ab07 Insert a short delay on the simulator side rezzing of attachments in order to fix viewer 3 issues if its own rezzing actions on login collide with the simulator side actions.
This resolves issues (at least in my tests with LL 3.3.4) where this can make attachments invisible until one zooms in on the avatar.
This doesn't affect version 1 viewers since this delay is shorter than the login delay.
This doesn't increase the login time since this part of the process was already being performed asynchronously.
This may be a temporary solution.
2013-03-20 02:09:25 +00:00
Justin Clark-Casey (justincc) c0ff5635ba Fix "show attachments" command probably broken in commit addab12 (Wed Jan 2 21:38:00 2013)
This break was not connected with the recent attachment code changes.
2013-03-20 02:00:56 +00:00
Justin Clark-Casey (justincc) 3cb1c23554 Force a viewer object update for attachments at the end of the final Scene.CompleteMovement() in order to make all multi-attachments appear on the destination region.
For some reason, sending updates before this will not have this effect.
This may be something related to some viewers (e.g. LL 3.3.4) or something OpenSimulator isn't getting quite right.
2013-03-20 01:46:50 +00:00
Justin Clark-Casey (justincc) 9151b9d233 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-03-20 01:36:28 +00:00
Robert Adams 90b9121e66 BulletSim: change 'degenerate mesh' message from Error to Debug because there
seem to be lots of sculpties with this problem while the condition really doesn't
change region operation.
2013-03-19 17:15:24 -07:00
Justin Clark-Casey (justincc) 3648164219 Prevent multiple instances of the same item ID being appended to an AvatarAppearance
It looks like this was happening when AttachmentsModule.RezAttachments was doing a secondary set of each attachment to update with the asset ID (initially they only have the inventory ID).
However, with multi-attach this was appending a second copy of the same attachment rather than updating the data that was already there.
This commit requires both simulator and service to be updated.
2013-03-19 21:49:29 +00:00
Robert Adams c2e4f8aed5 For the moment, disable the output of the 'scene' statistics in SimExtraStatsCollector
and thus for the command 'show stats' because it is ugly and most of the information
is already output in the formatted printout that appears before.
2013-03-19 12:37:44 -07:00
Robert Adams 1dd2d432f1 For those people collecting and comparing logfiles from servers scattered
around the world, change LogWriter to use DateTime.UtcNow rather than
DateTime.Now.
2013-03-19 11:40:10 -07:00
Robert Adams 8360223fed BulletSim: code to generate a higher resolution terrain mesh. Parameter
TerrainMeshMagnification controls number of vertices generated per
heightmap point. Default is 3.
2013-03-19 00:00:03 -07:00
Robert Adams 8510f57ad4 BulletSim: add terrain contact processing threshold parameter. Initialize contact processing threshold for static object as well as mesh terrain. 2013-03-19 00:00:02 -07:00
Justin Clark-Casey (justincc) 397379cd3f Process default attachment point in AttachObjectInternal before we check whether a worn object needs to displace an existing attachment on the same point if we are not using multi-attach. 2013-03-19 00:39:58 +00:00
Melanie 55ab6f015a Fix tests for multiattach 2013-03-18 23:48:03 +00:00
Melanie 5e1f651e21 Merge branch 'master' into newmultiattach
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
2013-03-18 23:31:27 +00:00
Melanie 0635d9d174 Merge commit 'ccd6f443e1092cb410f565e921f7cf4dd8cd2dac' into newmultiattach
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
2013-03-18 23:21:01 +00:00
Melanie e4a70b9f9a Limit each attachment point to 5 items as per spec 2013-03-18 22:56:26 +00:00
Melanie d07943c262 Multiattach, part 2 2013-03-18 22:56:17 +00:00
Melanie fcecfc81bb Multiattach, part 1
Conflicts:

	OpenSim/Framework/AvatarAppearance.cs
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs
	OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/OptionalModules/Avatar/Attachments/TempAttachmentsModule.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2013-03-18 22:56:03 +00:00
Justin Clark-Casey (justincc) 3611d33b00 Improve rejection of any attempt to reattach an object that is already attached.
This also adds/extends regression tests for wearing attachments directly for the scene and attempting to reattach/rewear already attached objects.
2013-03-18 22:04:27 +00:00
Justin Clark-Casey (justincc) a7a9a8a614 Fix recent regression where an item worn to an attachment point that was already occupied did not remove the previous attachment (current behaviour)
Regression was commit ccd6f4 (Tue Mar 5 23:47:36 2013)
Added regression test for this case.
2013-03-18 20:48:50 +00:00
Melanie 46a81b3527 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2013-03-17 23:07:12 +00:00
Robert Adams 464201b41d BulletSim: add INI parameter for angular banking timescale fudge parameter. 2013-03-16 15:34:07 -07:00
Vegaslon fc84ebb819 BulletSim: Working Implementation of Angular Banking for Vehicles (Not SL Grade, Other features when implemented should slow it down for now be Strong with Vertical Angular attraction setting and conservative with Angular Velocity on X axis)
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
2013-03-16 15:13:40 -07:00
teravus 6e1b3f9951 *Yet another HTTPServer update code changes in OpenSim Libs. * This fixes a connection close issue by getting rid of the socket references * This adds a connection timeout checker to shutdown poor or evil connections and combats DOS attempts that just connect and make no complete requests and just wait. It also actually implements KeepAlive... instead of just understanding the connection header in the request... you can test by connecting and requesting a keepalive header and sending another request on the same connection. The new timeout checker closes expired keepalive sessions, just make sure you send the request within 70 seconds of connecting or the timeout checker will timeout the connection. 2013-03-16 03:14:11 -04:00
Justin Clark-Casey (justincc) 03075359b5 Finally remove the 'REST' ApplicationPlugins code which has been non-functional and largely commented out for many years. 2013-03-15 23:48:40 +00:00
Melanie 7e5d553781 Make the LSL memory functions virtual so script engines can override them if they have different memory management. 2013-03-15 23:46:49 +00:00
Justin Clark-Casey (justincc) 35843e8ec8 Change the table and field names of XAssetService mysql db tables to be capitalized like Avatars, Friends, etc.
Also fixes access time being set on assets rather than XAssetsMeta
This is to try and be somewhat consistent with other service tables that are mainly in this style.
No migration is supplied, since nobody should be using this service yet except on a test basis.
2013-03-15 23:42:16 +00:00
Justin Clark-Casey (justincc) e9f3cd1a60 Implement access time updates on assets for XAssetService.
This only happens if access time is older than 30 days currently, in order to reduce database updates.
The idea is to give some idea of assets which haven't been accessed for a very, very long time.
These might conceivably be deleteable, though this will be a risk due to caching at other points in the chain.
This is actually currently much less useable on the xasset service since access time is on metadata rather than the data itself.
And many metadata entries may point to the same data.  Probably need to address this.
2013-03-15 23:17:54 +00:00
Justin Clark-Casey (justincc) 45dee383db refactor: Reuse Get() method in AssetService to eliminate some copy/paste in other Get methods 2013-03-15 22:42:34 +00:00
Justin Clark-Casey (justincc) bd0c1d9b6a Migrate assets from chained asset service to xassetservice as they are requested.
This shrinks the asset database over time as duplicate assets are fetched.
2013-03-15 22:33:39 +00:00
Justin Clark-Casey (justincc) d05af4bdad Fix bug in AssetService where requesting data only for an asset would throw an exception if the asset did not exist. 2013-03-15 22:14:34 +00:00
Justin Clark-Casey (justincc) 7fb458b055 minor: log an error rather than info if a connector fails to load. 2013-03-15 22:08:11 +00:00
Justin Clark-Casey (justincc) 3a7d9f740e minor: Make logged message in ServerUtils more consistent. 2013-03-15 22:05:18 +00:00
Justin Clark-Casey (justincc) 8cc3adb585 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-03-15 21:57:25 +00:00