示例#1
0
 internal SimpleFixture(RigidBody rigidBody, FixtureDescriptor descriptor, Matrix4x4 realParentPose)
 {
     _rigidBody = rigidBody;
     _pose = descriptor.Pose;
     _realParentPose = realParentPose;
     _realPose = GMath.mul(_pose, _realParentPose);
     ShapeFactory = new SimpleFixtureShapeFactory(this);
     MaterialFactory = new SimpleFixtureMaterialFactory(this);
     UserData = descriptor.UserData;
 }
 private CompositeFixture(CompositeShape wrappedCompositeShape, CompositeMaterial wrappedCompositeMaterial, Matrix4x4 realParentPose, FixtureDescriptor descriptor)
 {
     _root = false;
     _realParentPose = realParentPose;
     _pose = descriptor.Pose;
     _realPose = GMath.mul( _pose ,_realParentPose);
     UserData = descriptor.UserData;
     _wrappedCompositeMaterial = wrappedCompositeMaterial;
     _wrappedCompositeShape = wrappedCompositeShape;
     FixtureFactory = new CompositeFixtureFixtureFactory(this);
 }
 public CompositeFixture(DR.RigidBody wrappedRigidBody, FixtureDescriptor descriptor)
 {
     _root = true;
     _pose = descriptor.Pose;
     _realPose = _pose;
     _wrappedCompositeMaterial = new CompositeMaterial();
     wrappedRigidBody.Material = _wrappedCompositeMaterial;
     _wrappedCompositeShape = new CompositeShape();
     wrappedRigidBody.Shape = _wrappedCompositeShape;
     UserData = descriptor.UserData;
     FixtureFactory = new CompositeFixtureFixtureFactory(this);
 }
示例#4
0
 public SimpleFixture(GeometricObject geometricObject, List<UniformMaterial> materialCollection, UniformMaterial material, FixtureDescriptor descriptor, Matrix4x4 realParentPose)
 {
     _wrappedGeometricObject = geometricObject;
     _materialCollection = materialCollection;
     _material = material;
     UserData = descriptor.UserData;
     ShapeFactory = new SimpleFixtureShapeFactory(this);
     MaterialFactory = new SimpleFixtureMaterialFactory(this);
     _pose = descriptor.Pose;
     _root = false;
     _realParentPose = realParentPose;
 }
示例#5
0
     SimpleFixture(DR.RigidBody wrappedRigidBody, FixtureDescriptor descriptor)
 {
     _wrappedRigidBody = wrappedRigidBody;
     _wrappedGeometricObject = new GeometricObject(new EmptyShape(), descriptor.Pose.ToDigitalRune());
     _wrappedRigidBody.Shape = new TransformedShape(_wrappedGeometricObject);
     _wrappedRigidBody.Material = new UniformMaterial();
     UserData = descriptor.UserData;
     _pose = descriptor.Pose;
     ShapeFactory = new SimpleFixtureShapeFactory(this);
     _root = true;
     MaterialFactory = new SimpleFixtureMaterialFactory(this);
 }
 public static ICompositeFixture CreateCompositeFixture(this IFactory<IFixture> factory,
                                             FixtureDescriptor descriptor)
 {
     return factory.Create<ICompositeFixture, FixtureDescriptor>(descriptor);
 }
 public static ISimpleFixture CreateSimpleFixture(this IFactory<IFixture> factory,
                                             FixtureDescriptor descriptor)
 {
     return factory.Create<ISimpleFixture, FixtureDescriptor>(descriptor);
 }