https://github.com/vgeffer/pgr-engine
A basic 3D engine using OpenGL
https://github.com/vgeffer/pgr-engine
cpp opengl
Last synced: 2 months ago
JSON representation
A basic 3D engine using OpenGL
- Host: GitHub
- URL: https://github.com/vgeffer/pgr-engine
- Owner: vgeffer
- License: mpl-2.0
- Created: 2025-03-04T14:30:32.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-11T15:01:12.000Z (over 1 year ago)
- Last Synced: 2025-03-11T15:48:59.141Z (over 1 year ago)
- Topics: cpp, opengl
- Language: C
- Homepage:
- Size: 173 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pgr-engine
This repository contains an implementation of a semestral assignment from the PGR (Computer Graphics) course at FEE CTU.
> [!WARNING]
> This software is under active development.
> [!WARNING]
> This project uses GL_ARB_bindless_texture extension. This may not be supported on all devices. See [compatibility chart](https://opengl.gpuinfo.org/listreports.php?extension=GL_ARB_bindless_texture).
### Runtime dependencies
- ```glm``` >= 1.0.0
- ```glfw``` >= 3.3
- ```opengl``` >= 4.6 *(glad loader is provided with the project)*
- ```assimp``` >= 5.4
### Build dependencies
- ```premake5``` >= 5.0.0
- ```doxygen``` >= 1.13 (*optional, for generating docs*)
- C++ compiler with at least **C++17** support
### Building
This build project uses **premake5** build system. To generate build files, run:
```
premake5 [target]
```
in the project's root directory. A list of targets can be found by running ```premake5 --help```. All the build files will be generated in the **build** directory. To build the project, follow the instructions of the chosen target build system.
## Acknowledgements
This project uses and redistributes [```stb_image.h```](https://github.com/nothings/stb/blob/master/stb_image.h), a part of the [stb libraries](https://github.com/nothings/stb/)
Copyright (c) 2017 Sean Barrett, licensed under [MIT](https://github.com/nothings/stb/blob/master/LICENSE) License
This project uses and redistributes [```json```](https://github.com/nlohmann/json), JSON loader
Copyright (c) 2013-2025 Niels Lohmann, licensed under [MIT](https://github.com/nlohmann/json/blob/develop/LICENSE.MIT) License
This project uses and redistributes [```glad```](https://github.com/Dav1dde/glad) OpenGL Loader
Copyright (c) 2013-2022 David Herberth, licensed under [MIT](https://github.com/Dav1dde/glad/blob/glad2/LICENSE) License
This project uses and redistributes parts of the Khronos Specifications (as a part of glad)
Copyright (c) 2013-2020 The Khronos Group Inc, licensed under [Apache License v. 2.0](https://github.com/Dav1dde/glad/blob/glad2/LICENSE)