%global _empty_manifest_terminate_build 0 Name: python-tdw Version: 1.11.18.0 Release: 1 Summary: 3D simulation environment License: BSD URL: https://github.com/threedworld-mit/tdw Source0: https://mirrors.nju.edu.cn/pypi/web/packages/38/ce/8cf70ac6e5e6a041a0c325cbdd54bcc111fa26176326ab28986ad6d7f697/tdw-1.11.18.0.tar.gz BuildArch: noarch %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. - [Code of Conduct](https://github.com/threedworld-mit/tdw/blob/master/code_of_conduct.md) - [Changelog](https://github.com/threedworld-mit/tdw/blob/master/Documentation/Changelog.md) - [License](https://github.com/threedworld-mit/tdw/blob/master/LICENSE.txt) - [Website](https://threedworld.org/) - [Example controllers](https://github.com/threedworld-mit/tdw/tree/master/Python/example_controllers) # General guide to TDW ## Setup ### 1.1 Installation (Read this first!) 1. [Install TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/setup/install.md) 3. [Upgrade TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/setup/upgrade.md) ### 1.2 How to run TDW on a Linux server 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/overview.md) 2. [Launch a TDW build on a remote server from a personal computer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/launch_build.md) 3. [Remote rendering with xpra](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/xpra.md) 4. [X11 forwarding](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/x11_forwarding.md) ## Core Concepts 1. [The controller](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/controller.md) 2. [Auto-launching the TDW build](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/launch_build.md) 3. [Commands](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/commands.md) 4. [Design philosophy of TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/design_philosophy.md) 5. [Scenes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/scenes.md) 6. [Avatars and cameras](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/avatars.md) 7. [Add-ons and the `ThirdPersonCamera`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/add_ons.md) 8. [Objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/objects.md) 9. [Output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/output_data.md) 10. [Images](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/images.md) ## Troubleshooting 1. [How to report an issue](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/issues.md) 2. [Common errors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/common_errors.md) 3. [Performance optimizations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/performance_optimizations.md) 4. [Good coding practices](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/good_coding_practices.md) # Tutorials ## 1. Scene Setup **[Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup/overview.md)** ### 1.1 Scene Setup (High-Level APIs) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/overview.md) 2. [Procedural generation (the `ProcGenKitchen` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/proc_gen_kitchen.md) 2. [Regions, interior regions, and rooms](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/rooms.md) 3. [Procedural object arrangements](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/arrangements.md) 4. [Scripted object placement (floorplan layouts)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/floorplans.md) 5. [Reset a scene](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/reset_scene.md) High-level APs: [Floorplan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan.md) and [ProcGenKitchen](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/proc_gen_kitchen.md) ### 1.2 Scene Setup (Low-Level APIs) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/overview.md) 2. [Units and data formats](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/units.md) 3. [`Bounds` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/bounds.md) 4. [Visual materials, textures, and colors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/materials_textures_colors.md) 5. [ProcGenRoom](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/proc_gen_room.md) ## 2. 3D Models ### 2.1 Other model libraries 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/overview.md) 2. [Free models](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/free_models.md) 3. [Non-free models](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/non_free_models.md) ### 2.2 Custom models 1. [Add your own models to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/custom_models/custom_models.md) 2. [Add ShapeNet models to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/custom_models/shapenet.md) ### 2.3 Composite (articulated) objects 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/overview.md) 2. [Composite objects in TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/composite_objects.md) 3. [Create a composite object from a prefab](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/create_from_prefab.md) 4. [Create a composite object from a .urdf file](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/create_from_urdf.md) ## 3. Read/Write to Disk 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/overview.md) 2. [The `Logger` and `LogPlayback` add-ons](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/logger.md) 3. [The `JsonWriter` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/json.md) 4. [The `OutputDataWriter` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/output_data_writer.md) 5. [Create a custom data writer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/custom_writers.md) 6. [Import .sdf and .lisdf files](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/lisdf.md) 7. [Images](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/images.md) (Cross-referenced with "Core Concepts") 8. [Audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/overview.md) (Cross-referenced with "Audio") 9. [Video](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/overview.md) (Cross-referenced with "Video Recording") ## 4. Semantic States 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/overview.md) 2. [Line of sight (`Raycast` output data)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/raycast.md) 3. [Proximity to region (`Overlap` output data)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/overlap.md) 3. [Proximity to other objects (the `TriggerCollisionManager` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/trigger_collisions.md) 3. [Containment (the `ContainerManager` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/containment.md) 4. [Open and closed states](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/openness.md) 4. [Grasped objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/grasped.md) ## 5. Visual Perception 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/overview.md) 2. [Instance ID segmentation colors (`_id` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/id.md) 3. [Semantic category segmentation colors (`_category` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/category.md) 4. [Depth maps (`_depth` and `_depth_simple` passes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/depth.md) 5. [Motion perception (`_flow` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/flow.md) 6. [Other image passes (`_mask`, `_normals`, and `_albedo` passes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/other_passes.md) 7. [`Occlusion` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/occlusion.md) ## 6. Camera Controls 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/overview.md) 2. [Move a camera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/position.md) 3. [Rotate a camera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/rotation.md) 4. [Follow an object](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/follow.md) 4. [The `CinematicCamera` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/cinematic_camera.md) ## 7. Photorealism 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/overview.md) 2. [Lighting (HDRI skyboxes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/lighting.md) 3. [Post-processing](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/post_processing.md) 3. [Interior lighting (the `InteriorSceneLighting` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/interior_lighting.md) 4. [Depth of field](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/depth_of_field.md) High-level API: [tdw_image_dataset](https://github.com/alters-mit/tdw_image_dataset) ## 8. Physics **[Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/overview.md)** ### 8.1 Physics (PhysX) 1. [PhysX](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/physx.md) 2. [Object physics parameters](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/physics_objects.md) 3. [`Rigidbodies` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/rigidbodies.md) 4. [`Collision` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/collisions.md) 5. [Apply forces to objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/forces.md) 6. [Skip physics frames](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/step_physics.md) 7. [Disable physics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/disable_physics.md) High-level API: [tdw_physics](https://github.com/alters-mit/tdw_physics) ### 8.2 Physics (Obi) 1. [Obi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi.md) 2. [Fluids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/fluids.md) 2. [Cloth](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/cloth.md) 3. [`ObiParticles` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi_particles.md) 4. [Colliders and collision materials](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/colliders_and_collision_materials.md) 5. [Solvers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/solvers.md) 6. [Obi and robots](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/robots.md) 6. [Obi and Flex](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi_and_flex.md) ### 8.3 Physics (Flex) 1. [Flex](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/flex.md) 2. [Solid and soft actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/solid_and_soft.md) 3. [Cloth actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/cloth.md) 4. [Fluid and source actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/fluid_and_source.md) 5. [Move, rotate, and scale Flex objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/transform.md) 6. [`FlexParticles` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/output_data.md) 7. [Apply forces to Flex objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/forces.md) 8. [Reset a Flex scene](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/reset_scene.md) 8. [Other Flex commands](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/other_commands.md) High-level API: [tdw_physics](https://github.com/alters-mit/tdw_physics) ## 9. Audio 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/overview.md) 2. [Initialize audio and play .wav files](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/initialize_audio.md) 3. [Resonance Audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/resonance_audio.md) 4. [`PyImpact` (dynamic impact sounds)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/py_impact.md) 6. [Recording audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/record_audio.md) 6. [`PyImpact` (advanced API)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/py_impact_advanced.md) 7. [Audio perception](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/audio_perception.md) ## 10. Video Recording 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/overview.md) 2. [Image-only video](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/images.md) 3. [Video with audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/audio.md) 1. [Video with audio (Linux)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_linux.md) 2. [Video with audio (OS X)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_osx.md) 3. [Video with audio (Windows)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_windows.md) ## 11. Agents [**Overview**](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/agents/overview.md) ### 11.1 Robots 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/overview.md) 2. [The `Robot` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/robot_add_on.md) 3. [Robot arm add-ons](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/robot_arm.md) 4. [Robot collision detection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/collision_detection.md) 5. [Select a robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/select_robot.md) 6. [Add your own robots to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/custom_robots.md) 7. [Robotics API (low-level)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/custom_robots.md) 8. [Add a camera to a robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/add_camera.md) ### 11.2 Magnebots 1. [Magnebot API (external repo)](https://github.com/alters-mit/magnebot) ### 11.3 Replicants 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/overview.md) 2. [Actions](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/actions.md) 3. [Output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/output_data.md) 4. [Collision detection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/collision_detection.md) 5. [Movement](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/movement.md) 6. [Animations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/animations.md) 7. [Arm articulation, pt. 1: Basics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_1.md) 8. [Arm articulation, pt. 2: Grasp and drop objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_2.md) 9. [Arm articulation, pt. 3: Advanced topics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_3.md) 10. [Arm articulation, pt. 4: Stacking objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_4.md) 11. [Head rotation](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/head_rotation.md) 12. [Navigation](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/navigation.md) 13. [Custom actions](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/custom_actions.md) 14. [Multiple Replicants](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/multiple_replicants.md) 15. [Reset](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/reset.md) ### 11.4 Drones 1. [Drones](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/drone/drone.md) ### 11.5 Virtual Reality (VR) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/vr/overview.md) 2. [Oculus Touch rigs](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/vr/oculus_touch.md) ### 11.6 Keyboard and Mouse 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/overview.md) 2. [Mouse input](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/mouse.md) 3. [The `FirstPersonAvatar`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/first_person_avatar.md) 4. [Keyboard input](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/keyboard.md) ### 11.7 Embodied avatars 1. [The `EmbodiedAvatar`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/embodied_avatars/embodied_avatar.md) ## 12. Multi-agent simulations 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/multi_agent/overview.md) 2. [Custom agent classes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/multi_agent/custom_agent_classes.md) ## 13. Navigation 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/overview.md) 2. [NavMesh pathfinding](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/nav_mesh.md) 3. [Occupancy maps](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/occupancy_maps.md) ## 14. Non-physics objects ### 14.1 Non-physics humanoids 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/overview.md) 2. [SMPL humanoids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/smpl.md) 3. [Create custom non-physics humanoids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/custom_humanoids.md) 4. [Create custom humanoid animations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/custom_animations.md) ### 14.2 Misc. non-physics objects 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/overview.md) 2. [Position markers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/position_markers.md) 3. [Line renderers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/line_renderers.md) 4. [Textured quads](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/textured_quads.md) 5. [User Interface (the `UI` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/ui.md) 6. [Compass rose](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/compass_rose.md) 7. [Visual Effects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/visual_effects.md) 8. [The `FloorplanFlood` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/floorplan_flood.md) 9. [Empty objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/empty_objects.md) ## 15. Misc. other topics 1. [C# source code](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/c_sharp_sources.md) 2. [Freezing your code](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/freeze.md) 2. [Download asset bundles](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/download_asset_bundles.md) # API Documentation ## Command API - [Command API](https://github.com/threedworld-mit/tdw/blob/master/Documentation/api/command_api.md) - [Output Data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/api/output_data.md) ## `tdw` module API **tdw** - [AudioConstants](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/audio_constants.md) - [AudioUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/audio_utils.md) - [CardinalDirection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/cardinal_direction.md) - [Controller](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/controller.md) - [IntPair](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/int_pair.md) - [OrdinalDirection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/ordinal_direction.md) - [QuaternionUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/quaternion_utils.md) - [RemoteBuildLauncher](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/remote_build_launcher.md) - [TDWUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/tdw_utils.md) **tdw.add_ons** - [AddOn](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/add_on.md) - [AudioInitializer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/audio_initializer.md) - [AudioInitializerBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/audio_initializer_base.md) - [AvatarBody](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/avatar_body.md) - [Benchmark](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/benchmark.md) - [CinematicCamera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/cinematic_camera.md) - [CollisionManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/collision_manager.md) - [CompositeObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/composite_object_manager.md) - [ContainerManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/container_manager.md) - [Drone](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/drone.md) - [EmbodiedAvatar](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/embodied_avatar.md) - [EmptyObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/empty_object_manager.md) - [FirstPersonAvatar](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/first_person_avatar.md) - [Floorplan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan.md) - [FloorplanFlood](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan_flood.md) - [ImageCapture](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/image_capture.md) - [InteriorSceneLighting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/interior_scene_lighting.md) - [JsonWriter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/json_writer.md) - [Keyboard](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/keyboard.md) - [LisdfReader](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/lisdf_reader.md) - [Logger](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/logger.md) - [LogPlayback](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/log_playback.md) - [ModelVerifier](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/model_verifier.md) - [Mouse](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/mouse.md) - [NavMesh](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/nav_mesh.md) - [Obi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/obi.md) - [ObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/object_manager.md) - [OccupancyMap](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/occupancy_map.md) - [OculusTouch](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/oculus_touch.md) - [OutputDataWriter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/output_data_writer.md) - [PhysicsAudioRecorder](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/physics_audio_recorder.md) - [ProcGenKitchen](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/proc_gen_kitchen.md) - [PyImpact](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/py_impact.md) - [Replicant](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/replicant.md) - [ResonanceAudioInitializer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/resonance_audio_initializer.md) - [Robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot.md) - [RobotArm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot_arm.md) - [RobotBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot_base.md) - [StepPhysics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/step_physics.md) - [ThirdPersonCamera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/third_person_camera.md) - [ThirdPersonCameraBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/third_person_camera_base.md) - [TriggerCollisionManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/trigger_collision_manager.md) - [UI](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/ui.md) - [VR](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/vr.md) - [Writer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/writer.md) **tdw.asset_bundle_creator** - [AnimationCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/animation_creator.md) - [AssetBundleCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/asset_bundle_creator.md) - [CompositeObjectCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/composite_object_creator.md) - [HumanoidCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/humanoid_creator.md) - [HumanoidCreatorBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/humanoid_creator_base.md) - [ModelCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/model_creator.md) - [RobotCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/robot_creator.md) **tdw.collision_data** - [CollisionBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_base.md) - [CollisionObjEnv](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_obj_env.md) - [CollisionObjObj](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_obj_obj.md) - [TriggerColliderShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/trigger_collider_shape.md) - [TriggerCollisionEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/trigger_collision_event.md) **tdw.container_data** - [BoxContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/box_container.md) - [ContainerShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/container_shape.md) - [ContainerTag](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/container_tag.md) - [ContainmentEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/containment_event.md) - [CylinderContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/cylinder_container.md) - [SphereContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/sphere_container.md) **tdw.drone** - [DroneDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/drone/drone_dynamic.md) **tdw.flex_data** - [FluidType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/flex_data/fluid_type.md) **tdw.librarian** - [DroneLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/drone_librarian.md) - [HdriSkyboxLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/hdri_skybox_librarian.md) - [HumanoidAnimationLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/humanoid_animation_librarian.md) - [HumanoidLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/humanoid_librarian.md) - [MaterialLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/material_librarian.md) - [ModelLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/model_librarian.md) - [RobotLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/robot_librarian.md) - [SceneLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/scene_librarian.md) - [VisualEffectLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/visual_effect_librarian.md) **tdw.lisdf_data** - [LisdfRobotMetadata](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/lisdf_data/lisdf_robot_metadata.md) **tdw.model_tests** - [MissingMaterials](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/missing_materials.md) - [ModelReport](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/model_report.md) - [ModelTest](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/model_test.md) - [PhysicsQuality](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/physics_quality.md) - [RotateObjectTest](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/rotate_object_test.md) **tdw.obi_data** - [ForceMode](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/force_mode.md) - [ObiActor](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/obi_actor.md) **tdw.obi_data.cloth** - [ClothMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/cloth_material.md) - [SheetType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/sheet_type.md) - [TetherParticleGroup](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/tether_particle_group.md) - [TetherType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/tether_type.md) - [VolumeType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/volume_type.md) **tdw.obi_data.collision_materials** - [CollisionMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/collision_materials/collision_material.md) - [MaterialCombineMode](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/collision_materials/material_combine_mode.md) **tdw.obi_data.fluids** - [CubeEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/cube_emitter.md) - [DiskEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/disk_emitter.md) - [EdgeEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/edge_emitter.md) - [EmitterSamplingMethod](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/emitter_sampling_method.md) - [EmitterShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/emitter_shape.md) - [Fluid](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/fluid.md) - [FluidBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/fluid_base.md) - [GranularFluid](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/granular_fluid.md) - [SphereEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/sphere_emitter.md) **tdw.object_data** - [Bound](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/bound.md) - [ObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/object_static.md) - [Rigidbody](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/rigidbody.md) - [Transform](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/transform.md) **tdw.object_data.composite_object** - [CompositeObjectDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/composite_object_dynamic.md) - [CompositeObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/composite_object_static.md) **tdw.object_data.composite_object.sub_object** - [HingeDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_dynamic.md) - [HingeStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_static.md) - [HingeStaticBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_static_base.md) - [LightDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/light_dynamic.md) - [LightStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/light_static.md) - [MotorStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/motor_static.md) - [NonMachineStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/non_machine_static.md) - [PrismaticJointStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/prismatic_joint_static.md) - [SpringStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/spring_static.md) - [SubObjectDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/sub_object_dynamic.md) - [SubObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/sub_object_static.md) **tdw.physics_audio** - [AudioMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/audio_material.md) - [Base64Sound](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/base64_sound.md) - [CollisionAudioEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_event.md) - [CollisionAudioInfo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_info.md) - [CollisionAudioType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_type.md) - [Modes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/modes.md) - [ObjectAudioStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/object_audio_static.md) - [ScrapeMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_material.md) - [ScrapeModel](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_model.md) - [ScrapeSubObject](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_sub_object.md) **tdw.proc_gen.arrangements** - [Arrangement](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement.md) - [ArrangementAlongWall](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement_along_wall.md) - [ArrangementWithRootObject](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement_with_root_object.md) - [Basket](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/basket.md) - [CupAndCoaster](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cup_and_coaster.md) - [Dishwasher](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/dishwasher.md) - [KitchenCabinet](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_cabinet.md) - [KitchenCounter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_counter.md) - [KitchenCounterTop](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_counter_top.md) - [KitchenTable](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_table.md) - [Microwave](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/microwave.md) - [Painting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/painting.md) - [Plate](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/plate.md) - [Radiator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/radiator.md) - [Refrigerator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/refrigerator.md) - [Shelf](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/shelf.md) - [SideTable](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/side_table.md) - [Sink](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/sink.md) - [StackOfPlates](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stack_of_plates.md) - [Stool](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stool.md) - [Stove](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stove.md) - [Suitcase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/suitcase.md) - [TableAndChairs](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/table_and_chairs.md) - [TableSetting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/table_setting.md) - [Void](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/void.md) - [WallCabinet](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/wall_cabinet.md) **tdw.proc_gen.arrangements.cabinetry** - [Cabinetry](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cabinetry/cabinetry.md) - [CabinetryType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cabinetry/cabinetry_type.md) **tdw.release** - [Build](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/release/build.md) - [PyPi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/release/pypi.md) **tdw.replicant** - [ActionStatus](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/action_status.md) - [Arm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/arm.md) - [CollisionDetection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/collision_detection.md) - [ImageFrequency](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/image_frequency.md) - [ReplicantBodyPart](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_body_part.md) - [ReplicantDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_dynamic.md) - [ReplicantStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_static.md) **tdw.replicant.actions** - [Action](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/action.md) - [Animate](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/animate.md) - [ArmMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/arm_motion.md) - [DoNothing](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/do_nothing.md) - [Drop](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/drop.md) - [Grasp](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/grasp.md) - [HeadMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/head_motion.md) - [IkMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/ik_motion.md) - [LookAt](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/look_at.md) - [MoveBy](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/move_by.md) - [MoveTo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/move_to.md) - [ReachFor](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reach_for.md) - [ReachForWithPlan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reach_for_with_plan.md) - [ResetArm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reset_arm.md) - [ResetHead](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reset_head.md) - [RotateHead](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/rotate_head.md) - [TurnBy](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/turn_by.md) - [TurnTo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/turn_to.md) **tdw.replicant.ik_plans** - [IkPlan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/ik_plan.md) - [IkPlanType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/ik_plan_type.md) - [VerticalHorizontal](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/vertical_horizontal.md) **tdw.robot_data** - [Drive](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/drive.md) - [JointDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_dynamic.md) - [JointStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_static.md) - [JointType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_type.md) - [NonMoving](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/non_moving.md) - [RobotDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/robot_dynamic.md) - [RobotStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/robot_static.md) **tdw.scene_data** - [InteriorRegion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/interior_region.md) - [RegionBounds](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/region_bounds.md) - [Room](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/room.md) - [SceneBounds](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/scene_bounds.md) **tdw.vr_data** - [OculusTouchButton](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/vr_data/oculus_touch_button.md) - [RigType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/vr_data/rig_type.md) # Performance benchmarks 1. [Performance benchmarks](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/benchmark.md) 2. [Image capture](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/image_capture.md) 3. [Object data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/object_data.md) 4. [Command deserialization](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/command_deserialization.md) %package -n python3-tdw Summary: 3D simulation environment Provides: python-tdw BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-tdw # 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. - [Code of Conduct](https://github.com/threedworld-mit/tdw/blob/master/code_of_conduct.md) - [Changelog](https://github.com/threedworld-mit/tdw/blob/master/Documentation/Changelog.md) - [License](https://github.com/threedworld-mit/tdw/blob/master/LICENSE.txt) - [Website](https://threedworld.org/) - [Example controllers](https://github.com/threedworld-mit/tdw/tree/master/Python/example_controllers) # General guide to TDW ## Setup ### 1.1 Installation (Read this first!) 1. [Install TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/setup/install.md) 3. [Upgrade TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/setup/upgrade.md) ### 1.2 How to run TDW on a Linux server 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/overview.md) 2. [Launch a TDW build on a remote server from a personal computer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/launch_build.md) 3. [Remote rendering with xpra](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/xpra.md) 4. [X11 forwarding](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/x11_forwarding.md) ## Core Concepts 1. [The controller](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/controller.md) 2. [Auto-launching the TDW build](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/launch_build.md) 3. [Commands](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/commands.md) 4. [Design philosophy of TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/design_philosophy.md) 5. [Scenes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/scenes.md) 6. [Avatars and cameras](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/avatars.md) 7. [Add-ons and the `ThirdPersonCamera`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/add_ons.md) 8. [Objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/objects.md) 9. [Output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/output_data.md) 10. [Images](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/images.md) ## Troubleshooting 1. [How to report an issue](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/issues.md) 2. [Common errors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/common_errors.md) 3. [Performance optimizations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/performance_optimizations.md) 4. [Good coding practices](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/good_coding_practices.md) # Tutorials ## 1. Scene Setup **[Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup/overview.md)** ### 1.1 Scene Setup (High-Level APIs) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/overview.md) 2. [Procedural generation (the `ProcGenKitchen` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/proc_gen_kitchen.md) 2. [Regions, interior regions, and rooms](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/rooms.md) 3. [Procedural object arrangements](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/arrangements.md) 4. [Scripted object placement (floorplan layouts)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/floorplans.md) 5. [Reset a scene](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/reset_scene.md) High-level APs: [Floorplan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan.md) and [ProcGenKitchen](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/proc_gen_kitchen.md) ### 1.2 Scene Setup (Low-Level APIs) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/overview.md) 2. [Units and data formats](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/units.md) 3. [`Bounds` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/bounds.md) 4. [Visual materials, textures, and colors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/materials_textures_colors.md) 5. [ProcGenRoom](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/proc_gen_room.md) ## 2. 3D Models ### 2.1 Other model libraries 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/overview.md) 2. [Free models](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/free_models.md) 3. [Non-free models](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/non_free_models.md) ### 2.2 Custom models 1. [Add your own models to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/custom_models/custom_models.md) 2. [Add ShapeNet models to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/custom_models/shapenet.md) ### 2.3 Composite (articulated) objects 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/overview.md) 2. [Composite objects in TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/composite_objects.md) 3. [Create a composite object from a prefab](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/create_from_prefab.md) 4. [Create a composite object from a .urdf file](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/create_from_urdf.md) ## 3. Read/Write to Disk 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/overview.md) 2. [The `Logger` and `LogPlayback` add-ons](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/logger.md) 3. [The `JsonWriter` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/json.md) 4. [The `OutputDataWriter` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/output_data_writer.md) 5. [Create a custom data writer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/custom_writers.md) 6. [Import .sdf and .lisdf files](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/lisdf.md) 7. [Images](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/images.md) (Cross-referenced with "Core Concepts") 8. [Audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/overview.md) (Cross-referenced with "Audio") 9. [Video](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/overview.md) (Cross-referenced with "Video Recording") ## 4. Semantic States 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/overview.md) 2. [Line of sight (`Raycast` output data)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/raycast.md) 3. [Proximity to region (`Overlap` output data)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/overlap.md) 3. [Proximity to other objects (the `TriggerCollisionManager` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/trigger_collisions.md) 3. [Containment (the `ContainerManager` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/containment.md) 4. [Open and closed states](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/openness.md) 4. [Grasped objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/grasped.md) ## 5. Visual Perception 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/overview.md) 2. [Instance ID segmentation colors (`_id` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/id.md) 3. [Semantic category segmentation colors (`_category` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/category.md) 4. [Depth maps (`_depth` and `_depth_simple` passes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/depth.md) 5. [Motion perception (`_flow` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/flow.md) 6. [Other image passes (`_mask`, `_normals`, and `_albedo` passes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/other_passes.md) 7. [`Occlusion` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/occlusion.md) ## 6. Camera Controls 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/overview.md) 2. [Move a camera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/position.md) 3. [Rotate a camera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/rotation.md) 4. [Follow an object](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/follow.md) 4. [The `CinematicCamera` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/cinematic_camera.md) ## 7. Photorealism 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/overview.md) 2. [Lighting (HDRI skyboxes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/lighting.md) 3. [Post-processing](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/post_processing.md) 3. [Interior lighting (the `InteriorSceneLighting` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/interior_lighting.md) 4. [Depth of field](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/depth_of_field.md) High-level API: [tdw_image_dataset](https://github.com/alters-mit/tdw_image_dataset) ## 8. Physics **[Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/overview.md)** ### 8.1 Physics (PhysX) 1. [PhysX](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/physx.md) 2. [Object physics parameters](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/physics_objects.md) 3. [`Rigidbodies` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/rigidbodies.md) 4. [`Collision` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/collisions.md) 5. [Apply forces to objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/forces.md) 6. [Skip physics frames](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/step_physics.md) 7. [Disable physics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/disable_physics.md) High-level API: [tdw_physics](https://github.com/alters-mit/tdw_physics) ### 8.2 Physics (Obi) 1. [Obi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi.md) 2. [Fluids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/fluids.md) 2. [Cloth](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/cloth.md) 3. [`ObiParticles` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi_particles.md) 4. [Colliders and collision materials](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/colliders_and_collision_materials.md) 5. [Solvers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/solvers.md) 6. [Obi and robots](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/robots.md) 6. [Obi and Flex](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi_and_flex.md) ### 8.3 Physics (Flex) 1. [Flex](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/flex.md) 2. [Solid and soft actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/solid_and_soft.md) 3. [Cloth actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/cloth.md) 4. [Fluid and source actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/fluid_and_source.md) 5. [Move, rotate, and scale Flex objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/transform.md) 6. [`FlexParticles` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/output_data.md) 7. [Apply forces to Flex objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/forces.md) 8. [Reset a Flex scene](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/reset_scene.md) 8. [Other Flex commands](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/other_commands.md) High-level API: [tdw_physics](https://github.com/alters-mit/tdw_physics) ## 9. Audio 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/overview.md) 2. [Initialize audio and play .wav files](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/initialize_audio.md) 3. [Resonance Audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/resonance_audio.md) 4. [`PyImpact` (dynamic impact sounds)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/py_impact.md) 6. [Recording audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/record_audio.md) 6. [`PyImpact` (advanced API)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/py_impact_advanced.md) 7. [Audio perception](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/audio_perception.md) ## 10. Video Recording 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/overview.md) 2. [Image-only video](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/images.md) 3. [Video with audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/audio.md) 1. [Video with audio (Linux)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_linux.md) 2. [Video with audio (OS X)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_osx.md) 3. [Video with audio (Windows)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_windows.md) ## 11. Agents [**Overview**](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/agents/overview.md) ### 11.1 Robots 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/overview.md) 2. [The `Robot` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/robot_add_on.md) 3. [Robot arm add-ons](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/robot_arm.md) 4. [Robot collision detection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/collision_detection.md) 5. [Select a robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/select_robot.md) 6. [Add your own robots to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/custom_robots.md) 7. [Robotics API (low-level)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/custom_robots.md) 8. [Add a camera to a robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/add_camera.md) ### 11.2 Magnebots 1. [Magnebot API (external repo)](https://github.com/alters-mit/magnebot) ### 11.3 Replicants 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/overview.md) 2. [Actions](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/actions.md) 3. [Output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/output_data.md) 4. [Collision detection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/collision_detection.md) 5. [Movement](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/movement.md) 6. [Animations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/animations.md) 7. [Arm articulation, pt. 1: Basics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_1.md) 8. [Arm articulation, pt. 2: Grasp and drop objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_2.md) 9. [Arm articulation, pt. 3: Advanced topics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_3.md) 10. [Arm articulation, pt. 4: Stacking objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_4.md) 11. [Head rotation](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/head_rotation.md) 12. [Navigation](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/navigation.md) 13. [Custom actions](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/custom_actions.md) 14. [Multiple Replicants](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/multiple_replicants.md) 15. [Reset](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/reset.md) ### 11.4 Drones 1. [Drones](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/drone/drone.md) ### 11.5 Virtual Reality (VR) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/vr/overview.md) 2. [Oculus Touch rigs](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/vr/oculus_touch.md) ### 11.6 Keyboard and Mouse 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/overview.md) 2. [Mouse input](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/mouse.md) 3. [The `FirstPersonAvatar`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/first_person_avatar.md) 4. [Keyboard input](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/keyboard.md) ### 11.7 Embodied avatars 1. [The `EmbodiedAvatar`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/embodied_avatars/embodied_avatar.md) ## 12. Multi-agent simulations 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/multi_agent/overview.md) 2. [Custom agent classes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/multi_agent/custom_agent_classes.md) ## 13. Navigation 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/overview.md) 2. [NavMesh pathfinding](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/nav_mesh.md) 3. [Occupancy maps](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/occupancy_maps.md) ## 14. Non-physics objects ### 14.1 Non-physics humanoids 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/overview.md) 2. [SMPL humanoids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/smpl.md) 3. [Create custom non-physics humanoids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/custom_humanoids.md) 4. [Create custom humanoid animations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/custom_animations.md) ### 14.2 Misc. non-physics objects 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/overview.md) 2. [Position markers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/position_markers.md) 3. [Line renderers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/line_renderers.md) 4. [Textured quads](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/textured_quads.md) 5. [User Interface (the `UI` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/ui.md) 6. [Compass rose](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/compass_rose.md) 7. [Visual Effects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/visual_effects.md) 8. [The `FloorplanFlood` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/floorplan_flood.md) 9. [Empty objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/empty_objects.md) ## 15. Misc. other topics 1. [C# source code](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/c_sharp_sources.md) 2. [Freezing your code](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/freeze.md) 2. [Download asset bundles](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/download_asset_bundles.md) # API Documentation ## Command API - [Command API](https://github.com/threedworld-mit/tdw/blob/master/Documentation/api/command_api.md) - [Output Data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/api/output_data.md) ## `tdw` module API **tdw** - [AudioConstants](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/audio_constants.md) - [AudioUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/audio_utils.md) - [CardinalDirection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/cardinal_direction.md) - [Controller](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/controller.md) - [IntPair](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/int_pair.md) - [OrdinalDirection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/ordinal_direction.md) - [QuaternionUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/quaternion_utils.md) - [RemoteBuildLauncher](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/remote_build_launcher.md) - [TDWUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/tdw_utils.md) **tdw.add_ons** - [AddOn](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/add_on.md) - [AudioInitializer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/audio_initializer.md) - [AudioInitializerBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/audio_initializer_base.md) - [AvatarBody](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/avatar_body.md) - [Benchmark](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/benchmark.md) - [CinematicCamera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/cinematic_camera.md) - [CollisionManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/collision_manager.md) - [CompositeObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/composite_object_manager.md) - [ContainerManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/container_manager.md) - [Drone](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/drone.md) - [EmbodiedAvatar](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/embodied_avatar.md) - [EmptyObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/empty_object_manager.md) - [FirstPersonAvatar](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/first_person_avatar.md) - [Floorplan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan.md) - [FloorplanFlood](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan_flood.md) - [ImageCapture](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/image_capture.md) - [InteriorSceneLighting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/interior_scene_lighting.md) - [JsonWriter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/json_writer.md) - [Keyboard](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/keyboard.md) - [LisdfReader](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/lisdf_reader.md) - [Logger](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/logger.md) - [LogPlayback](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/log_playback.md) - [ModelVerifier](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/model_verifier.md) - [Mouse](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/mouse.md) - [NavMesh](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/nav_mesh.md) - [Obi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/obi.md) - [ObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/object_manager.md) - [OccupancyMap](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/occupancy_map.md) - [OculusTouch](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/oculus_touch.md) - [OutputDataWriter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/output_data_writer.md) - [PhysicsAudioRecorder](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/physics_audio_recorder.md) - [ProcGenKitchen](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/proc_gen_kitchen.md) - [PyImpact](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/py_impact.md) - [Replicant](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/replicant.md) - [ResonanceAudioInitializer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/resonance_audio_initializer.md) - [Robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot.md) - [RobotArm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot_arm.md) - [RobotBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot_base.md) - [StepPhysics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/step_physics.md) - [ThirdPersonCamera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/third_person_camera.md) - [ThirdPersonCameraBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/third_person_camera_base.md) - [TriggerCollisionManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/trigger_collision_manager.md) - [UI](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/ui.md) - [VR](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/vr.md) - [Writer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/writer.md) **tdw.asset_bundle_creator** - [AnimationCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/animation_creator.md) - [AssetBundleCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/asset_bundle_creator.md) - [CompositeObjectCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/composite_object_creator.md) - [HumanoidCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/humanoid_creator.md) - [HumanoidCreatorBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/humanoid_creator_base.md) - [ModelCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/model_creator.md) - [RobotCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/robot_creator.md) **tdw.collision_data** - [CollisionBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_base.md) - [CollisionObjEnv](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_obj_env.md) - [CollisionObjObj](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_obj_obj.md) - [TriggerColliderShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/trigger_collider_shape.md) - [TriggerCollisionEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/trigger_collision_event.md) **tdw.container_data** - [BoxContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/box_container.md) - [ContainerShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/container_shape.md) - [ContainerTag](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/container_tag.md) - [ContainmentEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/containment_event.md) - [CylinderContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/cylinder_container.md) - [SphereContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/sphere_container.md) **tdw.drone** - [DroneDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/drone/drone_dynamic.md) **tdw.flex_data** - [FluidType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/flex_data/fluid_type.md) **tdw.librarian** - [DroneLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/drone_librarian.md) - [HdriSkyboxLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/hdri_skybox_librarian.md) - [HumanoidAnimationLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/humanoid_animation_librarian.md) - [HumanoidLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/humanoid_librarian.md) - [MaterialLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/material_librarian.md) - [ModelLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/model_librarian.md) - [RobotLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/robot_librarian.md) - [SceneLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/scene_librarian.md) - [VisualEffectLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/visual_effect_librarian.md) **tdw.lisdf_data** - [LisdfRobotMetadata](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/lisdf_data/lisdf_robot_metadata.md) **tdw.model_tests** - [MissingMaterials](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/missing_materials.md) - [ModelReport](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/model_report.md) - [ModelTest](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/model_test.md) - [PhysicsQuality](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/physics_quality.md) - [RotateObjectTest](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/rotate_object_test.md) **tdw.obi_data** - [ForceMode](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/force_mode.md) - [ObiActor](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/obi_actor.md) **tdw.obi_data.cloth** - [ClothMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/cloth_material.md) - [SheetType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/sheet_type.md) - [TetherParticleGroup](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/tether_particle_group.md) - [TetherType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/tether_type.md) - [VolumeType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/volume_type.md) **tdw.obi_data.collision_materials** - [CollisionMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/collision_materials/collision_material.md) - [MaterialCombineMode](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/collision_materials/material_combine_mode.md) **tdw.obi_data.fluids** - [CubeEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/cube_emitter.md) - [DiskEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/disk_emitter.md) - [EdgeEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/edge_emitter.md) - [EmitterSamplingMethod](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/emitter_sampling_method.md) - [EmitterShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/emitter_shape.md) - [Fluid](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/fluid.md) - [FluidBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/fluid_base.md) - [GranularFluid](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/granular_fluid.md) - [SphereEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/sphere_emitter.md) **tdw.object_data** - [Bound](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/bound.md) - [ObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/object_static.md) - [Rigidbody](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/rigidbody.md) - [Transform](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/transform.md) **tdw.object_data.composite_object** - [CompositeObjectDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/composite_object_dynamic.md) - [CompositeObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/composite_object_static.md) **tdw.object_data.composite_object.sub_object** - [HingeDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_dynamic.md) - [HingeStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_static.md) - [HingeStaticBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_static_base.md) - [LightDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/light_dynamic.md) - [LightStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/light_static.md) - [MotorStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/motor_static.md) - [NonMachineStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/non_machine_static.md) - [PrismaticJointStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/prismatic_joint_static.md) - [SpringStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/spring_static.md) - [SubObjectDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/sub_object_dynamic.md) - [SubObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/sub_object_static.md) **tdw.physics_audio** - [AudioMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/audio_material.md) - [Base64Sound](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/base64_sound.md) - [CollisionAudioEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_event.md) - [CollisionAudioInfo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_info.md) - [CollisionAudioType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_type.md) - [Modes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/modes.md) - [ObjectAudioStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/object_audio_static.md) - [ScrapeMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_material.md) - [ScrapeModel](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_model.md) - [ScrapeSubObject](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_sub_object.md) **tdw.proc_gen.arrangements** - [Arrangement](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement.md) - [ArrangementAlongWall](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement_along_wall.md) - [ArrangementWithRootObject](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement_with_root_object.md) - [Basket](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/basket.md) - [CupAndCoaster](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cup_and_coaster.md) - [Dishwasher](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/dishwasher.md) - [KitchenCabinet](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_cabinet.md) - [KitchenCounter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_counter.md) - [KitchenCounterTop](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_counter_top.md) - [KitchenTable](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_table.md) - [Microwave](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/microwave.md) - [Painting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/painting.md) - [Plate](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/plate.md) - [Radiator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/radiator.md) - [Refrigerator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/refrigerator.md) - [Shelf](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/shelf.md) - [SideTable](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/side_table.md) - [Sink](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/sink.md) - [StackOfPlates](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stack_of_plates.md) - [Stool](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stool.md) - [Stove](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stove.md) - [Suitcase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/suitcase.md) - [TableAndChairs](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/table_and_chairs.md) - [TableSetting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/table_setting.md) - [Void](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/void.md) - [WallCabinet](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/wall_cabinet.md) **tdw.proc_gen.arrangements.cabinetry** - [Cabinetry](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cabinetry/cabinetry.md) - [CabinetryType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cabinetry/cabinetry_type.md) **tdw.release** - [Build](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/release/build.md) - [PyPi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/release/pypi.md) **tdw.replicant** - [ActionStatus](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/action_status.md) - [Arm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/arm.md) - [CollisionDetection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/collision_detection.md) - [ImageFrequency](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/image_frequency.md) - [ReplicantBodyPart](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_body_part.md) - [ReplicantDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_dynamic.md) - [ReplicantStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_static.md) **tdw.replicant.actions** - [Action](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/action.md) - [Animate](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/animate.md) - [ArmMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/arm_motion.md) - [DoNothing](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/do_nothing.md) - [Drop](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/drop.md) - [Grasp](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/grasp.md) - [HeadMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/head_motion.md) - [IkMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/ik_motion.md) - [LookAt](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/look_at.md) - [MoveBy](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/move_by.md) - [MoveTo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/move_to.md) - [ReachFor](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reach_for.md) - [ReachForWithPlan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reach_for_with_plan.md) - [ResetArm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reset_arm.md) - [ResetHead](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reset_head.md) - [RotateHead](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/rotate_head.md) - [TurnBy](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/turn_by.md) - [TurnTo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/turn_to.md) **tdw.replicant.ik_plans** - [IkPlan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/ik_plan.md) - [IkPlanType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/ik_plan_type.md) - [VerticalHorizontal](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/vertical_horizontal.md) **tdw.robot_data** - [Drive](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/drive.md) - [JointDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_dynamic.md) - [JointStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_static.md) - [JointType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_type.md) - [NonMoving](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/non_moving.md) - [RobotDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/robot_dynamic.md) - [RobotStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/robot_static.md) **tdw.scene_data** - [InteriorRegion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/interior_region.md) - [RegionBounds](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/region_bounds.md) - [Room](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/room.md) - [SceneBounds](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/scene_bounds.md) **tdw.vr_data** - [OculusTouchButton](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/vr_data/oculus_touch_button.md) - [RigType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/vr_data/rig_type.md) # Performance benchmarks 1. [Performance benchmarks](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/benchmark.md) 2. [Image capture](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/image_capture.md) 3. [Object data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/object_data.md) 4. [Command deserialization](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/command_deserialization.md) %package help Summary: Development documents and examples for tdw Provides: python3-tdw-doc %description help # 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. - [Code of Conduct](https://github.com/threedworld-mit/tdw/blob/master/code_of_conduct.md) - [Changelog](https://github.com/threedworld-mit/tdw/blob/master/Documentation/Changelog.md) - [License](https://github.com/threedworld-mit/tdw/blob/master/LICENSE.txt) - [Website](https://threedworld.org/) - [Example controllers](https://github.com/threedworld-mit/tdw/tree/master/Python/example_controllers) # General guide to TDW ## Setup ### 1.1 Installation (Read this first!) 1. [Install TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/setup/install.md) 3. [Upgrade TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/setup/upgrade.md) ### 1.2 How to run TDW on a Linux server 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/overview.md) 2. [Launch a TDW build on a remote server from a personal computer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/launch_build.md) 3. [Remote rendering with xpra](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/xpra.md) 4. [X11 forwarding](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/remote/x11_forwarding.md) ## Core Concepts 1. [The controller](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/controller.md) 2. [Auto-launching the TDW build](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/launch_build.md) 3. [Commands](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/commands.md) 4. [Design philosophy of TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/design_philosophy.md) 5. [Scenes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/scenes.md) 6. [Avatars and cameras](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/avatars.md) 7. [Add-ons and the `ThirdPersonCamera`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/add_ons.md) 8. [Objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/objects.md) 9. [Output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/output_data.md) 10. [Images](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/images.md) ## Troubleshooting 1. [How to report an issue](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/issues.md) 2. [Common errors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/common_errors.md) 3. [Performance optimizations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/performance_optimizations.md) 4. [Good coding practices](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/troubleshooting/good_coding_practices.md) # Tutorials ## 1. Scene Setup **[Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup/overview.md)** ### 1.1 Scene Setup (High-Level APIs) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/overview.md) 2. [Procedural generation (the `ProcGenKitchen` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/proc_gen_kitchen.md) 2. [Regions, interior regions, and rooms](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/rooms.md) 3. [Procedural object arrangements](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/arrangements.md) 4. [Scripted object placement (floorplan layouts)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/floorplans.md) 5. [Reset a scene](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_high_level/reset_scene.md) High-level APs: [Floorplan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan.md) and [ProcGenKitchen](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/proc_gen_kitchen.md) ### 1.2 Scene Setup (Low-Level APIs) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/overview.md) 2. [Units and data formats](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/units.md) 3. [`Bounds` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/bounds.md) 4. [Visual materials, textures, and colors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/materials_textures_colors.md) 5. [ProcGenRoom](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/scene_setup_low_level/proc_gen_room.md) ## 2. 3D Models ### 2.1 Other model libraries 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/overview.md) 2. [Free models](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/free_models.md) 3. [Non-free models](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/3d_models/non_free_models.md) ### 2.2 Custom models 1. [Add your own models to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/custom_models/custom_models.md) 2. [Add ShapeNet models to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/custom_models/shapenet.md) ### 2.3 Composite (articulated) objects 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/overview.md) 2. [Composite objects in TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/composite_objects.md) 3. [Create a composite object from a prefab](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/create_from_prefab.md) 4. [Create a composite object from a .urdf file](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/composite_objects/create_from_urdf.md) ## 3. Read/Write to Disk 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/overview.md) 2. [The `Logger` and `LogPlayback` add-ons](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/logger.md) 3. [The `JsonWriter` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/json.md) 4. [The `OutputDataWriter` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/output_data_writer.md) 5. [Create a custom data writer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/custom_writers.md) 6. [Import .sdf and .lisdf files](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/read_write/lisdf.md) 7. [Images](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/core_concepts/images.md) (Cross-referenced with "Core Concepts") 8. [Audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/overview.md) (Cross-referenced with "Audio") 9. [Video](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/overview.md) (Cross-referenced with "Video Recording") ## 4. Semantic States 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/overview.md) 2. [Line of sight (`Raycast` output data)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/raycast.md) 3. [Proximity to region (`Overlap` output data)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/overlap.md) 3. [Proximity to other objects (the `TriggerCollisionManager` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/trigger_collisions.md) 3. [Containment (the `ContainerManager` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/containment.md) 4. [Open and closed states](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/openness.md) 4. [Grasped objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/semantic_states/grasped.md) ## 5. Visual Perception 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/overview.md) 2. [Instance ID segmentation colors (`_id` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/id.md) 3. [Semantic category segmentation colors (`_category` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/category.md) 4. [Depth maps (`_depth` and `_depth_simple` passes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/depth.md) 5. [Motion perception (`_flow` pass)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/flow.md) 6. [Other image passes (`_mask`, `_normals`, and `_albedo` passes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/other_passes.md) 7. [`Occlusion` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/visual_perception/occlusion.md) ## 6. Camera Controls 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/overview.md) 2. [Move a camera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/position.md) 3. [Rotate a camera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/rotation.md) 4. [Follow an object](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/follow.md) 4. [The `CinematicCamera` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/camera/cinematic_camera.md) ## 7. Photorealism 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/overview.md) 2. [Lighting (HDRI skyboxes)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/lighting.md) 3. [Post-processing](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/post_processing.md) 3. [Interior lighting (the `InteriorSceneLighting` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/interior_lighting.md) 4. [Depth of field](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/photorealism/depth_of_field.md) High-level API: [tdw_image_dataset](https://github.com/alters-mit/tdw_image_dataset) ## 8. Physics **[Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/overview.md)** ### 8.1 Physics (PhysX) 1. [PhysX](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/physx.md) 2. [Object physics parameters](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/physics_objects.md) 3. [`Rigidbodies` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/rigidbodies.md) 4. [`Collision` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/collisions.md) 5. [Apply forces to objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/forces.md) 6. [Skip physics frames](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/step_physics.md) 7. [Disable physics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/physx/disable_physics.md) High-level API: [tdw_physics](https://github.com/alters-mit/tdw_physics) ### 8.2 Physics (Obi) 1. [Obi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi.md) 2. [Fluids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/fluids.md) 2. [Cloth](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/cloth.md) 3. [`ObiParticles` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi_particles.md) 4. [Colliders and collision materials](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/colliders_and_collision_materials.md) 5. [Solvers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/solvers.md) 6. [Obi and robots](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/robots.md) 6. [Obi and Flex](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/obi/obi_and_flex.md) ### 8.3 Physics (Flex) 1. [Flex](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/flex.md) 2. [Solid and soft actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/solid_and_soft.md) 3. [Cloth actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/cloth.md) 4. [Fluid and source actors](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/fluid_and_source.md) 5. [Move, rotate, and scale Flex objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/transform.md) 6. [`FlexParticles` output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/output_data.md) 7. [Apply forces to Flex objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/forces.md) 8. [Reset a Flex scene](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/reset_scene.md) 8. [Other Flex commands](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/flex/other_commands.md) High-level API: [tdw_physics](https://github.com/alters-mit/tdw_physics) ## 9. Audio 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/overview.md) 2. [Initialize audio and play .wav files](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/initialize_audio.md) 3. [Resonance Audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/resonance_audio.md) 4. [`PyImpact` (dynamic impact sounds)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/py_impact.md) 6. [Recording audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/record_audio.md) 6. [`PyImpact` (advanced API)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/py_impact_advanced.md) 7. [Audio perception](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/audio/audio_perception.md) ## 10. Video Recording 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/overview.md) 2. [Image-only video](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/images.md) 3. [Video with audio](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/audio.md) 1. [Video with audio (Linux)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_linux.md) 2. [Video with audio (OS X)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_osx.md) 3. [Video with audio (Windows)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/video/screen_record_windows.md) ## 11. Agents [**Overview**](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/agents/overview.md) ### 11.1 Robots 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/overview.md) 2. [The `Robot` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/robot_add_on.md) 3. [Robot arm add-ons](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/robot_arm.md) 4. [Robot collision detection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/collision_detection.md) 5. [Select a robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/select_robot.md) 6. [Add your own robots to TDW](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/custom_robots.md) 7. [Robotics API (low-level)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/custom_robots.md) 8. [Add a camera to a robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/robots/add_camera.md) ### 11.2 Magnebots 1. [Magnebot API (external repo)](https://github.com/alters-mit/magnebot) ### 11.3 Replicants 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/overview.md) 2. [Actions](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/actions.md) 3. [Output data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/output_data.md) 4. [Collision detection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/collision_detection.md) 5. [Movement](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/movement.md) 6. [Animations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/animations.md) 7. [Arm articulation, pt. 1: Basics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_1.md) 8. [Arm articulation, pt. 2: Grasp and drop objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_2.md) 9. [Arm articulation, pt. 3: Advanced topics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_3.md) 10. [Arm articulation, pt. 4: Stacking objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/arm_articulation_4.md) 11. [Head rotation](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/head_rotation.md) 12. [Navigation](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/navigation.md) 13. [Custom actions](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/custom_actions.md) 14. [Multiple Replicants](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/multiple_replicants.md) 15. [Reset](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/replicants/reset.md) ### 11.4 Drones 1. [Drones](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/drone/drone.md) ### 11.5 Virtual Reality (VR) 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/vr/overview.md) 2. [Oculus Touch rigs](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/vr/oculus_touch.md) ### 11.6 Keyboard and Mouse 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/overview.md) 2. [Mouse input](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/mouse.md) 3. [The `FirstPersonAvatar`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/first_person_avatar.md) 4. [Keyboard input](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/keyboard_and_mouse/keyboard.md) ### 11.7 Embodied avatars 1. [The `EmbodiedAvatar`](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/embodied_avatars/embodied_avatar.md) ## 12. Multi-agent simulations 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/multi_agent/overview.md) 2. [Custom agent classes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/multi_agent/custom_agent_classes.md) ## 13. Navigation 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/overview.md) 2. [NavMesh pathfinding](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/nav_mesh.md) 3. [Occupancy maps](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/navigation/occupancy_maps.md) ## 14. Non-physics objects ### 14.1 Non-physics humanoids 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/overview.md) 2. [SMPL humanoids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/smpl.md) 3. [Create custom non-physics humanoids](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/custom_humanoids.md) 4. [Create custom humanoid animations](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics_humanoids/custom_animations.md) ### 14.2 Misc. non-physics objects 1. [Overview](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/overview.md) 2. [Position markers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/position_markers.md) 3. [Line renderers](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/line_renderers.md) 4. [Textured quads](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/textured_quads.md) 5. [User Interface (the `UI` add-on)](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/ui.md) 6. [Compass rose](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/compass_rose.md) 7. [Visual Effects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/visual_effects.md) 8. [The `FloorplanFlood` add-on](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/floorplan_flood.md) 9. [Empty objects](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/non_physics/empty_objects.md) ## 15. Misc. other topics 1. [C# source code](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/c_sharp_sources.md) 2. [Freezing your code](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/freeze.md) 2. [Download asset bundles](https://github.com/threedworld-mit/tdw/blob/master/Documentation/lessons/misc/download_asset_bundles.md) # API Documentation ## Command API - [Command API](https://github.com/threedworld-mit/tdw/blob/master/Documentation/api/command_api.md) - [Output Data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/api/output_data.md) ## `tdw` module API **tdw** - [AudioConstants](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/audio_constants.md) - [AudioUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/audio_utils.md) - [CardinalDirection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/cardinal_direction.md) - [Controller](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/controller.md) - [IntPair](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/int_pair.md) - [OrdinalDirection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/ordinal_direction.md) - [QuaternionUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/quaternion_utils.md) - [RemoteBuildLauncher](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/remote_build_launcher.md) - [TDWUtils](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/tdw_utils.md) **tdw.add_ons** - [AddOn](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/add_on.md) - [AudioInitializer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/audio_initializer.md) - [AudioInitializerBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/audio_initializer_base.md) - [AvatarBody](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/avatar_body.md) - [Benchmark](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/benchmark.md) - [CinematicCamera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/cinematic_camera.md) - [CollisionManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/collision_manager.md) - [CompositeObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/composite_object_manager.md) - [ContainerManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/container_manager.md) - [Drone](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/drone.md) - [EmbodiedAvatar](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/embodied_avatar.md) - [EmptyObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/empty_object_manager.md) - [FirstPersonAvatar](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/first_person_avatar.md) - [Floorplan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan.md) - [FloorplanFlood](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/floorplan_flood.md) - [ImageCapture](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/image_capture.md) - [InteriorSceneLighting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/interior_scene_lighting.md) - [JsonWriter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/json_writer.md) - [Keyboard](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/keyboard.md) - [LisdfReader](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/lisdf_reader.md) - [Logger](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/logger.md) - [LogPlayback](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/log_playback.md) - [ModelVerifier](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/model_verifier.md) - [Mouse](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/mouse.md) - [NavMesh](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/nav_mesh.md) - [Obi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/obi.md) - [ObjectManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/object_manager.md) - [OccupancyMap](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/occupancy_map.md) - [OculusTouch](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/oculus_touch.md) - [OutputDataWriter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/output_data_writer.md) - [PhysicsAudioRecorder](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/physics_audio_recorder.md) - [ProcGenKitchen](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/proc_gen_kitchen.md) - [PyImpact](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/py_impact.md) - [Replicant](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/replicant.md) - [ResonanceAudioInitializer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/resonance_audio_initializer.md) - [Robot](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot.md) - [RobotArm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot_arm.md) - [RobotBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/robot_base.md) - [StepPhysics](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/step_physics.md) - [ThirdPersonCamera](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/third_person_camera.md) - [ThirdPersonCameraBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/third_person_camera_base.md) - [TriggerCollisionManager](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/trigger_collision_manager.md) - [UI](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/ui.md) - [VR](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/vr.md) - [Writer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/add_ons/writer.md) **tdw.asset_bundle_creator** - [AnimationCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/animation_creator.md) - [AssetBundleCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/asset_bundle_creator.md) - [CompositeObjectCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/composite_object_creator.md) - [HumanoidCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/humanoid_creator.md) - [HumanoidCreatorBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/humanoid_creator_base.md) - [ModelCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/model_creator.md) - [RobotCreator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/asset_bundle_creator/robot_creator.md) **tdw.collision_data** - [CollisionBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_base.md) - [CollisionObjEnv](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_obj_env.md) - [CollisionObjObj](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/collision_obj_obj.md) - [TriggerColliderShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/trigger_collider_shape.md) - [TriggerCollisionEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/collision_data/trigger_collision_event.md) **tdw.container_data** - [BoxContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/box_container.md) - [ContainerShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/container_shape.md) - [ContainerTag](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/container_tag.md) - [ContainmentEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/containment_event.md) - [CylinderContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/cylinder_container.md) - [SphereContainer](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/container_data/sphere_container.md) **tdw.drone** - [DroneDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/drone/drone_dynamic.md) **tdw.flex_data** - [FluidType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/flex_data/fluid_type.md) **tdw.librarian** - [DroneLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/drone_librarian.md) - [HdriSkyboxLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/hdri_skybox_librarian.md) - [HumanoidAnimationLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/humanoid_animation_librarian.md) - [HumanoidLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/humanoid_librarian.md) - [MaterialLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/material_librarian.md) - [ModelLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/model_librarian.md) - [RobotLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/robot_librarian.md) - [SceneLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/scene_librarian.md) - [VisualEffectLibrarian](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/librarian/visual_effect_librarian.md) **tdw.lisdf_data** - [LisdfRobotMetadata](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/lisdf_data/lisdf_robot_metadata.md) **tdw.model_tests** - [MissingMaterials](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/missing_materials.md) - [ModelReport](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/model_report.md) - [ModelTest](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/model_test.md) - [PhysicsQuality](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/physics_quality.md) - [RotateObjectTest](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/model_tests/rotate_object_test.md) **tdw.obi_data** - [ForceMode](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/force_mode.md) - [ObiActor](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/obi_actor.md) **tdw.obi_data.cloth** - [ClothMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/cloth_material.md) - [SheetType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/sheet_type.md) - [TetherParticleGroup](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/tether_particle_group.md) - [TetherType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/tether_type.md) - [VolumeType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/cloth/volume_type.md) **tdw.obi_data.collision_materials** - [CollisionMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/collision_materials/collision_material.md) - [MaterialCombineMode](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/collision_materials/material_combine_mode.md) **tdw.obi_data.fluids** - [CubeEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/cube_emitter.md) - [DiskEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/disk_emitter.md) - [EdgeEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/edge_emitter.md) - [EmitterSamplingMethod](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/emitter_sampling_method.md) - [EmitterShape](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/emitter_shape.md) - [Fluid](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/fluid.md) - [FluidBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/fluid_base.md) - [GranularFluid](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/granular_fluid.md) - [SphereEmitter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/obi_data/fluids/sphere_emitter.md) **tdw.object_data** - [Bound](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/bound.md) - [ObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/object_static.md) - [Rigidbody](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/rigidbody.md) - [Transform](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/transform.md) **tdw.object_data.composite_object** - [CompositeObjectDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/composite_object_dynamic.md) - [CompositeObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/composite_object_static.md) **tdw.object_data.composite_object.sub_object** - [HingeDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_dynamic.md) - [HingeStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_static.md) - [HingeStaticBase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/hinge_static_base.md) - [LightDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/light_dynamic.md) - [LightStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/light_static.md) - [MotorStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/motor_static.md) - [NonMachineStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/non_machine_static.md) - [PrismaticJointStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/prismatic_joint_static.md) - [SpringStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/spring_static.md) - [SubObjectDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/sub_object_dynamic.md) - [SubObjectStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/object_data/composite_object/sub_object/sub_object_static.md) **tdw.physics_audio** - [AudioMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/audio_material.md) - [Base64Sound](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/base64_sound.md) - [CollisionAudioEvent](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_event.md) - [CollisionAudioInfo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_info.md) - [CollisionAudioType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/collision_audio_type.md) - [Modes](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/modes.md) - [ObjectAudioStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/object_audio_static.md) - [ScrapeMaterial](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_material.md) - [ScrapeModel](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_model.md) - [ScrapeSubObject](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/physics_audio/scrape_sub_object.md) **tdw.proc_gen.arrangements** - [Arrangement](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement.md) - [ArrangementAlongWall](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement_along_wall.md) - [ArrangementWithRootObject](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/arrangement_with_root_object.md) - [Basket](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/basket.md) - [CupAndCoaster](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cup_and_coaster.md) - [Dishwasher](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/dishwasher.md) - [KitchenCabinet](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_cabinet.md) - [KitchenCounter](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_counter.md) - [KitchenCounterTop](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_counter_top.md) - [KitchenTable](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/kitchen_table.md) - [Microwave](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/microwave.md) - [Painting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/painting.md) - [Plate](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/plate.md) - [Radiator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/radiator.md) - [Refrigerator](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/refrigerator.md) - [Shelf](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/shelf.md) - [SideTable](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/side_table.md) - [Sink](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/sink.md) - [StackOfPlates](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stack_of_plates.md) - [Stool](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stool.md) - [Stove](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/stove.md) - [Suitcase](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/suitcase.md) - [TableAndChairs](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/table_and_chairs.md) - [TableSetting](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/table_setting.md) - [Void](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/void.md) - [WallCabinet](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/wall_cabinet.md) **tdw.proc_gen.arrangements.cabinetry** - [Cabinetry](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cabinetry/cabinetry.md) - [CabinetryType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/proc_gen/arrangements/cabinetry/cabinetry_type.md) **tdw.release** - [Build](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/release/build.md) - [PyPi](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/release/pypi.md) **tdw.replicant** - [ActionStatus](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/action_status.md) - [Arm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/arm.md) - [CollisionDetection](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/collision_detection.md) - [ImageFrequency](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/image_frequency.md) - [ReplicantBodyPart](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_body_part.md) - [ReplicantDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_dynamic.md) - [ReplicantStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/replicant_static.md) **tdw.replicant.actions** - [Action](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/action.md) - [Animate](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/animate.md) - [ArmMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/arm_motion.md) - [DoNothing](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/do_nothing.md) - [Drop](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/drop.md) - [Grasp](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/grasp.md) - [HeadMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/head_motion.md) - [IkMotion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/ik_motion.md) - [LookAt](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/look_at.md) - [MoveBy](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/move_by.md) - [MoveTo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/move_to.md) - [ReachFor](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reach_for.md) - [ReachForWithPlan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reach_for_with_plan.md) - [ResetArm](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reset_arm.md) - [ResetHead](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/reset_head.md) - [RotateHead](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/rotate_head.md) - [TurnBy](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/turn_by.md) - [TurnTo](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/actions/turn_to.md) **tdw.replicant.ik_plans** - [IkPlan](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/ik_plan.md) - [IkPlanType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/ik_plan_type.md) - [VerticalHorizontal](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/replicant/ik_plans/vertical_horizontal.md) **tdw.robot_data** - [Drive](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/drive.md) - [JointDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_dynamic.md) - [JointStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_static.md) - [JointType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/joint_type.md) - [NonMoving](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/non_moving.md) - [RobotDynamic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/robot_dynamic.md) - [RobotStatic](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/robot_data/robot_static.md) **tdw.scene_data** - [InteriorRegion](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/interior_region.md) - [RegionBounds](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/region_bounds.md) - [Room](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/room.md) - [SceneBounds](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/scene_data/scene_bounds.md) **tdw.vr_data** - [OculusTouchButton](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/vr_data/oculus_touch_button.md) - [RigType](https://github.com/threedworld-mit/tdw/blob/master/Documentation/python/vr_data/rig_type.md) # Performance benchmarks 1. [Performance benchmarks](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/benchmark.md) 2. [Image capture](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/image_capture.md) 3. [Object data](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/object_data.md) 4. [Command deserialization](https://github.com/threedworld-mit/tdw/blob/master/Documentation/benchmark/command_deserialization.md) %prep %autosetup -n tdw-1.11.18.0 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-tdw -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue May 30 2023 Python_Bot - 1.11.18.0-1 - Package Spec generated