Commit Graph

2160 Commits (0c2537bb2418f3c66fd060b3852e90df43adbd27)

Author SHA1 Message Date
Melanie 6930d696e9 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs
2012-07-25 18:19:12 +01:00
Robert Adams bf6547be01 BulletSim: change how prim mass is saved so it is always calculated but zero is given if not physical. 2012-07-23 16:32:47 -07:00
Robert Adams dda681515b BulletSim: small optimizations for link and unlink code 2012-07-23 16:32:41 -07:00
Robert Adams 8a574395c7 BulletSim: add Dispose() code to free up resources and close log files. 2012-07-23 16:32:36 -07:00
Robert Adams 85c6eb7c50 BulletSim: add all the new functions to BulletSimAPI.
Modify ZeroMotion() to not make tainting calls and to use new API calls.
2012-07-23 16:32:30 -07:00
Robert Adams 73f9e14b43 BulletSim: improve linking to add each link individually rather than rebuilding the object each time. Makes it an O(n) operation rather than O(n\!). 2012-07-23 16:32:24 -07:00
Melanie fb8e92c90b Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ScriptEngine/Shared/Helpers.cs
	prebuild.xml
2012-07-23 18:54:12 +01:00
Robert Adams b25d874afa BulletSim: add reference to OpenSim.Region.CoreModules in BSScene.cs attempting to fix a mono compile error. 2012-07-20 15:34:19 -07:00
Robert Adams ca3b6b1f90 BulletSim: more detail logging for vehicle and general physics debugging.
Physical linksets are fully functional.
Tweeking of the vehicle code to make it semi-work.
Utilize the new API2 for some setting operations.
Add GetOrientation() API call for proper reporting of children of linksets.
Changes the interface between C# and C++ code so old DLLs won't work!
2012-07-20 14:08:29 -07:00
Robert Adams 7451bb1613 BulletSim: fix compile errors from last commit. Clean up passing of physics scene into vehicle dynamics code. 2012-07-20 14:02:29 -07:00
Robert Adams cda67a68de BulletSim: Add very detailed logging to BSDynamics for vehicle debugging 2012-07-20 14:02:27 -07:00
Robert Adams c400918c84 BulletSim: Add PID variables to physical scene. Not PIDing yet, but soon.
Cleaned up code and got rid of compile warnings.
2012-07-20 14:02:24 -07:00
Robert Adams f9913b6ef7 BulletSim: Add detailed and voluminous debug logging that is enabled
with an ini configuration parameter.
Correct computation of relative offsets of children in a linkset.
Remove a prim from any link relationship before deleting it.
Minor code flow cleanups.
2012-07-20 14:02:22 -07:00
UbitUmarov 0facebec40 Update ubitMesh primMesher with new Dahlia version on core ( reckick git
back)
2012-07-19 11:12:53 +01:00
UbitUmarov d5f4fb7b50 Merge branch 'avination' into ubitwork 2012-07-17 00:54:23 +01:00
UbitUmarov 0d3661fb5f UbitOde: remove useless water collider from active code. 2012-07-17 00:27:01 +01:00
Melanie c256447f46 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
	OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-07-16 22:22:42 +01:00
Melanie 7b9c4d2826 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-07-16 21:32:10 +01:00
UbitUmarov 35a5a064b0 Merge branch 'avination' into ubitwork 2012-07-15 15:40: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 95f2d86549 Reinstate sleeping because less CPU is preferred over reporting accuracy.
Who needs accurate collisions when the sim lags and crashes?
2012-07-14 09:13:27 +02:00
dahlia 5d3723a47f update PrimMesher.cs to dll version r72 which fixes some path errors in sliced linear prims. Addresses Mantis #6085 2012-07-13 21:22:15 -07:00
UbitUmarov 72e2b94094 In collisions report linksets root parts to parts, and not all parts.
Temporary suspend collision checks on full stopped bodies, until a better
away is found wake them, avoiding spurius collision end and start events.
Until a nice way is found to avoid them, this may cause some higher cpu load. plus some clean up
2012-07-13 23:57:45 +01:00
UbitUmarov 5cfea5934b fix bad vehicle reference frame 2012-07-13 19:32:43 +01:00
UbitUmarov 4c2523b1c2 Use faster any contact point collision detection for Volumedetect, plus
some clean up
2012-07-12 20:05:00 +01:00
Melanie 89c9528e38 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLSimulationData.cs
2012-07-11 14:27:33 +01:00
UbitUmarov 84ab4c4462 ubitODE leaks 2012-07-11 08:13:57 +01:00
Melanie 0bc8238a6c Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Watchdog.cs
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2012-07-11 03:56:50 +01:00
UbitUmarov ca41ec9eb4 let rotationVelocity or AngularVelocity be setted on prims. Limited to
12rad/s
2012-07-10 05:11:06 +01:00
UbitUmarov 3a1d46ad44 retry fixing ode getconfiguration() 2012-07-09 17:21:54 +01:00
UbitUmarov a709768085 fix ode getconfiguration 2012-07-09 17:01:52 +01:00
UbitUmarov 0ac161c9a8 log ODE lib configuration 2012-07-09 16:51:56 +01:00
UbitUmarov fb8e8dcbce fix ODE dispose plus minor clean. On regions restart ode.dispose seems
to be called with scene still calling simulation, that should be changed,
 for now added a check for a valid world in ode simulation
2012-07-09 13:25:17 +01:00
UbitUmarov d50b852d53 ODE turn off material dependent friction while vehicle linear motor is Effective. Increase a bit world damping of velocities 2012-07-07 03:16:41 +01:00
Robert Adams e4a6611865 Clean up collision reporting code so they are properly passed to
the simulator in batches.
More comments.
2012-07-06 15:09:19 -07:00
Melanie 26d89777d8 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/PollServiceEventArgs.cs
	OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-07-06 20:51:18 +01:00
Melanie e5eef139ed Merge branch 'master' into careminster 2012-07-01 03:04:23 +01:00
UbitUmarov ec7c7fe5f8 ubitode: create and use 4 off world collision spaces for offworld static prims 2012-06-30 08:49:07 +01:00
Justin Clark-Casey (justincc) 1926de5a05 Remove some mono compiler warnings 2012-06-30 01:25:39 +01:00
Melanie 6137f37028 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-06-29 22:24:53 +01:00
Justin Clark-Casey (justincc) 0229e90dcc Move update of the final optional ODE total frame stat inside the OdeLock rather than outside to avoid a very occasional race condition with the stat collection thread 2012-06-29 01:02:35 +01:00
Justin Clark-Casey (justincc) e420f815dc refactor: rename _collisionEventPrim to m_collisionEventActors and _collisionEventPrimChanges to m_collisionEventActorsChanges to reflect their actual contents.
These dictionaries handle all actor types, not just physical prims.
2012-06-29 00:54:40 +01:00
Justin Clark-Casey (justincc) 1a7be7b00e Fix a regression where we stopped removing avatars from collision event reporting on logout, rather than stopping clearing their collision events.
This occurred in b18c8c8 (Thu May 17 2012).
This was a cause of very occasional race conditions and likely memory leakage as clients came and went from the region.
2012-06-29 00:36:50 +01:00
Melanie c0b21d92c2 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-06-06 14:16:19 +01:00
UbitUmarov 401b97788f fix addforce/impulse. 2012-06-04 20:35:12 +01:00
Melanie 522f36345d Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SimStatsReporter.cs
2012-06-02 01:40:42 +01:00
Justin Clark-Casey (justincc) 6375db1533 Add optional total avatars, total prims and active prims stats to ODE plugin.
These will act as a sanity check with the main scene stats, to show that physics scene entities are being managed properly.
Total prims will not match scene total prims since physics total does not include phantom prims
2012-06-01 04:23:36 +01:00
Justin Clark-Casey (justincc) 4e06a46dc5 If OdeScene.Near() returns no collision contacts, then exit as early as possible. All subsequent code is only relevant if there are contacts. 2012-06-01 04:07:39 +01:00
Justin Clark-Casey (justincc) 200376b3c4 Add optional stat for the other collision time per frame not spent in ODE native spaces or geom collision code 2012-06-01 03:49:42 +01:00
Justin Clark-Casey (justincc) d34b84b531 Add avatar forces calculation, prim force and raycasting per frame millisecond optional stats 2012-06-01 03:23:19 +01:00
Justin Clark-Casey (justincc) 9ff8efc720 Collection optional avatar and prim taint frame millisecond times 2012-06-01 03:03:48 +01:00
Justin Clark-Casey (justincc) d1b5f8d9d7 Remove recent optional native collision frame milliseconds stat
Unnecessary since this has now been broken down into space collisions and geom collisions
2012-06-01 02:35:11 +01:00
Justin Clark-Casey (justincc) 31343aa7c3 Add optional stat that records milliseconds spent notifying collision listeners in physics frames 2012-06-01 02:33:44 +01:00
Justin Clark-Casey (justincc) 5f44be99ef Add avatar and prim update milliseconds per frame optional stats 2012-06-01 02:25:42 +01:00
Justin Clark-Casey (justincc) 5cc9b820e5 Add option native step frame ms stat 2012-06-01 01:58:28 +01:00
Justin Clark-Casey (justincc) f2c8c7a7b8 Add total ODE frame time optional stat, as a sanity check on the main scene physics stat 2012-06-01 01:37:19 +01:00
Justin Clark-Casey (justincc) 8333b928fa Break down native ODE collision frame time stat into native space collision and geom collision stats 2012-06-01 01:27:19 +01:00
Justin Clark-Casey (justincc) c33c8db825 Rename new collision stats to 'contacts' - there are/can be multiple contacts per collision and this is what is actually being measured. 2012-06-01 01:15:27 +01:00
Justin Clark-Casey (justincc) e1f8d2adb0 Stop adding an unnecessary duplicate _perloopcontact if the avatar is standing on a prim.
This has already been added earlier on in the method.
2012-06-01 01:12:30 +01:00
Justin Clark-Casey (justincc) 8301f7b17f minor: comment out currently unused OdeScene.sCollisionData 2012-06-01 00:57:55 +01:00
Justin Clark-Casey (justincc) 93fa9e8991 Add ODE avatar and prim collision numbers if extra stats collection is enabled. 2012-06-01 00:56:13 +01:00
Justin Clark-Casey (justincc) 878b67b333 Fix OdeScene.GetTopColliders() to return the top 25 colliders rather than the first 25 that had non-zero collision scores.
Also zeros collisions scores on all prims after report collection, not just the top 25.
As before, this collision scores are only reset after a report is requested, which may give unrealistic numbers on the first request.
So to see more realistic scores, ignore the first report and then refresh the request after a couple of seconds or so.
2012-06-01 00:26:11 +01:00
Melanie e696d1d952 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2012-05-31 03:37:43 +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 cc903992dd ubitode prim: if makebody() is called already having a body, do a full destrution so there are no 'leaks'. 2012-05-30 21:32:15 +01:00
Melanie c548f48791 Guard setting the building flag 2012-05-30 19:32:02 +02:00
Melanie 0587079115 Whitespace fix 2012-05-30 19:25:52 +02:00
UbitUmarov 3e9a831e87 fix physics not reporting collisions only with terrain 2012-05-29 19:13:27 +01:00
Melanie 9129a0cce4 Merge branch 'avination' 2012-05-29 08:45:44 +02:00
UbitUmarov dbbfe0cdd7 fix avatars collisions on sim crossings and other few cases where freemove() is called 2012-05-28 22:23:32 +01:00
UbitUmarov 2122c336b0 a bit cleaner code (?) on sculpts/meshs meshing checking 2012-05-28 14:44:06 +01:00
UbitUmarov 60cebe9a5b let meshs work indenpendently of mesh_sculpted_prim config option 2012-05-28 14:32:16 +01:00
UbitUmarov 20baa6334c revert making sculpts phanton if sculpt meshing option is off 2012-05-28 13:05:50 +01:00
Melanie 78e657fd8d Merge branch 'avination' into careminster 2012-05-27 19:35:36 +01:00
UbitUmarov f740c9522a Let OOB information usable outside ubitode 2012-05-27 14:01:42 +01:00
UbitUmarov d2260423e5 also don't collide sculps or meshs if meshing is OFF 2012-05-21 17:11:19 +01:00
UbitUmarov 85f5789993 try to let avas climb higher steps. Will only work in some cases, may have bad effects, so needs some more testing 2012-05-21 12:35:17 +01:00
UbitUmarov 11f582b26d minor changes 2012-05-20 13:18:15 +01:00
UbitUmarov 10889c86d9 reduce useless waste of cpu. Make character collision events be done similiar to parts. Let same thread do it all ( like in parts ) ( to change this some structs copies must be added) 2012-05-19 16:35:48 +01:00
Melanie ebd9d2618b Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs
2012-05-19 13:34:44 +01:00
UbitUmarov deb87e7890 fix character IsPhysical 2012-05-19 01:01:46 +01:00
UbitUmarov a7ece8c688 add colliders relative velocity projected in collision direction to collisions report information. 2012-05-19 00:17:37 +01:00
Justin Clark-Casey (justincc) 6501b1b1bb refactor: move EventQueueGet path generation into common method. Rename some local variables in line with code conventions. Add commented out EQG log lines for future use. 2012-05-18 00:38:29 +01:00
Justin Clark-Casey (justincc) b18c8c8e78 Don't eagerly clear frame collision events when physics actors subscribe and unsubscribe from collisions, in order to avoid a race condition.
Since this is done directly from ScenePresence, it can lead to a race condition with the simulator loop.
There's no real point doing it anyway since the clear will be done very shortly afterwards by the simulate loop and either there are no events (for a new avatar) or events don't matter (for a departing avatar).
This matches existing behaviour in OdePrim
2012-05-17 23:59:43 +01:00
Melanie 81ce169dfe Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLSimulationData.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-05-15 21:24:27 +01:00
UbitUmarov 9d67523235 ubitODE: if stopped having collisions do report zero colisions once, so collision_end event can be triggered. Changed reports rate to the requested rate and not full ode rate. 2012-05-15 15:45:01 +01:00
UbitUmarov 338be76e0a ubitODE: fix not reporting land collisions on same cases. 2012-05-15 13:41:13 +01:00
UbitUmarov 9870d7e4e7 ubitODE fix force in case of mlinear motor offset present 2012-05-13 01:28:20 +01:00
Melanie fe029cf4e8 Merge branch 'avination' into careminster 2012-05-13 01:25:03 +01:00
Melanie e5653ebeb7 Merge branch 'avination' into careminster 2012-05-13 01:24:10 +01:00
UbitUmarov 4d98a291a2 ubitODE let vehicles responde faster to changes of some parameters like motors decay times 2012-05-12 14:00:08 +01:00
UbitUmarov 792e8db456 ubitODE reduced again a bit the max allowed correction velocity on colisions, to reduce a bit bouncing inerent to colisions. 2012-05-12 13:44:47 +01:00
UbitUmarov 46095c963c ubitODE: trial workaround for avatar colisions 2012-05-12 12:17:28 +01:00
UbitUmarov 8dd5f08b6e revert terminal vel reduction. It helped but not efective 2012-05-11 15:53:31 +01:00
UbitUmarov 3c37bc2851 reduce avatars terminal velocity to less than 30m/s or colisions with basic boxs fail badly. (ode lib problem. chode just may support a bit higher velocity due to the use of tilt). 2012-05-10 22:44:12 +01:00
UbitUmarov d0c0d37d24 ubitode: changes to vehicles servos 2012-05-10 16:17:02 +01:00
Melanie 900afbd53e Merge branch 'avination' into careminster 2012-05-08 00:07:13 +01:00
UbitUmarov 75c51f33c4 minor change to linear motor decay 2012-05-07 21:44:24 +01:00
Melanie 1120a2cf36 Merge branch 'avination' into careminster 2012-05-07 12:07:42 +01:00
UbitUmarov 2ab9588c9a UbitODE: reduced the diference btw dinamic and static friction, making dinamic larger more identical to static. 2012-05-05 11:03:38 +01:00
UbitUmarov 3b78e33d16 ubitODE prims: - moved outbounds checking back to UpdatePositionAndVelocity() from move() so it's done at end of each ode step and when it reports positions to core. There should be no need to check in both places. - Addforce() and AddAngularForce now apply a force if parameter pushforce is true or apply a impulse if false as it's actually needed (the prims grab case should be a force) 2012-05-05 10:40:03 +01:00
Melanie b62cc3ce0a Merge branch 'avination' into careminster 2012-05-05 10:32:22 +01:00
UbitUmarov 163a86517a force lower avatar density for testing 2012-05-05 03:28:35 +01:00
UbitUmarov 6b3135aa4d UbitODE: leave avatar 'freemove' state (entered on setmomentum) on any significant change like new 'velocity' or new position, etc, requests 2012-05-04 22:24:04 +01:00
Melanie 8b1cc0dd29 Merge branch 'avination' 2012-05-03 00:15:45 +02:00
UbitUmarov a135e51d23 Improved sitted avatars crossings ( plus tests on vehicles) 2012-05-02 22:08:09 +01:00
Melanie 58d460542d Merge branch 'avination' 2012-05-02 00:33:56 +02:00
UbitUmarov 303739622c ubitODE fix applyROtationImpulse, let vehicle hover be relative to root prim and not center of mass ( as SL docs said) updated some flags to current ones 2012-04-29 11:46:16 +01:00
UbitUmarov be176b1e49 ubitode fix inertia for same cases. Added a nasty lock on llGetCenterOfMass and simulate 2012-04-29 08:24:41 +01:00
Melanie 174fa4a70f Merge branch 'avination' 2012-04-29 01:33:40 +02:00
UbitUmarov dd745f60c2 fix llGetCenterOfMass ( checked with ubitODE only) 2012-04-28 21:36:38 +01:00
UbitUmarov e48fa38ff5 Oooops don't hover underground but do hover 2012-04-27 23:18:54 +01:00
UbitUmarov f5cb403e7e reorder priority of vehicle hover flags 2012-04-27 22:59:57 +01:00
UbitUmarov ee237fc5df test 2012-04-27 12:19:22 +01:00
UbitUmarov 8ef7df5a56 test 2012-04-27 11:01:34 +01:00
UbitUmarov fedc9eb105 itest 2012-04-27 09:50:53 +01:00
UbitUmarov 1c735facee test 2012-04-27 09:23:20 +01:00
UbitUmarov 7a7f4b7722 testing 2012-04-27 09:00:30 +01:00
UbitUmarov 03450dee39 testing.... 2012-04-27 08:11:18 +01:00
UbitUmarov 6edbbdc83a ubitODE fix don't report colisions with a volume detector ( only report to it ) 2012-04-27 06:00:50 +01:00
UbitUmarov e974d493c6 testing 2012-04-27 03:44:15 +01:00
UbitUmarov d8f691664a testing 2012-04-27 03:36:49 +01:00
UbitUmarov 76d9040ed4 testing 2012-04-27 02:54:39 +01:00
UbitUmarov 911bc81b00 testing 2012-04-27 02:13:54 +01:00
UbitUmarov a64a9e48de TESTING 2012-04-27 01:43:27 +01:00
Melanie db31c9fe58 Merge branch 'master' of ssh://melanie@3dhosting.de/var/git/careminster into careminster 2012-04-25 19:15:40 +01:00
UbitUmarov 3da613adf5 fix chODE loosing some part positions when doing isPhysical false 2012-04-24 23:13:57 +01:00
Melanie c5520dc83f Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/World/Warp3DMap/MapImageModule.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-04-24 21:30:12 +01:00
Justin Clark-Casey (justincc) c6f30e044b Restore _parent_scene.actor_name_map[prim_geom] = this; accidentally removed from ODEPrim.SetGeom.
This occurred in 7a574be3fd from Sat 21 Apr 2012.
This should fix collision detection.
Mnay thanks to tglion for the spot and the fix in http://opensimulator.org/mantis/view.php?id=5988
2012-04-24 20:15:10 +01:00
UbitUmarov a4b76a42cc let objects/avas push avas 2012-04-24 06:56:34 +01:00
Melanie 159b3b27ca Merge branch 'master' of ssh://melanie@3dhosting.de/var/git/careminster into careminster 2012-04-23 21:13:08 +01:00
Melanie e903709847 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2012-04-23 20:44:41 +01:00
UbitUmarov 5a8fdc8a0b ubitODE - do own timing control (as chODE does) until heartbeat does it right 2012-04-23 20:16:53 +01:00
UbitUmarov e0f81e2400 ubitODE - several changes... 2012-04-23 01:47:11 +01:00
Justin Clark-Casey (justincc) 49ed68e98c refactor: simply some properties code in BasicPhysicsPlugin 2012-04-22 20:28:12 +01:00
Justin Clark-Casey (justincc) 8205fe79ce Fix bug where setting phantom on a prim would result in a server log message rather than setting phantom.
This was an oversight when removing some race conditions from PhysicsActor setting recently.
Regression tests extended to probe this code path.
Extending regression tests required implementation of a BasicPhysicsPrim (there was none before).  However, BasicPhysics plugin is still of no current practical use other than to fill in as a component for other parts of regression testing.
2012-04-22 19:51:51 +01:00
Melanie 8df4bd14f5 Merge branch 'master' into careminster 2012-04-22 15:06:06 +01:00
UbitUmarov 190e7a4334 ubitODE: - don't try to hover underground unless volumedetector (that doesn't colide with it) 2012-04-21 05:16:54 +01:00
Justin Clark-Casey (justincc) ae2b8f7007 Comment out spurious Body != IntPtr.Zero code after disableBody(), since disableBody() sets Body == IntPtr.Zero on all code paths. 2012-04-21 03:42:54 +01:00
Justin Clark-Casey (justincc) f609594595 refactor: Simplify ODEPrim.AddChildPrim() by returning early where appropriate. 2012-04-21 03:23:51 +01:00
Justin Clark-Casey (justincc) 7a574be3fd Remove redundant prim_geom != IntPtr.Zero checks in ODEPrim.
prim_geom == IntPtr.Zero only before a new add prim taint is processed (which is the first taint) or in operations such as scale change which are done in taint or under lock.
Therefore, we can remove these checks which were not consistently applied anyway.
If there is a genuine problem, better to see it quickly in a NullReferenceException than hide the bug.
2012-04-21 00:12:07 +01:00
Justin Clark-Casey (justincc) 566327a948 If a physical prim is manually moved (e.g. by a user) then set the geometry position as well as the body position
This is necessary to stop the moved prim snapping back to the original position on deselection if moved only once
This resolves http://opensimulator.org/mantis/view.php?id=5966
2012-04-20 23:24:24 +01:00
Melanie 31c5a7241e Merge branch 'master' into careminster 2012-04-20 23:17:29 +01:00
UbitUmarov 2c7f035925 ubitODE: - Change triangles used in terrain height estimation 2012-04-20 04:49:23 +01:00
UbitUmarov ec6347f987 ubitODE - again avatar/terrain collision. Reduce new viewers interpolators efects reporting null velocity and aceleration when stopped near the right position, where they can still have instantanius large values that can get magnified by interpolators, specially using diferent timing estimation. 2012-04-20 03:17:36 +01:00
UbitUmarov 9b02e1cf4a Merge branch 'master' of ssh://3dhosting.de/var/git/careminster into ubitwork 2012-04-19 01:52:23 +01:00
UbitUmarov 08714a0d38 ubitODE still retouching character pid 2012-04-18 03:59:38 +01:00
UbitUmarov 7f42069295 ubitODE - retouch character PIDs 2012-04-18 03:02:28 +01:00
UbitUmarov 9464fcebcd ubitODE: prims - update managed dinamic parameters from unmanaged at ODE rate and not heartbeat. 2012-04-17 16:49:08 +01:00
UbitUmarov 9132c9e499 ubitODE: - character managed ode was only getting position etc from unmanaged at heartbeat rate like core ode. Now do it at ODE rate in move(..). UpdatePositionAndVelocity() called once per heartbeat is now empty. 2012-04-17 15:50:14 +01:00
UbitUmarov d7e2454281 ubitODE: - made avatar/ground collision pid servo a bit softer since seems a bit unstable with small avas in AVI even if fine on my testsite - Removed reading of PID parameters from config files since that only serves to mess things up and adds more unknowns 2012-04-17 14:24:13 +01:00
UbitUmarov 36207b88ff ubitODE: bug fix let avatars colide with volume detectors 2012-04-17 01:00:50 +01:00
Melanie d30b18b1de Merge branch 'ubitwork' 2012-04-17 00:09:04 +02:00
UbitUmarov 6480b72eda ubitODE: - fix remove characters from default raycasts filters as older code (or camera is very odd) - Slow down avatar if velocity is higher than 50m/s as in chODE 2012-04-16 19:44:02 +01:00
Melanie adb629a416 Merge branch 'ubitwork' 2012-04-16 20:02:15 +02:00
UbitUmarov fff5c61ae8 chODE: if character velocity > 50m/s apply breaks. In free fall this will give a terminal velocity +- 60m/s 2012-04-16 17:47:17 +01:00
UbitUmarov 04ed5519a5 chODE bug fix 2012-04-16 17:14:31 +01:00
Melanie 03139f07d7 Downgrade an error log message to info because there is nothing we can do if
an asset is damaged so it should not spew red ink.
2012-04-16 17:32:30 +02: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 3999822e13 Use chode character actor.SetMomentum() to force full restore Velocity in scenepresence TeleportWithMomentum(), since actor.Velocity was selected by original coders as the input of a desired velocity (even 'forces') that is modified by character conditions, like not changing velocity.Z if it is in free fall. 2012-04-14 05:07:52 +01:00
UbitUmarov 39079a62c0 chODE and ubitODE always return prim mass (they where returning object mass on physical prims) so SOG can do the total add. (ubitODE as more code to use a simpler terrain geom on a modified ode lib but should do autodetect and work with normal lib). 2012-04-09 20:58:40 +01:00
UbitUmarov c4e4e04eee reduced instability in vertical atractor with eficiency of 1 and banking
this will need a nicer solution sometime...
2012-03-31 00:03:45 +01:00
UbitUmarov de45fe7515 Merge branch 'master' of ssh://3dhosting.de/var/git/careminster into ubitwork 2012-03-27 21:58:25 +01:00
Melanie 6b5f3b49e7 Merge branch 'master' into careminster 2012-03-27 18:11:05 +01:00
Robert Adams 872d513daa BulletSim: make avatar animations update properly.
It seems that ODE calls the avatar collision handling routine even
if there are no collisions. This causes the animation to be updated.
So, for instance, going from HOVER to FLY is caused by the physics engine
calling the collision routine each frame with 0 collisions.
2012-03-26 17:36:33 -07:00
UbitUmarov caeaa03a69 Merge branch 'master' of ssh://3dhosting.de/var/git/careminster into ubitwork 2012-03-26 23:04:07 +01:00
Melanie 0bd0514e81 Merge branch 'master' into careminster 2012-03-26 16:47:02 +01:00
Robert Adams 2fcdecf090 BulletSim: fix typo introducted by previous checkins (git merge sometimes makes mistakes) 2012-03-26 08:57:40 -07:00
UbitUmarov 88d5cb6eef UbitOde let caller try to build meshs like done in chode. Changing this was a bad move i made. Variable colisions softness. 2012-03-24 16:04:13 +00:00
UbitUmarov 21a97408d4 Avatars have no bounce 2012-03-24 11:30:29 +00:00
Robert Adams 07388071d4 Merge branch 'bulletsim1' of ssh://island.sciencesim.com/home/sceneapi/radams1/bs-opensim into bulletsim1
Conflicts:
	OpenSim/Region/Physics/BulletSPlugin/BSScene.cs
2012-03-23 16:20:53 -07:00
Robert Adams ff54b3c366 BulletSim: change default of shouldDisableContactPoolDynamicAllocation from False to True. It seems that collisions don't happen well when it is False (things fall through terrain). 2012-03-23 15:50:32 -07:00
Robert Adams 3f53b7bc91 BulletSim: Add new configuration parameters to get and set console commands 2012-03-23 13:15:24 -07:00
Robert Adams 142de1d02f BulletSim: add a bunch of internal Bullet configuration parameters to OpenSimDefaults.ini and the code. 2012-03-23 13:15:23 -07:00
Robert Adams 1273f259e4 BulletSim: remove confusion between angularVelocity and rotationalVelocity (there is still confusion in the rest of OpenSim). Enhance some debug statements to include the object ID. 2012-03-23 13:15:22 -07:00
Robert Adams 1a738caeca BulletSim: update TODO list. Rearrange code for readability. Add per object friction and restitution runtime settable parameters. 2012-03-23 13:15:18 -07:00
Robert Adams de24feb275 BulletSim: Add AvatarRestitution parameter. Centralize computation of buoyancy for flying. Tweek avatar default friction and resititution 2012-03-23 13:15:17 -07:00
Robert Adams 6ecdadb329 BulletSim: set buoyancy in only one place 2012-03-23 13:15:16 -07:00
Robert Adams b22d040169 BulletSim: add some new runtime setable parameters to match the dll. 2012-03-23 13:15:14 -07:00
Robert Adams 975184b3f9 BulletSim: Update list of TODO tasks 2012-03-23 13:15:11 -07:00
Robert Adams efe61b2481 BulletSim: remove confusion between angularVelocity and rotationalVelocity (there is still confusion in the rest of OpenSim). Enhance some debug statements to include the object ID. 2012-03-22 17:04:06 -07:00
Robert Adams 7783c93802 BulletSim: update TODO list. Rearrange code for readability. Add per object friction and restitution runtime settable parameters. 2012-03-21 16:16:47 -07:00
Robert Adams cb2727cf6e BulletSim: Add AvatarRestitution parameter. Centralize computation of buoyancy for flying. Tweek avatar default friction and resititution 2012-03-21 16:16:46 -07:00
Robert Adams 6c55fd93a3 BulletSim: set buoyancy in only one place 2012-03-21 16:16:45 -07:00
Robert Adams 898a16802b BulletSim: add some new runtime setable parameters to match the dll. 2012-03-21 16:16:44 -07:00
Robert Adams eafc3d6c47 BulletSim: Update list of TODO tasks 2012-03-21 16:16:41 -07:00
UbitUmarov 4f593fa8c3 minor clean 2012-03-21 21:17:00 +00:00
UbitUmarov a03c55fee7 missed a creatMesh in chODE. temporary removed m_meshfailed test since it may colide with how meshs and sculpts are loaded. This needs a good revision.. 2012-03-21 14:03:50 +00:00
UbitUmarov 316f272b62 shapetype support on chOde so it can also request a simple convex hull 'mesh' 2012-03-21 12:57:46 +00:00
UbitUmarov f6cbafcaf0 Changes of PrimShapeType should now work with UbitOde ( almost untested ) 2012-03-21 02:39:16 +00: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 2e41294da9 add convex state to mesh key, so a change is detected. 2012-03-21 01:24:30 +00:00
Justin Clark-Casey (justincc) 4c41b53a4b Add prim name to "[MESH]: No recognized physics mesh..." log message 2012-03-20 23:35:50 +00:00
Melanie 3d258d2688 Merge branch 'ubitwork' 2012-03-20 23:09:34 +01: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
Melanie 35c3124c3b Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-03-20 23:39:02 +00:00
UbitUmarov 23e6a31aa5 added convex decomposition hulls support. Hardcoded to use mesh or this. (so no simple hull of convex prims for now). 2012-03-20 23:38:04 +00:00
Melanie fdd4d787a4 Merge branch 'master' into careminster 2012-03-20 20:48:55 +00:00
Justin Clark-Casey (justincc) 86bd287b53 refactor: precalculate the fixed movement factor for avatar tilting (sqrt(2)) rather than doing it multiple times on every move. 2012-03-20 20:39:33 +00:00
Justin Clark-Casey (justincc) 5f2a65c976 refactor: Eliminate unnecessary duplicate avCapsuleTilted 2012-03-20 20:28:58 +00:00
UbitUmarov 8c1550b58e WORK in progress!! Now it reads the simple hull shape to use if convex shape is selected for a prim. Due to ODE limitations on convex hulls colisions, it creates a mesh. Being work in progress it is hardcoded to only read that simple convex hull for now. It writes a file named "lixo_lixo.raw" that can be imported into blender for examination of the created mesh (the last one loaded and also hardcoded). To play with put in opensim.ini "meshing = UbitMeshmerizer" 2012-03-20 19:24:45 +00:00
Melanie 5768a151ff Merge branch 'master' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLXAssetData.cs
2012-03-20 02:48:11 +00:00
Justin Clark-Casey (justincc) 1c0f3a1f21 Fix crash where two scene loop threads could changes m_MeshToTriMeshMap at the same time.
Have to lock m_MeshToTriMeshMap as property is static and with more than one region two scene loops could try to manipulate at the same time.
2012-03-20 00:40:03 +00:00
UbitUmarov 41a0c850f8 added a new UbitMeshing module so i can mess it... 2012-03-17 09:27:56 +00:00
UbitUmarov b5e172677d ubitode prim select was not doing phantom case 2012-03-12 07:46:20 +00:00
UbitUmarov 2a17dafa04 missing file in ubitODE 2012-03-12 06:52:03 +00:00
UbitUmarov 925295f3ab ubitOde also knows a bit more about physical phantom 2012-03-11 12:33:59 +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 0e5e324a2c ubitOde bug 2012-03-09 17:20:49 +00:00
UbitUmarov 13f340077c let chode and ubitode find ode.dll on windows 2012-03-09 04:19:39 +00:00
Melanie f3e04beb2e Merge branch 'master' of ssh://melanie@3dhosting.de/var/git/careminster into careminster 2012-03-07 00:51:24 +00:00
UbitUmarov 7377e633c7 update ubitOde 2012-03-05 12:37:21 +00:00
Melanie 182f5efbe9 Merge branch 'master' of ssh://melanie@3dhosting.de/var/git/careminster into careminster 2012-03-04 16:23:46 +00:00
UbitUmarov 01fcd400d7 update UbitOde 2012-03-04 04:26:05 +00:00
UbitUmarov 7c931037bd update UbitODE 2012-03-04 01:40:12 +00:00
UbitUmarov fc781f0894 Merge branch 'master' of ssh://3dhosting.de/var/git/careminster into ubitwork 2012-03-03 17:08:01 +00:00
Melanie bfcba0a417 This still causes terrain artefacts
Revert " fix my bug on ChODE terrain heightmap build"

This reverts commit aa77d1d486.
2012-03-02 22:20:02 +01:00
Melanie 458f295fdb This still causes terrain artefacts
Revert " fix the last fix. Regions are square but... Also remove the 0.5 offset in map position. It was apparently needed to fix we having nsamples = size and not size + 1."

This reverts commit 15bc539bd4.
2012-03-02 22:19:28 +01:00
UbitUmarov f42fd7fb77 update ubitODE 2012-03-02 15:05:30 +00:00
UbitUmarov ee4d3bfad2 ubitODE bug fix 2012-02-29 19:36:16 +00:00
UbitUmarov a8f1cd7e86 update ubitODE to current working state 2012-02-29 19:32:23 +00:00
UbitUmarov a0d75be56b fix 2012-02-29 05:14:29 +00:00
UbitUmarov 5534cf8b57 chODE: bad meshs get a a basic box or sphere geom with setted prim size. They will not colide if non-physical and Will collide with land if physical. assume UNTESTED 2012-02-29 05:03:26 +00:00
UbitUmarov a8a7bb549d made box a little larger 2012-02-28 20:24:03 +00:00
UbitUmarov 1c7700db88 A few blind changes to go try to go around bad mesh little box replacement fail 2012-02-28 20:14:26 +00:00
Melanie 9bad3b846f Really dirty hack to make sims start. Causes errors but the ting runs. Remove
when fixed right.
2012-02-28 10:37:46 +01:00
UbitUmarov a725b5e01e Let inworld meshs colide as such and not as basic prim all the time. Removed also LOD, and outerskin on colision meshs. 2012-02-27 20:08:43 +00:00
UbitUmarov 0d51c42f59 update ubitODE to my current working state 2012-02-27 02:10:03 +00:00
UbitUmarov 118986f150 added in chODE GeomTriMeshDataDestroy to explicity release internal trimesh data. 2012-02-26 17:51:43 +00:00
UbitUmarov 23679c3808 replace bad meshs by a small cube and log it. 2012-02-24 20:34:11 +00:00
UbitUmarov ec94b82f51 stop using useless geom tricallback. 2012-02-24 18:25:43 +00:00
Melanie 37068d17c5 Merge branch 'master' into careminster 2012-02-24 09:56:06 +00:00
Justin Clark-Casey (justincc) f67f37074f Stop spurious scene loop startup timeout alarms for scenes with many prims.
On the first frame, all startup scene objects are added to the physics scene.
This can cause a considerable delay, so we don't start raising the alarm on scene loop timeouts until the second frame.
This commit also slightly changes the behaviour of timeout reporting.
Previously, a report was made for the very first timed out thread, ignoring all others until the next watchdog check.
Instead, we now report every timed out thread, though we still only do this once no matter how long the timeout.
2012-02-24 05:02:33 +00:00
UbitUmarov 15bc539bd4 fix the last fix. Regions are square but... Also remove the 0.5 offset in map position. It was apparently needed to fix we having nsamples = size and not size + 1. 2012-02-23 00:50:07 +00:00
UbitUmarov aa77d1d486 fix my bug on ChODE terrain heightmap build 2012-02-23 00:22:44 +00:00
Melanie cb4509f3b8 Reverse the changed to ODE heightmap. It results in SERIOUS issues like an
irreversible y-flip and holes in the map.
2012-02-21 21:34:02 +01:00
Melanie 03e7bc1526 Merge branch 'master' into careminster
Conflicts:
2012-02-21 10:20:56 +00:00
Justin Clark-Casey (justincc) daee2eda93 Load 32-bit or 64-bit BulletSim Windows library automatically as appropriate.
This uses the same approach as ODE.
radams, if this doesn't work for you please feel free to revert.
2012-02-21 04:10:39 +00:00
Justin Clark-Casey (justincc) 68a4ef5ef6 Add 64 bit Windows sqlite3.dll and use this if running a 64-bit windows process. 2012-02-21 02:52:20 +00:00
Justin Clark-Casey (justincc) 19d271d3fc Remove PhysXPlugin and wrappers.
In over 4 years this never progressed beyond an unimplemented stub.
This doesn't mean that it can't come back if someone is interested in implementing PhysX support.
2012-02-21 01:45:17 +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 185bf55804 Merge branch 'master' of ssh://3dhosting.de/var/git/careminster 2012-02-19 14:20:53 +01:00
UbitUmarov 736fb0b41d minor fix to chODE terrain heighmap scale 2012-02-19 02:07:43 +00: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) 9846a1e56e Report an error if the required native Windows ODE library can't be found. 2012-02-18 02:52:29 +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
Justin Clark-Casey (justincc) c0760f9f91 Comment out "experimental" log message printed out whenever a physics mesh was generated for a mesh
Also adds prim name to the "no asset data" error log message
2012-02-16 00:28:57 +00:00
UbitUmarov 819fcdaee1 Now if chode prim.cs detects out of bounds it requests a update and blocks movement and colisions. Base code must do a PhysActor.CrossingFailure() to make it move again inside sim or delete it. 2012-02-15 22:04:26 +01:00
UbitUmarov 3bffdddc9d don't freeze with a sitted avatar in a border without other sim. Still messy :( 2012-02-15 22:04:17 +01:00
UbitUmarov f6c35cf26f Now if chode prim.cs detects out of bounds it requests a update and blocks movement and colisions. Base code must do a PhysActor.CrossingFailure() to make it move again inside sim or delete it. 2012-02-15 20:33:31 +00:00
UbitUmarov b59275355e don't freeze with a sitted avatar in a border without other sim. Still messy :( 2012-02-15 19:44:54 +00:00
UbitUmarov a758abaa9f try to make crossings work better. chode no longer prevents crossings i hope 2012-02-15 17:08:33 +00:00
UbitUmarov f6f0d884bd try to make crossings work better. chode no longer prevents crossings i hope 2012-02-15 16:44:15 +01:00
UbitUmarov 04279e36d1 Merge branch 'master' of ssh://3dhosting.de/var/git/careminster into ubitwork 2012-02-15 03:51:30 +00:00
Melanie 272ba5a741 Merge branch 'master' into careminster 2012-02-15 01:11:17 +00:00
UbitUmarov 6fd6919a0b remove drawstuff from ubitode 2012-02-11 19:25:41 +00:00
UbitUmarov f168fefb79 removed outdated coments. 2012-02-11 19:14:27 +00:00
UbitUmarov bcf59a574f remove forgotten taints code 2012-02-11 19:12:04 +00:00
UbitUmarov 022ae33ed5 UbitODE: replace 'taints' by 'changes' for avatars also. This provides better time order with changes in prims. 2012-02-11 17:35:38 +00:00
UbitUmarov d4e28ed113 vehicle changes done by simulation thread and not calling one 2012-02-11 15:18:13 +00:00
UbitUmarov 3f9c390b4d changes to vehicle banking 2012-02-11 14:29:36 +00:00
UbitUmarov 33a9f0f1c5 a bit better vertical attractor and banking 2012-02-11 04:42:45 +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 b617411b97 scale avatar push force with avatar density 2012-02-11 02:48:38 +00:00
Justin Clark-Casey (justincc) b92b9228ef correct the default avatar_terminal_velocity value that I accidentally left in whilst testing 2012-02-11 02:29:07 +00:00
Justin Clark-Casey (justincc) f49897a419 Clamp ODE character velocity. Make ODE falling character 54m/s by default.
If velocity reaches 256 in any vector then bad things happen with ODE, so we now clamp this value.
In addition, a falling avatar is clamped by default at 54 m/s, which is the same as a falling skydiver.
This also appears to be the value used on the linden lab grid.
This should resolve http://opensimulator.org/mantis/view.php?id=5882
2012-02-11 02:28:40 +00:00
UbitUmarov 43a74d8481 test on git 2012-02-10 23:51:55 +00:00
UbitUmarov 7cf73cb92a Changes to vehicles code etc. Includes some debug aids to remove later. 2012-02-10 22:43:51 +00:00
UbitUmarov 6af01f6767 initial introdution of physics actor building control. 2012-02-08 23:14:53 +00:00
UbitUmarov c75fa8b8a1 changes in physics manager, needed for UbitODE 2012-02-08 15:28:13 +00:00
UbitUmarov 815f3af1d7 UbitODE plugin initial commit 2012-02-08 15:24:10 +00:00
Melanie 4ce42762ee Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-01-26 00:21:21 +00:00
Robert Adams e9de7e7107 Update BulletSim.dll with some interface changes and tuning (see opensim-libs). Change BSScene to use new interface. 2012-01-25 14:40:38 -08:00
Justin Clark-Casey (justincc) e20cf3789b Serialize calls to ODE Collide() function across OdeScene instances to prevent ODE crashes on simulators running more than one region.
It turns out that calls to Collide() are not thread-safe even for objects in different ODE physics worlds due to ODE static caches.
For simulators running multiple regions, not serializing calls from different scene loops will sooner or later cause OpenSim to crash with a native stack trace referencing OBBCollider.
This affects the default OPCODE collider but not GIMPACT.  However, GIMPACT fails for other reasons under some current simulator loads.
ODE provides a thread local storage option, but as of ODE r1755 (and r1840) DLLs compiled with this crash OpenSim immediately.
2012-01-25 19:31:50 +00:00
Melanie 427ab55058 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneGraph.cs
2012-01-25 00:45:57 +00:00
Justin Clark-Casey (justincc) 8b035dc3c7 Restrict accessible of ODECharacter Shell and Body. Add method doc and some error log lines. 2012-01-24 18:46:24 +00:00
Melanie a6e305063e Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Services/Connectors/Asset/AssetServiceConnector.cs
	OpenSim/Services/Interfaces/IUserAccountService.cs
2012-01-02 21:41:36 +00:00
Justin Clark-Casey (justincc) 014a86c26b Adding commented out log messages and some minor formatting for future bug hunting. No functional changes. 2012-01-02 19:46:30 +00:00
Melanie c9dbcfbb31 Merge branch 'master' of ssh://3dhosting.de/var/git/careminster 2011-12-24 01:43:44 +01:00
Melanie f2855d3668 Add setter for Acceleration on physics objects. 2011-12-24 01:41:32 +01:00
Melanie b8a914b15b Merge branch 'master' into careminster 2011-12-23 01:00:34 +00:00
Justin Clark-Casey (justincc) 790ca65c84 Align default ODE_STEPSIZE with that already used through OpenSimDefaults.ini 2011-12-22 20:22:15 +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
Melanie ca6113a4d5 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
2011-12-20 21:51:43 +00:00
Diva Canto dd69c9fd20 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-12-20 09:53:05 -08:00
Diva Canto 25cbba9bca Fixed bug of avie going under the terrain when crossing regions in certain directions. This was a 1-off bug: the terrain was being placed in 127, 127 resulting in a bounding box if -2, 256. I placed it in 128, 128 resulting in a bounding box of -1, 257. 2011-12-20 09:43:39 -08:00
Melanie 759f1d2dbe Merge branch 'master' into careminster 2011-12-18 10:49:45 +00:00
Justin Clark-Casey (justincc) 5d79f857b0 Comment out accidentally left in "Adding physics prim" log message 2011-12-16 20:54:28 +00:00
Justin Clark-Casey (justincc) 8013c0d2f5 Stop pointlessly setting the m_colliderarr[] to false in the ODECharacter constructor 2011-12-15 22:33:14 +00:00
Justin Clark-Casey (justincc) c0ba99e5ad Stop having to call SetHeight again in ScenePresence.AddToPhysicalScene() when we've already passed size information to the avatar at PhysicsScene.AddAvatar()
Eliminate some copypasta for height setting in OdeCharacter
2011-12-15 22:29:36 +00:00
Justin Clark-Casey (justincc) 937c06db54 Code cleanup related to ScenePresence.PhysicsActor and OdeScene/OdeCharacter
Stop hiding RemoveAvatar failure, add log messages when characters are removed through defects or re-added unexpectedly.
Add commented out log lines for future use.
Use automatic property for PhysicsActor for better code readability and simplicity
2011-12-15 21:57:22 +00:00
Justin Clark-Casey (justincc) 6f2d80cc93 minor: add some currently commented log lines for use in debugging 2011-12-14 21:27:47 +00:00
Melanie 69f29cb53e Merge branch 'master' into careminster 2011-12-14 19:50:43 +00:00
Justin Clark-Casey (justincc) e830a77860 Simplify some manipulation of _taintedActors in OdeScene 2011-12-14 18:33:44 +00:00
Justin Clark-Casey (justincc) a110a7bd6a Eliminate _taintedPrimsH and _taintedPrimsL (and _taintedPrimLock) in favour of just a _taintedPrims HashSet.
There's no point maintaining a list because any pending taint operations are all carried out in the same call anyway.
2011-12-14 18:03:25 +00:00
Melanie 898549d13e Merge branch 'master' into careminster 2011-12-14 08:57:55 +00:00
Justin Clark-Casey (justincc) 4dfd2c7d47 minor: remove pointless comment from OdeScene.cs 2011-12-12 19:31:50 +00:00
Melanie b60ff651a3 Merge branch 'master' into bigmerge 2011-12-01 12:16:59 +00:00
Justin Clark-Casey (justincc) a17f93ff44 minor: remove mono compile warning, a Vector3 can never be null since it's a struct 2011-11-29 16:31:10 +00: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) b56410285b Log error if we attempt to add/remove an OdeCharacter from the _characters list inappropriately 2011-11-22 22:46:25 +00:00
Justin Clark-Casey (justincc) ace4324e75 Stop removing actor from the hash maps in OdeScene.RemoveCharacter() since this is now being down in OdeCharacter.DestroyOdeStructures() 2011-11-22 22:37:06 +00:00
Justin Clark-Casey (justincc) af90b52731 Comment out uncalled OdeScene.UnCombine() 2011-11-22 22:28:46 +00:00
Justin Clark-Casey (justincc) daf99f8c0a slightly simplify OdeScene.Simulate() by removing bool processtaints, since we can inspect count of taint lists instead.
also groups OdeCharacter.CreateOdeStructures() and DestroyOdeStructures() together
2011-11-22 21:51:00 +00:00
Justin Clark-Casey (justincc) c4e4a29478 Slightly improve "Unable to space collide" logging message, though I don't think I've ever seen this. 2011-11-21 21:31:26 +00:00
Justin Clark-Casey (justincc) 4ddff7eb0f Get rid of OdeCharacter != null checks since OdeScene._characters can never contain a null character.
Ignoring the ancient code glyphs not to do this....
2011-11-21 21:29:56 +00:00
Justin Clark-Casey (justincc) 82dc7886fc remove unnecessary OdeScene._activeprims locking. Code is single-threaded 2011-11-21 21:15:15 +00:00
Justin Clark-Casey (justincc) 7480f2fd0e Restore defects list. In hindsight, the reason for this is becuase we can't remove the character whilst iterating over the list.
This commit also removes locking on OdeScene._characters since code is single threaded
2011-11-21 21:04:24 +00:00
Justin Clark-Casey (justincc) 546259b2ff simplify operation of OdeScene._perloopContact 2011-11-21 20:30:37 +00:00
Justin Clark-Casey (justincc) 25d9001de1 don't bother locking OdeScene._perloopContact in single threaded code 2011-11-21 20:17:36 +00:00
Justin Clark-Casey (justincc) e33b0fa35b don't lock OdeScene.contacts since only ever accessed by a single thread 2011-11-21 20:12:04 +00:00
Justin Clark-Casey (justincc) e67ba0ad06 rename ODECharacter.AvatarGeomAndBodyCreation() -> CreateOdeStructures() to match existing DestroyOdeStructures() 2011-11-21 20:01:34 +00:00
Justin Clark-Casey (justincc) 063f0f5d97 refactor: Eliminate one line ODECharacter.doForce() method for code clarity 2011-11-21 19:58:37 +00:00
Justin Clark-Casey (justincc) 225b925f4e Comment out calls to OdeScene.waitForSpaceUnlock() since that method does nothing right now 2011-11-21 19:48:31 +00:00
Justin Clark-Casey (justincc) 54789706f4 Reduce complexity of OdeScene.Simulate() by fully removing bad characters at point of detection rather than later on. 2011-11-21 19:45:22 +00:00
Justin Clark-Casey (justincc) 3becda919e move geom/actor map maintenance into DestroyODEStructures()/AvatarGeomAndBodyCreation().
This saves us having to do it separately when a character capsule size is changed
2011-11-21 19:31:29 +00:00
Justin Clark-Casey (justincc) 4faac1f090 When changing avatar size in ODE, remove the old actor from the name and actor maps 2011-11-21 19:06:53 +00:00
Justin Clark-Casey (justincc) 898904d83d When an ODECharacter is removed (e.g. when an avatar leaves a scene), remove the actor reference in OdeScene.actor_name_map rather than leaving it dangling.
This also largely centralizes adds/removes in OdeScene.AddCharacter()/RemoveCharacter()
2011-11-21 18:27:41 +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
Justin Clark-Casey (justincc) 4485007fce Instead of generating a new list for bad characters on every physics pass, keep reusing the same list. 2011-11-21 17:04: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
Justin Clark-Casey (justincc) e16d7fe1da Instead of having scene add/remove collision events directly to the OdeScene collision event dictionary, marshall them via a change dictionary first.
This is to avoid a complicated tri-thread deadlock on region crossing for avatars with attachments, where
1) XEngine starting up scripts can lock XEngine.m_Scripts and then try to lock OdeScene._collisionEventPrim while starting up a script due to avatar border crossing
2) An existing collision event will lock OdeScene._collisionEventPrim and then try to lock SP.m_attachments while trying to send the collision event to attachments
3) The avatar still entering the region will lock SP.m_attachments and then try to lock m_Scripts to start more attachment scripts.
2011-11-15 20:02:09 +00:00
Justin Clark-Casey (justincc) 45c7789b54 use a more efficient dictionary in OdeScene._collisionEventPrim rather than a list 2011-11-15 19:42:33 +00:00
Melanie 2cf6172689 Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2011-11-05 11:05:32 +00:00
Justin Clark-Casey (justincc) f7b8c54c24 Add comment for experimental effect of removing the Thread.Sleep(20) in ODEPrim.changevelocity() 2011-11-04 23:43:17 +00:00
Melanie b9f7aebde3 Merge branch 'master' into bigmerge 2011-11-04 23:21:19 +00:00
Justin Clark-Casey (justincc) ccca6ba935 Stop llPushObject() from causing problems by adding force via a taint rather than directly.
This isn't a perfect solution since there can be a race between the taint processing and taint setting, as force needs to be reset after processing.
Needs careful locking in the future.
2011-11-04 23:12:01 +00:00
Melanie 083b28de8c Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
2011-10-30 10:16:25 +00:00
Justin Clark-Casey (justincc) 9fdd1753fa Add taint target velocity for ODECharacters as is already done for ODECharacter position and position and velocity for ODEPrims.
This is to help stop surprises if the velocity is set in the middle of physics calculations, though this probably isn't a huge problem.
It's more for consistency and for the next step of removing some scene locks
2011-10-29 02:30:33 +01:00
Justin Clark-Casey (justincc) ef8370fb8e tidy up OdeCharacter so that we just use OpenMetaverse.Vector3 assignment directly where possible, instead of transferring X, Y and Z components separately
some of this is probably a hold over from using ODE.Vector3, which is still necessary in some places.
2011-10-29 02:07:28 +01:00
Justin Clark-Casey (justincc) a5ea9f8830 Move position set from taint to logically better position at top of ODECharacter.ProcessTaints() though this makes no practical difference 2011-10-29 01:46:22 +01:00
Justin Clark-Casey (justincc) 5ae8de3c00 Stop setting _position as well as m_taint_position in ODECharacter.Position
setting position at the same time as taint appears to undermine the whole purpose of taint
testing doesn't reveal any obvious regressions in doing this
2011-10-29 01:39:48 +01: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 6a96c9546d Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2011-10-26 17:48:51 +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) 6a74a4c12b Clear OdeCharacter CollisionEventUpdate when we subscribe or unsubscribe from collision events 2011-10-25 22:46:42 +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
Justin Clark-Casey (justincc) b9f106f484 When sending object collision updates, don't null out and recreate the CollisionEventUpdate() if the number of collisions falls to zero. Reuse the existing one instead. 2011-10-25 22:28:40 +01:00
Justin Clark-Casey (justincc) 5d37f0471e For ScenePresence collision events, instead of creating a new CollisionEventsThisFrame every time we need to send some new ones, reuse the existing one instead.
This assumes that the listener is using the data synchronously, which is currently the case.
2011-10-25 22:19:17 +01:00
Justin Clark-Casey (justincc) 7b6b36cee9 Fix bug where collision event listeners were not removed once the listener had gone away.
This was causing continuous use of temporary memory even when all avatars had left the scene.
Memory does leak but it does cause more calls to the garbage collector, which would pause the scene thread for a very short while during collection.
2011-10-25 21:40:51 +01:00
Justin Clark-Casey (justincc) 1fbb379536 minor: rename a parameter in OdeScene.Simulate() from actor -> prim since it's an OdePrim 2011-10-25 21:15:37 +01:00
Melanie 0531b73695 Merge commit '4241ee5dfab99d4e247624a2f368a8a931d2e54c' into bigmerge 2011-10-25 03:18:10 +01:00
Melanie 564563d273 Merge commit '30fe66d3ab534422407415817b570a66096c543b' into bigmerge 2011-10-25 03:18:04 +01:00
Melanie 6d4480c1ca Merge commit '9c430208769ab7fd7877093e278e8fcae02ecef3' into bigmerge 2011-10-25 03:17:59 +01:00
Melanie e35835602f Merge commit 'b63ec987b0a1692da4c5e84facf0ea149d4cfe90' into bigmerge 2011-10-25 03:17:40 +01:00
Melanie 71b4486356 Merge commit '581885da75c57250201b34e2d585d32c8f07089a' into bigmerge 2011-10-25 02:55:46 +01:00
Melanie 6a01246cc6 Merge commit '03202ada2918c0c0837e8de50e3a0436e4407c91' into bigmerge 2011-10-25 02:55:38 +01:00
Melanie 10dff1da7f Merge commit '1d4cd76e8a8c64da71fc384ff9c654d7f4f849c1' into bigmerge 2011-10-25 02:55:25 +01:00
Melanie 2134f23da0 Merge commit 'f10a824e47549806c1fa647c4e9fba4c8cf6ad13' into bigmerge 2011-10-25 02:55:19 +01:00
Melanie 43751d0cfd Merge commit '5515c45e3b42497f64f8e5846697471b1de952c5' into bigmerge 2011-10-25 02:55:14 +01:00
Melanie 7ac9463e35 Merge commit '71d221cdc090cdedf371ead534421bb7074908cd' into bigmerge 2011-10-25 02:55:01 +01:00
Melanie e2de57ca29 Merge commit '0c041ce12f393367e2754e88d9b8dad5e45f88c4' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2011-10-25 02:26:56 +01:00
Melanie 077e3500b2 Merge commit '978fb3d482072d840e6280aa5acd090b67ee6205' into bigmerge 2011-10-25 01:52:42 +01:00
Melanie a09e72c8cc Merge commit '9cc2694776e261868138c325a82ce5481c2908ec' into bigmerge 2011-10-25 01:52:26 +01:00
Melanie 63cbdb9b2a Merge commit 'f2132329a358db2c66c29501d35ef54eae8d6eed' into bigmerge 2011-10-25 01:52:19 +01:00
Melanie f4e4026a7a Merge commit '4bfc2f5cdea4b739110cae3b37945d88ad527334' into bigmerge 2011-10-25 01:51:49 +01:00
Melanie 24e260744a Merge commit '77c65951e06c1d309f2bc8f6d2451b2b9a82c9df' into bigmerge 2011-10-25 01:51:06 +01:00
Melanie 747786aac0 Merge commit '20da04fd0c909a00c0cdc2585f242e95c868801a' into bigmerge 2011-10-25 01:43:05 +01:00
Melanie d68b73bfba Merge commit '227db07f2ff8a1ba840a0d3018bb242a34d6038f' into bigmerge 2011-10-25 01:42:56 +01:00
Justin Clark-Casey (justincc) 4241ee5dfa very minor removal of old commented out line of code in OdeScene 2011-10-21 00:04:36 +01:00
Justin Clark-Casey (justincc) 30fe66d3ab remove unnecessary null check on _collisionEventPrim 2011-10-20 20:58:29 +01:00
Justin Clark-Casey (justincc) 9c43020876 Get OdeScene to use passed in time step rather than hard-coded 0.089
However, I still don't recommend changing MinFrameTime from 0.089, high values do not work well and lower values don't seem to make much difference
2011-10-20 20:48:51 +01:00
Justin Clark-Casey (justincc) b63ec987b0 For now, stop passing timeStep into methods where it's not actually used. 2011-10-20 17:54:32 +01:00
Justin Clark-Casey (justincc) 581885da75 Temporarily put in log lines to record time taken to set terrain in OdeScene. 2011-10-18 21:21:15 +01:00
Justin Clark-Casey (justincc) 03202ada29 Store scene identifier passed in to OdeScene for later debug messages 2011-10-18 21:11:13 +01:00
Justin Clark-Casey (justincc) 1d4cd76e8a Don't bother taking OdeLock during OdeScene construction, since there can be no contention until the object is constructed. 2011-10-18 21:03:41 +01:00
Justin Clark-Casey (justincc) f10a824e47 Remove unnecessary lock of OdeLock in OdePrim.changeadd()
This taint can only ever be processed from the OdeScene.Simulate() loop, which already locks OdeLock.
2011-10-18 20:58:59 +01:00
Justin Clark-Casey (justincc) 5515c45e3b minor: method doc to explain a lock of OdeLock 2011-10-18 20:56:11 +01:00
Justin Clark-Casey (justincc) 71d221cdc0 Remove the unused CollisionLocker from ODE
Despite its name, this wasn't actually being used in any collision checking
2011-10-18 17:35:58 +01:00
Justin Clark-Casey (justincc) 0c041ce12f Implement osNpcSit(). This is still in development so don't trust it
Format is osNpcSit(<npc-uuid>, <target-uuid>, OS_NPC_SIT_IMMEDIATE)
e.g. osNpcSit(npc, llGetKey(), OS_NPC_SIT_IMMEDIATE);
At the moment, sit only succeeds if the part has a sit target set.
NPC immediately sits on the target even if miles away - they do not walk up to it.
This method is in development - it may change so please don't trust it yet.
Standing will follow shortly since that's kind of important once you're sitting :)
2011-10-17 01:42:31 +01:00
Justin Clark-Casey (justincc) 978fb3d482 reduce access to ODECharacter methods to make code analysis easier. Eliminate redundant argument on ProcessTaints() 2011-10-15 01:41:39 +01:00
Justin Clark-Casey (justincc) 9cc2694776 restrict unnecessary access levels on ODEPrim fields/properties 2011-10-15 01:31:09 +01:00
Justin Clark-Casey (justincc) f2132329a3 refactor: make methods that do not need to be public in ODE private or internal to aid code reading/analysis. Remove some unused method arguments 2011-10-15 01:20:40 +01:00
Justin Clark-Casey (justincc) 4bfc2f5cde Change hardcoded ODE total frame time to match the default total frame time (0.09375 -> 0.089).
No apparant ill effects - because the default stepsize is 0.2, there are still 5 physics steps per physics frame.
This is a precursor to using the elapsed value passed in (and now changeable in config).
2011-10-14 21:07:57 +01:00
Justin Clark-Casey (justincc) 77c65951e0 Extract NullPhysicsScene from PhysicsScene to improve code readability 2011-10-14 01:38:14 +01:00
Justin Clark-Casey (justincc) 20da04fd0c More method doc and formatting changes. Makes DestroyOdeStructures() private 2011-10-13 21:42:24 +01:00
Justin Clark-Casey (justincc) 227db07f2f refactor: move 3x copy/pasted ode structure removal code in ODECharacter into a DestroyOdeStructures() method
also adds some method doc
2011-10-13 18:19:13 +01:00
Melanie b0ee174296 Merge commit '9090039324ecc45bf1005e719f61a80f0187cb73' into bigmerge 2011-10-12 01:41:44 +01:00
Melanie 34954172a1 Merge commit '1e798136c3458b8255fcb6341713bf9dbb689f4b' into bigmerge 2011-10-11 22:23:16 +01:00
Melanie b9de3b7f5b Merge commit 'f95033812402aaf31a9f2f66c946165d2d79669f' into bigmerge
Conflicts:
	OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs
	OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs
	prebuild.xml
2011-10-11 22:22:34 +01:00
Melanie 341efb0942 Merge commit '6f542f73d4aacc0b92c2ebcff84b4ce2c8d9433b' into bigmerge 2011-10-11 22:12:25 +01:00
Justin Clark-Casey (justincc) 9090039324 Remove unused local variable i from OdeScene.Simulate() 2011-10-05 22:15:28 +01:00
Justin Clark-Casey (justincc) 1e798136c3 adjust some whitespace to trigger another build, to check the last failure was just a glitch 2011-09-17 01:33:55 +01:00
Justin Clark-Casey (justincc) f950338124 Remove old bullet DotNET and X libraries in preparation for BulletS
These weren't working properly anyway.
You will need to rerun prebuild.sh/.bat after this commit, and maybe "nant clean" as well.
2011-09-17 01:09:25 +01:00
Justin Clark-Casey (justincc) 6f542f73d4 Stop the avatar stalling on its first boarder cross when using the ODE plugin
When upgrading the previously child agent to a root, the code was setting the Size parameter on the ODECharacter PhysicsActor.
This in turn reset Velocity, which cause the border stall.
I'm fixing this by commenting out the Velocity = Vector3.Zero lines since they don't appear to play a useful purpose
2011-09-16 23:57:16 +01:00
Tom 66dec3b874 Resolve merge commits, stage 1 2011-09-04 07:06:36 -07:00
Robert Adams 96dce3e16c Use GetMeshKey from PrimitiveBaseShape. 2011-08-29 10:10:48 -07:00
Mic Bowman 648866b597 Merge branch 'master' into bulletsim 2011-08-29 09:55:34 -07:00
Robert Adams 18037d41c4 Move GetMeshKey from buried inside Meshmerizer to a public method on PrimitiveBaseShape
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-08-28 16:50:54 -04:00
Robert Adams 80a2b81d52 Add level of detail specification to optionally reduce the number of vertices in generated prim meshes
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-08-28 16:49:25 -04:00
Robert Adams 21708b832b BulletSim: add mesh representation. Use meshes for static objects and switch to hulls for physical objects. 2011-08-26 15:51:21 -07:00
Mic Bowman 384cb79a1a Merge branch 'master' into bulletsim
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneManager.cs
2011-08-19 14:49:16 -07:00
Robert Adams fef73a1a10 BulletSim: add runtime setting of physics parameters. Update default values. 2011-08-18 14:32:09 -07:00
Justin Clark-Casey (justincc) 951ffad81e If SP.MoveToTarget has been called with a force walk, begin by landing the avatar.
There is a bug here - once an avatar has landed it glides to its new position instead of performing a walk animation
2011-08-11 00:23:54 +01:00
Justin Clark-Casey (justincc) 7f499ff3f3 Add a OS_NPC_LAND_AT_TARGET option to osMoveToTarget()
Default for this function is now not to automatically land.
This allows better control by scripts when an avatar is going to be landing on a prim rather than the ground.
Stopping the avatar involves faking a collision, to avoid the pid controller making it overshoot.
A better approach would be to gradually slow the avatar as we near the target
2011-08-10 23:56:19 +01:00
Mic Bowman 82f41fdcb5 BulletSim: fix problem with not convex hulling large objects by creating unit meshes and always scaling in Bullet 2011-08-05 14:53:39 -07:00
Mic Bowman c3f579046c Merge branch 'master' into bulletsim 2011-08-05 11:13:02 -07:00
Robert Adams 7640b5abf6 BulletSim: Parameters settable from ini file. Linksets. Physical property value tuning 2011-08-05 11:01:27 -07:00
Justin Clark-Casey (justincc) 21d8a6b0e8 extend move test to check one beat of the simulator without actually asking the npc to move. 2011-08-03 23:06:18 +01:00
Justin Clark-Casey (justincc) 05e94ff27e Move common gemo/agent map name code into CreateGeom()
Fix build break.
2011-08-01 07:04:13 +01:00
Justin Clark-Casey (justincc) f9d6a91252 Instead of preserving old name in geom_name_map in change size or shape, use the Name property instead.
This is equivalent since the prim 'name' is never changed.  In fact, this propery is never used for prims
2011-08-01 06:52:52 +01:00
Justin Clark-Casey (justincc) 40a78db182 comment out unused code in OdeScene.TriCallback() 2011-08-01 06:47:45 +01:00
Justin Clark-Casey (justincc) ccb4b76242 On geom removal, remove the name from the OdeScene.geom_name_map too 2011-08-01 06:40:29 +01:00
Justin Clark-Casey (justincc) f79df6f43f remove the unused ODEPrim.prev_geom field 2011-08-01 06:35:59 +01:00
Justin Clark-Casey (justincc) f32dbef647 When an ODE geom is removed (as when a non-phantom prim is deleted, resized or shape changed, also remove the OdeScene.actor_name_map entry pointing to the phys actor
This is to stop a small memory leak over time when prims are deleted or phantom-toggled
2011-08-01 06:32:30 +01:00
Justin Clark-Casey (justincc) 6618948ff9 refactor: centralize prim geom removal code from four places to one 2011-08-01 06:15:02 +01:00
Justin Clark-Casey (justincc) 509200d5cd minor: add note to RemovePrimThreadLocked() to the effect that it contrary to the summary, it is being called from within Simulate() lock (OdeLock) 2011-08-01 05:48:27 +01:00
Justin Clark-Casey (justincc) dfa2f7d715 If a prim changes size or shape, add actor to _parent_scene.actor_name_map with new prim_geom key, as the old one becomes invalid.
This resolves http://opensimulator.org/mantis/view.php?id=5603 where changing size or shape would stop collision_start being fired in a running script.
In both this and existing code we are not removing old actors from actor_name_map when the existing prim_geom is removed, which leads to a small memory leak over time.
This needs to be fixed.
2011-08-01 05:43:04 +01:00
Justin Clark-Casey (justincc) 2102964826 minor: indentation correction 2011-08-01 05:14:16 +01:00
Justin Clark-Casey (justincc) d041276517 Remove _mesh field since the mesh data no longer needs to be stored after it's initially used.
This may improve memory usage for regions using mesh and sculpts, though I suspect that it doesn't address the current memory leak.
2011-07-31 01:03:52 +01:00
Justin Clark-Casey (justincc) bd8f538f80 refactor: Remove argument to pass in an initial mesh to OdePrim since this is no longer required and it prevents removal of the _mesh field (which is only used temporarily)
If passing in a mesh becomes important again in the future then this can be reinstated.
2011-07-31 00:49:49 +01:00
Justin Clark-Casey (justincc) 196a774b24 minor: correct method doc for last commit 2011-07-31 00:45:20 +01:00
Justin Clark-Casey (justincc) 454312f5bc refactor: rename CreateGeom _mesh argument to mesh, so as to not confuse this with the pre-existing _mesh field 2011-07-31 00:44:23 +01:00
Justin Clark-Casey (justincc) f1ce17071d minor: method doc 2011-07-31 00:43:02 +01:00
Justin Clark-Casey (justincc) e08be91c84 Refactor: Replace instances of m_isphysical with IsPhysical rather than have some code reference the private var and other the public var without any functionality difference.
Add some method doc to IsPhysical
2011-07-30 23:44:47 +01:00
Justin Clark-Casey (justincc) 4f4d080461 refactor: Rename ODEPrim.ParentPrim() to AddChildPrim() for code readability 2011-07-30 23:20:43 +01:00
Justin Clark-Casey (justincc) 49a3740ee9 minor: remove mono compiler warnings, some code spacing adjustments 2011-07-30 03:56:29 +01:00
Justin Clark-Casey (justincc) d917010433 minor: Add method doc to collision subscription methods. Change method case to reflect OpenSim standards. 2011-07-30 03:11:36 +01:00
Justin Clark-Casey (justincc) 310a685220 refactor: extract method that generates a physics mesh from prim shape data 2011-07-30 02:34:50 +01:00
Justin Clark-Casey (justincc) 4197f66052 refactor: extract code which generate points and faces from sculpt data into it's own method.
fix build break.
2011-07-30 02:22:05 +01:00
Justin Clark-Casey (justincc) b0eacadeb4 fix bug in previous commit 2011-07-30 02:09:17 +01:00
Justin Clark-Casey (justincc) 122e01949d refactor: move the code that generates physics meshs from prim mesh data into a separate method, in order to make the code more readable. 2011-07-30 02:08:32 +01:00
Justin Clark-Casey (justincc) 5043be13fb Return null from CreateMeshFromPrimMesher if OpenJPEG decoding of the sculpt data fails.
This is to address http://opensimulator.org/mantis/view.php?id=5612
2011-07-29 21:49:23 +01:00
Justin Clark-Casey (justincc) f3c5a5b745 fix extremely minor Ode bug where the _taintedPrimL list would always be cleared on every OdeScene.Simulate() even if it was already empty. 2011-07-29 01:18:42 +01:00
Justin Clark-Casey (justincc) 2a39d0cdb0 refactor: Move another chunk of ninja code out of the OdeScene.Simulate() loop for consistency and readability. 2011-07-29 00:51:07 +01:00
Justin Clark-Casey (justincc) 3f0d8f3cbf refactor: Simplify reading OdeScene.Simulate() loop by shunting all the NINJA joints stuff into its own method.
Now if ninja joints isn't active (which is the default) don't have to wade through a lot of massively indented irrelevant code.
2011-07-29 00:39:02 +01:00
Justin Clark-Casey (justincc) 9c6227da66 refactor: unindent the OdeScene.Simulate() loop to ignore the long commented out ifs and locks
This is to make it more readable.
2011-07-29 00:23:42 +01:00
Robert Adams 869883f2dc BulletSim: fix buoyancy for prims. Start of configurable physics parameters. 2011-07-22 15:23:57 -07:00
Robert.Adams 5ffec1cd64 Pass collisions and updates in pinned memory (saves marshaling).
Fix folding feet by using collision normals.
Add constraint specification.
2011-07-22 10:23:40 -07:00
Dan Lake 2c11f7fc38 Merge branch 'master' into bulletsim 2011-07-20 15:01:32 -07:00
Dan Lake 3270bd560e Removed unused AddPrimShape methods in PhysicsScene caused by merge conflicts 2011-07-20 14:34:02 -07:00
Careminster Team 9fc7d65df7 Apply the localID to the Physics actor to prevent null calls later 2011-07-19 18:26:36 +01:00
Justin Clark-Casey (justincc) 18652eb87e Fix physics proxy regeneration when a mesh with more than one submesh is resized
Addresses http://opensimulator.org/mantis/view.php?id=5584
2011-07-16 01:36:27 +01:00
root e9dbe54ab1 Fix some local id issues in physics glue 2011-07-15 20:07:59 +01:00
Melanie c7dbd7cbd0 Fox some local id issues in physics glue 2011-07-15 19:36:00 +02:00
Melanie 8dff9d564d Revert "Add localid support to ch0de properly"
This reverts commit bb402d0d95.
2011-07-15 19:35:49 +02:00
Tom bb402d0d95 Add localid support to ch0de properly 2011-07-15 12:08:40 -07:00
Tom cc69d12d54 Fix a raycast issue 2011-07-15 11:12:10 -07:00
Justin Clark-Casey (justincc) 3e456163dd Port implementation of llCastRay() from Aurora.
I haven't been able to test this since the viewer won't parse the llCastRay() function.  Maybe some activation cap is missing.  Could wait until it is activated by default in the viewer.
2011-07-12 22:13:15 +01:00
Justin Clark-Casey (justincc) d31e0a67f7 temporarily fix the build break with building the OdePlugin tests assembly.
This needs to be fixed properly.
2011-07-12 03:26:22 +01:00
Justin Clark-Casey (justincc) f75f906e35 minor: remove whitespace to trigger another build 2011-07-12 03:13:05 +01:00
Justin Clark-Casey (justincc) df0e5cc9fe When a mesh object is added to a scene, delay adding the physics actor until the sculpt data has been added to the shape (possibly via an async asset service request)
This prevents spurious 'no asset data' for meshes added on startup.
2011-07-12 02:33:09 +01:00
Dan Lake b9cbe92f30 Merge branch 'master' into bulletsim 2011-07-11 12:23:20 -07:00
Justin Clark-Casey (justincc) 24efb021ff minor Tack the prim name on the end of the "experimental mesh proxy generation" message.
Can probably comment out this message soon, once a few other issues are tidied up.
2011-07-11 04:23:30 +01:00
Justin Clark-Casey (justincc) 2f3d0e209f When a sculpt/mesh texture is received by a part on a callback request, don't do the unnecessary work of copying the base shape.
Just setting the new base shape is enough to reinsert the sculpt data and set the taint.
Also cleans up a few more left-in debugging messages.
2011-07-11 03:13:59 +01:00
Justin Clark-Casey (justincc) ce85675e70 comment out accidential ProcessTaints physics debug line left in code 2011-07-11 02:29:51 +01:00
root c920ff9d1d Merge branch 'master' into careminster-presence-refactor 2011-07-09 01:06:46 +01:00
Justin Clark-Casey (justincc) 5e8900dfd0 minor: code tidy and inserted log lines for future use.
Unable to get to the bottom of why resizing a mesh fails to properly reset the physics proxy, when toggling phantom does
After a mesh is generated, the existing sculptdata is set to zero in PrimitiveBaseShape to save memory
When phantom is toggled, the sculptdata is regenerated before remeshing.
But on resize, the sculptdata is not regenerated.
So clearly, resetting sculptdata is possible, but haven't quite been able to pin down how this is being done when phantom is toggled.
2011-07-09 00:35:30 +01:00
Justin Clark-Casey (justincc) e8ad8593b6 refactor: eliminate redundant return statement 2011-07-08 20:58:44 +01:00
Justin Clark-Casey (justincc) 40300c886c refactor: Factor out AddSubMesh() method from long CraeteMeshFromPrimMesher() method
Also remove some of the logging spam left in from the last commit.
2011-07-08 20:36:01 +01:00
Justin Clark-Casey (justincc) b18ef976ff Fix interpretation of physics mesh proxies from mesh data
As per http://wiki.secondlife.com/wiki/Mesh/Mesh_Asset_Format, some submesh blocks may just have the flag "NoGeometry" to signal that they provide no mesh data.
If a block contains this, ignore it for meshing purposes rather than suffer a ClassCastException
This fixes physics proxy meshing, so you can now walk through mesh doorways, properly stand on the trailer of mesh trucks, etc.
To get mesh physics proxy, the UseMeshiesPhysicsMesh must be true in a [Mesh] config section in OpenSim.ini (example in OpenSimDefaults.ini).
Convex hull physics not currently supported.
2011-07-08 19:43:22 +01:00
Justin Clark-Casey (justincc) 29034bc0e0 minor: code tidy up - remove a couple of Console.WriteLine() accidentally added in the last commit 2011-07-08 18:34:44 +01:00
Justin Clark-Casey (justincc) 36df9ae79a refactor: Separate the OdeScene class into its own file from OdePlugin.cs, to improve code readability 2011-07-08 18:16:48 +01:00
Justin Clark-Casey (justincc) 1dcad4ac66 minor: commented out log lines for future use and very small code tidy 2011-07-08 17:58:01 +01:00
root 47cf9c8fe0 Merge branch 'master' into careminster-presence-refactor 2011-07-05 04:01:59 +01:00
dahlia 5c18ebf424 Allow physics proxy generation for meshes using new asset format.
Fix an invalid cast exception while decoding new mesh asset format.
2011-06-29 17:36:41 -07:00
Robert Adams 302d72701d BulletSim initial checkin 2011-06-20 17:24:42 -07:00
Melanie 6ae73aea49 Merge branch 'master' into careminster-presence-refactor 2011-06-20 03:11:34 +01:00
Mic Bowman ad84728aba Add localID to physical object creation functions. 2011-06-15 11:31:32 -07:00
Melanie a1c16a4200 Merge branch 'master' into careminster-presence-refactor 2011-06-11 12:08:02 +01:00
dahlia 387b228d68 partial update for new mesh asset format - handle both old and new formats for physics mesh 2011-06-10 00:38:38 -07:00
Melanie 9c1f799582 Implement llGodLikeRezObject and llGetUsedMemory 2011-05-22 21:01:31 +02:00
Melanie d1cf1fe3d7 Merge branch 'master' into careminster-presence-refactor 2011-04-30 14:37:37 +01:00
Dan Lake d565041e16 Fix crash when [Mesh] section is missing from configuration files 2011-04-29 15:49:10 -07:00
Melanie 0c68fbdb1a Merge branch 'master' into careminster-presence-refactor 2011-04-21 23:06:01 +01:00
BlueWall 5e99d93651 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-04-21 15:16:12 -04:00
BlueWall d9055c8dc3 Group collada meshies settings under [Mesh] in OpensimDefaults.ini 2011-04-21 15:15:24 -04:00
Melanie 09b6d717bf Merge branch 'master' into careminster-presence-refactor 2011-04-21 16:28:29 +01:00
dahlia 212326eeb0 fix meshing failure on sculpt maps smaller than 64x64 2011-04-19 22:16:10 -07:00
Melanie 474910c9d6 Merge branch 'master' into careminster-presence-refactor 2011-04-17 18:48:53 +01:00
dahlia 90b810c27e force mesh proxy for simple box prims with path cut 2011-04-12 22:47:30 -07:00
Melanie 566eff17de Comment a very spammy debug message that was being output directly to console.
My last fox that makes bumping into sim borders/bans work makes this spam
endlessly.
2011-01-28 01:46:30 +01:00
Kitto Flora bfa5b7850c Fix drift of static prim. 2011-01-20 06:51:50 +00:00
Kitto Flora ba7a227763 Revise Materials properties; Fix Double-Click Autopilot; Allow non-script sit positions >= 0.1M; Add llLookAt(); Comment out spammy bad adjacent sim message. 2011-01-04 21:36:09 +00:00
Kitto Flora 64209c9be1 Fix av/prim eject problem. 2010-12-29 21:13:49 +00:00
Diva Canto b23b29a53e This fixes mantis #5198 and related. Physics is not my expertise, so I'm not 100% sure of what all the consequences of this change are. Pushing up, so others can take a look. 2010-12-24 16:23:00 -08:00
Melanie 75010e5e1c Merge branch 'master' into careminster-presence-refactor 2010-12-25 00:04:46 +00:00
Melanie 2cc07de0ba Merge branch 'master' into careminster-presence-refactor 2010-12-23 12:08:38 +00:00
Teravus Ovares (Dan Olivares) 46db73b62b * Re-Adding Scene TimeDilation to Object Update Packets.
* Added Calculating Time Dilation in the OdePlubin
* When multiple object updates are stuffed into one packet, average the time dilation between them as a compromise.
* Time Dilation on the update is calculated when the EntityUpdate object is created.  The pre-calc-ed TD is stored in the Entity update and used when it goes out on the wire.  Previously, it was 1.0 all the time. The time dilation is tied to when the update is created, not when the update is sent.
2010-12-23 03:30:09 -05:00
Kitto Flora 5fccbe21d6 Update materials parameters. 2010-12-20 07:04:35 +00:00
Melanie 8aa63093b1 Merge branch 'master' into careminster-presence-refactor 2010-12-12 01:20:46 +00:00
Kitto Flora 95a915efd8 Fix border fence for physicals. Fix llRotLookAt() for Vehicles. 2010-12-11 21:04:03 +00:00
Justin Clark-Casey (justincc) 3053f5ba7d minor: remove some compiler warnings 2010-12-10 03:08:31 +00:00
Kitto Flora bf695cccba Fix spurious Av move when clothing item worn or removed. 2010-12-03 18:32:58 +00:00
Melanie 2c1c04119d Merge branch 'master' into careminster-presence-refactor 2010-11-25 01:24:32 +00:00
dahlia 9f29908f66 catch an exception when a mesh asset header cant be decoded 2010-11-24 02:05:41 -08:00
Melanie ac370cf57b Merge branch 'master' into careminster-presence-refactor 2010-10-25 01:24:30 +01:00
Latif Khalifa c74c1620a1 * Updated libomv to r3461
Main reason for upgrade is to revert API change that was introduced in order to support headerless binary LLSD decoding needed for deserialization of the mesh assets, which turned out to be unnecessary as we can transparently decode both kinds.
2010-10-24 23:51:46 +01:00
Melanie fc33d569cd Merge branch 'master' into careminster-presence-refactor 2010-10-21 07:33:01 +01:00
dahlia 9038218c2d fix combining of multiple physics submeshes 2010-10-20 20:39:05 -07:00
Melanie bb7a755cba Merge branch 'master' into careminster-presence-refactor 2010-10-18 20:30:46 +01:00
dahlia e3bd10829f remove some cruft from last commit 2010-10-18 04:26:23 -07:00
dahlia 7fa3335fd5 initial support for meshies physics. Must set ini option UseMeshiesPhysicsMesh = true to enable. See file OpenSimDefaults.ini for example. 2010-10-18 04:17:36 -07:00
Melanie 455a2ba7de Merge branch 'master' into careminster-presence-refactor 2010-10-16 02:27:51 +01:00
Teravus Ovares (Dan Olivares) 0308982c58 one more silly line ending thing.... *If you have problems, fetch the tree and rebase.
Signed-off-by: Teravus Ovares (Dan Olivares) <teravus@gmail.com>
2010-10-15 01:45:25 -04:00
dahlia bcdd03c1cf more work in progress on mesh physics - still non-functional 2010-10-14 20:25:31 -07:00
dahlia 2d88394cd5 laying some groundwork for mesh physics 2010-10-14 13:10:03 -07:00
Melanie cb79e228e4 Merge branch 'master' into careminster-presence-refactor 2010-10-10 22:08:36 +01:00
Teravus Ovares (Dan Olivares) cf61cf7b32 * Make line endings consistant in Meshmerizer.cs 2010-10-09 13:50:53 -04:00
Melanie 231feab57f Merge branch 'master' into careminster-presence-refactor
Conflicts:
	OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
2010-10-09 01:07:41 +01:00
dahlia 9391c3ffee add a flag in OpenSim.ini.example for enabling/disabling decoded sculpt map caching for meshing 2010-10-07 19:34:46 -07:00
Melanie d8149373c1 Merge branch 'master' into careminster-presence-refactor 2010-10-06 00:27:10 +01:00
Jeff Ames bc9f793a92 Formatting cleanup. 2010-10-04 21:28:17 -04:00
Melanie fd56fd2ce8 Merge branch 'master' into careminster-presence-refactor 2010-10-02 19:51:43 +01:00
Melanie f220a2c5eb Replace CalculateMass with a more accurate version, contributed by Ubit.
Thank you.
2010-10-02 00:24:16 +01:00
Melanie b40c91777c Replace CalculateMass with a more accurate version, contributed by Ubit.
Thank you.
2010-10-02 00:19:30 +02:00
Melanie 9f7f266f58 Replace CalculateMass with a better, contributed version 2010-10-02 00:18:52 +02:00
Melanie d0c271adc6 Typo fixes 2010-09-26 18:06:23 +01:00
Melanie aecac9bba9 Typo fixes 2010-09-26 18:05:55 +01:00
Melanie 6f689f591a Merge Master 2010-09-26 17:56:31 +01:00
BlueWall b0b4782a2b adding configurable j2kDecodeCache path
allowing the decoded sculpt map cache path to be defined in
	the configuration files.

	Use DecodedSculpMapPath in the [Startup] section to set
	the path. The default is still ./bin/j2kDecodeCache
2010-09-26 17:04:11 +01:00
Melanie 4fbdcb95a0 Merge branch 'master' into careminster-presence-refactor 2010-09-25 06:19:26 +01:00
Melanie 83b16612ce Experimental locking of taint processing 2010-09-25 05:57:08 +02:00
Justin Clark-Casey (justincc) 30d3e8a13e Add prim name to OdePrim Error and Warning messages.
This aims to make it easier to identify and remove rogue prims that are causing ODE to fall over.
2010-09-25 01:07:37 +01:00
Kitto Flora c719e016ed Falling animation fix, comment out instrumentation. 2010-09-06 21:45:07 +00:00
Kitto Flora 16814dd8f1 Fixes to JUMP system. 2010-09-02 21:51:19 +00:00
Kitto Flora 0871d20adb Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor 2010-08-04 21:08:14 +00:00
Kitto Flora cb3b124df9 Fixes fresh hollowed prim collision shape. 2010-08-04 21:08:00 +00:00
Tom e3cea888fb Fix some more issues causing regions with corrupt sculpts to freeze. 2010-08-03 16:07:18 -07:00
Tom 1d1da5069c Catch a meshing exception caused by corrupt or missing sculpt maps, and mark the prim as "mesh failed" so it doesn't try meshing continuously 2010-08-03 14:11:11 -07:00
Melanie Thielker d2d1c63b17 Revert "Catch meshing error in Meshmerizer"
This reverts commit 8f2986bc6a.

In favor of a fix that tells us where the issue is instead of eating the error
2010-08-03 05:25:01 +02:00
Tom 8f2986bc6a Catch meshing error in Meshmerizer 2010-08-02 21:54:47 -07:00
Kitto Flora 236c0f8e8b Fix llSetForecAndTorque([0]) stops linear motion. Mantis #187 2010-07-16 22:17:06 +00:00
Kitto Flora 7ab103c96f Rewrite collision dictionary handling, cleans up deleted obects/avs. Fixes occasional collision event failure. ChOde only. 2010-07-13 20:37:13 +00:00
Melanie ba38c697e8 Merge branch 'master' into careminster-presence-refactor 2010-06-27 20:05:55 +01:00
Justin Clark-Casey (justincc) 4a5979c311 minor: remove some mono compiler warnings 2010-06-25 21:09:15 +01:00
Melanie 04b60aa490 Merge branch 'master' into careminster-presence-refactor 2010-06-19 20:32:01 +01:00
Diva Canto 1e7ce6dbce Hunting for the problem in #4777 2010-06-19 09:44:02 -07:00
Diva Canto 9b410f5e94 Reverting my last two commits, putting back Melanie's exception handler. Doesn't solve #4777. 2010-06-19 09:25:36 -07:00
Diva Canto f0f684161e Reinstated the behavior of AddPrimShape *exactly* as it was as of December. Trying to fix mantis #4777 2010-06-19 08:57:58 -07:00
Melanie 891214c65b Merge branch 'master' into careminster-presence-refactor 2010-06-18 20:49:21 +01:00
Melanie 47d5f90629 Remove an error in meshing error reporting. Now doesn't double-bomb
anymore on a bad sculpt
2010-06-18 19:49:14 +01:00
Melanie d2342319da Merge branch 'master' into careminster-presence-refactor 2010-06-12 16:27:37 +01:00
Melanie ceac35bac1 Log and eat sculpt meshing exceptions caused by bad jp2 data. 2010-06-12 16:25:40 +01:00
Kitto Flora 6e2cc98eac Fixed llMoveToTarget() and Rotation Lock/Enable (ChODE/ODEPrim only) 2010-06-08 16:15:16 -04:00
Melanie 97501495eb Merge branch 'master' into careminster-presence-refactor 2010-05-26 17:19:02 +01:00
dahlia 5e719d13ef fix sculpt normal direction for mirrored plane sculpts 2010-05-24 19:15:04 -07:00
Melanie 420dd78fb7 Merge branch 'careminster' into careminster-presence-refactor 2010-05-08 14:17:43 +01:00
Melanie 14fcc2510e Merge branch 'master' into careminster-presence-refactor 2010-05-08 13:31:36 +01:00
Diva Canto a58859a0d4 GridUserService in place. Replaces the contrived concept of storing user's home and position info in the presence service. WARNING: I violated a taboo by deleting 2 migration files and simplifying the original table creation for Presence. This should not cause any problems to anyone, though. Things will work with the new simplified table, as well as with the previous contrived one. If there are any problems, solving them is as easy as dropping the presence table and deleting its row in the migrations table. The presence info only exists during a user's session anyway.
BTW, the Meshing files want to be committed too -- EOFs.
2010-05-07 21:29:56 -07:00
Kitto Flora add7abc1de Fix Mouse+WASD makes Av rise; Fix PREJUMP. 2010-05-07 14:12:07 -04:00
dahlia eb6d63ab8e improve handling of undersize sculpt textures 2010-05-06 23:02:24 -07:00
dahlia 39c5ddc837 corrections for face numbering and uv mapping, mostly for spheres - sync with PrimMesher r56 2010-05-06 22:08:59 -07:00
dahlia 5d1e9947ed Sculpt meshing refactoring - improves mesh accuracy and UV mapping
Sync with PrimMesher r55
2010-05-06 21:36:27 -07:00
Kitto Flora f3c21524be Fix Av jump motion S/W 2010-04-29 19:41:08 -04:00
Melanie f06772a088 Merge branch 'careminster' into careminster-presence-refactor 2010-04-29 23:33:20 +01:00
Kitto Flora 5c23b4aa56 Fix vertical attractor 2010-04-29 13:50:11 -04:00
Melanie 9920e219dd Merge branch 'careminster' into careminster-presence-refactor 2010-04-13 04:36:08 +01:00
Kitto Flora 9b6e89457c Fixed LINEAR_MOTOR Z drive, Mantis #30 2010-04-11 14:12:01 -04:00
Melanie ba31b31ed0 Merge branch 'careminster' into careminster-presence-refactor 2010-04-05 18:22:15 +01:00
kitto e2a521742a ChODE Only: Corrected Heightmap load to iliminate crack at 255M. Added 'fence' option to prevent physical objects crossing region border. 2010-04-04 22:57:32 -04:00
Kitto Flora add47befac Update acceleration to 0 on no tphysical. 2010-03-19 18:53:16 -04:00
Melanie 4c2a51b1b5 Merge branch 'master' into careminster-presence-refactor 2010-03-18 20:09:04 +00:00
John Hurliman 65c1fbc14d Fixing line endings 2010-03-15 20:54:48 -07:00
Melanie d3f33acc1a Merge branch 'master' into careminster-presence-refactor 2010-03-15 17:23:35 +00:00
Kitto Flora 8198062610 RotLookAt repaired; debug msg cleanup. 2010-03-14 16:22:13 -04:00
dahlia 1e73e16fd0 flip UVs for profile faces 2010-03-13 18:41:36 -08:00
dahlia 41a98b902b correct some references which could produce erroneous prim face numbers 2010-03-12 22:05:22 -08:00
dahlia 1d14cf8c3f some improvements to sculptmap alpha handling and LOD 2010-03-12 21:21:28 -08:00
John Hurliman 3036aba875 * Added a better check to the SimianGrid connectors to test if they are enabled or not. This method should work equally well with standalone or robust mode
* Applying #4602 from Misterblu to add collision detection to BulletDotNET
2010-03-12 14:28:31 -08:00
Kitto Flora 1379ae4310 Fix Rotation Lock. NOTE: This version had poor border crossing control 2010-03-12 16:13:52 -05:00
Kitto Flora 7bd48d383d Resolved merge 2010-03-12 13:48:31 -05:00
Kitto Flora f6f6ef1532 Dynamics Integration Part 1 2010-03-11 19:12:38 -05:00
Melanie 2fdd535302 Merge branch 'master' of ssh://melanie@3dhosting.de/var/git/careminster into careminster 2010-03-06 12:24:26 +00:00
Melanie 1f7a0cf892 Merge branch '0.6.9-post-fixes' into careminster 2010-03-06 12:24:09 +00:00
Kitto Flora 87590491b5 Fix Physics angular reference frame. 2010-03-04 16:33:26 -05:00
Jeff Ames 300f4c58a6 Separate PhysX classes into separate files. 2010-02-22 13:16:40 +09:00
Jeff Ames af265e001d Formatting cleanup. 2010-02-15 19:21:56 +09:00
Revolution 9821c4f566 Revolution is on the roll again! :)
Fixes: Undo, T-pose of others on login, modifiedBulletX works again, feet now stand on the ground instead of in the ground, adds checks to CombatModule. Adds: Redo, Land Undo, checks to agentUpdate (so one can not fall off of a region), more vehicle parts. Finishes almost all of LSL (1 function left, 2 events).

