Esempio n. 1
0
        public PlaneShape(RigidBody rigidBody, Matrix4x4 realParentPose, Material material, PlaneShapeDescriptor descriptor)
        {
            var planeShapeDescription = new PlaneShapeDescription(descriptor.Normal.ToPhysX(), descriptor.DistanceFromOrigin) { Material = material._wrappedMaterial };
            _wrappedPlaneShape =
                (StillDesign.PhysX.PlaneShape)
                rigidBody.WrappedActor.CreateShape(planeShapeDescription);
            _normal = descriptor.Normal;
            _distanceFromOrigin = descriptor.DistanceFromOrigin;
            _pose = realParentPose;

            SetRealParentPose(realParentPose);


            UserData = descriptor.UserData;
            if (rigidBody.HasDefaultShape)
            {
                rigidBody.WrappedActor.Shapes[0].Dispose();
                rigidBody.HasDefaultShape = false;
            }
        }
Esempio n. 2
0
 public static IPlaneShape CreatePlane(this IFactory<IShape> factory,
                                      PlaneShapeDescriptor descriptor)
 {
     return factory.Create<IPlaneShape, PlaneShapeDescriptor>(descriptor);
 }
 public DefaultPlaneShape(PlaneShapeDescriptor descriptor)
 {
     Descriptor = descriptor;
 }
Esempio n. 4
0
 public PlaneShape(PlaneShapeDescriptor descriptor)
 {
     WrappedPlaneShape = new global::DigitalRune.Geometry.Shapes.PlaneShape(descriptor.Normal.ToDigitalRune(),
                                         descriptor.DistanceFromOrigin);
     UserData = descriptor.UserData;
 }