Teravus Ovares
95def8c636
* Adds unit test glue to the OdePlugin.
...
* Adds one unit test. CreateAndDropPhysicalCube.
* More unit tests will be done
* Let me know if this breaks Linux build..
2008-02-24 04:06:01 +00:00
Teravus Ovares
bbb8b66908
* Made Physics updates a teensy bit more responsive. A previous CPU optimization of mine slowed the speed of updates using the 'poll' method in certain circumstances.
2008-02-23 12:46:23 +00:00
Teravus Ovares
db264013d4
* One more fix to the selected feature
...
* Don't act immediately on a physical prim unless it's moving.
* This helps when you're trying to make a box stack and you select the bottom most box.
2008-02-23 12:26:37 +00:00
Teravus Ovares
27508c1ad8
* Added Support within the ODEPlugin for Selected. Which means that;
...
* 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.
2008-02-23 11:42:55 +00:00
Teravus Ovares
640ad259d4
* A few additional null checks in the Physics Scene and PhysicsActor so we don't try to enumerate dead null ODECharacter objects when things get *really* slow.
2008-02-21 14:51:39 +00:00
Jeff Ames
a8cfbbe963
Minor cleanup.
2008-02-20 18:38:20 +00:00
Teravus Ovares
e789a6bc9b
* This patch adds Prism support to the Meshmerizer. Prism is one of the object types in the drop down on the object tab. Positive tapers are slightly incorrect(prim sinks into ground a tiny bit). Everything else that's supported works as expected. Hollow, cut, negative tapers, top shear.
2008-02-19 08:49:38 +00:00
Teravus Ovares
8edaada1d3
ODE: Tired of floating above the ground after crossing a border? Boy have I 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!
2008-02-18 01:52:25 +00:00
Teravus Ovares
c2d7beb617
* Last bit of cleanup now. As long as you keep physical prim off, you should have a reasonably stable experience with ODE again.
...
* Physical prim at the simulator edge still seems to have the occasional issue.
2008-02-17 20:40:21 +00:00
Teravus Ovares
f80a534eb0
* Various ODE Cleanups
2008-02-17 20:04:28 +00:00
Teravus Ovares
89349a3810
* Disabling physical prim crossings until they get a bit more stable.
2008-02-17 12:10:47 +00:00
Teravus Ovares
e33a0c5fc0
* Fixed the Ghost physical hull on deleting a physical Prim
...
* Fixed a deadlock when there is an exception in the collision and stepping parts of Simulate.
2008-02-17 11:50:15 +00:00
Teravus Ovares
19e0ada93a
* Located and destroyed the weird velocity and rotation transfers. It 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.
2008-02-17 10:41:08 +00:00
Teravus Ovares
be6edefcfb
* ODE Stability update 4 :D
...
* Changed the way meshing requests get sent to the ODEPlugin
* Numerous other fixes
2008-02-15 21:35:52 +00:00
Adam Frisby
f3afa68a2a
* Made new Framework.Constants class, added RegionSize member.
...
* Converted all instances of "256" spotted to use RegionSize instead. Some approximations used for border crossings (ie 255.9f) are still using that value, but should be updated to use something based on RegionSize.
* Moving Terrain to a RegionModule, implemented ITerrainChannel and TerrainModule - nonfunctional, but will be soon.
2008-02-14 12:16:33 +00:00
Teravus Ovares
135a72d6ca
* Removed the noise from the console. The last commit seems to have resolved the recent reports of 'argument not a space' on linux. Though, there were about 50 changes :D
2008-02-14 10:07:15 +00:00
Teravus Ovares
bd880f9178
* Another ODE Stability update. This might fix the recent Linux issues with the ODEPlugin.
2008-02-14 09:31:22 +00:00
Teravus Ovares
e3a711536b
* ODE - This fixes a few things and breaks a few more.
2008-02-14 01:57:19 +00:00
Jeff Ames
4e005fc225
Cleaned up some typos.
2008-02-14 00:44:21 +00:00
Teravus Ovares
0d14c47c28
* Bigisn ODE Stability update 2
2008-02-14 00:39:08 +00:00
Teravus Ovares
3588d89b2c
* Bigish ODE stability Update. Run Prebuild
2008-02-13 23:14:41 +00:00
Teravus Ovares
2e89c01851
* This fixes mantis 553 (It appears that the exception is thrown when there is a collision with a cylinder that is both hollowed and either tapered or cut. The sequence of actions that reproduce the problem for me are: create a cylinder, hollow to 95%, taper X/Y, then collide it with another object or avatar. Note that the cylinder itself is not marked physical. )
2008-02-13 19:06:35 +00:00
Teravus Ovares
c1044039d4
* Removed a debug line that got called every frame.
2008-02-13 08:37:50 +00:00
Teravus Ovares
d773ca5147
* Made physical prim stable enough for the general population to turn on. (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.
2008-02-13 07:50:15 +00:00
Teravus Ovares
e5ede36f0c
* Physical prim cross borders and continue from where the left off on the other side now, assuming the region on the other side has physical prim enabled.
2008-02-12 07:32:32 +00:00
Teravus Ovares
6e01769bcf
* A bunch of updates to make things more smooth.
...
** Sending the actual TimeDilation to the client now instead of the 62455 constant. The client is *supposed* to use that value to sync with the simulator. (actually sending ushort.maxvalue * TimeDilation)
** Disabling prim that inter-penetrate instead of just not attaching a joint
** Reduced prim spin a 'little' bit, but not *enough*
** Tweaked the TimeDilation algorithm to be closer to 1.0 by default and various changes to the sim stats reporter
** Created a .SetValues method to PhysicsVector so we can simply call the setvalues function instead of .x, .y, .z sets.
** Experimented with a .GetBytes Method on PhysicsActor to be able to use the LLVector3.FromBytes() method.
** Upped the Inter-penetration depth to 0.25 instead of .08.
2008-02-12 04:27:20 +00:00
Teravus Ovares
c926962862
* This resolves the null exceptions when a script is manipulating a physical object in ODE and you delete the object. The script is still running and trying to add force, but the object reference is null.
2008-02-12 00:01:55 +00:00
Teravus Ovares
f603e57e9a
* Added PhysicsScene.Dispose()
...
* In ODE, disposing of all of the ODE objects and the ODE World to reclaim memory when the simulator restarts.
2008-02-11 22:54:51 +00:00
Teravus Ovares
a56664cf59
* um, Prim crossings? Experimental.
...
* Backup your database just in case.
2008-02-11 01:43:54 +00:00
Teravus Ovares
c9b5516ca8
* Adds Top Shear support to the Meshmerizer for the Cube prim and the Cylinder prim.
2008-02-09 05:18:52 +00:00
Teravus Ovares
fec65b3c69
* Tweaked timing of rapid mesh requests. Helps a race condition.
2008-02-09 04:08:26 +00:00
Teravus Ovares
bb5b88d161
* Fixed a situation in ODE where it didn't call the mesher on a cube when you tapered if you didn't have a cut or a hollow.
2008-02-08 23:48:27 +00:00
Teravus Ovares
50acb8e634
* This update adds limited support for Cylinder meshed prim in the Meshmerizer plugin. (Limited because path cut is wrongly offset and while Hollowing works, you can walk through the inside wall.)
2008-02-08 11:32:56 +00:00
Jeff Ames
6ed5283bc0
Converted logging to use log4net.
...
Changed LogBase to ConsoleBase, which handles console I/O.
This is mostly an in-place conversion, so lots of refactoring can still be done.
2008-02-05 19:44:27 +00:00
Teravus Ovares
96f6add4ad
* ODE:Fix copy and paste bug in space calculation limits
2008-02-01 14:05:22 +00:00
MW
5099be8072
Temporary try catch around calculateSpaceForGeom() , to see if it gets past mantis issue #435 (for now)
2008-02-01 13:10:40 +00:00
Teravus Ovares
bec71977ab
* Added more supported feature to particlesystems. While this appears to have a libsl update... it's really a fix to the libsl version we're already using because of a bug in the particlesystem implementation
...
* Added two new simstat counters in the simstat enum for the RCCS. (I'll find something cool to put in them)
* fixed a time waster in ODEPlugin.cs
2008-02-01 04:22:20 +00:00
Teravus Ovares
9722b6ad53
Updating ODE.NET as the version I used possibly caused the slowness.
2008-01-30 08:58:44 +00:00
Teravus Ovares
02d672de36
* See if this helps Nebadon.
2008-01-30 08:30:22 +00:00
Teravus Ovares
cb05b76b83
* This update restores *nix support
...
* This stability optimization is disabled on Apple Computers until the .dylib library is updated.
2008-01-30 07:46:48 +00:00
Teravus Ovares
fc9b3ec5a8
* Experimental ODE Update to make ODE more stable
...
* WARNING: This update will break *nix support. Will be restored in the next revision
2008-01-30 07:09:58 +00:00
Teravus Ovares
c4687116ad
* Implemented grab and throw in ODE. It's a little strong still so toss 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.
2008-01-29 15:10:18 +00:00
Teravus Ovares
4742a172e2
* This fixes the stair issue that Sdague reported on *nix. Be aware that if you cross a border into a region, the new region doesn't know your height and therefore you're about a meter off the ground. If the region doesn't know your height, you won't be able to climb steps. If you're in that state, edit your appearance and the region will learn your height and you will again be able to climb steps.
2008-01-29 01:20:43 +00:00
Teravus Ovares
035d807847
* ODE Going to Time Step 0.020 = (1000\20) - ((1000\20) * .09) = ~45 pfps
2008-01-28 04:31:40 +00:00
Teravus Ovares
5e36feada2
* Mostly ODE update. Things are a bit more behaved then the last experimental update.
2008-01-28 03:25:02 +00:00
Teravus Ovares
205001ab8d
* Highly experimental ODE_STEPSIZE = 0.025f - 1000 / 25 = 40fps - 10 substeps with fallback to 5 substeps when things get slow
...
* Just to give you an idea of the difference .. previous ODE_STEPSIZE was 0.005f - 1000/5 = 200fps - 10 substeps with fallback to 5 substeps when things get slow
* *nix avatar may fall over again, *sorry*
2008-01-27 03:18:10 +00:00
Teravus Ovares
254e047dad
* Shifted strategy of detecting specific *nix distributions to detecting *nix.
...
* Let me know if all your avatar are standup.
2008-01-26 17:38:30 +00:00
Justin Clarke Casey
75d91c387a
* Changing && to || as suggested by dirk and ChrisD, also looks sensible to me
...
* Please revert if this is wrong, Teravus
2008-01-25 16:36:00 +00:00
Teravus Ovares
a2f11a000a
* Added Ubuntu to the OS detection routine. This seems to have helped on Debian.
2008-01-24 22:49:35 +00:00
Teravus Ovares
f0811e4800
* This update updates ODE to again use the AMotor to keep the avatar upright instead of the 'avatar wobble' This also uses a hack to detect debian and change the force applied by the AMotor to a different value for Debian. The intent of this all is to get the avatar to stand up in Debian with the AMotor.
2008-01-23 23:57:54 +00:00