diff --git a/PROJECT_RETROSPECTIVE.md b/PROJECT_RETROSPECTIVE.md new file mode 100644 index 0000000..a59fca1 --- /dev/null +++ b/PROJECT_RETROSPECTIVE.md @@ -0,0 +1,37 @@ +# A look back on what I learned + +## why? + +I came across an art/rendering style called "sprite stacking". +I found sprite stacking very interesting in comparison to traditional methods, +and wanted to experiment with the style. + +## challenge + +This was my first big graphics-based project. Computer graphics +at the low-level was new to me. I took this as an opportunity to +learn the basics of OpenGL. This learning process was the most +difficult part of the project, especially the domain-specific +rendering techniques used. + +## how? + +I found some [great tutorials](https://learnopengl.com) to get started, +and though these helped, I also did a lot of individual +learning through experimentation and discussion with peers. + +## results + +In the end, the library had most of the functionality +I originally wanted. Here's an example with only 7 library calls: +![example gif](./example.gif) +The library can draw up to 256 layers of icons in a grid, +with optional offsets and tints per icon. + +## evaluation + +Besides learning the basics of OpenGL, I also learned +how to use CMake to help build the library. Also, I set up +continuous integration for automated testing on a git commit. +If I were to rewrite this library, I would definitely invest more +into the automated testing process. diff --git a/README.md b/README.md index 4cb05fa..8f0c964 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ -# termg +# glerminal +glerminal is a tile-based graphics library created +with the intent to use a sprite-stacking art style. diff --git a/example.gif b/example.gif new file mode 100644 index 0000000..d45362a Binary files /dev/null and b/example.gif differ