Skip to content

Robot simulator for 2D and 3D applications made with Vulkan API (optional nvidia Ray Tracing) (early stages)

License

Notifications You must be signed in to change notification settings

happydpc/RobotSimulator

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robot Simulator

Robot simulator for 2D and 3D applications made with Vulkan (optional Ray Tracing for Nvidia GPUs) and my own physics engine. I was planning on using Bullet physics... But learning how to make one seems fun :).

Running

git clone https://github.com/Brenocq/RobotSimulator.git
cd RobotSimulator
make clean
# After installation:
make run -j4

Progress

These values are unreliable and come from what I think is going on in the code kk (things could change tomorrow as new ideas emerge.)

Core

  • GPU Rendering (Vulkan): 90%
  • RayTracing (Nvidia): 80%
  • User interface (Imgui): 20%
  • Physics engine (Bullet): 30%
  • Physics engine: 0%
  • GPU acceleration (Cuda): 0%

Installation (Linux)

This simulator is not well finished and I don't recommend trying to install it yet.

Updating g++

This simulator is using some libraries that were experimental in old version of g++. We can or change all #include with erros to #include<experimental/xxx>, or update the g++.

Please use g++ v8.2 or later to compile without errors.

g++ --version
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-8 g++-8
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 40
g++ --version

Download Vulkan SDK

First we need to download the vulkan SDK, I'm using the release 1.2.141.2. You can download the vulkan SDK here.

Extract the files to some folder.

tar -xzf vulkansdk-linux-x86_64-xxx.tar.gz

Download bullet physics SDK

You can download the bullet SDK here. I am using the 2.87 version now (same used in libbullet-dev.) After downloading, install the bullet library

sudo apt-get install -y libbullet-dev

(I won't use Bullet Engine anymore... It will be removed while I build one.)

Install GLFW

Now we need to install the GLFW to create windows.

sudo apt-get install libglfw3-dev

If you prefer, you can build manually from the official website.

Install GLM

Now we'll have to download the GLM library to perform linear algebra.

sudo apt install libglm-dev

Change Makefile

The last pass is to change the vulkan and buller SDK path in the makefile:

# Open Makefile
VULKAN_SDK_PATH = <path>/<xxx>/x86_64
BULLET_SDK_PATH = <path>/bullet3

References

License

This project is licensed under the MIT License - check LICENSE for details.

About

Robot simulator for 2D and 3D applications made with Vulkan API (optional nvidia Ray Tracing) (early stages)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 84.4%
  • C 15.3%
  • Other 0.3%