Commit Graph

263 Commits

Author SHA1 Message Date
7dd464349f rework logging to be more optimised, and some minor improvements.
removed function definitions and opted for using macros instead.
It now does not have a set limit when it comes to printing (at least,
it's the stdc's limit again). However, it is now no longer possible to
use a character pointer to print information to the screen.
2025-06-12 18:09:23 +02:00
e6ffe785cd merge all seperate jobs into a single job, since this is more efficient. 2025-06-12 11:16:21 +02:00
364bc9dacd fix: windows syntax errors / typos 2025-06-12 10:51:45 +02:00
5e6d7d22e0 use my atrb header, since it's more platform-agnostic 2025-06-12 10:51:00 +02:00
cad49f2912 rework attribute definitions in atrb.h 2025-06-12 10:50:07 +02:00
09ee136177 tmpfix: revert change for using APT instead of the docker container, as it doesn't work yet.
I first need to figure out why vcpkg cannot find the GLFW package.
2025-06-11 17:59:08 +02:00
261188e257 fix: no boolean incrementation 2025-06-11 17:57:28 +02:00
0633de838c fix: attributes must be ahead of the function definition 2025-06-11 17:57:28 +02:00
be34e101fd remove loading file logic and instead focus on parsing the incomming text 2025-06-11 17:56:22 +02:00
ef0125e7b0 reorder functions to have config path generation be at the bottom 2025-06-11 17:56:22 +02:00
0fe19b28fc add conf code start
add the start for conf file loading
2025-06-11 17:56:22 +02:00
64f3ee457b set workflow vcpkg path to be within ${{github.workspace}} 2025-06-11 17:56:22 +02:00
3d0b3a5e1e add log for debugging to makefile, where it logs the PKG_CONFIG_PATH value. 2025-06-11 17:56:22 +02:00
4fc1717983 correct pkg-config command 2025-06-11 17:56:22 +02:00
83f929911e reorder arguments in CI workflow
it's more logical to have the DEBUG arument at the end, to be on-par
with `compile` job
2025-06-11 17:56:22 +02:00
a7fb6136ea fix: renamed some symbols which were causing some compatibility problems
__FILE_NAME__ and GLFW_CONTEXT_DEBUG were causing problems in the CI
pipeline, thus I deemed them unreliable.
__FILE_NAME__ is not __FILE__ which is more universally used across
compilers.
and GLFW_CONTEXT_DEBUG has been replaced with GLFW_OPENGL_DEBUG_CONTEXT,
which is a legacy definition, which plays nicer on older platforms.
(like ubuntu)
2025-06-11 17:56:22 +02:00
c77f711982 remove dependency on custom docker container, since it seems to be rather slow
I hope to speed things up by using the native ubuntu-latest, but it
might be just as slow, if not slower. In which case I'll likely switch
back.
If it is faster, the dockerfile will be deleted in a subsequent commit.
2025-06-11 17:56:22 +02:00
18bb82fa11 improve vcpkg generation / caching 2025-06-09 23:20:50 +02:00
28a96a2cf6 compiling from scratch is faster than dealing with artifacts 2025-06-06 19:30:46 +02:00
de2e8a7ed8 store vcpkg in cache to reduce runtime performance hit 2025-06-06 19:24:25 +02:00
89a82a6be2 use a geometry shader to render rectangles 2025-06-06 18:10:30 +02:00
ed7a157ee3 add shader compilation error logging 2025-06-06 18:09:49 +02:00
c5d3449abc rename shader files 2025-06-06 18:09:49 +02:00
a184cf93fc start working on a style reference sheet 2025-06-06 18:09:49 +02:00
56749e2379 code semantic fixups 2025-06-06 18:09:49 +02:00
e57f499a32 add libmath to the linker 2025-06-06 18:09:49 +02:00
13b63a1ba2 fix: include glad implementation in the unit test file, since it was lacking that 2025-06-06 18:09:49 +02:00
5f4389d9f9 provide a better method of embedding shaders within the source code 2025-06-06 18:09:49 +02:00
5ae974d84f move from float3 to float2, and general cleanup 2025-06-05 00:13:05 +02:00
a897cc7b67 write some unit tests 2025-06-03 15:05:24 +02:00
3fbc1f50ab hello, triangle
I wrote some code to get a triangle drawn to the screen.
This took much more effort than it should've...
2025-06-03 14:18:56 +02:00
4f95dc144d add code for a 3-dimentional vector. 2025-06-03 14:18:20 +02:00
fce4617571 fix clang-format algining brackets
also added qualifier alignment to be the same as my preference
2025-06-03 14:18:20 +02:00
991c071920 improve OpenGL initialization
added more comments, logging and made some default values more explicit
2025-06-03 14:16:56 +02:00
bec9ae4051 update the status badges 2025-06-02 12:46:45 +02:00
0f97969254 add compatibility headers 2025-06-02 12:41:01 +02:00
c403273e7a add colour32 header 2025-06-02 12:41:01 +02:00
fc2cbd9924 switch from c17 to gnu99
I am choosing gnu99 over c99, since I am planning to use GNU extensions,
like bswap. (in a future commit)
Why I choose c99 over c17, is because this'll produce more portable
code.

c99 does not implement noreturn.h, thus I added it to the compiler
attributes header.
2025-06-02 12:41:01 +02:00
42646baa1a don't indent post-processes directives 2025-06-02 12:41:01 +02:00
eb03b30a0d make container selection more consise 2025-06-02 12:41:01 +02:00
38afc94d4f optimise CI pipeline by removing vcpkg building from the dockerfile. 2025-06-02 12:41:01 +02:00
95b590e815 fix: add libglfw3 to the dockerfile so testing occurs correctly. 2025-06-02 12:41:01 +02:00
84a966b775 merge CI pipelines again, since the new thing didn't work well with artifacts. 2025-06-02 12:41:01 +02:00
37109911fb move testing code out of test/src/ and into test/ 2025-06-02 12:41:01 +02:00
54468cbad3 update CI to use the newer makefile system 2025-06-02 12:41:01 +02:00
cbefafacf8 rework makefile to be more os- and compiler-agnostic.
alongside removing non-crucial complexity and attempting to simplify
things as much as I can.
2025-06-02 12:41:01 +02:00
1d2617e3b3 add lisence information to files that were missing it 2025-06-02 12:41:01 +02:00
Quinn
68ad3e3109 implement automated testing CI pipeline 2025-06-02 12:41:01 +02:00
Quinn
e9946118ea add test compilation / running to makefile 2025-06-02 12:41:01 +02:00
Quinn
06e6875585 parameterize the compilation process via a macro 2025-06-02 12:41:00 +02:00