Skip to main content

3D simulation environment

Project description

ThreeDWorld (TDW)

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.

1. General guide to TDW

1.1 Setup

  1. Install TDW
  2. Upgrade TDW

1.2 Core Concepts

  1. The controller
  2. Auto-launching the TDW build
  3. Commands
  4. Design philosophy of TDW
  5. Scenes
  6. Avatars and cameras
  7. Add-ons and the ThirdPersonCamera
  8. Objects
  9. Output data
  10. Images

1.3 Troubleshooting

  1. How to report an issue
  2. Common errors
  3. Performance optimizations
  4. Good coding practices
  5. The Logger add-on

2. Tutorials

2.1 Objects and Scenes

  1. Overview
  2. Scripted object placement (floorplan layouts)
  3. Visual materials, textures, and colors
  4. Procedural generation (scenes)
  5. Units and data formats
  6. Bounds output data
  7. Procedural generation (objects)
  8. Reset a scene

High-level API: Floorplan

2.2.2 3D Model Libraries

  1. Overview
  2. Free models
  3. Non-free models
  4. Add your own models to TDW
  5. Add ShapeNet models to TDW

2.2.3 Semantic States

  1. Overview
  2. Line of sight (Raycast output data)
  3. Proximity to region (Overlap output data)
  4. Proximity to other objects (the TriggerCollisionManager add-on)
  5. Containment (the ContainerManager add-on)
  6. Composite objects (objects with affordances)
  7. Grasped objects

2.3 Visual Perception

  1. Overview
  2. Instance ID segmentation colors (_id pass)
  3. Semantic category segmentation colors (_category pass)
  4. Depth maps (_depth and _depth_simple passes)
  5. Motion perception (_flow pass)
  6. Other image passes (_mask, _normals, and _albedo passes)
  7. Occlusion output data

2.4 Camera Controls

  1. Overview
  2. Move a camera
  3. Rotate a camera
  4. Follow an object
  5. The CinematicCamera add-on

2.5 Photorealism

  1. Overview
  2. Lighting (HDRI skyboxes)
  3. Post-processing
  4. Interior lighting (the InteriorSceneLighting add-on)
  5. Depth of field

High-level API: tdw_image_dataset

2.6 Physics

Overview

2.6.1 Physics (PhysX)

  1. PhysX
  2. Object physics parameters
  3. Rigidbodies output data
  4. Collision output data
  5. Apply forces to objects
  6. Skip physics frames
  7. Disable physics

High-level API: tdw_physics

2.6.2 Physics (Flex)

  1. Flex
  2. Solid and soft actors
  3. Cloth actors
  4. Fluid and source actors
  5. Move, rotate, and scale Flex objects
  6. FlexParticles output data
  7. Apply forces to Flex objects
  8. Reset a Flex scene
  9. Other Flex commands

High-level API: tdw_physics

2.8 Audio

  1. Overview
  2. Initialize audio and play .wav files
  3. Resonance Audio
  4. PyImpact (dynamic impact sounds)
  5. Recording audio
  6. PyImpact (advanced API)
  7. Audio perception

2.9 Video Recording

  1. Overview
  2. Image-only video
  3. Video with audio

2.10 Agents

Overview

2.10.1 Robots

  1. Overview
  2. The Robot add-on
  3. Robot arm add-ons
  4. Robot collision detection
  5. Select a robot
  6. Add your own robots to TDW
  7. Robotics API (low-level)
  8. Add a camera to a robot

2.10.2 Magnebots

  1. Magnebot API (external repo)

2.10.3 Virtual Reality (VR)

  1. Overview
  2. Oculus Touch rigs

2.10.4 Keyboard controls

  1. Keyboard controls

2.10.4 Embodied avatars

  1. The EmbodiedAvatar

2.11 Multi-agent simulations

  1. Overview
  2. Custom agent classes

2.12 Navigation

  1. Overview
  2. NavMesh pathfinding
  3. Occupancy maps

2.13 Non-physics objects

  1. Overview
  2. Position markers
  3. Line renderers
  4. Textured quads
  5. Compass rose
  6. Non-physics humanoids

2.14 Misc. remote server topics

  1. Launch a TDW build on a remote server from a personal computer
  2. Remote rendering with xpra

2.15 Misc. other topics

  1. C# source code
  2. Freezing your code
  3. Download asset bundles

3. API Documentation

3.1 Command API

3.2 tdw module API

tdw

tdw.add_ons

tdw.collision_data

tdw.container_data

tdw.flex_data

tdw.librarian

tdw.model_tests

tdw.object_data

tdw.object_data.composite_object

tdw.object_data.composite_object.sub_object

tdw.physics_audio

tdw.release

tdw.robot_data

tdw.scene_data

tdw.vr_data

4. Performance benchmarks

  1. Performance benchmarks
  2. Image capture
  3. Object data
  4. Command deserialization

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tdw-1.9.8.1.tar.gz (28.4 MB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page