Direct flames and kudos to Revolution, please

Signed-off-by: Melanie <melanie@t-data.com>
2010-02-14 22:18:46 +00:00
Kitto Flora 9568718add Angular motor adjustments 2010-02-12 15:56:21 -05:00
Kitto Flora 6a70349512 Merge branch 'master' of ssh://3dhosting.de/var/git/careminster 2010-02-12 14:08:32 -05:00
Melanie c8f3bb56ff Merge branch 'master' into careminster 2010-02-08 22:11:38 +00:00
John Hurliman 8556a9f1a8 Applying patch #4534 by Misterblue to fix ODE physics stickiness 2010-02-04 13:31:06 -08:00
Kitto Flora 48134af616 Motor angular decay fix. 2010-02-03 16:20:13 -05:00
Kitto Flora 8c20610293 AngMotor update 1 2010-02-02 13:28:42 -05:00
Kitto Flora 1abb70cc73 Add glue for llSetVehicleFlags(), llRemoveVehicleFlags(). ChODE: Add associated methods. 2010-01-21 19:31:02 -05:00
Kitto Flora 66692f90e3 ChODE Object Linear Motion update 2010-01-21 14:39:11 -05:00
Kitto Flora 253e2ed699 Merge branch 'master' of ssh://3dhosting.de/var/git/careminster 2010-01-03 23:10:01 -05:00
Melanie 61ce884336 Merge branch 'master' into careminster 2010-01-03 21:43:39 +00:00
Jeff Ames 70d5b1c34c Formatting cleanup. Add copyright headers. 2010-01-04 06:17:30 +09:00
Kitto Flora 3f901d313b Vehicle Linear parameter adjustments 2009-12-31 16:07:36 -05:00
Kitto Flora e7439efc74 Recover out-of-region objects during db load. 2009-12-24 19:19:44 -05:00
Kitto Flora 93b930b937 Fix conflicts 2009-12-22 00:33:31 -05:00
Kitto Flora 0a29842caf Include ChOdePlugin 2009-12-22 00:20:04 -05:00
Melanie fa0621b486 Merge branch 'master' into careminster 2009-12-22 00:41:56 +00:00
Melanie e530180c1e Glue code for a couple of new LSL function implementations 2009-12-22 00:26:12 +00:00
Kitto Flora 6483470ec5 Fix GetWorldRotation(), and a host of related Sit fixes. 2009-12-17 02:54:02 -05:00
Melanie b310efc50f Merge branch 'master' into careminster 2009-12-12 12:54:43 +00:00
Teravus Ovares (Dan Olivares) 2f8b9cbf2b * Commit some sit code that's commented out for now. 2009-12-08 11:28:13 -05:00
Melanie 09bbfc1d56 Merge branch 'master' into careminster 2009-12-06 03:01:58 +00:00
Teravus Ovares (Dan Olivares) 8d196dbd14 * Adds Normal to the fields returned by the Physics Raycaster
* Fixes recognizing when a sit target is and isn't set.
* * 1. Vector3.Zero.
* * 2. Orientation: x:0, y:0, z:0, w:1 - ZERO_ROTATION
* * (or) Orientation: x:0, y:0, z:0, w:0 - Invalid Quaternion
* * (or) Orientation: x:0, y:0, z:1, w:0 - Invalid mapping, some older objects still exist with it
2009-12-05 22:18:00 -05:00
Melanie 43a6fa1d01 Merge branch 'master' into careminster 2009-12-05 19:53:54 +00:00
Teravus Ovares (Dan Olivares) c4b6010fb3 * Fixes mantis 4416. Animator is dereferenced on logout 2009-12-05 13:01:21 -05:00
Teravus Ovares (Dan Olivares) 781db43a76 * Fixes the 10x10x10 hard physics limitation. (wierdly, you have to set this for each region in your Regions.ini[PhysicalPrimMax = 10(default)])
* Adds a configurable maximum object mass before the mass is clamped.  Default is 10000.01.  Configurable by changing maximum_mass_object in the [ODEPhysicsSettings] section.
* Clamping the mass is important for limiting the amount of CPU an object can consume in physics calculations.  Too high, and the object overcomes restitution forces by gravity alone. This generates more collisions potentially leading to 'deep think'.
2009-12-03 20:21:10 -05:00
Melanie cc18ab12f8 Merge branch 'master' into careminster 2009-11-27 00:40:56 +00:00
Teravus Ovares (Dan Olivares) e2200026ca * Fixes a case of d.BodyEnable with IntPtr.Zero passed as the parameter in linkset where EnableBody was called and the body is immediately disabled. The previous functionality assumed that a body was received in EnableBody but.. in some cases, it wasn't. 2009-11-26 17:03:00 -05:00
Melanie cad2bf5b08 Merge branch 'master' into careminster 2009-11-24 16:00:35 +00:00
Teravus Ovares (Dan Olivares) 3ebb528c79 * Resolves mantis 4390 http://opensimulator.org/mantis/view.php?id=4390 2009-11-23 11:44:22 -05:00
Melanie df121a7cd0 Merge branch 'master' into careminster 2009-11-23 04:24:58 +00:00
Teravus Ovares (Dan Olivares) 21f80b6507 * Adds a test for if the collision is at the bottom of the capsule on avatar. This prevents the 'double jump' capability that's been occurring for ages when avatar collide with prim on the side. 2009-11-22 22:04:52 -05:00
Teravus Ovares (Dan Olivares) 9ba10af6b2 * Added missing lock to m_forcelist when AddForce is called. When a user dragged a prim, in some cases, it would corrupt the datatype in memory and throw spurious IndexOutOfRangeExceptions.
* Physics a situation that causes physics to spew redline messages to the console forever.
2009-11-22 21:08:54 -05:00
Melanie 0844e5951c Merge branch 'master' into careminster 2009-11-21 16:00:18 +00:00
Teravus Ovares (Dan Olivares) 7760da1a4c * Fixes the second of two terse update issues. Physical objects should react normally again. 2009-11-21 04:39:41 -05:00
Teravus Ovares (Dan Olivares) 0ffda7128e * Fixes one of two terse update issues. There's still one left, but this one fixes the situation where the object on the server is moving but no updates are being sent. 2009-11-21 04:33:34 -05:00
KittoFlora 7f0f5060ec Clean up messages in ODE 2009-11-19 20:13:26 +01:00
KittoFlora 4c10826caa Fix merge conflicts 2009-11-16 02:12:56 +01:00
KittoFlora 873c9098d8 Merge branch 'careminster' into tests 2009-11-16 01:40:15 +01:00
dahlia 8ae3df22a2 clean up some cruft 2009-11-11 11:10:42 -08:00
Justin Clark-Casey (justincc) 6d88c96e01 minor: remove mono compiler warning 2009-11-11 18:49:05 +00:00
dahlia 3e22bb24f5 add an overload to _SculptMesh for meshing from a list of coordinates
add conditional compilation for System.Drawing dependency
2009-11-09 18:44:03 -08:00
Justin Clark-Casey (justincc) a88a463b50 Following various discussions on irc and in the OpenSim dev OSGrid meeting last week, change av_capsule_tilted to false by default
This appears to now give better ODE physics response (less sinking into the ground, etc.)
Please change it back if this is actually a bad idea for some reason
2009-11-09 19:26:42 +00:00
Justin Clark-Casey (justincc) 3274bc39c8 minor: remove some mono compiler warnings 2009-11-09 17:43:32 +00:00
Justin Clark-Casey (justincc) af0e5d0974 Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2009-11-03 19:11:09 +00:00
Justin Clark-Casey (justincc) 1d737b010c minor: remove some mono compiler warnings 2009-11-03 18:52:20 +00:00
dahlia 82554e9a89 Delete depricated extrusion methods and redirect to universal extrude method.
Sync with PrimMesher.cs r47 on forge.
2009-11-02 22:24:58 -08:00
John Hurliman 7132877075 * Log progress messages when loading OAR files with a lot of assets
* Change the PhysicsCollision callback for objects to send full contact point information. This will be used to calculate the collision plane for avatars
* Send the physics engine velocity in terse updates, not the current force being applied to the avatar. This should fix several issues including crouching through the floor and walking through walls
2009-10-29 01:46:58 -07:00
John Hurliman 1c9696a9d2 Always send a time dilation of 1.0 while we debug rubberbanding issues 2009-10-28 15:11:01 -07:00
John Hurliman a069a1ee68 Limit physics time dilation to 1.0 2009-10-28 14:44:05 -07:00
John Hurliman a65c8cdc38 * Reduce the velocity tolerance on sending terse updates to avoid slowly drifting prims/avatars
* Added contacts_per_collision to the ODE config section. This allows you to reduce the maximum number of contact points ODE will generate per collision and reduce the size of the array that stores contact structures
2009-10-28 12:45:40 -07:00
John Hurliman ee0f7e10c8 Fixed a bad check on velocity in the ODE near() callback (it was only checking for velocity in certain directions, and was calling the get_Velocity() function three times) 2009-10-28 12:20:34 -07:00
John Hurliman 2d470f8bde Switching sculpty from CSJ2K back to OpenJPEG for now until more kinks are ironed out 2009-10-28 01:48:53 -07:00
John Hurliman e31024f08b Print the exception message when CSJ2K decoding fails for sculpty textures 2009-10-28 01:30:39 -07:00
John Hurliman 0c466b28bb Move the calculation of time dilation from the scene to the physics engine. The scene is still the one reporting dilation so this does not break the API or remove flexibility, but it gets the calculation happening in the right place for the normal OpenSim usage. The actual calculation of physics time dilation probably needs tweaking 2009-10-27 16:24:43 -07:00
KittoFlora 1113b3b6eb Merge branch 'vehicles' into tests
Conflicts:

	OpenSim/Region/Physics/Manager/PhysicsActor.cs
	OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
