Skip to content

professorcode1/Computer-Graphics-Project

Repository files navigation

Flight Simulator



preview

preview

The terrain is generated using Perlin Noise and 3 D perlin noise is used to generate dynamic flow field that dictate the movement and rotation of the clouds.

To use
git pull this project.
Install glfw3 on your system
download glm from github and place the glm library in the /usr/include directory.
Install make and just use the make command.

It won't run on windows ( sorry :| ). A lot of files have their positions hard coded relative to the executable. To use on windows you will have to find the names of all shaders and assets files and folders in the code and rename them with forward slashes. The clouds and trees constructor will also have to changed to use forward slash. And the __builtin_trap defined in the assert macro will have to be changed to something that windows supports. Then use visual studios to build the project after installing glfw3, GLEW and glm.

Credits

Thanks to Yan Chernikov for their amazing OpenGL Series

Thanks to Niels Lohmann for the JSON C++ Library

Thanks to Ryo Suzuki for their C++ Perlin Noise

Thanks to Ashima Arts for their glsl implementations of noises

Credits for the assets

Airplane by Poly by Google CC-BY via Poly Pizza

Airplane by Poly by Google CC-BY via Poly Pizza

Aeroplane by Gilang Romadhan CC-BY via Poly Pizza

Grass by hat_my_guy (https://poly.pizza/m/9S0fmIfGPO)

grass blades by Tiff Eidmann CC-BY via Poly Pizza

Grass #1 by Tomáš Bayer CC-BY via Poly Pizza

Cumulus Clouds 5 by S. Paul Michael CC-BY via Poly Pizza

Cumulus Clouds 2 by S. Paul Michael CC-BY via Poly Pizza

Clouds by Jarlan Perez CC-BY via Poly Pizza

Cumuls Clouds 3 by S. Paul Michael CC-BY via Poly Pizza

Cloud by Poly by Google CC-BY via Poly Pizza

Cloud by Quaternius (https://poly.pizza/m/KdFNOVn1Gf)

Clouds by Poly by Google CC-BY via Poly Pizza

Cloud by Poly by Google CC-BY via Poly Pizza

Cloud by Quaternius

Cloud by Quaternius

Cloud by Quaternius

Cloud by jeremy [CC-BY] via [Poly Pizza]