Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ Table of Contents

overview/sim/index
overview/gym/index
overview/vla/index
overview/rl/index

.. toctree::
Expand Down
2 changes: 1 addition & 1 deletion docs/source/overview/sim/sim_soft_object.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Soft bodies require both voxelization and physical attributes.

| Parameter | Type | Default | Description |
| :--- | :--- | :--- | :--- |
| `triangle_remesh_resolution` | `int` | `8` | Resolution to remesh the softbody mesh before building physx collision mesh. |
| `triangle_remesh_resolution` | `int` | `8` | Resolution to remesh the softbody mesh before building physics collision mesh. |
| `triangle_simplify_target` | `int` | `0` | Simplify mesh faces to target value. |
| `simulation_mesh_resolution` | `int` | `8` | Resolution to build simulation voxelize textra mesh. |
| `simulation_mesh_output_obj` | `bool` | `False` | Whether to output the simulation mesh as an obj file for debugging. |
Expand Down
4 changes: 0 additions & 4 deletions docs/source/overview/vla/index.rst

This file was deleted.

30 changes: 16 additions & 14 deletions docs/source/resources/roadmap.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,36 @@
# Roadmap

Currently, EmbodiChain is under active development. Our roadmap is as follows:
Currently, EmbodiChain is under active development. Our roadmap includes the following planned features and enhancements:

- Simulation:
- Rendering:
- Improve ray-tracing backend performance and fix some konwn issues.
- Add a high performance Hybrid rendering backend for better visual quality and speed trade-off.
- Support a more efficient real-time denoiser.
- Add a new rasterization backend for basic rendering tasks.
- Support 3DGS rendering mode (If we have enough bandwidth).
- Physics:
- Improve GPU physics throughput.
- Improve soft body simulation stability and add more examples and tasks.
- We are also exploring how to integrate [newton physics](https://github.com/newton-physics/newton) into EmbodiChain as an alternative physics backend.
- We are working on research and development of next-generation physics backend, supporting high-accuracy simulation, differentiable dynamics, and neural physical models for end-to-end AI integration.
- Sensors:
- Add contact and force sensors with examples.
- Add more physical sensors (eg, force sensor) with examples.
- Motion Generation:
- Add more advanced motion generation methods and examples.
- Add more advanced motion generation methods with examples.
- Useful Tools:
- We are working on USD support for EmbodiChain to enable better asset management and interoperability.
- We will release a simple Real2Sim pipeline, which enables automatic task generation from real-world data.
- Robots Integration:
- Add support for more robot models (eg: LeRobot, Unitree H1/G1, etc).

- Agents:
- Add more Reinforcement Learning examples and environments.
- We will release a Modular VLA framework for fast prototyping and training of embodied agents.
- We will release a simple online data streaming pipeline for Imitation Learning.
- Data Pipeline Coming Soon:
- We will release a Real2Sim pipeline, which enables automatic data generation and scaling from real-world seeding priors.
- We will release an agentic skill generation framework for automated expert trajectory generation.
- Add assets and scenes generator and the integration with data pipeline.

- Tasks:
- We will release a set of Real2Sim tasks as examples for EmbodiChain.
- We will release a set of tableware manipulation tasks for demonstration of data generation pipeline.
- Models & Training Infrastructure Coming Soon:
- We will release a modular VLA framework for fast prototyping and training of embodied agents.
- Add online data streaming pipeline for model training.

- Embodied Tasks Coming Soon:
- Add more benchmark tasks for EmbodiChain.
- Add more tasks with reinforcement learning support.
- Add a set of manipulation tasks for demonstration of data generation pipeline.

4 changes: 2 additions & 2 deletions embodichain/lab/gym/utils/gym_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,12 +126,12 @@ def batch(*args: Tuple[Union[np.ndarray, Dict]]):

def to_tensor(array: Array, device: Device | None = None):
"""
Maps any given sequence to a torch tensor on the CPU/GPU. If physx gpu is not enabled then we use CPU, otherwise GPU, unless specified
Maps any given sequence to a torch tensor on the CPU/GPU. If physics gpu is not enabled then we use CPU, otherwise GPU, unless specified
by the device argument

Args:
array: The data to map to a tensor
device: The device to put the tensor on. By default this is None and to_tensor will put the device on the GPU if physx is enabled
device: The device to put the tensor on. By default this is None and to_tensor will put the device on the GPU if physics is enabled
and CPU otherwise

"""
Expand Down
2 changes: 1 addition & 1 deletion embodichain/lab/sim/cfg.py
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ def from_dict(
class SoftbodyVoxelAttributesCfg:
# voxel config
triangle_remesh_resolution: int = 8
"""Resolution to remesh the softbody mesh before building physx collision mesh."""
"""Resolution to remesh the softbody mesh before building physics collision mesh."""

triangle_simplify_target: int = 0
"""Simplify mesh faces to target value. Do nothing if this value is zero."""
Expand Down
2 changes: 1 addition & 1 deletion embodichain/lab/sim/objects/soft_object.py
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,7 @@ def reset(self, env_ids: Sequence[int] | None = None) -> None:
local_env_ids = self._all_indices if env_ids is None else env_ids
num_instances = len(local_env_ids)

# TODO: set attr for soft body after loading in physx scene
# TODO: set attr for soft body after loading in physics scene.

# rest soft body to init_pos
pos = torch.as_tensor(
Expand Down