Commit Graph

1029 Commits (d016051fa028a485b09fac47b3fa3d8fd08e207a)

Author SHA1 Message Date
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
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
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
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
Mic Bowman ad84728aba Add localID to physical object creation functions. 2011-06-15 11:31:32 -07: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
Dan Lake d565041e16 Fix crash when [Mesh] section is missing from configuration files 2011-04-29 15:49:10 -07: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
dahlia 212326eeb0 fix meshing failure on sculpt maps smaller than 64x64 2011-04-19 22:16:10 -07:00
dahlia 90b810c27e force mesh proxy for simple box prims with path cut 2011-04-12 22:47:30 -07: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
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
Justin Clark-Casey (justincc) 3053f5ba7d minor: remove some compiler warnings 2010-12-10 03:08:31 +00:00
dahlia 9f29908f66 catch an exception when a mesh asset header cant be decoded 2010-11-24 02:05:41 -08: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
dahlia 9038218c2d fix combining of multiple physics submeshes 2010-10-20 20:39:05 -07: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
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
Teravus Ovares (Dan Olivares) cf61cf7b32 * Make line endings consistant in Meshmerizer.cs 2010-10-09 13:50:53 -04: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
Jeff Ames bc9f793a92 Formatting cleanup. 2010-10-04 21:28:17 -04:00
Melanie f220a2c5eb Replace CalculateMass with a more accurate version, contributed by Ubit.
Thank you.
2010-10-02 00:24:16 +01:00
Melanie d0c271adc6 Typo fixes 2010-09-26 18:06:23 +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
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
Justin Clark-Casey (justincc) 4a5979c311 minor: remove some mono compiler warnings 2010-06-25 21:09:15 +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 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 ceac35bac1 Log and eat sculpt meshing exceptions caused by bad jp2 data. 2010-06-12 16:25:40 +01:00
dahlia 5e719d13ef fix sculpt normal direction for mirrored plane sculpts 2010-05-24 19:15:04 -07: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
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
John Hurliman 65c1fbc14d Fixing line endings 2010-03-15 20:54:48 -07: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
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
John Hurliman 8556a9f1a8 Applying patch #4534 by Misterblue to fix ODE physics stickiness 2010-02-04 13:31:06 -08:00
Jeff Ames 70d5b1c34c Formatting cleanup. Add copyright headers. 2010-01-04 06:17:30 +09:00
Melanie e530180c1e Glue code for a couple of new LSL function implementations 2009-12-22 00:26:12 +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
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
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
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
Teravus Ovares (Dan Olivares) 3ebb528c79 * Resolves mantis 4390 http://opensimulator.org/mantis/view.php?id=4390 2009-11-23 11:44:22 -05: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
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
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
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
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 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