raisimOgre is a visualizer for raisim. It is a simple wrapper around Ogre3d (https://www.ogre3d.org/), which is an open-source 3d rendering library.
- 2019/12/18 Major code clean-up + light refactoring by Vasilios. You can now create multiple light sources.
- Now you can make simple graphs in raisimOgre using imgui + imgui_plot
- 2019/10/16, please pull ogre. I reported a skybox bug to ogre and added my fix to the forked repository.
- Mesh functionality added in RAISIM. Now RAISIM can simulate any trimesh (including non-convex ones).
- Linux only. support ubuntu 16.04 and 18.04 but might work on other distributions
- g++, gcc > 6 (how to install?)
- cmake > 3.10 (how to install?)
- raisimLib: the physics engine
Please install/save everything locally to prevent corrupting your system files. We will assume that you have a single workspace where you save all repos related to raisim. Here we introduce two variables
- WORKSPACE: workspace where you clone your git repos
- LOCAL_INSTALL: build directory where you install exported cmake libraries
To link against shared libraries in LOCAL_INSTALL, you have to let LDD know where the libraries are installed. This can be done adding the following line to your ~/bashrc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$LOCAL_INSTALL/lib
If you are using an IDE, ensure that it loads your bashrc. For Clion (which is the recommended IDE) users, the instruction can be found here.
If you have g++ >= 6.0 installed, you can switch your active compiler by
export CXX=/usr/bin/g++-8 && export CC=/usr/bin/gcc-8
First, install raisimLib (https://github.com/raisimTech/raisimLib).
Then, install dependencies of Ogre.
sudo apt-get install libgles2-mesa-dev libxt-dev libxaw7-dev libsdl2-dev libzzip-dev libfreeimage-dev libfreetype6-dev libpugixml-dev
Now build Ogre from source. Make sure that you install it locally since otherwise it will overwrite your system ogre installation.
cd $WORKSPACE
git clone https://github.com/leggedrobotics/ogre.git
cd ogre
git checkout raisimOgre
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$LOCAL_INSTALL -DOGRE_BUILD_COMPONENT_BITES=ON -DOGRE_BUILD_DEPENDENCIES=OFF -DOGRE_BUILD_SAMPLES=False -DOGRE_BUILD_COMPONENT_JAVA=OFF
make install -j8
Finally, build raisimOgre (assuming that you already have cloned this repo).
cd $WORKSPACE
cd raisimOgre && mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$LOCAL_INSTALL -DCMAKE_INSTALL_PREFIX=$LOCAL_INSTALL -DRAISIM_OGRE_EXAMPLES=ON
make install -j8
- ffmpeg (video recording, for OgreVis::startRecordingVideo method. The install instruction can be found at https://tecadmin.net/install-ffmpeg-on-linux/)
If you want to build examples, you can enable them by setting -DRAISIM_OGRE_EXAMPLES=ON (as above build description).
The executables are located in the examples folder in the build directory. Some examples do not start automatically. You should start simulation by unchecking "Simulation/Manual stepping" in the control panel.
anymalOnHeightMap
laikago
primitives
newtonsCradle
- Basic RaisimOgre resources are defined by the
RAISIM_OGRE_RESOURCE_DIR
macro. - Ogre resources are loaded from the resource file, whose location is defined by the
OGRE_CONFIG_DIR
macro. - The two aforementioned definitions are defined in the config file.
Please fork the repo, make changes and then send a pull request. Instructions can be found here
Check rsc/material for a few examples of pbr materials. Basic color materials can be found here. Replace spaces in the name by "_", e.g., "dark red" to "dark_red"
Jemin Hwangbo developed raisimOgre with the help of the following contributors
- Vassilios Tsounis