Main Content

Link to Models

Connect virtual reality worlds to Simulink® and Simscape™ Multibody™ dynamic system models

Visualize a dynamic system simulation by connecting a Simulink block diagram or Simscape Multibody Link to a virtual world. Simulating the model generates signal data for a dynamic system, which you can use to control and animate the virtual world.

Use the Simulink 3D Animation™ block library to connect to a Simulink model to a virtual world. The VR Sink block allows you to write values from Simulink block ports to specified virtual world fields. To provide interactivity between a virtual world viewer and a Simulink model, use a VR Source block or other blocks such as a Space Mouse Input block.

To view the behavior of a model created with the Simscape Multibody Link software:

  1. Build a model of a machine in the Simulink interface using Simscape Multibody Link blocks.

  2. Create a detailed visual representation of your machine in a virtual world.

  3. Connect the virtual world to the Simscape Multibody Link body sensor outputs.

  4. View the behavior of the bodies in a virtual world viewer.


vrlibOpen Simulink block library for Simulink 3D Animation
vrjoystickCreate joystick object
vrspacemouseCreate space mouse object
vrcoordm2vrConvert MATLAB coordinates to VR coordinates
vrcoordvr2mConvert VR coordinates to MATLAB coordinates
vrrotmat2vecConvert rotation from matrix to axis-angle representation
vrrotvec2matConvert rotation from axis-angle to matrix representation


VR Sink Write data from Simulink model to virtual world
VR Source Read data from virtual world to Simulink model
VR To Video Write data from Simulink model to virtual world (video output port enabled)
VR TracerTrace trajectory of object in associated virtual scene
VR Placeholder Send unspecified value to Simulink 3D Animation block
VR Signal ExpanderExpand input vectors into fully qualified virtual world field vectors
Joystick InputProcess input from asynchronous joystick device
Space Mouse InputProcess input from space mouse device
Cross ProductCross product of two 3-D vectors
Normalize VectorOutput unit vector parallel to input vector
Rotation Between 2 VectorsVirtual world rotation between two 3-D vectors
Rotation Matrix to VR RotationConvert rotation matrix to axis/angle rotation
VR Rotation to Rotation MatrixConvert array/angle rotation to rotation matrix
VR to MATLAB CoordinatesConvert VR coordinates to MATLAB coordinates
MATLAB to VR CoordinatesConvert MATLAB coordinates to VR coordinates
Viewpoint Direction to VRML OrientationConvert viewpoint direction to virtual world orientation

Simulink Models and Generated Code Links

Virtual Reality World and Dynamic System Examples

Use virtual worlds that interface to Simulink block diagrams and to MATLAB® objects and functions.

Connect Virtual Worlds and Models

Associate a Simulink model with a virtual world and connect signals from the Simulink model to the virtual world.

Use Sensors

Move or modify virtual world objects during simulation based on user input from the virtual world or events in the virtual world.

Interact with Generated Code

Have a virtual world that you create with the Simulink 3D Animation product interact with code generated by the Simulink Coder™ product and compiled with a third-party C/C++ compiler in the Simulink Desktop Real-Time™ environment.

Simscape Multibody and Imported CAD Model Links

Link to Simulink and Simscape Multibody Models

Establish a live data connection between the model and the virtual world by creating associations between dynamic model object quantities and corresponding virtual world object properties.

Modify the CAD Model Virtual World

Use the 3D World Editor or other editor to modify the results of CAD tool export filters manually.