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.2 Core Concepts
- The controller
- Auto-launching the TDW build
- Commands
- Design philosophy of TDW
- Scenes
- Avatars and cameras
- Add-ons and the
ThirdPersonCamera - Objects
- Output data
- Images
1.3 Troubleshooting
- How to report an issue
- Common errors
- Performance optimizations
- Good coding practices
- The
Loggeradd-on
2. Tutorials
2.1 Objects and Scenes
- Overview
- Scripted object placement (floorplan layouts)
- Visual materials, textures, and colors
- Procedural generation (scenes)
- Units and data formats
Boundsoutput data- Procedural generation (objects)
- Reset a scene
High-level API: Floorplan
2.2.2 3D Model Libraries
2.2.3 Semantic States
- Overview
- Line of sight (
Raycastoutput data) - Proximity to region (
Overlapoutput data) - Proximity to other objects (the
TriggerCollisionManageradd-on) - Containment (the
ContainerManageradd-on) - Composite objects (objects with affordances)
- Grasped objects
2.3 Visual Perception
- Overview
- Instance ID segmentation colors (
_idpass) - Semantic category segmentation colors (
_categorypass) - Depth maps (
_depthand_depth_simplepasses) - Motion perception (
_flowpass) - Other image passes (
_mask,_normals, and_albedopasses) Occlusionoutput data
2.4 Camera Controls
2.5 Photorealism
- Overview
- Lighting (HDRI skyboxes)
- Post-processing
- Interior lighting (the
InteriorSceneLightingadd-on) - Depth of field
High-level API: tdw_image_dataset
2.6 Physics
2.6.1 Physics (PhysX)
- PhysX
- Object physics parameters
Rigidbodiesoutput dataCollisionoutput data- Apply forces to objects
- Skip physics frames
- Disable physics
High-level API: tdw_physics
2.6.2 Physics (Flex)
- Flex
- Solid and soft actors
- Cloth actors
- Fluid and source actors
- Move, rotate, and scale Flex objects
FlexParticlesoutput data- Apply forces to Flex objects
- Reset a Flex scene
- Other Flex commands
High-level API: tdw_physics
2.8 Audio
- Overview
- Initialize audio and play .wav files
- Resonance Audio
PyImpact(dynamic impact sounds)- Recording audio
PyImpact(advanced API)- Audio perception
2.9 Video Recording
2.10 Agents
2.10.1 Robots
- Overview
- The
Robotadd-on - Robot arm add-ons
- Robot collision detection
- Select a robot
- Add your own robots to TDW
- Robotics API (low-level)
- Add a camera to a robot
2.10.2 Magnebots
2.10.3 Virtual Reality (VR)
2.10.4 Keyboard controls
2.10.4 Embodied avatars
2.11 Multi-agent simulations
2.12 Navigation
2.13 Non-physics objects
2.14 Misc. remote server topics
2.15 Misc. other topics
3. API Documentation
3.1 Command API
3.2 tdw module API
tdw
- AssetBundleCreator
- AssetBundleCreatorBase
- AudioConstants
- AudioUtils
- Controller
- IntPair
- QuaternionUtils
- RemoteBuildLauncher
- RobotCreator
- TDWUtils
tdw.add_ons
- AddOn
- AudioInitializer
- AudioInitializerBase
- AvatarBody
- Benchmark
- CinematicCamera
- CollisionManager
- CompositeObjectManager
- ContainerManager
- EmbodiedAvatar
- Floorplan
- ImageCapture
- InteriorSceneLighting
- Keyboard
- Logger
- ModelVerifier
- ObjectManager
- OccupancyMap
- OculusTouch
- PhysicsAudioRecorder
- PyImpact
- ResonanceAudioInitializer
- Robot
- RobotArm
- RobotBase
- StepPhysics
- ThirdPersonCamera
- ThirdPersonCameraBase
- TriggerCollisionManager
- VR
tdw.collision_data
tdw.container_data
- ContainerBoxTriggerCollider
- ContainerColliderTag
- ContainerCylinderTriggerCollider
- ContainerNonUniformScaleTriggerCollider
- ContainerSphereTriggerCollider
- ContainerTriggerCollider
- ContainmentEvent
tdw.flex_data
tdw.librarian
- HdriSkyboxLibrarian
- HumanoidAnimationLibrarian
- HumanoidLibrarian
- MaterialLibrarian
- ModelLibrarian
- RobotLibrarian
- SceneLibrarian
tdw.model_tests
tdw.object_data
tdw.object_data.composite_object
tdw.object_data.composite_object.sub_object
- HingeDynamic
- HingeStatic
- HingeStaticBase
- LightDynamic
- LightStatic
- MotorStatic
- NonMachineStatic
- PrismaticJointStatic
- SpringStatic
- SubObjectDynamic
- SubObjectStatic
tdw.physics_audio
- AudioMaterial
- Base64Sound
- CollisionAudioEvent
- CollisionAudioInfo
- CollisionAudioType
- Modes
- ObjectAudioStatic
- ScrapeMaterial
- ScrapeModel
- ScrapeSubObject
tdw.release
tdw.robot_data
tdw.scene_data
tdw.vr_data
4. Performance benchmarks
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
File details
Details for the file tdw-1.9.8.2.tar.gz.
File metadata
- Download URL: tdw-1.9.8.2.tar.gz
- Upload date:
- Size: 28.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.26.0 setuptools/58.1.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2aaf81a7b81e914f477ef07c9e6aff891ca30ffde6cf6d5063dd5b0ffe7af25b
|
|
| MD5 |
0fdab2f84528c7ab7fdfaf9fcb9a5c9c
|
|
| BLAKE2b-256 |
02b4f2348d9fb999f57b8ff5862f9a3ac3dd97bec19c0734851821bb3a9eb093
|