Commit Graph

218 Commits (d383bcc0dc2b61a93521293d92590d9245f5e17e)

Author SHA1 Message Date
UbitUmarov 5986b4ee39 add mesh cache expire on region startup. Expires will be relative to
previus expire (assumed done only once at startup). File 'cntr' on cache
 folder stores time. Deleting it will force a skip on expire. Default time
 is 48hours before previus startup to account for failed ones etc.
2012-10-13 22:30:34 +01:00
UbitUmarov 666fb744a3 retouch mesh ids 2012-10-13 01:41:18 +01:00
UbitUmarov 48d2258f41 longer meshs identification keys, so first part on disk cache is it's asset id 2012-10-13 00:41:19 +01:00
UbitUmarov 13cb64a2c5 missing file 2012-10-12 23:46:48 +01:00
UbitUmarov 8717541288 force allocation of mesh data on creation ( messy code version ) 2012-10-09 04:31:50 +01:00
UbitUmarov 3bf7201fd4 move terrain geom to own ode space. Limit range on raycast if includes
terrain until ode doesn't eat all stack. Add a pre-simulation method to do
pending actors changes (except mesh assets still not ready to use), to be
optionaly called before firing heartbeat. [UNTESTED]
2012-10-09 00:18:39 +01:00
UbitUmarov 48d8fbc9ae bug fix + make costs visible for testing 2012-10-07 08:53:55 +01:00
UbitUmarov 51e1830f86 more changes. Most code not in use 2012-10-04 04:55:53 +01:00
UbitUmarov a9f2bc150f missing changed file 2012-10-03 23:18:35 +01:00
UbitUmarov 7137b234b4 introduce a ODEMeshWorker class, should be pure cosmetic changes for now 2012-10-03 19:33:28 +01:00
UbitUmarov eef6bb97c0 use a bit more complex mesh key identifier, plus a bug fix 2012-08-07 17:42:29 +01:00
UbitUmarov 36a1248b31 ** DANGER someone should stress test more ** release unused physics meshs, including unmanaged memory allocations (allocated by managed code) 2012-08-06 09:06:46 +01:00
Melanie ecffcf7f65 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Physics/Manager/PhysicsScene.cs
2012-08-01 23:03:03 +01:00
Melanie cf16ca9bda Create the ability for physics modules to request assets on demand by
themselves. For that, the physics module simply calls RequestAssetMethod, which
in turn points to Scene.PhysicsRequestAsset. This gives physics access to
the asset system without introducing unwanted knowledge of the scene class.
2012-08-01 22:37:38 +01:00
UbitUmarov d5f4fb7b50 Merge branch 'avination' into ubitwork 2012-07-17 00:54:23 +01:00
UbitUmarov 62df82b74d messing around... Let terrain and water have nullphysicsactors, let
nullphyscisactors have a type water, ground or unknown (default). having
this removed geom to name mapping no longer needed. Made some more methods
comum to prims and characters acessible via PhysActor allowing for a more
uniform access. ...
2012-07-15 00:50:00 +01:00
Melanie e80161753f Merge branch 'master' into careminster 2012-05-31 03:35:24 +01:00
Justin Clark-Casey (justincc) 0b02a4d42e Add an optional mechanism for physics modules to collect and return arbitrary stats.
If active, the physics module can return arbitrary stat counters that can be seen via the MonitoringModule
(http://opensimulator.org/wiki/Monitoring_Module)
This is only active in OdeScene if collect_stats = true in [ODEPhysicsSettings].
This patch allows OdeScene to collect elapsed time information for calls to the ODE native collision methods to assess what proportion of time this takes compared to total physics processing.
This data is returned as ODENativeCollisionFrameMS in the monitoring module, updated every 3 seconds.
The performance effect of collecting stats is probably extremely minor, dwarfed by the rest of the physics code.
2012-05-31 01:52:26 +01:00
UbitUmarov f740c9522a Let OOB information usable outside ubitode 2012-05-27 14:01:42 +01:00
UbitUmarov a7ece8c688 add colliders relative velocity projected in collision direction to collisions report information. 2012-05-19 00:17:37 +01:00
UbitUmarov 86a2169d73 ubitODE + physmanager: - Revised use of ODE collisions categories and bits(flags) for better use as filters together with top spaces (for example physical prims are on topactivespace and not physical are on topstaticspace) - Added new world raycast with filters. This blocks calling thread with a timeout of 500ms waiting for heartbeat ode thread signal job done. - Don't let ode bodies being disabled for 2 long except for vehicles. This is necessary to detect when the object is at rest at top of other and that is removed. Assume that vehicles can be enabled by used action. 2012-04-16 16:16:55 +01:00
UbitUmarov 11ed932263 Tell physics about physics shape when creating. Added some virtual methods to get/set density,gravmod, frition,bounce and shape type ( not in use ). UbitOde now should do convex type on creation or everytime the mesh is changed ( as in change size, shape, etc ) 2012-03-21 01:46:41 +00:00
UbitUmarov 8817b6e74c let convex be a parameter to createMesh so it can be used. Was forced to add it also to original mesher code and zeromesher 2012-03-21 00:02:41 +00:00
UbitUmarov 43dc0ee020 more phantom physics ( chODE and a fix in manager physicsactor 2012-03-11 07:44:34 +00:00
UbitUmarov 21a76a619f initial steps to support physical phantoms 2012-03-11 06:32:06 +00:00
UbitUmarov 7377e633c7 update ubitOde 2012-03-05 12:37:21 +00:00
UbitUmarov 01fcd400d7 update UbitOde 2012-03-04 04:26:05 +00:00
Melanie 96409cc2ee Merge branch 'ubitwork'
Conflicts:
	OpenSim/Region/Physics/ChOdePlugin/ODEPrim.cs
	OpenSim/Region/Physics/ChOdePlugin/OdePlugin.cs
2012-02-19 20:08:01 +01:00
Melanie 985526b662 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
	OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs
2012-02-18 22:21:10 +00:00
UbitUmarov 3aee642190 changed how vehicle data is stored and passed to physics. use unsafe in serializer, tried to control m_dupeInProgress 2012-02-18 17:42:14 +00:00
Justin Clark-Casey (justincc) b817c337dc On Windows automatically load the correct native ODE library depending on whether the process is 32-bit or 64-bit
In theory, this means that a 64-bit Windows OS user can now run OpenSim.exe with ODE and use more than 2 (or 3) GB of memory.
However, this is completely untested since I don't currently own a 64-bit Windows box.  Feedback appreciated.
Using OpenSim.32BitLaunch.exe should continue to work.  Other platforms are unaffected.
This will currently not work with sqlite - I will add that too if this works.
2012-02-18 00:33:52 +00:00
UbitUmarov 7d77ccc659 Added simple binary serializer/deserializer to chODE. 100% untested and most like still broken 2012-02-17 21:09:00 +00:00
UbitUmarov f415256e0b Use mesh to estimate real center of prims if avaiable. Let sculpt map textures with alpha channel work. On linux J2DecodeCache folder must be deleted to remove bad entries. Corrently this can't be cached on linux (mono/ cairo/? problem) 2012-02-11 03:25:17 +00:00
UbitUmarov c75fa8b8a1 changes in physics manager, needed for UbitODE 2012-02-08 15:28:13 +00:00
Melanie b970d4f976 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2011-12-22 16:37:25 +00:00
Dan Lake 41b02a7208 Remove unused SetAcceleration and add set on Acceleration parameter 2011-12-20 14:45:32 -08:00
Dan Lake a1dc4e830d Remove unused SetAcceleration and add set on Acceleration parameter 2011-12-20 13:40:24 -08:00
Melanie dc612d0f08 Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
2011-11-28 11:06:38 +00:00
Justin Clark-Casey (justincc) b785f204ce remove some mono compiler warnings 2011-11-25 22:19:57 +00:00
Melanie a8270cb48c Merge branch 'master' into bigmerge 2011-11-24 01:16:37 +00:00
Justin Clark-Casey (justincc) af90b52731 Comment out uncalled OdeScene.UnCombine() 2011-11-22 22:28:46 +00:00
Justin Clark-Casey (justincc) cead87005b Have ODECharacter and ODEPrim both use PhysicsActor.Name instead of maintaining their own properties 2011-11-21 18:06:04 +00:00
Justin Clark-Casey (justincc) 4fdcfd79e4 Actually remove PhysicsActor.SOPDescription this time 2011-11-21 17:55:54 +00:00
Melanie 31736b1aac Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
2011-11-17 19:04:27 +00:00
Justin Clark-Casey (justincc) b6d83e9c0f Stop OdePrim and OdeCharacter insanely overriding set LocalID to set their own private m_localID property but leaving get to return the then unset PhysicsActor.LocalId!
Instead, just have both subclasses use the PhysicsActor.LocalID property.
This restores collision functionality that fell away in 45c7789 yesterday
2011-11-16 23:01:59 +00:00
Melanie b975cbcbed Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs
	OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs
	OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
	OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2011-10-27 18:14:38 +01:00
Justin Clark-Casey (justincc) 820242bc49 Fix a bug I introduced yesterday in ODE physics where prim scripts would only receive the very first collision. 2011-10-27 02:05:59 +01:00
Melanie fd22159d0c Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Framework/Watchdog.cs
2011-10-26 01:27:24 +01:00
Justin Clark-Casey (justincc) 0f83f87233 Remove unused fields from CollisionEventUpdate 2011-10-25 22:39:08 +01:00
Justin Clark-Casey (justincc) c825c9a945 Get rid of the pointless null checks on collision listeners. Add warning about synchronicity for PhysicsActor.OnCollisionUpdate event doc 2011-10-25 22:35:00 +01:00