aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Somewhat improve avatar region crossings by properly preserving velocity ↵Justin Clark-Casey (justincc)2014-11-294-14/+40
| | | | | | | | | when avatar enters the new region. This commit addresses the following issues were causing velocity to be set to 0 on the new region, disrupting flight in particular * Full avatar updates contained no velocity information, which does appear to have some effect in testing. * BulletSim was always setting the velocity to 0 for the new BSCharacter. Now, physics engines take a velocity parameter when setting up characters so we can avoid this. This patch applies to both Bullet and ODE.
* refactor: Move methods to start a monitored thread, start work in its own ↵Justin Clark-Casey (justincc)2014-11-251-1/+1
| | | | | | | | thread and run work in the jobengine from Watchdog to a WorkManager class. This is to achieve a clean separation of concerns - the watchdog is an inappropriate place for work management. Also adds a WorkManager.RunInThreadPool() class which feeds through to Util.FireAndForget. Also switches around the name and obj arguments to the new RunInThread() and RunJob() methods so that the callback obj comes after the callback as seen in the SDK and elsewhere
* Add [BulletSim] option AvatarToAvatarCollisionsByDefault to control whether ↵Justin Clark-Casey (justincc)2014-11-253-3/+16
| | | | | | | | | avatars collide. This is true by default. This is implemented with a new collision type (PhantomToOthersAvatar) to potentially allow colliding and non-colliding avatars to be present in the same scene. So there is no provision yet for giving avatars different collision types. This commit replaces the temporary change in commit f3eaa6d8 where avatars would never collide when using BulletSim This is equivalent to the av_av_collisions_off option in ODE.
* If Bullet is running on its own thread, use a reset event to control timing ↵Justin Clark-Casey (justincc)2014-11-251-2/+9
| | | | | | | rather than a sleep. In theory, there should be no difference between these mechanisms. However, on at least Mono 3.2.8 waiting via an event appears to be much more accurate.
* Make BulletSim thread be ThreadPriority.Highest if runningJustin Clark-Casey (justincc)2014-11-251-0/+2
| | | | | Will only effect Windows or mono with a patch such as https://gist.github.com/justincc/31e52218d098529b4696 applied For test purposes
* Temporary hack to disable av to av collisions in bulletsim.Justin Clark-Casey (justincc)2014-11-251-1/+1
| | | | Need to do this for a test. Final implementation will be properly controlled through a property.
* If calling llStopMoveToTarget() on an in-world prim, don't send an ↵Justin Clark-Casey2014-11-193-7/+20
| | | | | | | unnecessary object update if the prim was not moving to target. This involves making PhysicsActor.PIDActive get as well as set. On physics components that don't implement this (all characters and some phys engines) we return false.
* Merge branch 'master' into bullet-2.82Robert Adams2014-09-031-3/+12
|\
| * Don't need to check separate physics status in bulletsim update since that ↵Justin Clark-Casey (justincc)2014-09-031-2/+3
| | | | | | | | | | | | method is only run for an indepndent thread anyway. Also remove bulletsim monitored thread from watchdog on shutdown.
| * Make bulletsim thread alarm if no update for 5 seconds.Justin Clark-Casey (justincc)2014-09-031-1/+4
| | | | | | | | The cost is minimal (also done for scene loop) at the benefit of telling us if this thread simply stops for some reason.
| * minor: fix indenting from previous commit b08ab1eJustin Clark-Casey (justincc)2014-09-031-7/+7
| |
| * If BulletSim is running on its own threads, start this thread via the thread ↵Justin Clark-Casey (justincc)2014-09-031-3/+8
| | | | | | | | | | | | | | watchdog. This allows us to see the presence of the permanent thread via the "show threads" console comand. Also adds the region name to the thread name.
* | BulletSim: add new Bullet 2.82 constraint type codes and rename theRobert Adams2014-08-212-7/+9
|/ | | | BulletSim fixed constraint to not be confused with the native version.
* BulletSim: thread safe handling of list of avatars.Robert Adams2014-07-301-3/+18
| | | | Fix for 7284 which is an enumeration exception when starting up a region.
* Allow the "debug scene set physics false|true" command to work when ↵Justin Clark-Casey (justincc)2014-07-292-1/+14
| | | | | | bulletsim physics is running in a separate thread. This will also allow the "disable physics" setting in the region debug viewer dialog to work in this circumstance.
* BulletSim: rearrange code for sensing whether shapes have beenRobert Adams2014-07-263-60/+60
| | | | | | constructed. Add routine to check for failed and use that method rather than checking individual state.
* BulletSim: Modify first and default vehicle vertical attractor to be feature ↵Vegaslon2014-07-181-0/+14
| | | | | | complete with use of the Limit Roll Only Flag. Signed-off-by: Robert Adams <misterblue@misterblue.com>
* BulletSim: rearrange code to prevent using null pointers when aRobert Adams2014-07-171-11/+10
| | | | child mesh is not available when building a linkset.
* Bulletsim: Create AvatarTerminalVelocity to BulletSim like what ODE and SL ↵Vegaslon2014-06-272-2/+25
| | | | has. Before this falling from really high caused the avatar to fall faster then the veiwer can handle and cause camera issues.
* BulletSim: add some locking for collision lists to prevent collsionsRobert Adams2014-06-202-4/+15
| | | | from locking up when running BulletSim on a separate thread.
* BulletSim: stop processing linkset child when it is discovered that theRobert Adams2014-06-181-0/+1
| | | | child doesn't have a physical shape. Another attempt at fixing Mantis 7191.
* BulletSim: more tweeks to AliciaRaven's flying mods. Added parametersRobert Adams2014-06-182-11/+18
| | | | | | | AvatarFlyingGroundMargin and AvatarFlyingGroundUpForce set to 5.0 and 2.0 respectively which seems to give about the same action as in SL. Also moved force addition to before the velocity to force computation so the upward velocity is properly applied to the avatar mass.
* Fix previous commit to ignore water height and allow flying underwater ↵AliciaRaven2014-06-171-16/+1
| | | | | | (swimming) Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
* Add upward force to flight when close to the ground. Prevents current belly ↵AliciaRaven2014-06-171-0/+26
| | | | | | flop to the floor when flying with bullet physics and acts more like ODE and SL flight. Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
* Change assembly versions to 0.8.1Justin Clark-Casey (justincc)2014-06-171-1/+1
|
* BulletSim: fix exceptions while rebuilding linksets with mesh children.Robert Adams2014-06-081-3/+30
| | | | | | | This should get around the exception reported in Mantis 7191 and 7204 by checking for the unbuilt child and rebuilding the linkset the next tick. A warning message is output when this rebuild happens and this message is clamped to 10 times in case there is a problem with a loop.
* Fix issue with BulletSim avatar level flight jitter by commenting out ↵Justin Clark-Casey (justincc)2014-05-301-1/+12
| | | | | | | | | | | | RawVelocity update threshold for now in BSCharacter.UpdateProperties(). For some reason as yet unidentified (feedback?) a threshold above 0.4 here causes the RawVelocity to move between a lower and upper bound rather than remaining constant. The RawVelocity increased until it triggered the threshold update, at which point it started to decrease until it again triggered the threshhold update. This delta-v was enough to exceed the checks in ScenePresence.SendTerseUpdateToAllClients() and produce jittery avatar flight because of the fluctuating velocity. With a threshold of 0.4 (or 0, as with ODE), the RawVelocity remains constant in BulletSim and so avatar flight becomes mostly smooth - remaining occasional glitches appear to be a result of errors in distance extraploation. There are no obvious problems with commenting out the threshold. Misterblue, if this is wrong or I've missed some subtlety here, please feel free to revert and/or correct. The same considerations may or may not apply to object velocity updates.
* BulletSim: add locking of PhysObjects while processing simulationRobert Adams2014-05-261-14/+20
| | | | | step updates and collisions. This is an attempt to fix a crash reported by Justin when doing high velocity teleports.
* BulletSim: adjust avatar step up parameters to better walk up smallRobert Adams2014-05-172-4/+4
| | | | | staircases. This change is required because of the change in the avatar default shape from the capsule to the rectangle.
* BulletSim: non-functional changes to debugging statements and formatting.Robert Adams2014-04-281-6/+6
|
* BUlletSim: move safeynet ground plane to lower altitude. Define new BulletSimRobert Adams2014-04-282-2/+6
| | | | | | | parameter 'TerrainGroundPlane' which defaults to -500. BulletSim had assumed altitudes never went negative but that is not true. The ground plane is just a safety net so things wouldn't fall to infinity.
* Eliminated many warningsOren Hurvitz2014-04-237-3/+25
|
* BulletSim: reduce the terrain collison margin to be the same as otherRobert Adams2014-04-121-1/+1
| | | | | | | | objects in the world. This was originally changed in an attempt to make vehicles work better but the effect was not that large and it causes avatars to float above the terrain.
* BulletSim: small tweek to avatar height reduce feet embedded into prims.Robert Adams2014-04-101-1/+1
| | | | | This adjustment makes a default, shoeless avatar stand properly on a prim for the various heights (0% to 100% in the appearance adjustment).
* BulletSim: Minor Fix to vehicle hovering, add more ways to disable it.Vegaslon2014-04-031-1/+1
| | | | Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
* BulletSim: make avatar physical shape to be a rectangle rather thanRobert Adams2014-04-023-11/+47
| | | | | | | | a capsule. Set the default to be the rectangle shape and adjust the parameters in OpenSimDefaults.ini for the new shape. The rectangle shape will perform better and avatar height can be computed more accurately.
* BulletSim: fix problem where axis constraints were also constrainingRobert Adams2014-03-231-3/+5
| | | | | | | linear motion. The code was limiting linear motion to be only in the positive direction for any axis that was constrained.
* BulletSim: Fix jumping while running. Was unintentional taking way all ↵Vegaslon2014-03-221-1/+1
| | | | | | upward target motion for avatar when running. Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
* BulletSim: the minimum vehicle velocity was set too low so moving slowRobert Adams2014-02-112-1/+12
| | | | was getting zeroed too easily. Added VehicleMinVelocity parameter.
* BulletSim: default physical terrain implementation to heightmap.Robert Adams2014-01-292-1/+9
| | | | | | | | It originally looked like mesh terrain would perform better for vehicles but, after much use, heightmap is the clear winner. Force terrain implementation to heightmap if the physics region is larger than legacy region size. This solves running out of memory for very large regions.
* Merge branch 'master' into varregionRobert Adams2014-01-111-7/+32
|\ | | | | | | | | | | | | | | | | Conflicts: OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs OpenSim/Region/Framework/Scenes/SceneBase.cs OpenSim/Services/Interfaces/IGridService.cs OpenSim/Services/LLLoginService/LLLoginResponse.cs (conflicts were debug statements that are commented out in master branch)
| * Fix crash in BulletSim which sometimes happens making a linkset physicalRobert Adams2014-01-101-7/+32
| | | | | | | | | | | | (like sitting on and activating a vehicle) and crossing borders. This keeps better bookkeeping on compound shapes so BulletSim can identify them when being freed.
* | varregion: many more updates removing the constant RegionSize and replacingRobert Adams2013-12-262-1/+2
| | | | | | | | with a passed region size. This time in the map code and grid services code.
* | varregion: add plumbing to pass region size from Scene down to theRobert Adams2013-11-044-8/+19
| | | | | | | | | | | | physics engine. Older physics engines will default to the legacy region size. Update BulletSim to use the new region size information.
* | varregion: remove uses of region size constant. In particular, update sceneRobert Adams2013-11-041-5/+6
|/ | | | to check for border crossings based on the size of the region.
* BulletSim: update collision flags to make sure they fit in the shorts provided.Robert Adams2013-10-261-7/+7
|
* BulletSim: change collision flags for groundplane to not interact with ↵Robert Adams2013-10-234-7/+13
| | | | | | static objects. Reorder collision flag setting code for terrain to fit pattern used elsewhere.
* BulletSim: implement the SL bug where VEHICLE_HOVER_UP_ONLY disablesRobert Adams2013-10-151-0/+12
| | | | | | | | | | | the vehicle buoyancy if the vehicle is above its hover height. This is a known misfeature of this vehicle flag which has been accepted since it would break too many implementations. The problem is noticed when creating a jetski-like vehicle that jumps over sand bars. A boat normally is configured with neutral buoyancy and hovering at water height. When it jumps the sandbar, it needs to have gravity applied to get back to water level.
* BulletSim: Fix snap back from edge of region problem. Mantis 6794.Robert Adams2013-10-111-2/+13
|
* Bump OPenSimulator version and assembly versions up to 0.8.0 DevJustin Clark-Casey (justincc)2013-10-041-1/+1
|