Commit Graph

102 Commits

Author SHA1 Message Date
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
Quinn
f7994b7d50 add testing code 2025-06-02 12:41:00 +02:00
Quinn
4b611c7918 add sanitizers to flags 2025-06-02 12:41:00 +02:00
Quinn
7354c049ec add notparallel to clean 2025-06-02 12:41:00 +02:00
Quinn
8ca5620d66 include dockerfile in repo
store the docker file used in the workflows in the repo as well
2025-06-02 12:41:00 +02:00
Quinn
2170c7b0f6 start writing anvil file format 2025-06-02 12:41:00 +02:00
Quinn
5618abc501 write chunk format specification 2025-06-02 12:41:00 +02:00
Quinn
404c234054 write NBT format specification
fix typos

Signed-off-by: Quinn
<99677023+thepigeongenerator@users.noreply.github.com>
2025-06-02 12:41:00 +02:00
Quinn
fcc2c35ce8 cleanup markdown 2025-06-02 12:41:00 +02:00
Quinn
27df65992f start writing minecraft data specification, which is my summerisation of how the formats are stored, to help me later 2025-06-02 12:41:00 +02:00
Quinn
0d7f6395d2 pedantic fix: renamed uri from master to main 2025-06-02 12:41:00 +02:00
Quinn
19208fe3e5 update badges to be correct 2025-06-02 12:41:00 +02:00