//todo: por ahora esta asumiendo q la shape esta en el origen del rigidBody sin transformaciones private void DrawSimpleFixture(ISimpleFixture simpleFixture, IControlRenderDevice render, IRigidBody rigidBody) { IShape shape = simpleFixture.ShapeFactory.Element; IModel model = ExtractModel(shape); render.Draw(model, new Transforming(rigidBody.Descriptor.Pose), Materials.DeepPink.Glossy.Shinness.Glossy.Shinness); }
private void DrawPhysX(IControlRenderDevice render) { foreach (Actor rigidBody in _scene.Actors) { render.Draw((IModel)rigidBody.UserData, new Transforming(rigidBody.GlobalPose.ToStandard()), Materials.DeepPink); } }
private void DrawScene(IControlRenderDevice render) { foreach (Actor rigidBody in _scene.Actors) { render.Draw((IModel)rigidBody.UserData, new Transforming(rigidBody.GlobalPose.ToStandard()), rigidBody.UserData == _planeModel ? Materials.Blue : Materials.Green.Glossy.Shinness.Glossy.Shinness); } }
private void renderedControl1_InitializeRender(object sender, RenderEventArgs e) { _render = e.Render; _renderingVisitor = new RenderingVisitor(_render); _simulator = new DigitalRuneSimulator(); _simulator.AddForceEffect(new GravityForceEffect()); Samples.SetSimpleScene(_simulator); _previousTickCount = Environment.TickCount; _startTickCount = _previousTickCount; }
private void renderedControl1_InitializeRender(object sender, RenderEventArgs e) { _render = e.Render; #region Creating the physics scene //creating the simulation _simulator = new DigitalRuneSimulator(); //definig a material var materialDescriptor = new MaterialDescriptor(0.5f, 0.7f); //creating the ground CreateGroud(materialDescriptor); //creating a Tower for (int i = 0; i < 3; i++) { CreateTower <IBoxShape, BoxShapeDescriptor>(materialDescriptor, new BoxShapeDescriptor(1, 3, 1), xCount: 1, yCount: 3, zCount: 1, xSpace: 1, ySpace: 3, zSpace: 1, xOffset: 3 * i, yOffset: 10 + 9 / 2f, zOffset: 0); } ////creating a chain //var constraintDescriptor = new DistanceRangeJointDescriptor(new Vector3(0),new Vector3(0),1f,1.1f,false); //CreateChain<ISphereShape, SphereShapeDescriptor>(materialDescriptor, new SphereShapeDescriptor(0.5f), constraintDescriptor, // count: 8, space: 1.1f, staticBall: 7, // xOffset:-10, yOffset: 9,zOffset: 0); //creating a composite CreateComposite(); //playing with the mass // CreateMassTesting(-5,1, 1); //CreateMassTesting(0,1, 10); //CreateMassTesting(5,2, 100000); #endregion //initializing the timer _previousTickCount = Environment.TickCount; _startTickCount = _previousTickCount; }
public RenderingVisitor(IControlRenderDevice render) { _render = render; _materialsStack.Push(Materials.GreenYellow.Glossy.Shinness.Glossy.Shinness); }