This repository has been archived by the owner on Jul 17, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
56 lines (36 loc) · 1.55 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
BHOLETRACE
https://youtu.be/aV8gXieIkeQ (demonstration video.)
https://imgur.com/a/1nj0E8M (some renders at set distances referred to in report.)
REQUIREMENTS
Install these on your machine before attempting to build BHOLETRACE.
* freeglut3-dev (glut)
* libglew-dev (glew)
DEPENDENCIES
* lib/std_image (included)
* lib/glm (included as git submodule)
BUILDING
git submodule update --init --recursive # pull lib/glm
mkdir -p build && cd build
cmake ..
make
./bin/bhole # to run
KEYBINDS
* WASD to rotate camera
* UP/DOWN arrow keys to increase/decrease orbit radius
* Z to enumerate over skyboxes (nebula takes a while to load, give it some time)
* R to enumerate over orbit speeds
* L to toggle on/off deflection of light
CREDITS
* Luca Bertozzi (https://github.com/ekardnam)
Very kindly solved the Binet equation differential for use in integration.
* https://github.com/blottn/opengl-quickstart/blob/master/main.cpp
Used as a reference for initial GLEW/shader boilerplate.
* https://github.com/Hirevo/OpenGL-Raytracer
Used as a reference for rotation logic to do with raytracing. Helped with the
concept of using a transfer texture to allow compute shaders to render to the
screen.
* https://www.codesansar.com/numerical-methods/runge-kutta-fourth-order-rk4-python-program.htm
Used as a reference for an implementation of 4th-order Runge-Kutta, but modified to
converge on a solution based on the properties of the Binet equation and to take
two related differential equations instead of one.
* https://github.com/nothings/stb/blob/master/stb_image.h (image loading)