Skip to content

Commit 8c16195

Browse files
rocksdanisterbokonist
authored andcommitted
new readme (#19)
* new readme * new readme
1 parent 7290f71 commit 8c16195

File tree

1 file changed

+53
-6
lines changed

1 file changed

+53
-6
lines changed

README.md

Lines changed: 53 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,55 @@
1-
# drone-x {work in progress}
1+
# drone-x - NeuroEvolution self learning drone
2+
[![GitHub release](https://img.shields.io/github/release/bokonist/drone-x.svg)](https://github.com/bokonist/drone-x/releases)
3+
4+
## Contents
5+
6+
- [About](#about)
7+
- [Requirements](#requirements)
8+
- [Installation](#installation)
9+
- [Frequently Asked Questions](#frequently-asked-questions)
10+
11+
## About
12+
[![Drone-x Demo](http://i.imgur.com/3N7J26U.jpg)](https://www.youtube.com/watch?v=gq39JeI6yxo "Drone-demo")
13+
14+
A self learning AI drone to evade obstacles. The simulation is made using Opengl & neural network using C++
15+
16+
## Requirements
17+
### Runtime & Development
18+
19+
- C++ Compiler >= GCC 4.8.1
20+
- Freeglut-dev >= Freeglut 3.0.0
21+
- SOIL image loader library >= SOIL 1.16
22+
23+
## Installation
24+
To download the repo & Run the simulation:
25+
26+
git clone https://github.com/bokonist/drone-x
27+
cd drone-x/simulation/drone-window
28+
make
29+
./drone
30+
31+
To uninstall & delete generation files:
32+
33+
make clean
34+
rm -r gen*
35+
rm drone
36+
37+
## Frequently Asked Questions
38+
### Which part of the source code is the graphics simulation part?
39+
src/drone.cpp , main.cpp & include/drone.h are the Opengl part of the code. These parts can be changed to change the simulation speed, obstacle type, menu system.
40+
41+
### Experiencing stutter and performance lose?
42+
Check to make sure you have a supported graphics card & install its latest driver. Run with vblank_mode=1 to enable v-sync. If you still experience stutter, then comment out the gamemode part in main.cpp and run the game in gamemode instead of window.
43+
44+
### Is it possible to port this to windows / getting error for to_string() function?
45+
Yes, the freeglut & soil are cross platform libraries, when compiling make sure the latest version of gcc is installed using Mingw-w64 for the latest version of g++ compiler otherwise you may get an error for to_string() function or alternatively you can add a patch for it yourself.
46+
47+
### How fast can the simulation run/ How to speed up simulation?
48+
In main.cpp change fps parameter value & run the game with the flag vblank_mode=0 to disable vsync. maximum framerate depends on your system configuration. Alternatively you can change the the obstacle speed parameter in drone.cpp to achieve the same effect.
49+
50+
### Why is my system getting loud/ single core cpu usage 100%?
51+
This is a single threaded application for ease of understanding. The graphics part and neural code is run on an infinite loop, therefore the cpu usage will be maximum 100% for a single core even if that loop is not doing anything.
52+
53+
254

3-
1. **in progress**:
4-
1. making the simulation of a drone in openGL
555

6-
2. **to do**:
7-
1. implement NEAT
8-
2. train and evolve the neural network

0 commit comments

Comments
 (0)