Project description
ThreeDWorld (TDW)
A Platform for Interactive Multi-Modal Physical Simulation
ThreeDWorld (TDW) is a platform for interactive multi-modal physical simulation. With TDW, users can simulate high-fidelity sensory data and physical interactions between mobile agents and objects in a wide variety of rich 3D environments.
API
Commands and Output Data
Document |
Description |
Command API |
API for every command a controller can send to the build. |
Command API Guide |
Overview of how to send commands to the build. |
Output Data |
API for all output data a controller can receive from the build. |
High-Level APIs
Python tdw
module
Frontend
Backend
Document |
Description |
Build |
Helper functions for downloading the build. |
PyPi |
Helper functions for checking the version of the tdw module on PyPi. |
Audio and Video
Avatars (Agents)
Benchmarks and Speed
Examples
Document |
Description |
Example Controllers |
Index of all example controllers in the repo. |
Use Cases (see below) |
The "use cases" section showcases "advanced" usage of TDW. |
Misc.
Document |
Description |
VR |
VR in TDW. |
Humanoids |
Add "humanoids" and play animations. |
Physics (PhysX and Flex)
Document |
Description |
Physics |
Common physics problems and solutions. |
NVIDIA Flex |
Add soft bodies, cloth, and fluids to TDW. |
FluidTypes |
Access different NVIDIA Flex fluid types. |
Physics Determinism |
Benchmark of PhysX physics determinism. |
tdw_physics |
Generate a physics dataset. |
Rube Goldberg (demo) |
Demo of complex physical interactions between objects, with PyImpact generation of impact sounds, set in a photorealistic scene. |
Releases
Document |
Description |
C# code |
Access to C# backend source code |
Releases |
Release versioning in TDW. |
Freezing your code |
"Freeze" your controller into a compiled executable. |
Remote Server
Rendering and Photorealism
Document |
Description |
Asset Bundle Librarians |
Overview of what asset bundles are, how to add objects, scenes, materials, HDRI skyboxes, and humanoids, and how to access each asset bundle's metadata. |
Model Screenshotter |
Generate images of every model in TDW. |
Material Screenshotter |
Generate images of every material in TDW. |
Materials, textures, and colors |
Defines materials, textures, and colors. |
Depth of Field |
Prevent blurry images and increase realism. |
Depth Maps |
How to use depth maps. |
Remote rendering |
How to render using xpra. |
Observation Data |
Different means of determining what an agent is observing. |
Robotics
Document |
Description |
Robots |
Overview of robotics and the Magnebot in TDW. |
Robot Librarian |
API for accessing robot metadata. |
Robot Creator |
API for adding your own robots to TDW. |
Magnebot |
High-level Magnebot API. |
Scene Setup
Document |
Description |
Scene Setup |
Overview of how to set up a scene. |
Asset Bundle Librarians |
Overview of what asset bundles are, how to add objects, scenes, materials, HDRI skyboxes, and humanoids, and how to access each asset bundle's metadata. |
Model Librarian |
Overview of how to add objects and access metadata. |
Rotation |
Different means of rotating objects and agents in a scene. |
Scene Reset |
How to reset a scene. |
FloorplanController |
Child class of Controller that creates an interior environment and populates it with objects. |
TDW and 3D Objects
Troubleshooting TDW
Use Cases
Use Case |
Description |
Image dataset |
Generate 1.3M photorealistic images. |
IntPhys (demo) |
Demo of how to simulate IntPhys in TDW. |
Humanoid videos |
Generate a dataset of humanoid animations. |
tdw_physics |
Generate a physics dataset. |
Rube Goldberg (demo) |
Demo of complex physical interactions between objects, with PyImpact generation of impact sounds, set in a photorealistic scene. |
Magnebot |
High-level Magnebot API. |
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution