The Holodeck User Guide covers importing assets into Holodeck and how you can interact with them in virtual reality.

1. Introduction

Holodeck brings your models into a collaborative virtual reality environment with maximum visual fidelity. This document explains how to get your model Holodeck ready and achieve maximum quality. The process is presented in two flows:

  • Get your model into Holodeck quickly to see how it works
  • Get your model into Holodeck cleanly and get a presentation ready

The first iteration of Holodeck for Early Access requires a specific list of both digital content creation, applications, and materials to properly import into the Holodeck runtime. Support for additional applications and material types is given in later updates.

Current requirements for full import of your assets:

  • Autodesk 3ds Max or Maya (2016, 2017, 2018)
  • NVIDIA Iray for Max or Maya
  • Standard NVIDIA vMaterials

For additional information and updates, visit the NVIDIA Holodeck forums.

Thanks for giving NVIDIA’s Holodeck a try; we look forward to your feedback as we build this product together.

What You Need

PC Requirements

Make sure your PC meets the following minimum requirements:

  • Single NVIDIA Quadro P6000, GeForce GTX 1080Ti, or Titan Xp
  • Intel Core i7-6700k
  • 40GB free disk space on a SSD or very fast HDD
  • 16GB RAM
  • HTC Vive headset and controllers
  • Windows 10 64-bit
  • Separate Steam account for each system [1]

[1] To create private Holodeck sessions, a Verified Steam account is required. To verify a Steam account, that account needs to have a 5USD purchase. More details from Valve here.


To properly export materials and geometry into Holodeck, the following tools must be installed:

  • Autodesk 3ds Max or Maya (2016, 2017, 2018)

    The content import process starts with these tools.

  • Iray for 3ds Max or Maya Plug-In This plug-in is required to assign vMaterials used in the Materials Definition Language (MDL) for Holodeck.
  • NVIDIA vMaterials Set of MDL materials that can be assigned to your models using the Iray plug-in. Select to install them while downloading the Iray plugins or download them directly at www.nvidia.com/vMaterials
    Note: These are currently the only materials supported for runtime material hookup in the Holodeck application.
  • Holodeck Exporter

    This is a plug-in to 3ds Max or Maya that generates the files Holodeck needs to import the scene and assigned materials. The exporter is required if you want to import your own assets into Holodeck. This plug-in comes with the Holodeck Application.

Getting Started

Getting models ready for Holodeck

The following general workflow for exporting models to Holodeck is the same regardless of which DCC product you are using.

  • Import and/or Open models in 3ds Max or Maya
  • Correct geometry errors in your model, if needed, such as reversed normals
  • Verify or assign MDL vMaterial mappings
  • Export geometry, MDL vMaterials and user-provided textures to Holodeck asset format
  • Launch Holodeck and load the model

Software set up

To get the most out of NVIDIA’s Holodeck, you need to install the following to your DCC application (Max or Maya) in addition to Holodeck.

  • Install the Holodeck Plugin
  • Install Iray Plugin
  • Install vMaterials

Working with vMaterials

This section explains how to work with vMaterials in Autodesk Maya and Autodesk 3ds Max.

Using Maya

  1. Open Hypershade to selext and apply a vMaterial to your scene.
  2. Go to Windows > Rendering Editors > Hypershade in Maya to display the Hypershade editor.

  3. Select Materials under Iray from the Create section.
  4. Select ifmMDLMaterial to define a new MDL material.

  5. Go to the Property Editor section of the Hypershade editor window and select the vMaterial you wish to use. For example: Select User > nvidia > vMaterials and then select the vMaterial.

    Once the vMaterial is selected, it is a good idea to change the name of the ifmMDLMaterial to something that makes sense to you. The default name is ifmMDLMaterial# where # is a sequential number assigned as more materials are created.

    Each material has several parameters that may be changed in the PropertyEditor. Expand Appearance, Transform, Advanced, Misc, and ExtraAttributes as appropriate and modify accordingly or accept the defaults.
    Note: You can go back and edit an MDL material at any time through the Hypershade Editor.

    MDL materials created are saved with the Maya scene.

3.2. Using NVIDIA vMaterials (Iray for 3DS Max)

NVIDIA recommends using NVIDIA vMaterials for material assignment with Iray for 3ds Max for the best experience in Holodeck. NVIDIA's vMaterials catalog is a collection of real-world materials described in the NVIDIA Material Definition Language (MDL).

See https://www.nvidia.com/en-us/design-visualization/technologies/vmaterials/for NVIDIA Materials download information.

See https://www.irayplugins.com/iray-for-3ds-max/ for Iray for 3ds Max download information.

  1. Open 3ds Max.
  2. Go to Rendering > Render Setup to display the Render Setup Dialog.
  3. Switch the Renderer to Iray+.

  4. Select the Settings tab and scroll to the bottom of the list to see Custom M.

    Make sure that the path for MDL search includes your MDL folder under Documents. This is where vMaterials was installed.

  5. Open the Slate Material Editor by going to Rendering > Material Editor > Slate Material Editor.
  6. Click the drop arrow for the Material/Map Browser on the upper left side.
  7. Select Open Material Library.

  8. Search to ..\documents\mdl\nvidia\vMaterials\iray_for_max_libraries.
  9. Select the library you wish to add.

    The Slate Material Editor displays a list of materials.

These vMaterials can now be assigned like any other material in 3ds Max to elements in the model. When exporting to Holodeck, these materials are brought along and properly leveraged in Holodeck.

Best Practices

Material Usage

Materials can only be applied per object for Holodeck. Even though DCC tools allow for materials to be applied sub-object or per face, Holodeck does not support this.


Due to the nature of real-time rendering, hard limits on triangle counts, etc. cannot be directly dictated. Differences in materials and the amount of on-screen drawn triangles can all affect your performance.

The rendering engine in NVIDIA Holodeck is built to tackle large numbers of triangles efficiently and to reduce time required optimizing models for live VR visualization. This allows more time for designing.

NVIDIA recommends:
  • Recommended Polycount Limit = 50 million triangles
  • Recommended Object Limit = 30k objects
  • Recommended Maximum Unique Materials = 64

These limits are not mandatory, but are recommended to reach the preferred 90 Hz refresh frequency on an VR Head-Mound Displays using the current generation GPUs and display hardware.

UV requirements

UV coordinates allows the textures in your materials to properly display on your mesh’s surface. To increase productivity, NVIDIA offers two paths in Holodeck.
  • World Aligned: The first path requires no UV unwrapping since the material is mapped in a tri-planar fashion inside of the engine.
  • UV Mapped: The second path is to properly UV Unwrap meshes inside the DCC tool.

4.3.1. World-aligned

The World-Aligned Textures function serves to tile a material across the surface of an object in world space, independent of that object's size or rotation.

Upon export, you can utilize this option and ignore the need to manually unwrap meshes by selecting Enable World-Aligned Materials.

The advantages of using World-Aligned is that the materials maintain a real-world scale no matter what mesh they are applied to. This frees the end user from worrying about getting their UV scaling correct in the DCC and allows for quick turnaround of mesh changes.

Note: This technique is prone to texture stretching where vertex normals of a mesh point away from the projection axis (X,Y,Z). The figure shows that both objects are using materials that have the World-Aligned Texture function checked. You can see noticeable stretching on the object on the right. This is much harder to notice with materials that have smaller details like the object on the left.

4.3.2. UV mapped

You should UV Map assets that have textures applied to them that are unique to that specific assets or when World-Aligned does not give you the results you are looking for.

The image below shows an example of a tire's UV Map with a normal map texture applied.

Tips and Best Practices

  • Have all users, presenter, director systems join before making any changes or loading any models into the scene. This reduces the chance that changes are out of sync across all the systems.

Geometry requirements

For Holodeck to operate at maximum efficiency and at the highest visual quality, it requires that models are optimized and made as clean as possible. This section provides tips that are commonly advised to generate clean optimal models. This includes looking at normals, overlapping surfaces, performance, surface UVs and materials, combined and separated surfaces, as well as some software specific notes to help achieve results faster for new users.

5.1. Normals

Normals is a way to describe which direction vertices are facing. Assigning proper smoothing groups and proper face direction in the DCC tool helps your models look their best inside Holodeck. For example; you want to soften the edges on a mesh that are rounded and meant to be smooth. You typically want to leave hard edges on areas with near 90-degree angles. If these areas are left smooth, they can start to look very ugly.

This graphic shows an example where on the left is a screw with normals flipped and facing the wrong direction. The right shows the what the black areas from the left looks like once they are reversed and facing the correct orientation.

5.2. Z-fighting

Z-Fighting is an issue that causes parts of your model to flicker. This flicker is prevalent with coplanar polygons, where two faces occupy the same space shown in the graphic below.

5.3. Welding vertices

There are cases where a mesh that is supposed to be one continuous watertight object has been broken into multiple pieces. If left unfixed, your mesh shades poorly and you are rendering more vertices than necessary as shown in the graphic below. Weld vertices to fit the vertices together for better shading.

The red sphere on the left has un-welded vertices running down the center and is not shading as nicely as the green sphere on the right. The green sphere on the right is what the red sphere looks like after welding/merging the vertices together and smoothing normals. Both spheres are 760 polygons but because the red sphere has un-welded vertices, it has 56 more vertices to render than the green one. Now imagine multiple splits on multi-million polygon meshes. This is a huge performance saver and should not be ignored.

5.4. High quality reflections

Reflection quality deteriorates with lower polygon counts and bad normals. You can achieve a much better-looking reflection by tessellating or smoothing your mesh in your 3D package of choice.


Your model should be positioned in the scene as if the object is sitting on the ground plane at origin (0,0,0).

Generally, these issues can be fixed in the DCC before importing into Holodeck. Some import paths from other products produce varying results. If many problems are encountered, it may be best to try a different path into Maya such as with FBX.

Scene units

Holodeck’s scene units are centimeters. The smoothest path to import is to set 3ds Max or Maya to also use centimeter units. When importing a file, you can convert from the units in the file to centimeters.

Software specific tips

Attach Objects

To fix spacing in Editgeometry and AttachObjects:

On the modifier stack for your object, go to Editgeometry->AttachObjects. You can now select other objects in the viewport to attach to the current object.


On the modifier stack for your object, go to Edit Geometry->Tesselate in combination with Edit Geometry->MSmooth.

6.3. Object and Polycount

To see the number of objects in your scene and the total number of polygons of those objects:

  1. Go to Views > Viewport Configuration.
  2. Select the Statistics tab.
  3. Select Total + Selection.
  4. ShowStatistics in Active View.

Maya specific operations

Combine objects

  1. Left-click the first object to be combined.
  2. Hold Shift and left-click each additional object you wish to combine.
  3. Go to Mesh > Combine.

    Now, when you select an object, they are all selected as one object.

Merge vertices

  1. Hold the right-mouse button to bring up the marking menu and select Vertex.
  2. Select the area of your mesh that has unwelded vertices.
  3. Go to Edit Mesh > Merge.

    This displays a Distance Threshold box with a number value of 0.01. In most cases this value does the job. Be sure to check that the desired vertices have been welded and adjust accordingly.

7.3. Tessellation

To tessellate a mesh in Maya, go to Mesh > Smooth. A dialog box displays with a number value. This is the number of divisions you can add to the mesh. The higher the number of divisions, the more you tessellate your mesh. Increases divisions by 1 quadruple the polygon count of a quad-based mesh.

7.4. Object and Polycount

To see the number of objects in your scene and the total number of polygons of those objects:

  1. Go to Views > Viewport Configuration.
  2. Select the Statistics tab.
  3. Select Total + Selection
  4. Select Show Statistics in Active View.


The Holotable is a level that consists of a table with specialized controls which enable you to view and interact with scale models. The graphic below shows the Holotable displaying the model of a building with some layers turned off to reveal the interior.

To use the Holotable:

  • Click the Start icon on the Holotable to display the Holotable main menu. Your Steam name or your machine name will be displayed in the top right of the main menu. This indicates who has control of the Holotable. Only one person can interact with the holotable at a time. Pressing the X on the control panel relinquishes control so that another user can take control.
  • Table tab - select the folder tab to select an asset. Use the controls on the Table tab to rotate, translate, move up or down.

  • View tab - change visibility of layer of the model.
  • Sun Position tab - adjust the angle of sun represented on the model if available.

  • Clip tab - select sections of the model for viewing. See Clipping tool for more details. Click the Beacon icon to create teleport targets within the model to view from the perspective of that position. See the Beacon tool for more details on using the beacons and the Beacon manager.

  • Click the Scale icon to adjust your model to a different size ratio based on the actual size of the object.
  • Select the Beacon tool, click the trigger on the hand tool and point to an area where you want to place the beacon.
  • Select Full Scale to teleport into the model.
  • On the left wrist menu, click the Return to Holotable icon to return to the holotable room.

Smart Watch

The Smart Watch is located on the left wrist of the avatar and enables access to various tools and functions from within the VR world.

Press the left menu button on the controller (Vive) or press the left menu button in the thumbstick (Oculus) to launch the Smart Watch. This gives you access to common settings and options.

Smart Watch menu

Smart Watch menu options:

  • Settings: Allows user to modify settings for graphics, audio, workspace, and host options.
  • Contacts: Displays a list of app players and friends list. They must have Steam accounts and users in Holodeck.
  • Beacon Manager: Launch the Beacon Manager.
  • Change Level: In certain maps (PanoRoom and DayNight), this lets you change the background.
  • Shadowplay: If you have the NVIDIA GeForce Experience installed, press this button to toggle on/off video recording using Shadowplay.
  • Avatar Customizer: Allows you to customize the avatar when using Holodeck in VR mode.
  • Holotable: Launch or return to the Holotable.
  • Load/Save Scene: Launch a dialog to load save or load the scene.
  • Browser: Launches the Holodeck web browser.
  • Reset Partitioned Mesh: Resets Rotate / Translation / Scale / Explosion state / Material changes of models/meshes in the scene.
  • Go Home: Exits the session, removing guests, and brings you back to the lobby. No changes are saved.

Web browser tool

Web browser tool - a private browser for your viewing only. Other users in the session will not be able to see or hear the content in the browser windows that you open. In order to share a link with them, click the Cloud icon to automatically create a new window in the other users' browser with the URL that you are viewing.

Like a typical web browser, you can:
  • Perform a web search.
  • Make a Google hangouts call.
  • View photos, videos and other rich media, including VR content and 3D models.

Use these browser buttons to:

  • Display the Keyboard
  • Go back one page.
  • Forward one page.
  • Reload the current page.
  • Share the current page with other users in the session.

Maps and rooms

When creating the session, the host first selects the Map they want to use. Several options are available.


Users can cycle the environment in the Settings menu or pressing E on the keyboard.


Users can cycle the environment in the Settings menu or pressing E on the keyboard.

Presenter and Director modes

The Director/Presenter mode can be used to create a new actor in the session that is a camera. This camera can be controlled using the keyboard. This mode can be used for presentations to people who are not in VR.

Several modes are possible:

  1. Users - all PCs are either Desktop or VR users - screens will show the HMD view.

  2. Users and Presenter - In addition to the above, 1 PC is a camera and the screen will display a “3rd person” view of the scene.

  3. Users, Presenter, and Director - In addition to the above, a separate PC is a Director which can select different predefined camera viewports to send to the Presenter screen.

Each of these (users, presenter, director) is a separate PC with the minimum hardware requirements for Holodeck. Each system needs to be connected to Steam, and each of these Steam accounts need to be friends with each other - this requires verified steam accounts.

Systems that will be used in Presenter or Director modes should not have an HMD attached or be in Desktop mode

Press C to change the mode of a system from User to Presenter.

Press Space to change the mode of a system from Presenter to Director.

Click on “Exit UI” to exit Director mode.


Exporting to Holodeck

Holodeck uses an NVIDIA-based format that is a combination of organized meshes and material assignments with accompanying textures. Exporting from a DCC package to Holodeck results in two files (.CSF – geometry, and .JSON – material assignment) and a textures folder containing any texture image files (usually .jpg).

Maya exports to Holodeck

To export files from Maya:

  1. Go to File > ExportAll or File > ExportSelected.
  2. Select the NVIDIAHolodeck format during export.

  • General Options
    • Only Export Visible Objects - Any object not currently displayed in Maya is ignored.
    • Enable World-Aligned Materials – Changes the vMaterial to utilize the world-aligned material function.
    • Holodeck Export Location - This is a blank box intended for the user to copy and paste the file path leading to User Content inside the Holodeck project folder for import. If your .CSF and corresponding .JSON file are in this folder, you can bring your assets into Holodeck using the builder tool.
  • MDL Options
    • Package Textures - Exports textures that are replaced in vMaterials to the Texture folder
    • Texture resolution X/Y - Resolution in pixels of the textures for the MDL materials
    Note: When the Export button is pressed, a progress bar will appear. The export process takes several minutes to complete. Once complete, the .CSF and .JSON files are saved to the export location.

Workflow without Iray /vMaterials

If you're using Maya, and don’t have Iray and the vMaterials library installed, you can still apply Maya’s default shaders and add custom textures of your own.

  1. Import your model or create a model to add to Holodeck by using Maya’s modeling tools.
  2. UV unwrap the model if you’re applying textures or if you plan to use non-world aligned textures inside Holodeck.
  3. Apply one of Maya’s default materials lambert, blinn, or phong.
  4. Export using the Holodeck Export plugin.

Exporter features include:

  • Only Export Visible Objects - Check this box to export every visible object in your scene without having to select them first. This is useful for very large scenes.
  • Enable World-Aligned Materials - Check this box to enable the exporter to utilize the world-aligned material function for every material in your scene.
  • Extra Rotation- This option enables you to select a radial button for an axis to rotate your scene to during export.
  • Rotation in Degrees - Uses the axis you chose for Extra Rotation and rotates it an amount equal to the number entered in the blank field to the right. If you don’t want to rotate your scene, leave the value at zero for x,y, or z.
  • Holodeck Export Location - The Holodeck Export Location provides the exporter with the directory to send your files. Once you enter a location, this field retains this value until it's changed. This ensures that your files are saved to the same directory everytime without having to enter this information into the plugin every time you export.
  • Package Textures - This option applies to MDL. If you replace a texture in one of the vMaterials, that texture will be placed into the Texture folder on export if this option is checked.

Use NVIDIA vMaterials (Iray for Maya)

For the best experience with Holodeck, NVIDIA recommends using the NVIDIA vMaterials for material assignment with Iray for Maya. NVIDIA's vMaterials catalog is a collection of real-world materials described in the NVIDIA Material Definition Language (MDL). They're designed and verified by NVIDIA Material Specialists for accuracy, control, and consistency, giving you a quick and reliable way to add realistic materials to your designs.

Maya Default Material Workflow

If you're working in Maya without Iray and the vMaterials library installed, you can still apply Maya’s default materials. The standard workflow from Maya into Holodeck is pretty straightforward.

  1. Import your model or create whatever it is that you wish to add to Holodeck by using Maya’s modeling tools.
  2. UV unwrap your model if you’re applying textures or plan to use non-world aligned textures inside Holodeck.
  3. Apply one of Maya’s default materials. (lambert, blinn, phong).
  4. Export using the Holodeck Export Plugin.

Default Materials and parameters supported

This is a list of the shaders supported by the Maya Holodeck Export plugin and Holodeck. The parameters can be modified for export. A limited number of material parameters are currently supported. Export results may very with material type.

  • BaseColor
  • Diffuse
  • Incandescence
  • BaseColor
  • Incandescence
  • Eccentricity
  • Specular Rolloff
  • Diffuse
  • BaseColor
  • Incandescence
  • Diffuse
  • Cosine Power


Maya’s Display Layers can be used to toggle visibility when using the Holotable. To use this function, assign your mesh or meshes to one or more Display Layers in Maya.

When you export, your layers and layer names will be available to you on the Holotable.

For detailed information on using layers see, Autodesk Maya Display Layers at: https://knowledge.autodesk.com/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2018/ENU/Maya-Basics/files/GUID-8415A1A6-7798-43F5-9D64-783BD0642071-htm.html

3ds Max export to Holodeck

To export files in 3ds Max, go to File->Export->Export and select NVIDIA Holodeck to use the Save as type option.

Enter a filename and click Save. The following window displays more NVIDIA Holodeck export options.

General Options

  • Build information displays general information and date.
  • Keep .mi File - This option’s default is set to off. This option is there for debugging purposes.
Note: When Export is clicked, the dialog box is closed, and the export process starts in the background. The export process may take several minutes for large models. Once complete, the .CSF and .JSON files are saved to the export location.

Material Options

  • Use NVIDIA vMaterials - Enable this when using NVIDIA vMaterials Library. This option requires the Iray for 3ds Max plugin to be installed.
  • Use MDL Conversion (VRay, Standard) - Enable this when using V-Ray Materials or Standard Materials. This option requires V-Ray for 3ds Max plugin to be installed. Please note that a limited amount of material parameters are currently supported and export results may vary on material type.
  • Enable World-Aligned Materials - Enable this option to use the world-aligned material function for all materials in the scene.
  • Package Textures - Enable this option to include custom bitmaps for materials during export.
  • Keep .mi file for debug - This is used for debug purposes and is disabled by default.

Using the MDL Conversion Workflow (VRay, Standard)

Support for custom 3ds Max materials for use with Holodeck is limited to V-Ray Materials, or 3ds Max Standard materials. Please note that V-Ray for 3ds Max is required for this option. This workflow allows use of custom texture map diffuse, reflection, refraction, and normal bump.

See https://www.chaosgroup.com/vray/3ds-max for V-Ray for 3ds Max download information.

Supported Material Parameters

A limited amount of material parameters is currently supported. Export results may vary depending on the material type.

  • NVIDIA vMaterials
    • Most parameter adjustments
  • VRayMtl
    • Diffuse Color
    • Diffuse Map
    • Reflect Color
    • Reflect Map
    • Bump Map (Normal map)
  • Standard
    • Diffuse Color
    • Diffuse Map
    • Bump Map (Normal map)

3ds Max Layers

The 3ds Max Layer Explorer can be used to toggle visibility when using the Holotable. When you export, your layers and layer names will be available to you on the Holotable.

For more information on the 3ds Max Layer Explorer see:


Solidworks Visualize export to Holodeck

The Holodeck export feature is currently available on Solidworks Visualize 2019 beta. The feature will be available in the production version when it is released.

Holodeck works best with geometry that uses UV Texture Mapping to correctly apply textures. This ensures the texture transforms in Solidworks Visualize match the textures available in Holodeck.

Note: The export feature works only with appearances and materials available in Solidworks Visualize.
  1. Go to File > Export.
  2. Select Export to NVIDIA Holodeck Solidworks Visualize.
    Note: This feature works only with visible geometry.
  3. Enter a name for the file.
  4. Click Save.

  5. Open the Solidworks Visualize Converter.
  6. Drag and drop the exported .mi file into the converter window.

Solidworks to Holodeck conversion options:

  • Enable World-aligned materials
  • Package textures - This is the default option and exports bitmaps used in the scene.
  • Remove source.mi - deletes the .mi file being converted.
  • Holodeck Export Location - Copy and paste the file path to the your content in the Holodeck project import folder. If your .CSF and corresponding .JSON file are in this folder, you’ll be able to bring your assets into Holodeck using the Holodeck Builder tool.
    Note: The export process starts in the background immediately after you drop the mi file onto the window. The export process might take several minutes to complete. A message is displayed when the conversion is complete. The .CSF and .JSON files are exported to the same folder the .mi files where the saved in step 1 by default.

Holodeck Asset Converter Utility

The Holodeck Asset Converter allows for conversion of FBX and OBJ formats to the Holodeck Partition Mesh format (.CSF). This provides a quick way to review high polygon scenes without materials.


  • General: Drag and drop a FBX file or OBJ file into the window to begin the conversion process.
  • Target Up Axis: Select x, y, z, as the target up axis. This will vary depending on source application. Y is the default.
  • Smoothing: Adjust the amount of smoothing for surfaces. 0 is default.
  • Rescale Units: Allows for rescaling of the scene to match Holodeck scene units in CM. For example:
    • Revit export to FBX is always in Feet. Rescale should be set to = 30.48.
    • Rhino export to OBJ should be set to CM. Rescale should be set to = 1.
  • General guidelines
    • Feet to CM = 30.48
    • Inches to CM = 2.54
  • Holodeck Export Location: Set the file browser path to where the export files will be placed. The exported files will be placed in a folder with the same name as the FBX or OBJ file with the extension .hldkmodel.


Import directory

Files will be imported here.

..\NVIDIA Project Holodeck\ProjectHolodeck\Content\UserContent\

If your PC with VR and Holodeck is not the same one as your system with DCC installed, it might be convenient to map this folder as a network share on LAN. This enables you to export Holodeck ready files directly from your DCC app into the folder that Holodeck reads by default.

Control mapping and functionality HTC Vive

  • Select / Interact - Trigger
  • Teleport – On either hand, hold down the down direction of the Dpad to display a teleport beam extending out of your finger. Point the teleport target to where you want to go.
    Warning: Pressing too far towards the edge of the Dpad does not register as a button press on Vive controllers. Press closer up to the center.
  • While still holding down the down direction of the Dpad, twist your wrist (like twisting a screwdriver) to change the direction that you will face when you land. Release to teleport.
  • Twist your wrist (like you’re twisting a screwdriver) to change direction. Release to teleport.
  • Tools menu - Right menu button (button above the Dpad/Touchpad). Use your left or right Trigger to select a tool. Press the tool menu button again to close the Tools menu.
  • Unequip a tool from your hand
  • Smartwatch Settings menu - Left menu button (button above the Dpad/Touchpad). Press the button again to close the Smartwatch menu.
  • Grabbing: When no tool is equipped, your hands are free to grab many things in the World. Pressing the grip buttons also grabs objects or parts of objects in the world capable of being handled by the grip function.
    • Main Action: Grabs an asset. Pull the trigger to grab.
    • Two Handed Actions: If you grab something with both hands and pull apart, it will scale up automatically. This only works if no tools are equipped.
  • Point at an object and use the Trigger to go to the Asset Context tool Menu (ACM)properties tab for the asset. The properties tab contains:
    • Transform tool - rotate the objects.Use the snapping option to rotate to a preset angle.
    • Turn off grabbing.
    • Explode the object - separate and expand the pieces of the object.
    • Scale ratios - Enlarge or reduce the size of the object based on a ratio to the actual object.
    • Reset to saved position.
    • Material Slots editor - change the material used on the object and launches the Material Browser.
    • Teleport on or off.
    • Delete from the ACM.
  • Go back to lobby - Smartwatch > Go Home or ‘Esc’ on Keyboard

Oculus Rift

  • Select / Interact - Trigger
  • Teleport – Hold down ‘B’. Twist your wrist (like you’re twisting a screwdriver) to change direction. Release to teleport.
  • Tools menu – Press right thumb stick in. Press it again to close the Tools menu. Use your left or tight Trigger to select a tool.
  • Clear a tool from your hand – Grip buttons (use middle or ring fingers)
  • Smartwatch Settings menu – Press left thumb stick in
  • Grabbing: When no tool is equipped, your hands are free to grab many things in the world.
    • Main Action: Grabs an asset. Pull the trigger to grab.
    • Two Handed Actions: If you grab something with both hands and pull apart, it will scale it automatically. This only works if no tools are equipped.
  • Go back to lobby - Smartwatch > Go Home or Esc on Keyboard

User Calibration

When you launch Holodeck, you will see the Calibration screen. This calibrates your in-app avatar’s height and arm length according to your actual height. It is important that you are in a standing position when performing calibration.

Stand up and point your controller at the target and pull the trigger. If you skipped this screen or need to re-calibrate the size of your avatar at any time in the application, launch the left-hand Smart watch menu, Avatar customizer and select Calibrate.


Creating and Hosting a Session

  1. The user who starts a session is the host and is the only one who can invite users. If the host exits the session, the session is immediately stopped, returning all guests to their respective lobbies.
  2. Each system in the session has its own instance of Holodeck. Each user is in the Lobby with a main menu.

  3. Select Create.
  4. Select Private or Public session.
    • Public sessions are visible to anyone with Holodeck and anyone can join your session.
    • Private sessions are not publicly visible, and guests can only join if invited by the host (see Private Sessions and Friends)
  5. Next, select which map the session should start with. See Maps and Rooms below for more details about options available.

  6. The Host will then load into this map. The host has the option to create and require a 4-digit code for access.
    • The host has created an access code for entry.

Joining a public session as a guest

Once Holodeck has been launched on each system, each system has its own instance of Holodeck.

  1. Wait for a Host to start a session if not already started.
  2. Select Join when the session is launched. A list of publicly available sessions will be listed.
  3. Select the session to join.
  4. If the Host leaves the session, it will end, returning all guests back to their lobbies.

Private sessions and friends

If you are in LAN mode, then Steam friends are not required.

If you are using Holodeck through Steam, you must be friends with a user on Steam to find them and have the application launched. If you are not able to add a specific user as a friend, ensure you have a verified Steam account. See more details from on Valve’s support website: https://support.steampowered.com/kb_article.php?ref=3330-IAGK-7663 here.

Here's how the Steam lobby works with Holodeck:
  • The Host creates a session and then invites a Steam friend that is also running Holodeck. Then the friend must accept the invite to join your session.
  • After clicking Join > Friends, you will be able to see any Private sessions that any of your Steam Friends have created.

Directions for accepting a Steam invite in VR (when both parties are in Holodeck):

  1. Have friend send invite through the contacts list (on the Left-hand Smartwatch)
  2. If you look quickly in VR, you'll see the invite pop up. If you hit the System Menu button immediately you'll skip straight to step 5.

  3. Push the System Menu button on the VR Controller and select the Chat window.

  4. Select the friend that sent the invite.

  5. Accept the invite.

Note: There are a few instances where some networks will not allow a client to join a host on another network. We are working on this issue and do not know what network settings cause this.

How to Invite Steam friends that are not yet in Holodeck to join your session.

  1. Start Holodeck in VR and create a private session.
  2. Take off your headset (without exiting Holodeck), then on your desktop, go to your Steam friends list (alt+tab out of Holodeck).
  3. Select a Steam friend and click the "Invite to Game" option. Then put on your headset again and wait for your guest to accept the invite.

  4. From their Steam Friends list the invited friend can accept the invitation by going to their chat window and accepting the invite to "play".

  5. This will launch Holodeck for the guest and they will automatically join the session.


Tools are accessed using the Tools menu. Press the right menu button on the controller (Vive) or press the right menu button on the thumbstick (Oculus) to launch the Tool Menu. Just tap the tool you want to use or, you can point and click the icon of the tool you want. You can use either hand to select the tool.

12.1. Draw tool

The draw tool lets you get in the world make annotations, comments and draw new concepts. Drawings can be made in various colors to indicate different types of comments, notes from different users, or just indicate different ideas. Drawings and whiteboards are scalable and can be grabbed.

Following are the various modes of the Draw tool:

Draw: Allows user to draw lines in the free space.
Erase: Allows user to erase entire line objects in the scene.
  • Whiteboard: Allows users to spawn and draw on a whiteboard. This whiteboard can be resized. Do this by clearing your drawing tool (press the tool button twice). Then with your free hands, grab two sides and pull apart to resize.
    Note: be careful not to try and grab the top right corner of the whiteboard as that could delete the whiteboard.
  • Whiteboard anchor: anchor to a specific point.
  • Capture: Capture what you drew on the whiteboard.
  • Capture the whiteboard scene: capture the whiteboard overlaid on the object it is anchored to. Captures are saved on your PC under the Videos folder.
Surface draw: Allows users to draw directly on surfaces with the aid of an arrow pointer. If you move an object with an attached drawing, the drawing will move as well.

12.2. Measure tool

The Measure tool allows you to measure distances between two points. The Measure tool has two modes:

  1. The Ruler lets you trace a straight line between two points and indicates the distance on the line.
  2. The Laser can give you quick measurements of things that are a greater distance apart.

Following are the various modes of the Measure tool:
Ruler: Allows user to draw straight 3D measure lines in the scene.
Laser Measure: Allows user to place a laser to measure longer distances in the scene.
Erase: Allows users to erase laser and ruler lines in the scene.

You have the option to change the unit of measure. Go to Settings >workspace > change metric to centimeters, millimeters, or inches.

Note: This eraser tool will also erase annotations made with the Draw tool.

Builder tool

After exporting a model from 3ds Max/Maya using the instructions in the previous section, the data will be in loose CSF (our export format for Holodeck). The tools should automatically load MDLs on the assets if they are assigned properly from 3ds Max/Maya.

The files live here on the computer, under the default Holodeck installation folder:

..\Steam\steamapps\common\NVIDIA Project Holodeck\ProjectHolodeck\Content\UserContent\

Button functionality for the Builder tool:

Dpad Left:
  • In Place and Z Place Mode, rotate mesh in 45-degree increments to the left before placing
  • In Free Place mode makes mesh come closer to user.
Dpad Right:
  • In Place and Z Place Mode, rotate mesh in 45-degree increments to the left before placing
  • In Free Place mode makes mesh go further away to user.

Right Grip: Allows user to change modes.

Following are the various modes of the Builder tool:
Place: Allows the user to place a mesh, restricted to the floor/ceiling.
Z Place: Allows user to place an object on the floor then move it vertically on the z axis by holding trigger and raising the pointer.
Free Place: Allows user to place an object freely anywhere in the scene.
Change: Allows users to change the object selected in the world with the currently selected object in the asset browser
Delete: Allows users to remove an object from the scene.

Manipulator tool

The Manipulator Tool allows a user to modify certain aspects of Holodeck partitioned meshes. When spawned, the tool automatically finds the closest partitioned mesh as a default.

Button functionality for the Manipulator tool:

  • Trigger - Use trigger to interact.
  • Dpad Up - Allows user to change modes.
  • Right Grip
    • Reset in Explode, Interactive Explode, and Rotate. Pressing it resets the selected object's transform, explode state, and grabbed part state.
    • In Part Grab mode only, the part group overlapped by the sphere is reset by Dpad Up
  • Dpad Left
    • Choose a different partitioned mesh in any mode except for Part Grab.
    • In Part Grab mode makes the part smaller.
  • Dpad Right
    • In Part Grab mode makes the part larger.
Following are the various modes of the Manipulator tool:
  • Exploded View - Expands each part of the model from its pivot point to allow users to see each individual part. In Explode pulling the trigger toggles the explode state of the object.
  • ExplodeIA (Interactive Explode) - The same as standard Explode except this allows the user to control the expand/contract action interactively. In Interactive Explode the amount of explosion is set by the distance between user's hands.
  • Rotate - The object is rotated by pulling the trigger and moving the controller left or right.
  • Part Grab - A sphere appears which can be resized by Dpad Left and Right. When the sphere overlaps the boundaries of a partitioned mesh part or collection of parts, the part(s) may be grabbed by pulling the trigger. The new mesh created will behave as if it were a new partitioned mesh.
  • Single Part Grab – Use a pointer to more precisely select a single part from the model. Select the part by pulling the trigger. The new mesh created will behave as if it were a new partitioned mesh.

12.5. Material tool

Apply new materials and modify existing material parameters on your imported assets.

  • Point at an object and pull the trigger to sample the material on the object you are pointing at.
  • This material is loaded into the tool. The panel updates with this materials parameters. You can then change parameters on the selected material.
  • You can also replace the material entirely. Select the Library tab, and a new panel will open up on the left with multiple categories of materials.

    Check or uncheck different categories to have those show up on the list of materials on the panel on the right.

    Selecting a new material will temporarily preview it on the object.
  • Apply the material change by selecting the Check at the bottom of the panel. This replicates the material change across all other users.
  • Press the X at the bottom of the screen to cancel the material changes.
  • Press the star (Favorites) button to save a selected material to your palettes.
  • Palettes - Select Palette > Favorites or click the New Custom Palette to create a palette of materials you use frequently. Select Custom Palette # > Edit >Add to Custom Palette # and select a material to add to the custom palette. You can change the color of the material by selecting a color from the color palette. Click the check at the bottom of the Color palette menu to replicate the color to allow others to be able to see it.

Dpad Up - To apply this material to a different part, point at the new part and press Up.

For more information see: Material Slots.

Edit tab

Color Palette

Library tab

Selecting the Library tab will change the panel to display the Material Library, an extensive collision of materials, built into Holodeck. The Library view has a grid display of thumbnails images for the materials. An additional panel appears to the left of the main panel and displays a checkbox list of material types that filter while materials will appear on the grid.

Material Grid

This is a grid display of materials from the Library. When you select one of the materials on the grid, that material will be temporarily previewed on the target surface for the user to see, but this preview won’t be visible to other users.

  • Accept: To apply the selected material to the target surface, and be visible to everyone, the user must confirm the change by pressing Accept. The Material Tool panel will also return to the Edit tab after pressing Accept.
  • Cancel: Removes any preview from the target surface and turns the Material Tool panel to the Edit tab.

Material Tags

The Material tag is a sub-panel that appears as a companion to the Material Library. It provides a list of material categories for filtering which materials will appear on the Material Grid.
  • [Material Tag Name]: Toggle on/off that particular material tag category.
  • All Tags: Toggle on/off all material tags.
  • World Aligned: Toggle on/off showing World Aligned versions of materials in the library.


The Material Tool panel’s Palette tab provides an interface for viewing and managing palettes. Selecting the Palette tab on the panel will switch the hand tool to Palette mode. Using the mode switch input on the dominant hand’s VR controller or pressing left ALT on the keyboard will also toggle between Palette mode and normal Edit mode – the UI panel will switch to Palette view or Edit view accordingly, matching the hand tool’s mode.

Material Palettes

The Material Palette feature allows you to save several materials so they can be quickly recalled for future use. A palette contains up to 15 materials and there can be multiple palettes.
  • The Favorites Palette is a default palette that all users start with and is represented by a star icon. Additional palettes, called Custom Palettes, can be added. The Favorites Palette is saved in the UserMatFavorites.sav file and all Custom Palettes are saved in the UserMatCustomPalettes.sav file – these files are not locked to a specific client or account so these save files can be shared with other users by manually copied them onto different clients. Since Custom Palettes can be shared, they are useful for providing a common set of standardized materials that team members can all use together.
  • When the material tool is loaded, the Favorites Palette will always be the current palette by default.
  • Using Prev and Next on the hand tool changes which material from the current palette is loaded onto the hand tool.

Palette Material Grid

The Palette view will start with showing a grid list of the materials stored in the currently selected palette. You can directly select an individual material from the palette material grid to load it onto the hand tool as well. The left and right arrows on a selected material will shift the order of appearance for the material when using Prev and Next.

  • [Current Palette Name]: Switches the Palette tab’s view to the Palette List.
  • Apply to Target: Applies the currently selected material in the palette onto the surface last sampled by the Material Tool.
  • Delete: Deletes the currently selected material from the palette.
  • Left Arrow: Shifts the currently selected material left in the palette order.
  • Right Arrow: Shift the currently selected material right in the palette order.

Palette list

The Palette list is where you can manage all palettes.

  • Select Palette: Switches back to the Palette Material Grid.
  • [Palette Name]: Selects the palette as the current palette and switches back to the Palette Material Grid.
  • Delete: Permanently deletes the palette.
    Note: The Favorites Palette cannot be deleted.
  • New Custom Palette: Creates a new Custom Palette. Each Custom Palette’s name is automatically generated with an incremented number value.

12.6. Clipping tool

Allows you to pass a clipping volume through a model to see through it. You can resize the clipping volume by grabbing it with both hands. The shape of the volume can be a sphere or a cube.

Acceleration is available to move the scale up and down. Bounds can be used to limit the size of the volume. You can also use two hands to grab the clipping volume and shrink or expand it. Only one clipping volume can be active at a time. When a second user creates a clipping volume, the first one will disappear.

12.7. Camera tool

The Camera tool enables you to take pictures of the scene. You can have the camera facing outwards toward your model or towards your avatar for Selfie mode. The Camera tool saves all images and video in C:\users\<username>\videos\NVIDIA Holodeck\ by default.

  • DPad Up: Change mode – forward or Selfie
  • DPad Left: Zoom out
  • DPad Right : Zoom in
  • Trigger: Take picture. The pictures land in your user profile's Videos folder.
  • Ansel 360 Capture: Capture the 360 degree view of the scene at the time of the capture.
  • Ansel 2D Capture: Capture the view shown on your desktop screen.

Part grab tool

The part grab tool allows you to grab parts of your drawing or mesh.

The modes of the Part grab tool include:
  • Grab Single Part - Select and grab a specific part of a model.
  • Move Single Part - Enables accurate manipulation a part of the mesh. You can constrain the movement of the part to a certain axis or plane.
  • Grab Sphere - Use a selection sphere to grab several parts of the mesh at once. Hold Left and Right on the DPad to change the size of the selection sphere.

Beacon tool

  • Select the Beacon tool, click the trigger on the hand tool and point to an area where you want to place the beacon. Beacons will automatically become invisible soon after you place them, unless this setting is checked.
  • Move the avatar around at the position of the beacon. A small insert of the view from the point of view of the beacon is displayed.
  • Click the Beacon Manager icon on the Smart Watch to access the Beacon Manager to select the view and look forward to see the view from the position of the beacon.
    • Click the group icon to teleport every user in the session to that beacon location.

Beacon Manager

The Beacon Manager enables you to have more control over the Beacon Tool.

Press the Beacon Manager icon on the Smart Watch to launch the Beacon Manager panel. The Beacon Manager provides management for all existing beacons that have been activated using the Beacon Tool. Each beacon is listed with these options:

  • Beacon View button: Provides a camera view image from the beacon’s location. Clicking this button teleports you to that beacon’s location.
  • Beacon Stats: Provides basic statistics for the beacon.
  • Group Teleport button: Teleports all players in the session to the beacon’s location.
  • Delete button: Deletes the Beacon.
  • Toggle Beacon Refresh: Select to update all the camera view images on all the beacons.
  • Show Beacons: Select to display an avatar model to represent the location of each beacon. Beacons will automatically become invisible soon after you place them, unless this setting is checked.

Avatar customizer

The Avatar Customizer allows you to modify certain elements of your avatar. Currently this information is not saved between sessions.

Following are the various modes of the Avatar Customizer tool:

  • Auto Calibrate - If there is a need to recalibrate your avatar to your physical size, then enter the customizer from the Smart Watch, stand up straight, and press the Auto Calibrate Icon. Your body proportions (most noticeably your arm length) are estimated based on your height.
  • Gender - Press the male or female icon to change your avatar’s gender.
  • Choose - This is a drop-down menu that provides color and texture options depending on the option. You can change color for Primary, Secondary, Face, Metal, and Stencils using the provided color swatches.
  • Stencil Option - When the stencil option is chosen you can choose between various stencils. To remove a stencil, with the stencil option chosen, press the Trashcan icon.

Control mapping for Director and Presenter

  • Keyboard and Mouse (presenter)
    • Select with left hand - left mouse button click
    • Select with right hand - right mouse button click
    • Navigation - W,A,S,D to move forward, left, back, or right, respectively
    • Elevation - Q,E to move up or down, respectively
    • Go back to the lobby / main menu - Esc
    • [ - left menu (settings)
    • ] - right menu (tools)
  • Mouse (director)
    • Click each viewport to change the view that is seen on the Presenter system.
    • Click Exit UI to exit Director mode.

Asset context menu

To access the Asset Context Menu, point at the object by pressing and holding Up on the Dpad and pull the trigger at the same time. The menu will be displayed with the item name at the top and the tools described below. This graphic depicts selecting the Reset tool.

  • Transform: Displays a flyout list for selecting different transform properties on the mesh. Each will spawn a separate tool mode for adjusting a specific transform property - Translation, Rotation, and Scale.
    • - Translation: Use the snap option to adjust the mesh translation at preset distance increments.
    • - Rotation: Use the snap option to adjust the mesh rotation at present angle increments.
    • - Scale: Use individual axes on the tool to apply non-uniform scaling. Use the center of the tool to apply uniform scaling.

    • A tool will appear at the center of the mesh with controls for making adjustments to the transform.
      • There is a button to toggle between World (W) and Local (L) coordinates.
      • There is a button to toggle On/Off snapping to fixed increments while making changes via the tool.
  • Grab State: Toggles On/Off allowing users to grab the mesh.
    • Grabbable
    • Not Grabbable
  • Explode: Toggles On/Off the ‘Explode’ state for the mesh.
  • Reset: Resets the mesh back to its default state.
  • Material Slots: Opens a separate interface that lists all of the material slots on the mesh. From there, the material assignments on individual slots can be changed, using materials from the Material Library.
  • Teleport State: Toggles On/Off allowing users to teleport onto the mesh.
    • Teleportable - Teleport on top of the mesh. E.g,. You can teleport onto the second floor or roof of a building. You will not be able to teleport through walls.
    • Not Teleportable - Teleport through the mesh and not be able to stand on it.
  • Delete: Deletes the mesh from the level

Material Slots

The Material Slots interface starts with a list of all material slots on the mesh.

Each list entry includes the material slot index, the name of the material slot, and name of the material currently assigned to that slot. Upon selecting a particular material slot on the list, a Material Library panel will appear on the left of the workspace, similar to the Material Library panel that also appears for the Material Tool. From there, you can select a new material to assign to the currently selected material slot.


The Workspace is a ring that appears around the user and serves as a docking point for user interface panels.

When interface panels appear, most will automatically place themselves in a left, right, or center (forward) dock location on the workspace. After an interface panel appears in a workspace dock, the user can grab that panel to manually adjust its position and rotation – upon releasing the panel, it will remain in that relative position and rotation. Other panels that appear in that same dock will also use that adjusted position and rotation.

Follow Behavior

By default, the Workspace ring will attempt to follow the user’s translation and rotation. For translation, the Workspace will remain in place until the user moves past a threshold distance, which triggers the workspace to begin moving toward the user in order to keep up. If the user teleports, the workspace will teleport as well. For rotation, the workspace will remain in its current orientation until the user rotates past a threshold angle, which triggers the workspace to being rotating as well. The threshold distance and threshold angle can be configured by adjusting the UI Ring Follow Distance and UI Ring Follow Angle sliders on the Workspace Tab of the Settings menu. The follow behavior can be toggled on/off using the “UI Ring Follows You” checkbox on that same tab as well as the Follow button on the Workspace Control Panel.

Workspace control panel

There is a small control panel mounted on the front of the workspace’s ring.

Click the icons on the control panel to perform these functions:

Anchor Workspace: Toggle on/off so the Workspace follows the user. If On, the Workspace will rotate to when the user’s orientation rotates past a threshold angle and will move when the user’s position moves past a threshold distance. These threshold values can be changed on the Workspace tab for the Settings panel. The workspace will still always teleport when the user teleports.
Save Current Settings: Saves the current height of the Workspace UI ring, the follow threshold values, and adjustments made to specific interface dock locations.
Reload Saved Settings: Reloads the last-saved settings onto the workspace. This reverts changes to the workspace that occurred since the workspace was last saved.
Reset to Default Settings: Resets the workspace to use the original default settings. This overwrites any existing saved changes and replaces the existing workspace save file. You can also reset to default settings by pressing Default on the Workspace tab of the Settings Panel.

Workflow examples

Simple review

When doing a simple review of geometry, the primary workflow is related to simple geometry preparation. A large benefit to Holodeck is the sheer complexity of the asset you can view. There are a few high-level ideas that can be explained in brief below.

Prepare the geometry for better rendering:

  • Welding is always recommended per object.
  • Object Merging

    Merging assets you do not want separated is recommended. For example, if your screw comes in with various pieces, you want them merged so you can grab it in as a single mesh

  • Only UV objects that require specific textures

At this point, your mesh is ready for import. Many of the operations needed to hit maximum quality can be avoided.

Thank you

For questions, visit the NVIDIA Holodeck Forums – you will have access if you applied and were admitted to the Early Access program. Alternatively, email us at Holodeck@nvidia.com.





NVIDIA makes no representation or warranty that the product described in this guide will be suitable for any specified use without further testing or modification. Testing of all parameters of each product is not necessarily performed by NVIDIA. It is customer’s sole responsibility to ensure the product is suitable and fit for the application planned by customer and to do the necessary testing for the application in order to avoid a default of the application or the product. Weaknesses in customer’s product designs may affect the quality and reliability of the NVIDIA product and may result in additional or different conditions and/or requirements beyond those contained in this guide. NVIDIA does not accept any liability related to any default, damage, costs or problem which may be based on or attributable to: (i) the use of the NVIDIA product in any manner that is contrary to this guide, or (ii) customer product designs.

Other than the right for customer to use the information in this guide with the product, no other license, either expressed or implied, is hereby granted by NVIDIA under this guide. Reproduction of information in this guide is permissible only if reproduction is approved by NVIDIA in writing, is reproduced without alteration, and is accompanied by all associated conditions, limitations, and notices.

Third-Party Software

This NVIDIA product contains third party software that is made available under their respective software licenses.

This product includes Neural Networks trained with data courtesy of the University of Edinburgh: Daniel Holden, Taku Komura, and Jun Saito. 2017. Phase-Functioned Neural Networks for Character Control. ACM Trans. Graph. 36, 4, Article 42 (July 2017).


NVIDIA, the NVIDIA logo, and cuBLAS, CUDA, cuDNN, cuFFT, cuSPARSE, DIGITS, DGX, DGX-1, Jetson, Kepler, NVIDIA Maxwell, NCCL, NVLink, Pascal, Tegra, TensorRT, Tesla and NVIDIA Holodeck are trademarks and/or registered trademarks of NVIDIA Corporation in the Unites States and other countries. Other company and product names may be trademarks of the respective companies with which they are associated.