Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0006806opensim[REGION] Physics Enginespublic2013-10-16 12:492014-07-29 13:42
ReporterGwyneth Llewelyn 
Assigned ToRobert Adams 
PrioritynormalSeverityminorReproducibilityunable to reproduce
StatusclosedResolutionfixed 
PlatformApple MacintoshOSMac OS XOS Version10.6.8
Product Versionmaster (dev code) 
Target VersionFixed in Versionmaster (dev code) 
Summary0006806: [BulletSim] Exception: System.EntryPointNotFoundException: ClearCollisionProxyCache2
DescriptionFor some reason, many of the BulletSim-related functions are always throwing this exception with the unmanaged library (XNA has no problem).

I understand that this is probably due to new code to deal with multiple collisions. However, it also means that some physical properties are failing, e.g. prims will correctly show they're set to physical (from their object profile) but it will *not* be subject to the physical engine!

Avatars and NPCs seem not to be affected.
Steps To ReproduceMerely creating a cylinder and setting it physical will trigger the exception in the console.

Note that I couldn't reproduce it on the exact same version code under Ubuntu; it could be an issue strictly related to the Mac Mono compiler (problems linking with external libraries?)
Additional InformationThe error is apparently coming from the integration with the C++ "unmanaged" library, e.g. addressed from OpenSim.Region.Physics.BulletSPlugin.BSAPIUnman.ClearCollisionProxyCache:

public override bool ClearCollisionProxyCache(BulletWorld world, BulletBody obj)
{
    BulletWorldUnman worldu = world as BulletWorldUnman;
    BulletBodyUnman bodyu = obj as BulletBodyUnman;
    return BSAPICPP.ClearCollisionProxyCache2(worldu.ptr, bodyu.ptr);
}

BulletXNA has no problems.
TagsNo tags attached.
Git Revision or version numberOpenSim 0.8.0 Dev ba295a0
Run Mode Grid (Multiple Regions per Sim)
Physics EngineBulletSim
EnvironmentMono / OSX
Mono Version2.10
ViewerFirestorm-Release
Attached Files

- Relationships

-  Notes
(0024484)
Gwyneth Llewelyn (reporter)
2013-10-16 12:51

When relaunching the simulator with ODE, objects previously set to physical under BulletSim unmanaged will revert to non-physical.
(0024485)
Teravus (administrator)
2013-10-16 12:54

My first thought here, is library conflict, but I have not loaded it myself in mac :). Maybe there's a shared bullet library that's being invoked instead of the included one... or maybe the .dylib hasn't been updated?
(0024486)
Robert Adams (administrator)
2013-10-16 13:40

Mac is a problem. I (the keeper of BulletSim) do not have a platform to create the Bullet dynamic libs. The problem is that features have been added to the BulletSim dlls but the Mac version of the libraries have not been rebuilt.

I'll ping the fellow who built the last versions and see if he can update the distribution.
(0024487)
Gwyneth Llewelyn (reporter)
2013-10-16 13:58
edited on: 2013-10-16 13:59

Thanks, Robert! That would certainly explain the issue.

Also, it would be nice to have a 64bit version of the library...

This thread might be useful as a resource: https://lists.berlios.de/pipermail/opensim-dev/2013-April/011775.html [^]

(0024521)
Robert Adams (administrator)
2013-10-18 09:21

I just checked in an updated version of bin/lib32/libBulletSim.dylib. Please check it out and see if you get the same error. Thanks to Jon Cundill for the build.

If anyone knows of a Mac build environment for open source projects, that would be a help for future builds.
(0024531)
Gwyneth Llewelyn (reporter)
2013-10-18 17:43

FANTASTIC, Robert!! Awesome work!

Not only the new library makes the error go away, but now my own hacks (I'm working on getting attachments receiving collision events, just like SL does) also work *flawlessly*. I was getting very unreliable collision events — now I get them *all*, exactly as expected. So I got two treats instead of one :-)

You deserve a medal! Who'd thought that it was just an outdated library causing so much damage...

I'm closing this ticket now and consider it fixed!
(0024532)
Gwyneth Llewelyn (reporter)
2013-10-18 17:43

Fixed thanks to Robert's updated unmanaged library. Also fixed reception of collision events!
(0024533)
Teravus (administrator)
2013-10-18 17:47
edited on: 2013-10-18 17:48

Might be cool if you can update this page:

http://opensimulator.org/wiki/PhysicsEngines [^]

It's pretty old :).. It's missing BulletSim. It has the build directions for the ODEPlugin. Might be cool to include the build directions for BulletSim also. :) That page is typically where the Physics Engines are discussed. Maybe link to: http://opensimulator.org/wiki/BulletSim/Functionality [^]

(0024534)
Teravus (administrator)
2013-10-18 17:50

one more note, the PhysicsEngines link is referenced from http://opensimulator.org/wiki/Developer_Documentation [^]

- Issue History
Date Modified Username Field Change
2013-10-16 12:49 Gwyneth Llewelyn New Issue
2013-10-16 12:51 Gwyneth Llewelyn Note Added: 0024484
2013-10-16 12:54 Teravus Note Added: 0024485
2013-10-16 13:40 Robert Adams Note Added: 0024486
2013-10-16 13:58 Gwyneth Llewelyn Note Added: 0024487
2013-10-16 13:59 Gwyneth Llewelyn Note Edited: 0024487 View Revisions
2013-10-18 09:17 Robert Adams Assigned To => Robert Adams
2013-10-18 09:17 Robert Adams Status new => assigned
2013-10-18 09:21 Robert Adams Note Added: 0024521
2013-10-18 17:43 Gwyneth Llewelyn Note Added: 0024531
2013-10-18 17:43 Gwyneth Llewelyn Note Added: 0024532
2013-10-18 17:43 Gwyneth Llewelyn Status assigned => resolved
2013-10-18 17:43 Gwyneth Llewelyn Fixed in Version => master (dev code)
2013-10-18 17:43 Gwyneth Llewelyn Resolution open => fixed
2013-10-18 17:47 Teravus Note Added: 0024533
2013-10-18 17:48 Teravus Note Edited: 0024533 View Revisions
2013-10-18 17:50 Teravus Note Added: 0024534
2014-07-29 13:42 chi11ken Status resolved => closed


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker