Skip to content

A cpp project with various shader implementations in glsl and the whole graphical pipeline with OpenGL.

License

Notifications You must be signed in to change notification settings

mbudak21/opengl-glsl-renderer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

opengl-glsl-renderer

A C project with various shader implementations in glsl and a graphical pipeline implementation in OpenGL. Preview

Requirements

You need to have glew, freeglut, and g++

Running

Just use the provided script

./run.sh

Config

There is a very rudimentary config system in features.h. You can change the scenes here.

Keybinds

Camera Movement (Relative to View Direction)

Key Action
WASD Move around
Space Move upward
C Move downward

Camera Rotation (Local Axes)

Key Action
R Pitch up
F Pitch down
T Yaw right
G Yaw left
Q Roll clockwise
E Roll counter-clockwise

World-Axis Movement (Absolute Positioning)

Key Action
XYZ Move along +X, +Y, +Z
XYZ+Shift Move along -X, -Y, -Z

View & Shader Utilities

Key Action
M Cycle polygon mode: Point → Line → Fill
1 Switch to perspective projection
2 Switch to orthogonal projection
B Cycle through available shader programs

Exit

Shift+Q

TODOs

The project structure is quite messy, it should be fixed sometime.

About

A cpp project with various shader implementations in glsl and the whole graphical pipeline with OpenGL.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published