2009-10-27 22:42:55 +01:00
KittoFlora a81a16f22f llRotLookAt Pt 2 2009-10-27 19:56:39 +01:00
John Hurliman f5cad91578 * Switched from OpenJPEG to CSJ2K in Meshmerizer
* Tested the previous patch and found no regressions
2009-10-26 19:03:55 -07:00
John Hurliman d199767e69 Experimental change of PhysicsVector to Vector3. Untested 2009-10-26 18:23:43 -07:00
John Hurliman 119cf80e13 Added calls to GC.AddMemoryPressure() when unmanaged memory is allocated for ODE (helps the GC make better scheduling choices), and a call to GC.Collect() right before logins are enabled for a region. Although this doesn't change actual memory usage, it improves the reported usage from OpenSim and the operating system 2009-10-26 15:52:59 -07:00
Dan Lake 428bd7a74b No need to create dupe TriMeshData for ODE. A previous patch created a dictionary to store unique meshes in Meshmerizer based on creation params. This patch contains a dictionary to map each of those unique meshes to its ODE TriMeshData. This eliminated hundreds of megabytes of memory consumption in the unmanaged heap when there are lots of the same prim (roof tiles, bricks, siding, decks, chairs, etc). The objects do not need to be physical to benefit from this patch. 2009-10-26 15:14:19 -07:00
John Hurliman ff4b45a1e3 Do case-insensitive comparisons on region names in LLStandaloneLoginModule 2009-10-26 15:12:43 -07:00
John Hurliman ac7ccdf7d7 * Changed the watchdog timer to improve the speed of UpdateThread(), only track threads once the first call to UpdateThread() has been made, and allow re-tracking of threads that timed out but revived later
* Added a commented out call to Watchdog.UpdateThread() in OdeScene. If it turns out that loading a large OAR file or some other operation is timing out the heartbeat thread, we'll need to uncomment it
2009-10-26 14:41:27 -07:00
KittoFlora 8428b25939 Add llRotLookat pt1. 2009-10-26 00:10:23 +01:00
John Hurliman 730930955a Changing Scene.ForEachClient to use the synchronous for loop instead of Parallel. This is quite possibly the source of some deadlocking, and at the very least the synchronous version gives better stack traces
* Lock the LLUDPClient RTO math * Add a helper function for backing off the RTO, and follow the optional advice in RFC 2988 to clear existing SRTT and RTTVAR values during a backoff

* Removing the unused PrimitiveBaseShape.SculptImage parameter * Improved performance of SceneObjectPart instantiation * ZeroMesher now drops SculptData bytes like Meshmerizer, to allow the texture data to be GCed * Improved typecasting speed in MySQLLegacyRegionData.BuildShape()

* Improved the instantiation of PrimitiveBaseShape
2009-10-25 00:40:21 -07:00
dslake 8ba3afb59b Patch from dslake http://opensimulator.org/mantis/view.php?id=4291 0004291: Inconsistent locking of ODE tainted prims 2009-10-23 12:14:05 -04:00
Teravus Ovares (Dan Olivares) f34e8adffb * Moved Copyrights above the comments in ODEPrim and ODEDynamics so they're consistent with the rest (and so chi11ken's auto copyright adding script doesn't duplicate the copyright. 2009-10-22 18:28:42 -04:00
KittoFlora 91084653bd Commented out instrumentation in ODEPrim.cs 2009-10-22 21:14:00 +02:00
KittoFlora 227c832d3b Commented out instrumentation in ODEPrim.cs 2009-10-22 19:15:35 +01:00
Melanie c4969d47d9 Merge branch 'master' into vehicles 2009-10-22 07:12:10 +01:00
John Hurliman 8151190a45 * Removing ODEPrim and ODECharacter GetHashCode() overrides since they were based on something that could change
* Tweaked a few other GetHashCode() overrides to bring them in line with MSDN recommendations
2009-10-20 10:56:15 -07:00
John Hurliman 72078195c2 Merge branch 'prioritization' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-19 15:20:38 -07:00
John Hurliman bd03cbd815 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-19 15:19:37 -07:00
Diva Canto 590d91e572 Forgot {} on last commit. 2009-10-19 15:03:55 -07:00
Diva Canto 2dd8a6beac More instrumentation in physics. 2009-10-19 14:48:17 -07:00
Melanie ffd59868f5 Merge branch 'master' into vehicles 2009-10-19 21:58:51 +01:00
John Hurliman 6d04a213d6 Merge branch 'prioritization' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-18 20:25:16 -07:00
Jeff Ames 0d29614ca1 Formatting cleanup. 2009-10-19 08:58:03 +09:00
Diva Canto baed19d068 A bit of instrumentation to figure out what's going on with physics actors. 2009-10-18 16:48:44 -07:00
John Hurliman 2f2eeb6731 Zero out PrimitiveBaseShape.SculptData after the JPEG2000 data has been decoded to allow garbage collection on it 2009-10-18 02:53:36 -07:00
Teravus Ovares (Dan Olivares) 01051daaab * One more tweak to inform the user that they may not be able to move until relogging. 2009-10-16 21:24:08 -04:00
Teravus Ovares (Dan Olivares) d49424c421 * After seeing it repeat over and over again.. again, We won't inform the scenepresence that there was an issue so it doesn't try to make the capsule again. I have a feeling that this is some kind of object leak. We'll know for sure.. soon. 2009-10-16 21:20:55 -04:00
Teravus Ovares (Dan Olivares) 0079d0a7c4 * One more attempt at the NullRef In The OdePlugin. This might fix it, but it will definitely get us closer to the root cause. 2009-10-16 14:30:55 -04:00
Teravus Ovares (Dan Olivares) 1f28c6208b * Added a message for when the null reference exception occurs to make debugging easier. Without this, from the user's perspective.. they cannot move, fly or otherwise do anything physical and without a message on the console, it would be hard to tell that this is what is occurring. 2009-10-16 03:40:44 -04:00
Teravus Ovares (Dan Olivares) ac2f98b846 * A hacky attempt at resolving mantis #4260. I think ODE was unable to allocate memory, and therefore the unmanaged wrapper call fails or worse.. there's some unmanaged resource accounting in the ODEPlugin for ODECharacter that isn't being done properly now.
* The broken avatar may not be able to move, but it won't stop simulate from pressing on now.   And, the simulator will try to destroy the avatar's physics proxy and recreate it again...    but if this is what I think it is, it may not help.
2009-10-16 03:32:30 -04:00
Melanie 6deef7d0f3 Merge branch 'master' into vehicles 2009-10-15 21:14:13 +01:00
John Hurliman 3828b3c0e8 * Eliminated unnecessary parameters from LLUDPServer.SendPacketData()
* Changed PrimMesher's Quat.Identity to return <0,0,0,1> instead of <0,0,0,1.1>
2009-10-13 10:38:35 -07:00
Melanie 70553a979e Merge branch 'master' into vehicles 2009-10-12 15:12:15 +01:00
Melanie 50f509d600 Merge branch 'master' into vehicles 2009-10-12 15:11:01 +01:00
unknown fe0940a22f Optimize ODE mesh by removing sleep. On a region with 100,000 prims and ODE enabled, the first Heartbeat loop call to UpdatePhysics takes 20 minutes. 75% of that time is spent in this sleep. (100k prims * 10ms) 2009-10-12 01:53:57 -07:00
dahlia 7b4183d7a0 sync PrimMesher with r46 2009-10-11 02:12:17 -07:00
dahlia 41b27ef064 disambiguate System.Path (preparation for new PrimMesher) 2009-10-11 01:30:24 -07:00
Teravus Ovares (Dan Olivares) 8271528b1f * comment out the velocity test, using updates every 500 ms as set in ScenePresence.AddToPhysicalScene.
* This causes time to be counted in ODECharacter and, when a collision occurs, the physics scene will report the collisions only if the the difference of last time it reported the collisions from now was more then the set ms.
* This is cool because the time accrues while collisions are not taking place and when they do take place again, you get an immediate update.
2009-10-10 04:01:36 -04:00
Teravus Ovares (Dan Olivares) 4ffe936ba8 * Make ODECharacter respect the scene's requested collision update time
* Set the Scene collision update time to 500 ms
2009-10-10 03:53:53 -04:00
Melanie d06c7d90a1 Correct a build break caused by an optimization in trunk 2009-10-07 06:56:00 +01:00
Melanie 0374f1b144 Merge branch 'master' into vehicles 2009-10-06 17:44:59 +01:00
Justin Clark-Casey (justincc) 10c4b88ccf minor: remove mono compile warning 2009-10-05 18:20:37 +01:00
Melanie 8d5a40aad0 Merge branch 'master' into vehicles 2009-10-05 12:58:52 +01:00
Dan Lake 6d52974c5f Eliminate pinned Mesh data on managed heap by using IntPtrs to memory allocated on the unmanaged heap. This prevents fragmentation of the managed heap and the resulting stress on GC. A region with ~150,000 prims using ODE and Meshmerizer saw memory remain flat around 1.2GB as opposed to 1.5GB and continually growing due to pinned memory. This patch complements the unique mesh dictionary patch applied to Meshmerizer but is independent. The net effect is a 60-75% reduction in memory for our largest regions. 2009-10-05 12:45:41 +01:00
Melanie 0744292b47 Merge branch 'master' into vehicles 2009-10-05 10:17:23 +01:00
dahlia 5c593f3892 only cache mesh if meshing was successful
re-enable sculpt mesh caching
2009-10-04 20:01:44 -07:00
dahlia 95ebb7794c flexible extrusion shape defaults to linear 2009-10-04 02:59:12 -07:00
dahlia 0cbd9eee2f Exclude sculpt proxies from mesh caching 2009-10-04 02:14:13 -07:00
Melanie 9eccea5777 Merge branch 'master' into vehicles 2009-10-02 19:53:42 +01:00
Melanie 31d8cec0f8 Merge branch 'master' into diva-textures 2009-10-02 08:23:38 +01:00
Melanie 41ff39414b Merge branch 'master' into vehicles 2009-10-01 14:08:15 +01:00
Diva Canto 1eb6f99d19 Create j2k cache directory if it doesn't exist. The Meshmerizer needs it there. 2009-09-30 20:27:40 -07:00
Jeff Ames 606e831ff5 Formatting cleanup. 2009-10-01 09:38:36 +09:00
Kitto Flora 07df0e0ab0 Merge branch '0.6.7-post-fixes' into vehicles 2009-09-30 19:07:18 +02:00
opensim 827b0fb199 Commit initial version of KittoFlora's vehicle changes 2009-09-30 18:51:02 +02:00
Jeff Ames ee205e7e81 Formatting cleanup. 2009-10-01 01:17:47 +09:00
Jeff Ames f00126dc2d Add copyright header. Formatting cleanup. 2009-09-29 08:32:59 +09:00
dahlia fb2cabd6b3 corrections to viewerMode AddPos() 2009-09-25 13:01:48 -07:00
Dan Lake 1b2828f5d8 Meshmerizer stores dictionary of unique Meshes keyed on construction parameters. CreateMesh() returns a Mesh from the dictionary or creates a new Mesh if it has not been created before. Meshes are never purged from the dictionary. The raw Mesh data is discarded once the memory is pinned for ODE use. All copies of the same prim/mesh use the same pinned memory. ONLY IMPLEMENTED AND TESTED WITH MESHMERIZER AND ODE
Signed-off-by: dahlia <dahliaTrimble@gmailDotCom>
2009-09-24 18:20:59 -07:00
dahlia daffb69174 modify BulletDotNETPrim.cs in preparation for Mantis #4181 2009-09-24 18:16:29 -07:00
nlin 56edbe9b60 Alternate algorithm for fixing avatar capsule tilt (Mantis #2905)
Eliminate dynamic capsule wobble. Instead introduce a small, fixed
tilt, and allow the tilt to rotate with the avatar while moving; the
tilt always faces away from the direction of avatar movement. The
rotation while moving should eliminate direction-dependent behavior
(e.g. only being able to climb on top of prims from certain directions).

Falling animation is still too frequently invoked.

Ideally the tilt should be completely eliminated, but doing so
currently causes the avatar to fall through the terrain.
2009-09-18 11:39:08 +09:00
Justin Clark-Casey (justincc) 0683cf6e0d Add test to check behaviour if an iar is loaded where no user profile exists for the creators
Disable generation of temporary profiles for now, instead record loading user as creator
2009-09-09 18:03:49 +01:00
Teravus Ovares (Dan Olivares) b93f512433 * Fix for GetTerrainHeightAtXY to make it compatible when Constants.RegionSize isn't 256 2009-09-04 02:48:07 -04:00
Teravus Ovares (Dan Olivares) bb5857c4bb * Fixes the function 'GetTerrainHeightAtXY' 2009-09-04 00:03:54 -04:00
dahlia 6cf610bc44 eliminate unnecessary storage of mesh objects which are no longer necessary after recent startup optimizations 2009-09-02 17:40:55 -07:00
Jeff Ames 56ddd6828c Add copyright headers. Formatting cleanup. 2009-09-03 02:04:17 +09:00
Teravus Ovares (Dan Olivares) 9505297fb1 * One last attempt to get the bordercrossing/primcrossing/attachmentcrossing right in the new border framework.
* This also contains some inactive preliminary code for disconnecting combined regions that will be used to make one root region a virtual region of a new root region.
2009-09-02 04:39:00 -04:00
Melanie f32de6fe88 Thank you, dslake, for a set of patches to improve OpenSim startup
and idle performance.
2009-09-02 03:33:31 +01:00
Melanie c89fc36f28 Applying Mantis #4079. Thank you, dslake 2009-09-01 02:17:08 +01:00
Teravus Ovares (Dan Olivares) 54e05a083d Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-08-26 11:48:05 -04:00
Jeff Ames cf2d1b5c10 Add copy constructor to PhysicsVector. 2009-08-26 14:28:54 +09:00
Jeff Ames 256624566f Formatting cleanup, minor refactoring. 2009-08-26 14:02:01 +09:00
Teravus Ovares (Dan Olivares) e1b38ff001 * It turns out that Physics heightmap values were being stored in managed memory in _heightmap and using multiple heightmaps caused them all to overwrite each other and the last one was the heightmap for all of the regions. This fixes that. It also reduces the terrain resolution to half. 2009-08-21 13:22:49 -04:00
Teravus Ovares (Dan Olivares) 64dcb71c14 * Fixes Terrain issues with combined regions. 2009-08-20 23:26:40 -04:00
Teravus Ovares (Dan Olivares) 311b51a184 *remove conflicts 2009-08-18 11:09:43 -04:00
Teravus Ovares (Dan Olivares) c54cb59a71 * Some Physics Scene Changes to prepare for larger regions 2009-08-18 11:05:07 -04:00
Melanie 9ad3e72ae1 Did I say that i don't like git? Remove some stuff that shouldn't have
gone in.
2009-08-17 22:06:51 +01:00
Melanie 644db1e540 Add System.Xml reference to the console project 2009-08-17 09:40:38 +01:00
Jeff Ames 9d9fcac038 Misc cleanup. 2009-08-16 17:14:21 +09:00
Teravus Ovares (Dan Olivares) 30ce56e721 Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-08-15 13:10:21 -04:00
Teravus Ovares (Dan Olivares) 8000812700 * part one of adding physics combining 2009-08-15 13:10:10 -04:00
Jeff Ames 1123a326ab Formatting cleanup. Fix some compiler warnings. 2009-08-13 15:43:24 +09:00
Jeff Ames 3e247a8eaa Minor: formatting cleanup. 2009-08-11 00:32:59 +09:00
Jeff Ames 8863092f7c Split BasicPhysics classes into separate files. 2009-08-11 00:32:59 +09:00
Teravus Ovares (Dan Olivares) e88903f481 * Fix one physics crash for regions larger then 512mx512m 2009-08-08 10:38:53 -04:00
Teravus Ovares (Dan Olivares) 2b990a61bf This is the second part of the 'not crash on regionsize changes'. This lets you configure region sizes to be smaller without crashing the region. I remind you that regions are still square, must be a multiple of 4, and the Linden client doesn't like anything other then 256. If you set it bigger or smaller, the terrain doesn't load in the client, the map has issues, and god forbid you connect it to a grid that expects 256m regions. 2009-08-07 20:31:48 -04:00
Teravus Ovares (Dan Olivares) c8a68fb3fb * Remove hard coded 256 limitations from various places. There's no more 256m limitation within the OpenSimulator framework, however, the LLClient ClientView does not support regions larger then 256 meters so, if you try and make your region larger by setting Constants.RegionSize = 512; in OpenSim.Framework.Constants.cs, the terrain will not display on clients using the LLUDP protocol 2009-08-07 18:40:56 -04:00
Justin Clark-Casey 190bdc8a2e * Remove some mono compiler warnings 2009-08-05 17:33:23 +01:00
dahlia 21e62e87c7 starting to refactor path generation out of prim extrusion 2009-08-03 22:59:47 -07:00
Dahlia Trimble 6c94ce1cca Flag certain meshes to avoid vertex list compaction. This should help speed up meshing time at startup. 2009-07-30 07:06:23 +00:00
Jeff Ames a133e83f3a Formatting cleanup. 2009-07-23 15:32:11 +00:00
Teravus Ovares e2e43f1ab7 * Whoops, forgot the water heightfield. 2009-07-22 04:11:51 +00:00
Teravus Ovares 9f4b8260c2 * Exclude heightfield geom from the raycast test.
* Fixes mantis #3922
2009-07-22 04:04:30 +00:00
Teravus Ovares 156c393a44 * nothing in this commit, re-triggering panda.. which crashed while testing. 2009-07-21 03:28:12 +00:00
Teravus Ovares 5c8fe5c01c * Fixed a case where a prim was a NullPhysicsActor instead of an OdePrim
* Commented logic that wasn't being used.
* This should fix the errors in OdeScene.near
2009-07-21 03:18:19 +00:00
Teravus Ovares 08819bcbea * Created a way that the OpenSimulator scene can ask the physics scene to do a raycast test safely.
* Test for prim obstructions between the avatar and camera.  If there are obstructions, inform the client to move the camera closer.  This makes it so that walls and objects don't obstruct your view while you're moving around.   Try walking inside a hollowed tori.   You'll see how much easier it is now because your camera automatically moves closer so you can still see.
* Created a way to know if the user's camera is alt + cammed or just following the avatar.
* Changes IClientAPI interface by adding SendCameraConstraint(Vector4 CameraConstraint)
2009-07-19 02:32:02 +00:00
Melanie Thielker 01446074b1 Revert the nonessential part of r10033 to restore sanity to trampolines 2009-07-16 19:09:03 +00:00
Teravus Ovares 8e1ab33ed3 * Tweaking collision reporting a little more in ScenePresence to not check if the collisions will affect health if the avatar is invulnerable. (saves 3 loops) 2009-07-16 04:50:49 +00:00
nlin 56d295cfb5 Fix for avatar falling through terrain when av_capsule_tilted=false, Mantis #2905
This fix re-introduces a small tilt into the capsule to prevent
avatar falling through terrain. Re-introduction of the tilt means
that some direction-dependent behavior when walking over prims, but
I have tried to minimize this.

Additionally this commit allows the capsule to wobble slightly when
being pushed around the terrain. This should make walking over prims
easier, as the capsule can wobble and glide diagonally over the prim's
edge, instead of rigidly being stopped vertically against the prim's
face.
2009-07-15 10:09:37 +00:00
Melanie Thielker 750f75c514 Thank you, Twitch, for a patch to restore mayhem and murder to OpenSim
Fixes Mantis #3888
2009-07-14 23:20:59 +00:00
Dahlia Trimble 73251ed346 add a constructor overload and an AddPos method to SculptMesh 2009-07-14 06:09:18 +00:00
Dahlia Trimble 3f2ee8915d Some improvements to prim face numbering - only affects viewers using PrimMesher 2009-07-11 04:53:41 +00:00
nlin 0ec6dfb1a1 Experimental fix for tilted avatar capsule, Mantis #2905
Set av_capsule_tilted to false in opensim.ini. Default is true, so there is
no change in avatar behavior (and no breaking of existing content which
relies on the tilted capsule).

This commit straightens up the avatar capsule so it behaves consistently
(e.g. same collision behavior against prims regardless of which direction
the avatar is coming from; ability to fit through narrow doorways).

Please note this introduces other side effects which have not been fixed.
In particular:

* The avatar frequently falls through the terrain if it is not flat, though
the avatar behaves pretty well on flat terrain. This requires investigation
of the ode terrain collider.
* The apparent foot position of the avatar with respect to the ground
is changed. This requires investigation of the avatar height/capsule height.

Please consider this as work in progress.
2009-07-08 01:41:05 +00:00
Dr Scofield 652bcf91d5 - fixes a "collection out of sync" exception in the ODE physics
engine, caused by an "avatar infinite position" occurring under
  heavy load.
- fixes "value too small" exception in ChatModule
2009-06-25 07:39:48 +00:00
Melanie Thielker 034de5ecd6 Properly reset a vehicle's status to VEHICLE_TYPE_NONE when requested 2009-06-19 22:32:02 +00:00
Dr Scofield 8045ed28ec From: Alan Webb <alan_webb@us.ibm.com>
Eat collision errors --- NOTE: this fix might be naive, it seems to
  have helped us getting to 81 avatars (whereas we'd crash with 20
  before), but it sure would benefit from some check-over by a person
  skilled in the art of ODE physics.
2009-06-10 11:48:13 +00:00
Jeff Ames a23d64dec1 Formatting cleanup. 2009-06-10 04:28:56 +00:00
Dahlia Trimble f94e192b86 some code cleanup
test commit with cygwin svn
2009-06-06 08:41:27 +00:00
Jeff Ames 1e3f378c57 Fix comparison of UUID with null. 2009-06-04 01:26:31 +00:00
lbsa71 6f37fd8399 * Pried apart the ODE tests. This fixes mantis #3212 2009-06-02 18:12:34 +00:00
Jeff Ames 840de6c036 Minor: Change OpenSim to OpenSimulator in older copyright headers and LICENSE.txt. 2009-06-01 06:37:14 +00:00
Dahlia Trimble be41a2cb7e reduce verbosity of sculpt map cache messages to reporting cache failures only 2009-05-31 23:57:52 +00:00
Dahlia Trimble 179724b4fc some clean up of sculpt map caching code
remove a redundant debug message
2009-05-29 08:57:10 +00:00
Dahlia Trimble 05cbf0b502 reinstate a hopefully more robust experimental decoded sculpt map caching scheme 2009-05-29 06:50:15 +00:00
Dahlia Trimble 1609e7eac0 disable sculpt map caching until a better method of avoiding asset requests can be found 2009-05-29 05:11:50 +00:00
Dahlia Trimble db4f8d1298 Experimental decoded sculpt map caching 2009-05-29 02:46:35 +00:00
Sean Dague 85e91ddb67 Revert "* Added IntegrationTest Attribute and tagged the ODETestClass"
This reverts commit 8f0096cc7b112fea8f69f391224911f624482747.

To get us back to compiling on fresh checkouts.
2009-05-27 12:53:29 +00:00
lbsa71 17f0a4be53 * Added IntegrationTest Attribute and tagged the ODETestClass 2009-05-27 12:36:58 +00:00
lbsa71 ba360ede8b * Upped version number to 0.6.5 2009-05-25 11:43:56 +00:00
Dr Scofield 1d02636c27 cleaning out warnings.
NOTE: we currently have a gazillion warnings caused stuff flagged as
"obsolete" (OGS1 stuff) --- what's up with that?
2009-05-22 14:57:00 +00:00
Dahlia Trimble 87b95e324e Sculpt mesher refactor
adds some previously missing geometry to sculpties
new LOD improves vertex accuracy
fix torus mode mesh edge joining
sync with primmesher r37
2009-05-19 10:09:33 +00:00
Dahlia Trimble 14c1e991c6 some sculpted prim geometry accuracy and meshing speed improvements 2009-05-15 03:14:04 +00:00
Dahlia Trimble bd3a4e5f01 Added a Copy() method to PrimMesh and SculptMesh as suggested by dmiles. Sync PrimMesher.cs and SculptMesh.cs with PrimMesher.dll r36. 2009-05-08 03:04:45 +00:00
Dahlia Trimble 09522743cb alter behavior of sculpted prim "Inside out" setting. Addresses Mantis #3514 2009-05-03 06:25:52 +00:00
Dahlia Trimble 6f3437b77e some code cleanup
sync with primmesher r35
2009-04-24 19:43:15 +00:00
Dahlia Trimble 9c13a93583 Limit hollow size of physics proxy to 95% 2009-04-24 19:28:29 +00:00
Teravus Ovares c5a3ff231f * It turns out vehicle Angular Motor direction is always in global space. 2009-04-20 17:46:37 +00:00
Teravus Ovares b98f93212b * Prevent a vehicle crash 2009-04-20 06:56:53 +00:00
Teravus Ovares 21d4423030 * Allow passing of material type to physics engine
* Define low friction and medium bounce for Glass
2009-04-20 03:07:53 +00:00
idb 716e1fe0e1 Keep IsColliding updated for the recent changes in ScenePresence so that walk/stand animations will get used instead of just falling 2009-04-19 12:28:29 +00:00
Teravus Ovares 03901c8c0d * Rudimentary angular motor implementation for the LSL Vehicle API 2009-04-19 08:12:10 +00:00
Dahlia Trimble 5f1fa0d3d7 Added a "force_simple_prim_meshing" option to the ODE settings in OpenSim.ini which will use meshes for collisions with simple prim shapes rather than internal ODE algorithms. This may help with Mantis #2905 and Mantis #3487 for those experimenting with capsule settings.
Note that this will increase memory usage and region startup time.
2009-04-19 01:21:38 +00:00
Dahlia Trimble 15b9c528c5 Add some documentation. (note this is *not* a thinly veiled attempt to increase my commit frequency *wink*) 2009-04-18 17:15:56 +00:00
Teravus Ovares 68190617b4 * A few fixes to the Linear Motor 2009-04-17 23:04:33 +00:00
Teravus Ovares 07c113a766 * Add Implementation of Linear Motor and Linear friction from the LSL Vehicle API in Physics 2009-04-17 21:10:54 +00:00
Teravus Ovares e95fe66dd5 * Set some minimum values to avoid divide by zero errors. 2009-04-17 04:38:31 +00:00
Teravus Ovares 0d00a767bc * Commit a few fixes to the Vehicle settings
* Vertical Attractor servo
2009-04-17 04:34:52 +00:00
Teravus Ovares 8a7a0190e6 * Remove some super experimental stuff in BulletDotNETPlugin since it was causing issues.
* Tweak the ODEPrim PID a bit more.
2009-04-16 08:11:05 +00:00
Teravus Ovares eac5d4015d * Committing more BulletDotNETPlugin work
* Tweak the LLSetStatus results in the ODEPlugin.  Hopefully it's a little less unstable.
* ODEPlugin is using experimental math for LLSetStatus, use with caution! :)
2009-04-16 07:31:48 +00:00
Teravus Ovares d34d5eb3f7 * Adding some organization of vehicle type stuff in the ODEPlugin.
* Vehicles do NOT work.  This is just organization and a bit of logical code to make doing vehicles easier
2009-04-14 09:03:18 +00:00
Teravus Ovares c2e75aecd1 * Commit a variety of fixes to bugs discovered while trying to fix the NaN singularity.
* WebStatsModule doesn't crash on restart.   GodsModule doesn't crash when there is no Dialog Module.  LLUDPServer doesn't crash when the Operation was Aborted.  
* ODEPlugin does 'Almost NaN' sanity checks.
* ODEPlugin sacrifices NaN avatars to the NaN black hole to appease it and keep it from sucking the rest of the world in.
2009-04-14 01:57:35 +00:00
Teravus Ovares 2dca78b2bf * BulletDotNETPlugin supports Axis lock (LLSetStatus) from the script engine now. 2009-04-11 03:04:08 +00:00
Teravus Ovares 53026affb3 * Instead of referencing mesh stuff in the physics plugin.. change the IMesh Interface. (blame prebuild) 2009-04-11 00:11:54 +00:00
Teravus Ovares 474b982eba * Adds Physical/Active Linkset support to BulletDotNETPlugin 2009-04-10 23:26:42 +00:00
Teravus Ovares 10f5615573 * Tweak the character controller some more
* Add cursory integration with script engine.    
* LLMoveToTarget, LLSetBouyancy, LLSetStatus (Physical only), LLApplyImpulse, LLApplyTorque, LLPushObject..   etc.
* Still missing linked physical active and LLSetStatus with an axis lock.
2009-04-10 06:01:29 +00:00
Teravus Ovares b05a1aa4b7 * Whoops, never saved the BulletDotNETScene.. Last commit continued..... 2009-04-09 22:00:15 +00:00
Teravus Ovares 4050dec682 * Changes the timstep of the bullet world
* Enables border crossings when using the BulletDotNETPlugin 
* Enabled variable time steps in BulletDotNETPlugin
* Still no 'linked physical objects' yet
* Still no script engine integration
2009-04-09 21:48:11 +00:00
Teravus Ovares b326b55bcd * Added finite testing to the character and object constructor 2009-04-07 16:41:07 +00:00
Teravus Ovares 9bbc7e8bf6 * Added a routine to check if a PhysicsVector and Quaternion is finite
* Now validating input to the Physics scene and warning when something is awry.
* This should help nail down that Non Finite Avatar Position Detected issue.
2009-04-07 16:13:17 +00:00
Teravus Ovares 11f8ea30f9 * Tweak the BulletDotNETPlugin character controller so it feels more finished. 2009-04-07 15:01:46 +00:00
Teravus Ovares 0d4880d5cf * This fixes BulletDotNET so it can now be used on linux. 2009-04-07 03:33:28 +00:00
Teravus Ovares 9459b16cc2 * BulletDotNET Updates.
* Should react somewhat normally to editing, and setting physics now.
2009-04-07 00:13:08 +00:00
Jeff Ames 465f1df592 Add copyright headers, formatting cleanup. 2009-04-06 14:36:44 +00:00
Dahlia Trimble f73d4f9735 unspecified sculpt stitching mode now defaults to plane instead of sphere. Addresses Mantis #3403 2009-04-05 19:25:39 +00:00
Teravus Ovares cf1e8b1723 * Fixing SVN properties 2009-04-05 08:43:29 +00:00
Teravus Ovares e592d03843 * Committing what I have on the BulletDotNETPlugin that I have so far.
* It's not ready to try.   It doesn't do what you expect in many ways.
* It throws errors and prints jibberish on the console
* Test it out only if you're brave and you've backed up first.
* The opensim.ini line is physics = BulletDotNETPlugin
2009-04-05 08:35:38 +00:00
Dahlia Trimble 5f4cab6ed3 fix an error in hollow cylinder face number calculation 2009-04-03 08:45:32 +00:00
Dahlia Trimble b42fec5c74 partial support for sculpted prim "inside out" setting 2009-04-02 06:54:48 +00:00
lbsa71 958d764172 * Upped trunk version number to 0.6.4 as we just tagged 0.6.4-release 2009-04-01 19:44:46 +00:00
Dahlia Trimble 8493123629 Hard code scaled image resolution to 96 dpi prior to sculpt meshing to prevent a mono 2.4 failure. Thanks to cmickeyb for pointing out the failure. 2009-04-01 18:38:51 +00:00
Dr Scofield aecb4fb72a From: Alan M Webb <alan_webb@us.ibm.com>
Add sanity check to fly-height calculation so that it does
  not attempt to retrieve information from non-existent
  regions.
