public ContactResultCallback()
 {
     _addSingleResult = AddSingleResultUnmanaged;
     _needsCollision  = NeedsCollisionUnmanaged;
     Native           = btCollisionWorld_ContactResultCallbackWrapper_new(
         Marshal.GetFunctionPointerForDelegate(_addSingleResult),
         Marshal.GetFunctionPointerForDelegate(_needsCollision));
 }
		protected RayResultCallback()
		{
			_addSingleResult = AddSingleResultUnmanaged;
			_needsCollision = NeedsCollisionUnmanaged;
			_native = btCollisionWorld_RayResultCallbackWrapper_new(
				Marshal.GetFunctionPointerForDelegate(_addSingleResult),
				Marshal.GetFunctionPointerForDelegate(_needsCollision));
		}
 protected ConvexResultCallback()
 {
     _addSingleResult = AddSingleResultUnmanaged;
     _needsCollision = NeedsCollisionUnmanaged;
     GCHandle handle = GCHandle.Alloc(this, GCHandleType.Normal);
     _native = btCollisionWorld_ConvexResultCallbackWrapper_new(
         Marshal.GetFunctionPointerForDelegate(_addSingleResult),
         Marshal.GetFunctionPointerForDelegate(_needsCollision),
         GCHandle.ToIntPtr(handle));
 }