Project Layout

raisim2Lib is the public package workspace. It downloads and uses binary RaiSim and rayrai packages, then provides examples, wrappers, resources, and documentation around those packages. It is not the RaiSim engine source tree, so engine-internal benchmark sources and implementation files are not available here. This page maps the directories users most often need while installing the package and building examples.

Public Workspace Directories

Path

Purpose

raisim

Platform-specific binary RaiSim package with headers, libraries, and CMake config files.

rayrai

Platform-specific binary rayrai package with the renderer library, TCP viewer runtime, headers, and CMake config files.

examples

C++ example sources and their CMake project. CMake target names include primitive_grid and rayrai_tcp_viewer.

rsc

Runtime resources such as robot models, meshes, textures, USD/glTF assets, and example data.

raisimPy

Optional Python wrapper build for the binary RaiSim package.

raisimGymTorch

Reinforcement-learning package built against the binary RaiSim package.

docs

Sphinx documentation sources and generated example pages.

third_party

Third-party code used by optional wrappers and docs tooling.

cmake

CMake helpers for package discovery and local installation.

Build Directories

Build directories are generated locally and are not part of the repository. The docs use these names for clarity:

Build directory

Typical use

build

Default local build for examples and optional wrappers.

build-examples

Common local build directory for the example CMake project.

build-debug

Debug build for local debugging.

build-docs

CMake-driven docs build.

On Linux and macOS, a top-level build places example executables under the examples subdirectory of the build tree. The install target does not copy these source-built examples. The packaged TCP viewer is shipped separately under rayrai/bin. For example:

./build-examples/examples/primitive_grid
./build-examples/examples/rayrai_tcp_viewer
./rayrai/bin/rayrai_raisim_tcp_viewer

On Windows, CMake places runtime executables under <build-dir>/bin.

The package example tree documented under Examples contains grouped source directories such as src/server, src/rayrai, src/worlds, and src/xml. Target names, not source directory names, are the stable user-facing interface.

Installed Package Layout

The unpacked release contains separate package prefixes for RaiSim and rayrai:

<raisim2Lib>/raisim
<raisim2Lib>/rayrai

Downstream projects use CMAKE_PREFIX_PATH to find these installed packages. See Installation for environment setup and activation.

Where To Add New Things

Change

Usual location

New user-facing C++ example

examples/src plus a target registration in examples/CMakeLists.txt.

New example resource

rsc or examples/rsc, depending on whether it is shared package data or example-only data.

New Python wrapper behavior

raisimPy.

New RL package behavior

raisimGymTorch.

New docs page

docs/sections and the relevant toctree in index.rst or a section index page.

Keep examples focused on demonstrating the public binary-package APIs.