lopuh@void:~/projects/idle_signal$

// 3D engine in OpenGL

$ stat project.info
Name: idle_signal
Type: 3D graphics engine
Target: Linux
Status: "archived (to be come back)"

$ ls -la media/

Screenshot 1
screenshot_1.png
Screenshot 2
screenshot_2.png
Screenshot 3
screenshot_3.png

$ cat overview.txt

// Project Description
3D engine built using OpenGL from scratch for Linux.
Includes a basic map editor and supports loading 3D models,
dynamic lighting, collision detection and etc.

$ cat features.txt | head -20

System Features
- audio with `openal`
- imgui debug windows
- animation
    * sprite animation
    * skeletal animation
- basic map editor
    * drawing static objects
    * adding entities via json configuration
- entity system
    * pickups
    * separate collision detection
- random terrain generation
- model loading
- postprocessing effects
    * pixelated (low-poly) view
    * noise overlay
    * illuminance color adjustment
    * fog effects
    * dynamic lighting
        - flashlight
        - multiple light sources
- text rendering
- collision detection using `bullet3` physics engine

$ ldd idle_signal | grep -v "not found"

// Linked Libraries
opengl, glad, glfw // graphics and window/context management
glm // mathematics
imgui // debugging and ui
stb_image // image loading
assimp // model importing
bullet3 // physics and collision detection
openal // audio
spdlog // logging

$ ./run.sh

# Build and execute
$ chmod +x run.sh
$ ./run.sh
# [INFO] Building project...
# [INFO] Compilation successful
# [INFO] Starting idle_signal...
# [INFO] OpenGL context created
# [INFO] Engine initialized
OpenGL
C++
CMake
Linux
Bullet3
OpenAL