2009-03-31 12:45:34 +00:00
Teravus Ovares 0318e824ae * Remove a debug line of localIDs 2009-03-30 14:13:56 +00:00
Teravus Ovares 6522b4f5d4 * Fixing thread safety of avatar adding and removing from the Physics Scene in the ODEPlugin
* This may help one of the symptoms or mantis 3363 , however it probably won't solve the occasional NonFinite Avatar Position detected..  issues that some people see.    That is probably an entirely different issue(NaN).
2009-03-30 14:10:24 +00:00
Dahlia Trimble ad012d4b46 add x-axis mirror capability to sculpted prim mesh - addresses Mantis #3342 2009-03-26 18:12:10 +00:00
Dahlia Trimble 3bedb59f50 make some arrays static to prevent excessive re-initialization - suggested by jhurliman 2009-03-26 03:10:30 +00:00
idb aab38c2cb2 Ensure the remembered velocity is zero when physical is turned off on a prim. Without this the velocity gets sent to the client and the prim appears to move.
Fixes Mantis #3303
2009-03-20 15:59:11 +00:00
Dahlia Trimble fa5fef33a9 fixed propagation of normalized sculpt mesh vertex normals 2009-03-15 09:05:35 +00:00
Justin Clarke Casey acad0328b2 * Make all coded defaults match settings in OpenSim.ini.example
* In most cases, the setting in OpenSim.ini.example is taken as the canonical one since this is the file virtually everyone ends up using
* OpenSim will start up with a blank OpenSim.ini, in which case sqlite is the default database (as before)
2009-03-11 18:02:22 +00:00
Teravus Ovares f9ebdee1d2 * Tweak llMoveToTarget per mantis 3265
* Add some comments to the Wind Module
* Add the BinBVH decoder/encoder as a scene object (to encode/decode animations programmatically).
* Add m_sitState for upcoming code to improve sit results.
2009-03-09 04:33:53 +00:00
Jeff Ames 385d3a467c Minor formatting cleanup. 2009-03-07 16:16:00 +00:00
idb 93a697b24d Correct a typo, purely cosmetic.
FixesMantis #3263
2009-03-07 14:39:42 +00:00
Teravus Ovares 5a49c772ca * Making the minimum ground offset for flying a configurable offset in the OpenSim.ini. This is the code that causes you to rise off the ground when you press the fly button and attempts to keep you above ground automatically when flying in a simulator.
* minimum_ground_flight_offset, by default is 3 meters, as per Kitto Flora  See OpenSim.ini.example for an example.
2009-03-07 07:17:43 +00:00
Teravus Ovares 6c7151109b * fixes mantis 3259
* I'm concerned however that the 'minimum fly height' should really be implemented in ScenePresence and not in the specific physics plugin so that all of the physics plugins can take advantage of it and if desired, a person could swap out the 'minimum fly height' functionality with other functionality.
2009-03-07 06:51:27 +00:00
Teravus Ovares 3a93bb992f * Added some limits to the maximum force applied per second by llMoveToTarget. Currently, it's 350 times the mass in newtons applied per second, maximum. 2009-03-07 00:27:56 +00:00
Charles Krinke b637a11b58 Fixes Mantis #3260. Thank you kindly, MCortez for a patch that:
llSetHoverHeight() should not clamp the x/y position of an object the way MoveTo does, 
and it should recalculate the absolute height to hover at as an object moves to reflect 
the current ground/water height under it.
Correctly implementing required adjusting the Physics interfaces and implementing at 
the physics plug-in level. The attached is a patch that correctly implements 
llSetHoverHeight() including updates to the ODE physics plug-in.
2009-03-06 23:01:35 +00:00
Teravus Ovares ac84d3d26b * Fixing a few mass calculation errors suggested by jhurliman 2009-03-05 21:59:27 +00:00
Justin Clarke Casey 36e648a37a * minor: Remove most mono compiler warnings 2009-02-25 20:53:02 +00:00
Dahlia Trimble 8afad46d10 remove log4net dependency and from PrimMesher.cs
sync PrimMesher.cs with PrimMesher.dll version 29 on forge
2009-02-24 06:02:44 +00:00
Charles Krinke 8f55b9d735 Mantis#3218. Thank you kindly, TLaukkan (Tommil) for a patch that:
* Added log4net dependency to physxplugin in prebuild.xml.
* Added missing m_log fields to classes.
* Replaced Console.WriteLine with appropriate m_log.Xxxx
* Tested that nant test target runs succesfully.
* Tested that local opensim sandbox starts up without errors.
2009-02-22 20:52:55 +00:00
lbsa71 2e095f5727 * Upped VersionInfo to 0.6.3 and in the process, changed assemblyinfo to 0.6.3.* to better track down dll ref and overwrite problems. 2009-02-20 16:47:31 +00:00
lbsa71 5af465a364 * Changed all AssemblyInfo to explicit version 1.0.0.0 to not confuse poor poor Nant. We probably should take the opportunity to let the non-module bins reside in their /bin/Debug dirs later. 2009-02-19 14:51:33 +00:00
diva 3d5a9e6748 This started as way to correct Mantis #3158, which I believe should be fixed now. The flying status was temporarily being ignored, which caused the avie to drop sometimes -- there was a race condition. In the process it also fixes that annoying bug in basic physics where the avie would drop half-way to the ground upon region crossings (SetAppearance was missing). Additionally, a lot of child-agent-related code has been cleaned up; namely child agents are now consistently not added to physical scenes, and they also don't have appearances. All of that happens in MakeRoot, consistently. 2009-02-15 05:00:58 +00:00
Dahlia Trimble 7731c055e4 Set sculpt map alpha to 255 prior to scaling and meshing. Addresses Mantis #3150 2009-02-15 04:00:00 +00:00
Jeff Ames 95d53d48d4 Add copyright headers. Minor formatting cleanup. Fix some compiler warnings. Fix some m_log declarations. 2009-02-13 02:06:28 +00:00
Dahlia Trimble d21601d497 Thanks Kitto Flora for a patch that adds automatic min fly height to ODE - Mantis #3134 2009-02-12 07:58:10 +00:00
Teravus Ovares c0c330988f * Some minor cleanup
* sealed OdeScene
2009-02-08 17:41:15 +00:00
Teravus Ovares 26ca3e26bf Reverts patch from tuco/mikkopa/sempuki mantis #3072 2009-02-08 17:25:02 +00:00
Teravus Ovares b60931b686 * Limit the total number of joints created per frame to the maximum possible without causing a stack collision.
* This fixes crashing on large sets of physical prims because of stack collisions (assuming you follow the directions on linux for starting ode with ulimit).   After the maximum joints are created, objects will start to fall through the ground and be disabled.   Not the best solution, but it's better then a crash caused by a stack collision with the process exceeding the maximum available memory/recursions per thread.
* Make a clean region, make a stack of 5000 prim, 20 layers high.  Make them physical, *SLOW*, but no crash.
2009-02-08 03:02:43 +00:00
Teravus Ovares 08a9a85376 * Fixes colliding with the terrain lower then 0 and higher then 256m
* The actual AABB of the heightfield on the Z is now determined by the minimum and maximum heightfield value in the terrain array (assuming it's a reasonable number).  This might optimize collisions in simulators that have a small difference between minimum and maximum heightfield values.
2009-02-08 01:05:09 +00:00
Mike Mazur 949ae6136e Change access levels from private to protected to facilitate
subclassing; also add new method signatures. Thanks tuco and mikkopa.
Fix Mantis #3072.
2009-02-03 08:31:08 +00:00
Teravus Ovares 85c0c0557e * Tweaks some locks when modifying an ODECharacter. This actually allows a user to log-in while the physics scene and the scripts are starting up. This also seems to smooth out the jerks on teleport/connect/disconnect a little bit.
* If you log-in while the simulator is starting up, you won't be able to move and the sim stats will say 0 FPS, and 0 Physics Frames and you may see only terrain.  Once the sim finishes starting up, it'll all resume as normal.
2009-01-31 16:49:32 +00:00
Teravus Ovares 1a55dd11f1 * More friendly OpenJpeg error handling.
* Often times now the only reason OpenJpeg doesn't work is because it requires Glibc 2.4    The error messages reflect that.
* In J2kDecoder module, It stops trying to decode modules if it encounters a dllnotfound exception and instead sends a full resolution layer that causes the texture sender to only send the full resolution image.  (big decrease in texture download speed, but it's better then nasty repeating error messages)
2009-01-21 11:16:33 +00:00
Dahlia Trimble 032b30ffdb Fix an error in sculpt LOD calculation 2009-01-21 02:40:09 +00:00
nlin bfdf2479fb Improve parsing of joint parameters for NINJA physics (Mantis #2966).
Multiple spaces or leading/trailing spaces when specifying the prims 
to connect should no longer cause problems.
2009-01-14 04:59:57 +00:00
Dahlia Trimble 20670ff0c8 sync with primmesher r26 on forge 2009-01-04 19:09:31 +00:00
Dahlia Trimble f836e36c49 Improve LOD scaling for anisotropic sculpted prim meshes 2009-01-04 18:36:13 +00:00
Homer Horwitz a72d3522ff Slight optimisation: Don't check for duplication if we won't use the result anyway. 2008-12-31 20:09:17 +00:00
Homer Horwitz 4b760bba79 - Added the fixed Ode.NET.dll
- Adapted code to match the corrected signatures
- Fixes Mantis #2934. Hopefully.
Note: Physics on linked objects still don't work correctly:
It doesn't crash the region anymore, but the example object in
the mentioned mantis now falls through the ground.
2008-12-31 19:35:46 +00:00
Homer Horwitz 067a9f3d5f Added a missing setMass for initializing the mass of prims 2008-12-31 19:35:33 +00:00
Justin Clarke Casey e4c7bdc730 * Remove mono compiler warnings
* Leaving the 23 warnings in ChildAgentDataUpdate.cs for Diva to look at
2008-12-30 20:48:31 +00:00
Jeff Ames 2be0f7a6f0 Update svn properties, minor formatting cleanup. 2008-12-30 01:08:07 +00:00
Teravus Ovares 6eed7fcd1e * More NINJA Joint physics fixes from nlin.
fixes mantis #2874
2008-12-28 16:30:00 +00:00
Teravus Ovares b378bd33ad * Fixes mantis #2922
* Converts some C# 3.0 syntax into it's 2.0 equivalent so that Visual Studio 2005 can compile it successfully.
2008-12-27 00:17:08 +00:00
Teravus Ovares ec2dc354b4 * Applying Nlin's NINJA Joint patch. v2. Mantis# 2874
* Thanks nlin!
* To try it out, set ninja joints active in the ODEPhysicsSettings
and use the example at:
* http://forge.opensimulator.org/gf/download/frsrelease/142/304/demo-playground.tgz.
* Don't forget to change the .tgz to .oar and load it with load-oar.
2008-12-26 12:58:02 +00:00
Dahlia Trimble 8a86439985 Removed some debugging code that was inadvertently left in in my last commit :/ 2008-12-22 07:25:41 +00:00
Dahlia Trimble c66cfb51f7 Fix a floating point comparison that was causing some misshaped triangles on some prim faces 2008-12-22 06:07:51 +00:00
Charles Krinke 62dd67b8b8 Mantis#2796. Thank you kindly, Gerhard for a patch that addresses:
On a call of llVolumeDetect(1) (or any other number !=0) volume 
detection is enabled. Together with VD, the phantom flag is set to the GUI.
On a call of llVolumeDetect(0), vd detection is switched of again, 
also the phantom state is removed. On a call to llSetState(STATE_PHANTOM, 
false) while VD is active, also VD is switched off. The same is true for 
unchecking the phantom flag via GUI. This allows to take back VD without 
the need to script just by removing the phantom flag.
Things missing in this patch: persistance of the volume-detection flag. 
This needs more discussion and will be included in another patch soon.
2008-12-20 21:36:42 +00:00
Dahlia Trimble 2537a4098a Enabled complex meshing for simple box prims with non-zero shear 2008-12-18 17:53:38 +00:00
Justin Clarke Casey ff7c8551ba * remove mono compiler warnings
* should work - the last compile failure looks like a random glitch...
2008-12-17 18:42:23 +00:00
Justin Clarke Casey 3b0db66b92 * Apply http://opensimulator.org/mantis/view.php?id=2775 with small tweaks
* This pushes an identifier for the OpenSim scene to the physics scene.  This allows log messages from the physics scene to identify which OpenSim scene they relate to.
* Thanks Gerhard
2008-12-15 18:39:54 +00:00
Teravus Ovares 8ad6f575eb * Implements the torque/Rotational Impulse methods in the PhysicsAPI and the ODEPlugin and pipes them to their respective LSL method.
* NBody will need to be updated, this is an API change.   Torque property and AddAngularForce
2008-12-14 14:30:28 +00:00
Teravus Ovares b5dec9a37f * Added Avatar minimum size in the ODEPlugin and a stern warning about setting the capsule size too low in OpenSim.ini 2008-12-14 07:29:40 +00:00
Teravus Ovares 6f7a560c04 * A Few physical prim + linkset fixes. Prevent some crashes 2008-12-14 06:34:05 +00:00
Teravus Ovares 7f80eff067 * Committing a slightly distilled version of nlin's ODECharacter race condition eliminator.
* The modifications that I made were only so that it didn't require changes to the public physics api.
2008-12-10 23:46:20 +00:00
Teravus Ovares cb73cf1a92 * Fixes a few instances of llSetStatus with Axis lock gone wrong.
* Sums up the masses of the objects within a physical linkset
2008-12-09 16:27:07 +00:00
Jeff Ames 3ba0bc8f44 Minor formatting cleanup. 2008-12-09 12:15:02 +00:00
Teravus Ovares 3844e73d27 * Gerhard's patch m2781. Does some initial work for setting up llVolumeDetect.
* Warning! Physics API change. This means that the NBodySimulation needs to be updated!
* PhysicsActor -> void SetVolumeDetect(int) needs to go into classes that use PhysicsActor as their base class.
2008-12-09 11:11:16 +00:00
Dahlia Trimble 44d133da66 clean up some old debugging code 2008-12-09 08:17:31 +00:00
Teravus Ovares e61dacb928 * Adds some rudimentary error handling to the physics debug drawstuff tool. 2008-12-08 07:19:26 +00:00
Teravus Ovares 76e1462dff * Tweaks physics so that linked prim are a single body. This will make linked prim more stable and probably the last obstacle to vehicles physics wise.
* Fixed a bug that caused physics proxies to be scattered when you link an object.
* Single physical prim work exactly the same as before, just linked physical prim will have changed.
2008-12-07 04:03:09 +00:00
Dr Scofield bdffd56a45 killing warnings, reformatting RemoteAdminPlugin 2008-12-05 15:28:03 +00:00
Justin Clarke Casey b4db3a550a * Apply http://opensimulator.org/mantis/view.php?id=2750 with a small tweak.
* Initializes ODE only when a scene is grabbed rather than on plugin load.  This means we don't initialize ode if that physics engine is not used, and it allows other ode use 
plugins to be used instead.
2008-12-04 20:29:34 +00:00
Jeff Ames d324389dd9 Update svn properties. 2008-12-03 04:41:31 +00:00
idb 098f16fe31 Remove duplicated avatar height calculation in lsl functions.
Use height calculation in Basic Physics and Physics of Simplicity so that avatars larger than the default walk with straight legs and shorter walk on the ground.
2008-12-01 00:49:36 +00:00
Dahlia Trimble 07ee2c3504 Revert r7548 and r7549 until someone with prebuild-fu can help structure the dependencies 2008-11-30 03:52:18 +00:00
Dahlia Trimble 37afd69feb Removed remaining meshing code
Add PrimMesher.dll r21
All meshing tasks are now passed through Meshmerizer and handled by PrimMesher.dll
2008-11-30 03:13:02 +00:00
Dahlia Trimble fdd2388331 Update meshing code to sync with current PrimMesher.cs on forge.
Migrate sculpt meshing code to primMesher version. This should result in more accurate physical sculpted prim proxies.
Remove much obsolete code from Region/Physics/Meshing
2008-11-29 11:02:14 +00:00
Justin Clarke Casey b9c07730f5 * refactor: change some method names and doc in the physics plugin manager
* move the directory choice for plugins outside into RegionApplicationBase
2008-11-20 19:52:55 +00:00
Justin Clarke Casey d625095959 * Allow physics dlls to be loaded separately, rather than just the contents of bin/Physics
* This is primarily to see if not loading ODE in the unit tests will allow them to proceed, though the option of separate loading is probably a good thing in itself
2008-11-20 18:28:30 +00:00
Justin Clarke Casey 81dcf223bf * Add enough infrastructure code to run an extremely basic and flaky add root agent scene test 2008-11-20 16:58:40 +00:00
Melanie Thielker 6f0e068cf1 Guard against a strange nullref in ODE 2008-11-19 20:04:41 +00:00
Dahlia Trimble a3f785e978 Changed sculpted prim texture scaling method to bilinear to reduce scaling artifacts 2008-11-16 00:24:10 +00:00
Justin Clarke Casey a760586f26 * minor: remove mono compiler warnings 2008-11-14 20:15:22 +00:00
Justin Clarke Casey cec112c87a * refactor: as per a recent opensim-dev thread, rename InnerScene to SceneGraph to make it more descriptive of its intended function 2008-11-12 20:16:46 +00:00
Melanie Thielker ce37b80c68 Thank you, idb, for a patch that fixes avatar height calculation
Our feet will now be above ground
2008-11-10 01:28:37 +00:00
Charles Krinke 087d2f9147 Enabled SoftERP for the contact structure but not SoftCFM.
A tube on a pole is a bit less "flubbery" so maybe this is
the right direction.
2008-11-09 20:20:20 +00:00
Charles Krinke c6ed72b4fa Clean up a few comments. 2008-11-09 18:43:46 +00:00
Charles Krinke 8ed4821c47 Clean up the mass < 0 logic a tiny bit when
calculating mass.
2008-11-09 18:22:36 +00:00
Justin Clarke Casey c6dad833f5 * minor: remove some mono compiler warnings 2008-11-06 21:01:16 +00:00
Justin Clarke Casey 9770cf778e * minor: Make some 'startup config failed to load' log messages more consistent 2008-11-06 20:38:04 +00:00
Dahlia Trimble 5fffc04ae6 Add more vertex normals and UV coordinates. Sync with primmesher.dll forge project. 2008-11-05 10:22:41 +00:00
Charles Krinke 9299be0080 Revert last checkin. Avatars fall through non-physical prims now.
There is more to the solution then just enabling soft_erp and 
soft_cfm for all d.Contact cases.
2008-11-01 17:58:34 +00:00
Charles Krinke 1e376deedd Added soft_cfm and soft_erp to the general "contact" initialization
for physical prim interactions. They were not previously enabled
for prim-prim interactions.
2008-11-01 17:30:06 +00:00
Dahlia Trimble 5cf6a7f118 Viewer side normals and UV fixes on profile cuts. Sync with primmesher.dll forge project. 2008-10-29 09:47:45 +00:00
Justin Clarke Casey 7beeaf51f8 * minor: remove mono compiler warnings 2008-10-28 21:47:43 +00:00
Dahlia Trimble ae5d92a167 some sorely needed extruder code simplification and refactoring, also some fixes to cut face UV coordinates 2008-10-28 08:57:15 +00:00
Justin Clarke Casey 754f6ba2a2 * minor: remove mono compiler warnings 2008-10-27 20:16:42 +00:00
Dahlia Trimble 3447bed8be Add end faces when radius setting is non-zero 2008-10-24 23:37:09 +00:00
Justin Clarke Casey c519b80680 * minor: eliminate some mono compiler warnings 2008-10-24 21:40:05 +00:00
Dahlia Trimble 71660003de un-double-flipped some double-flipped normals in circular path prim end caps 2008-10-24 20:04:34 +00:00
Dahlia Trimble a11fa9055a Fixed a floating point error accumulation that was causing missing end faces on some twisted prims 2008-10-24 05:31:43 +00:00
Teravus Ovares dfc12d591c * Add a config option for filtering collisions. Sometimes, under load, this seems to cause bouncing on really thin flat prim. 2008-10-22 01:52:12 +00:00
Dahlia Trimble 931b04485d More work in vertex normals and texture UVs. Syncing code with pyov. 2008-10-21 01:35:05 +00:00
Justin Clarke Casey 923f9fb749 * minor: remove mono warnings 2008-10-19 18:45:41 +00:00
Dahlia Trimble b6396bc9a7 More progress towards implementing vertex normals - not complete yet. 2008-10-19 09:04:25 +00:00
Teravus Ovares 11fd935038 * Changed the dupe collision depth limiter to be slightly more restrictive. (less chance for a dupe) 2008-10-18 16:20:02 +00:00
Teravus Ovares 0916b38b83 * Fix an over compensation for bounciness on flat Primitive
* Implement the linear impulse portion of llPushObject.  We should have a lsl compatible implementation of that portion of the push.  Angular..   well.  still have yet to implement a torque accumulator.
* llPushObject respects the region and parcel settings for Restrict Push, it also respects GodMode as is defined in the LSL spec.
2008-10-17 23:19:00 +00:00
Teravus Ovares a6df2011f7 * Adds a lot of stability and performance to the physics engine. The avatar bounces less and things are a bit less explosive.
* Additionally, you can probably get more physical prim now together..  though, I think this puts us back on par with where we were in the beginning of the year on number of physical objects.   Experiment.  Make videos.  Send Feedback.  Enjoy.
2008-10-17 05:09:23 +00:00
Justin Clarke Casey 82b7374ed2 * minor: get rid of pointless ipeSender 2008-10-16 19:50:12 +00:00
Justin Clarke Casey 4df08aed30 * Apply http://opensimulator.org/mantis/view.php?id=2401
* Removes spacers that are also separators in llParseString2List
* Thanks idb
2008-10-16 17:14:02 +00:00
Teravus Ovares 68d85497ad * Releases the inter-region thread synchronization between physics in ODE on the same instance.
* If you are hosting many regions on a single instance, you will probably notice a decrease in region startup time and maybe a slight increase in performance.
* Single regions won't notice anything different
2008-10-16 12:57:29 +00:00
Justin Clarke Casey 98245e4bfa * minor: Oh go on, one more warning. Oooh, you are naughty 2008-10-15 20:46:39 +00:00
Justin Clarke Casey b1248004f0 * minor: remove some warnings 2008-10-15 17:19:02 +00:00
Teravus Ovares 180e3de50f * Cleaned up tons of code duplication in ODEPrim
* Re-enabled the native ODE prim types when possible
* Fixed several invalid assumptions in the prim recycle process.
* Added better message for 'reused a disposed physicsactor'
* Added a way to recover from errors during collision_optimized
* Added a way to recover from an error condition where prim_geom wasn't reset properly
2008-10-14 02:48:30 +00:00
Dahlia Trimble 138a3924e0 Committing more work towards implementing vertex normals. Also added some (hopefully) helpful messages for identifying corrupt prims and some fixup code for corrupt profile cut data. 2008-10-13 22:52:39 +00:00
Teravus Ovares f344f26bd8 * Based on user reports, it looks like the OS specific settings have been unified as far as tuning (thank heavens).
* If you're experiencing knee bendiness try the windows settings, as the *nix settings seem to now be incorrect.  (this update does that, but you may have your own opensim.ini settings active.
2008-10-13 01:54:13 +00:00