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
2 changes: 1 addition & 1 deletion source/user_guide/getting_started/advanced_ik.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import numpy as np
import genesis as gs

########################## init ##########################
gs.init(seed=0, precision='32', logging_level='debug')
gs.init(seed=0, precision='32', logging_level='info')

########################## create a scene ##########################
scene = gs.Scene(
Expand Down
7 changes: 0 additions & 7 deletions source/user_guide/getting_started/command_line_tools.md

This file was deleted.

6 changes: 3 additions & 3 deletions source/user_guide/getting_started/misc_guidelines.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# 📝 Misc Guidelines
# 📝 Guidelines

(I will keep updating this)
- Use genesis.tensor whenever possible. Note that when we pass genesis tensor to taichi kernels, call tensor.assert_contiguous() to check whether it's contiguous, since taichi only support contiguous external tensor.
Expand Down Expand Up @@ -63,11 +63,11 @@
- offset value for its own children. e.g. a `geom` only stores `idx_offset_*` for `vert`, `face`, and `edge`.
- root vs base
- `root` is a more natural name as we use a tree structure for the links, while `base` is more informative from user's perspective
- Let's use `root` link inernally, and `base` link for docs etc.
- Let's use `root` link internally, and `base` link for docs etc.
- root pose vs q (current design subject to possible change)
- for both arm and single mesh, its pos and euler specified when loaded is its root pose, and q will be w.r.t to this
- control interface
- root pos should be merged with joint pos of the first (fixed) joint, which connectes world to the first link
- root pose should be merged with joint pose of the first (fixed) joint, which connects world to the first link
- if we want to control something, we will command velocity
- thus, if it’s a free joint, it’s ok. We will override velocity
- if it’s a fixed joint, there’s no dof for it, so we cannot control it
Expand Down
13 changes: 5 additions & 8 deletions source/user_guide/getting_started/soft_robots.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ import genesis as gs


########################## init ##########################
gs.init(seed=0, precision='32', logging_level='debug')
gs.init(seed=0, precision='32', logging_level='info')

########################## create a scene ##########################
dt = 5e-4
scene = gs.Scene(
sim_options=gs.options.SimOptions(
dt = 5e-4,
substeps=10,
gravity=(0, 0, 0),
),
Expand All @@ -25,12 +25,11 @@ scene = gs.Scene(
camera_fov=40,
),
mpm_options=gs.options.MPMOptions(
dt=dt,
lower_bound=(-1.0, -1.0, -0.2),
upper_bound=( 1.0, 1.0, 1.0),
),
fem_options=gs.options.FEMOptions(
dt=dt,
damping=45.0,
),
vis_options=gs.options.VisOptions(
show_world_frame=False,
Expand Down Expand Up @@ -179,12 +178,12 @@ import genesis as gs


########################## init ##########################
gs.init(seed=0, precision='32', logging_level='debug')
gs.init(seed=0, precision='32', logging_level='info')

######################## create a scene ##########################
dt = 3e-3
scene = gs.Scene(
sim_options=gs.options.SimOptions(
dt=3e-3,
substeps=10,
),
viewer_options= gs.options.ViewerOptions(
Expand All @@ -193,13 +192,11 @@ scene = gs.Scene(
camera_fov=40,
),
rigid_options=gs.options.RigidOptions(
dt=dt,
gravity=(0, 0, -9.8),
enable_collision=True,
enable_self_collision=False,
),
mpm_options=gs.options.MPMOptions(
dt=dt,
lower_bound=( 0.0, 0.0, -0.2),
upper_bound=( 1.0, 1.0, 1.0),
gravity=(0, 0, 0), # mimic gravity compensation
Expand Down
2 changes: 1 addition & 1 deletion source/user_guide/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ getting_started/hover_env
getting_started/manipulation
getting_started/terrain
getting_started/soft_robots
getting_started/command_line_tools
getting_started/miscellaneous
getting_started/config_system
```

Expand Down
10 changes: 5 additions & 5 deletions source/user_guide/overview/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,10 @@ If you are using Genesis with CUDA, make sure appropriate nvidia-driver is insta

## (Optional) Surface Reconstruction
If you need fancy visuals for visualizing particle-based entities (fluids, deformables, etc.), you typically need to reconstruct the mesh surface using the internal particle-based representation. For this purpose, [splashsurf](https://github.com/InteractiveComputerGraphics/splashsurf), a state-of-the-art surface reconstruction, is supported out-of-the-box. Alternatively, we also provide `ParticleMesher`, our own openVDB-based surface reconstruction tool, which is faster but lower quantity:
```bash
echo "export LD_LIBRARY_PATH=${PWD}/ext/ParticleMesher/ParticleMesherPy:$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
```
```bash
echo "export LD_LIBRARY_PATH=${PWD}/ext/ParticleMesher/ParticleMesherPy:$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
```

## (Optional) Ray Tracing Renderer

Expand Down Expand Up @@ -212,7 +212,7 @@ After installing Pytorch and Genesis, Taichi falls back to CPU, while torch init
Symptoms:

- running `python -c "import torch; print(torch.zeros((3,), device='cuda'))"` outputs `tensor([0., 0., 0.], device='cuda:0')`
- but running `python -c "import taichi as ti; ti.init(arch=ti.gpu)"` outputs something like
- but running `python -c "import gstaichi as ti; ti.init(arch=ti.gpu)"` outputs something like
```
[W 06/18/25 12:47:56.784 14507] [cuda_driver.cpp:load_lib@36] libcuda.so lib not found.
[Taichi] Starting on arch=vulkan
Expand Down