Summary: Information on running the simulation, hardware requirements, more details on building content

Hardware and Performance

Supported Graphics Cards

The simulation runtime uses only the programmable pipeline in recent graphics accelator cards. It requires that the card supports the VS20 profile (or better) for vertex shaders and PS20 profile (or better) for pixel shaders. Most middle to high end cards purchased for PC gaming in the past two years will work. Alot of PC notebooks, basic configurations, will probably not support our simulator since they dont support the profiles we need. Recent notebooks however and some older ones seem to work.

List of cards we have verified that simulation works:
* ATI RADEON MOBILITY X1600 (found on notebooks)
* ATI RADEON MOBILITY X800
* ATI RADEON MOBILITY X600
* ATI RADEON 9400, 9600, 9700, 9800
* ATI RADEON X300, X600
* NVIDIA QUADRO FX 540
* NVIDIA GEFORCE 7600 GT
* NVIDIA NV 5700, 6600, 6800, 7900
* NVIDIA QUADRO NVS 110
* NVIDIA GO 6200 (128MB)
* Mobile Intel 945GM Express

Note alot more cards than the above work, but please update this wiki with your card that runs the simulation.

List of cards the simulation does not work or runs slowly:
* ATI MOBILITY RADEON 9000
* ATI MOBILITY RADEON 7500 (doesn't work, no support for shader)
* NVIDIA GeForce 5200 (not combatible with with 2.0, but work swith 2.0a, so might work soon)
* NVIDIA Quadro2 MXR/EX

NOTE: These shaders might fix the simulator on your graphics card: http://channel9.msdn.com/ShowPost.aspx?PostID=255456


Performance degradation due to other windows applets

When running any directX application, including our simulator, background UI applets that use alpha blending cause massive frame rate slow down. Task bar items and other similar processes that have UI with some alpha blending, will cause the simlulator to run slowly. Please disable or minimize their UI and air jordan 11 when running the simulation

3D Model Import

Please check out this excellent tutorial on using solid works and exporting to OBJ for use by our simulation: http://channel9.msdn.com/wiki/default.aspx/Channel9.SimulationImportTutorials

Coding patterns

Moving objects by applying torque and force

A simulation entity can be moved in the simulation world in one of several ways:
  1. Use the PhysicsEntity.ApplyForce or PhysicsEntity.ApplyTorque methods supplying a force vector that is applied on the center of mass or at a specific point in the local coordinate frame of the entity.
  2. Use an advanced construct likes a PhysicsWheel or a PhysicsJoint and use methods on it to change speed, apply torque, change orientation

The most convenient place to apply force in a steady fashion, is in the Update routine of an entity. You will need to add an Update() method (overriding the base implementation) and then call PhysicsEntity.ApplyForce (or the torque equivalent) once per frame. An example is given below:

		        public override void [Update(FrameUpdate] update)
		        {
		            base.Update(update);
		            [PhysicsEntity.ApplyForce(new] Vector3(1,0,0));
		        }
	

Note that PhysicsEntity is valid only if you called CreateAndInsertPhysicsEntity method in your Initialize method in the entity. A good starting point for your custom entity is the TableEntity described in simulationtutorial2.cs. You can modify that entity by adding the Update method above, and you should see the table move across the floor.

To see advanced examples of moving the robot using the Wheel entities with embedded motors or the articulated arms, see the implementation of the DifferentialDriveEntity in Samples\Simulation\Entities\entities.cs and the implementation of KukaLBR3ArmEntity in the same file
Microsoft Communities