Skip to content
/ Four Public

A 4d rendering library written in C++ with Modern OpenGL

License

Notifications You must be signed in to change notification settings

ndm767/Four

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Four

An (incomplete) 4d rendering library written in C++
Example: An orthographically projected pentachoron (5-cell) rotating about the yw-plane (the code for this can be seen in pchoron.cpp):
pchoron
Example: A 4d-3d perspectively projected and 3d-2d orthographically projected tesseract rotating about the zw-plane (the code for this can be seen in hypercube.cpp):
hcube

What still needs to be done

  • Write unit tests
  • Solid and wireframe mode interoperability
  • hide everything GLM related
  • write build instructions for Windows
  • Camera Controls
  • File/model loading
  • Clarify private and public functions
  • Premade geometries (hypercubes and pentachorons)

How to use

When compiling, include the C++ files in the include/ directory and use the compiler flags for glfw3 and glew.
This library uses C++11 features
Build examples for hypercube.cpp:
MacOS (tested on OS X 10.15.7):
      g++ hypercube.cpp include/*.cpp -o hypercube -lSDL2 -lglew -framework OpenGL -std=c++11
Linux (tested on Fedora 33):
      g++ hypercube.cpp include/*.cpp -o hypercube -lGL -lGLEW -lSDL2 -std=c++11

More detailed instructions are coming later, but for now, see hypercube.cpp, pchoron.cpp, and test.cpp for examples.

Dependencies

About

A 4d rendering library written in C++ with Modern OpenGL

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages