aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/PhysXPlugin (follow)
Commit message (Collapse)AuthorAgeFilesLines
* * Changed all AssemblyInfo to explicit version 1.0.0.0 to not confuse poor ↵lbsa712009-02-191-1/+1
| | | | poor Nant. We probably should take the opportunity to let the non-module bins reside in their /bin/Debug dirs later.
* This started as way to correct Mantis #3158, which I believe should be fixed ↵diva2009-02-151-1/+2
| | | | 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.
* * remove mono compiler warningsJustin Clarke Casey2008-12-171-2/+2
| | | | | | * should work - the last compile failure looks like a random glitch...
* * Apply http://opensimulator.org/mantis/view.php?id=2775 with small tweaksJustin Clarke Casey2008-12-151-3/+6
| | | | | | | * 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
* * Implements the torque/Rotational Impulse methods in the PhysicsAPI and the ↵Teravus Ovares2008-12-141-0/+18
| | | | | | | ODEPlugin and pipes them to their respective LSL method. * NBody will need to be updated, this is an API change. Torque property and AddAngularForce
* * Gerhard's patch m2781. Does some initial work for setting up llVolumeDetect.Teravus Ovares2008-12-091-0/+11
| | | | | | * 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.
* Implement the plumbing for llSetVehicleType from the LSLCharles Krinke2008-09-281-0/+12
| | | | | | subroutine down through the physics modules through PhysActor and SceneObjectPart. No connection to the physics simulators.
* Added the plumbing for llSetVehicleRotationParamCharles Krinke2008-09-281-0/+10
| | | | | | in the classes between the LSL implementation and the underlying physics engines.
* Plumb the connection though from llSetVehicleVectorParamCharles Krinke2008-09-281-6/+14
| | | | | | | to the various physics engines. No connection to the underlying physics simulator yet, just plumbing through the various classes.
* Plumb the connection through from llSetVehicleFloatParamCharles Krinke2008-09-281-0/+12
| | | | | | | to the various physics engines. No connection to the underlying physics simulator yet, just plumbing through the various classes.
* * This is the fabled LibOMV update with all of the libOMV types from JHurlimanTeravus Ovares2008-09-061-6/+6
| | | | | | | * This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point. Regular people should let the dust settle. * This has been tested to work with most basic functions. However.. make sure you back up 'everything' before using this. It's that big! * Essentially we're back at square 1 in the testing phase.. so lets identify things that broke.
* Implements llSetForce() and llGetForce(). These are experimental and the ↵Dahlia Trimble2008-07-241-0/+2
| | | | units may not match the Linden implementation.
* * Adds Top Colliders when using ODE. Access it from the estate tools/debug tab.Teravus Ovares2008-05-251-0/+8
|
* * Refactored IConfigSource into Physics plug-ins and Scene. We can get rid ↵Teravus Ovares2008-05-141-1/+2
| | | | | | | of some of the parameters we pass to it's constructor now like, 'm_allowPhysicalPrim', 'seeIntoOtherRegions', etc.. so on * The main purpose of this is to provide configuration options for ODE and other physics plug-ins that are advanced enough to be able to be configured.
* * If you llApplyImpulse on an attachment, it applies impulse on the avatar, ↵Teravus Ovares2008-05-061-2/+2
| | | | not the attachment.
* * Committing some collision stuffs that I'm working on.Teravus Ovares2008-05-031-0/+25
| | | | | * Nothing user facing yet.
* * Adds llSetStatus(STATUS_ROTATE_X | STATUS_ROTATE_Y | STATUS_ROTATE_Z,TF)Teravus Ovares2008-04-231-0/+10
| | | | | | | | * Currently if you apply that to only one or two axis you get unpredictable and sometimes explosive results. * Three axis works well enough to play with it anyway. More work is needed here. * Fixed an incorrectly named method in ODE.NET
* * Adds llMoveToTarget and llStopMoveToTarget support to the ODEPlugin.Teravus Ovares2008-03-251-0/+6
| | | | | | | * It doesn't generate at_target events, because they don't exist yet in the script engine. * The Tau is different, however, compatible with scripts I tested. * Not perfect... but pretty good.
* Formatting cleanup.Jeff Ames2008-03-182-56/+54
|
* ODEPluginTeravus Ovares2008-03-101-0/+10
| | | | | | | | | * Added osSetPrimFloatOnWater(BOOL) to make Physical prim float at the water level. * osSetPrimFloatOnWater(TRUE); or osSetPrimFloatOnWater(FALSE); * By default, prim do not float at the water level. * More work is needed on the floating, but it's a start.
* * Added ODEPlugin Support for llSetBuoyancy. Set Buoyancy to 1 for space prim.Teravus Ovares2008-03-101-0/+17
| | | | | * Added WaterLevel support to the ODEPlugin. More on this later.
* * This is a very icky implementation of physical linkset prim using fixed ↵Teravus Ovares2008-03-021-0/+20
| | | | | | | | | joints. This will change quite drastically, however it's fun to play with. * To play with this you must link your prim before setting it physical, otherwise they won't link in the physics engine properly. This will also be fixed. * Currently the linked prim are extremely unstable because I have yet to implement combining of forces with the same normal. This will also be fixed. In fact, the whole PhysicsActor, ODEPrim relationship will be reworked to consider groups from the get-go. * This implementation is better then it crashing your sim, so I'm commiting it for now.
* * Added Support within the ODEPlugin for Selected. Which means that;Teravus Ovares2008-02-231-0/+10
| | | | | | | | * When you select a physical prim, it stops while you've got it selected. * When you move or alter a prim in some manner, it doesn't become collidable until you de-select it * When you select a prim, it doesn't become temporarily 'phantom' until you make some change to it while it's selected. (this prevents accidental selections in prim floor from causing it to go phantom on you(but don't move it or you'll fall)) * There's one major difference, and that's a physical object won't stop if you don't have permission to edit it. This prevents people who don't have edit permissions on a prim from stopping it while it's moving.
* ODE: Tired of floating above the ground after crossing a border? Boy have I ↵Teravus Ovares2008-02-181-1/+1
| | | | got a solution for you! For a limited time, you can be the right height after border crossings automatically. Just three easy payments of $9.95 and make sure your neighbor is sending child agent updates!
* * Located and destroyed the weird velocity and rotation transfers. It ↵Teravus Ovares2008-02-171-0/+10
| | | | | | | | turned out to be that the Static PhysicsVector.Zero was transferring velocities between all non fixed objects. Not so static after all :(. Finding it was cruel and unusual punishment from the CLR. * Therefore, when you run through a pile of prim you won't see things rotate when they're not supposed to anymore. * Avatars don't float off either.
* * Bigish ODE stability Update. Run PrebuildTeravus Ovares2008-02-131-0/+8
|
* * Made physical prim stable enough for the general population to turn on. ↵Teravus Ovares2008-02-131-0/+10
| | | | | | | | | | (though I still don't recommend it for welcome regions unless object build is off. * Updated the ode.dll for windows with a more reasonable stack space reserve. Linux users will need to type ulimit -s 262144 before starting up OpenSimulator if using Physical Prim to protect against stack collisions. or run the included ./bin/opensim-ode.sh to start up OpenSimulator in ODE mode. * Added internal collision score and am keeping track of 'high usage' prim. * Tweaked collisions some more * Tested up to 460 physical prim in extremely close quarters (which was previously impossible in OpenSim). After 460 in tight quarters, physics slows down enough to make it hard to do any moving, however.. non physics things still work, such as logging on to the simulator, etc.
* * Added PhysicsScene.Dispose()Teravus Ovares2008-02-111-0/+3
| | | | | * In ODE, disposing of all of the ODE objects and the ODE World to reclaim memory when the simulator restarts.
* Converted logging to use log4net.Jeff Ames2008-02-051-1/+1
| | | | | | Changed LogBase to ConsoleBase, which handles console I/O. This is mostly an in-place conversion, so lots of refactoring can still be done.
* * Implemented grab and throw in ODE. It's a little strong still so toss ↵Teravus Ovares2008-01-291-0/+20
| | | | gently at first to test the waters or you'll lose prim to the pit at the edge of the sim. Make sure the object is physical before trying to toss it or it'll just move to the new location.
* * Optimized usingslbsa712007-12-272-64/+62
| | | | | | | * shortened references * Removed redundant 'this' * Normalized EOF
* * Re-did the mass calculations in ODE for Prim Teravus Ovares2007-12-191-3/+39
| | | | | | | * Exposed the mass as a PhysicsActor read only property (so scripts can get at it - hint hint -) * Hollow and Path Cuts affect the prim mass (all Hollow Types are supported in this calculation (sphere,square,triangle)) * Prim no longer sink into the ground.
* * Added some simstats to fill the simulator pane of the Statistics monitor.Teravus Ovares2007-12-121-1/+3
| | | | | * I stress, this is an initial implementation and the Agents(Child and Root) are definately obviously incorrect.
* saved OpenSim source code from the giant rampaging unterminated copyright ↵Jeff Ames2007-12-102-3/+3
| | | | notice of doom
* *Huge* structural changes in ODE/OdePrim to get all of the calls in ↵Teravus Ovares2007-11-201-0/+3
| | | | | | | threadlocked code. ODEPrim was almost completely re-written. Copy/Space test needed.
* cleaned up some mono compiler warningsJeff Ames2007-11-181-58/+55
|
* * Implemented Walk Vs Run in ODE. Also helps make the walk look smoother.Teravus Ovares2007-11-121-0/+10
| | | | | * All thanks to unimplemented packet listing :D
* * Added a lot of Glue to help with reporting proper collisions.Teravus Ovares2007-11-121-3/+31
| | | | | | | | | | * ODE - Fixed the iscolliding property to report a static true when colliding. * Added reporting of collisions to call UpdateMovementAnimations * Added Jump - air animation (with arms outstretched). * Added Fall Animations * ODE - Added a small amount of X, Y motion control while jumping or Falling * ODE - Avatar movement animations are still a bit odd sometimes, and had to get this up there.
* * Moves the Meshmerizer to a separate pluginTeravus Ovares2007-11-101-0/+6
| | | | | | * Experimental. Linux Prebuild needs testing. * One more update after this to remove the ODEMeshing directory....
* * Added an internal throttle on ODE physics updatesTeravus Ovares2007-11-091-1/+10
| | | | | | * Added a ThrottleUpdates member to PhysicsActor to expose 'throttle' ability to the Scene. * Updated the ode.dll file with a fix to invalid data passed to ODE's heightfield collision calculator.
* * Added Rotational Velocity reporting for Client Interpolation to Terse UpdatesTeravus Ovares2007-11-081-2/+12
| | | | | * Added Angular Velocity reporting for smooth-ish rotations on object collisions
* prim cuts in ODEdan miller2007-11-051-48/+85
| | | | | | | | Much thanks to Gerhard! Merged with Darok's recent changes re: physical prims
* Changes in BulletXPlugin: Added new class BulletXActor class inherits from ↵darok2007-11-031-1/+18
| | | | PhysicsActor and it's the ancestor for BulletXCharacter and BulletXPrim.Physical modifications: Changes for pass the value of Physical flag in the SceneObjectPart class to the Physics engines. New call for AddPrimShape so it has a new parameter called "isPhysical". The old call will be obselete soon (i believe). PhysActor and its descendants have a new property called IsPhysical. By the way no new special funcionallity added. It's more like preparing the way for new modifications.
* Thank you Teravus, very much, for a 'jump', 'crouch' and 'inertia' patch for ↵Charles Krinke2007-10-311-2/+15
| | | | all three physics plugins.
* * Optimized usingslbsa712007-10-302-369/+296
| | | | | | * Shortened type references * Removed redundant 'this' qualifier
* as per the "Filesystem cleanup for OpenSim repository" mailing list thread. ↵MW2007-10-291-1/+1
| | | | | | | Have flattened the OpenSim.Framework project/namespace. The problem is that the namespace is still wrong as its "OpenSim.Framework" while the directory is "OpenSim\Framework\General" , so we need to decide if we change the directory or correct the namespace. Note this has lead to a big flat project, but I think a lot of the files we most likely don't even use any longer. And others belong in other projects/namespaces anyway.
* Hollow prims (box only), thanks Gerard! Enjoydan miller2007-09-291-3/+9
|
* mass update of urls in source code to new websiteSean Dague2007-09-102-2/+2
|
* Corrected the namespace in OpenSim.Region.Physics.Manager, so now namespace ↵MW2007-08-281-1/+1
| | | | should equal project and directory.
* Added RemovePrim method to the physics plugins interface.MW2007-08-231-0/+5
| | | | | | | | Implemented that method in ODE plugin. Hooked it up so when deleting/taking prims into your inventory they will be removed from physics engine. Enabled the other physics hook ups in Scene.cs (and also added registering prims with physics plugin when they are rezzed from Inventory.) So now to get the avatar to prim collision testing working, just change to use the ODE plugin (in the OpenSim.ini file, physics = OpenDynamicsEngine). Remember though ODE only really works (without problems) when running with a single region.