27 Commits

Author SHA1 Message Date
IntegratedQuantum
0c2d309f2a Ditch mach-freetype: now building freetype and harfbuzz directly.
Having zig bindings was certainly nice to have, but overall the code isn't too different really.
One nice advantage of building freetype and harfbuzz directly is that we can get rid of some unnecessary dependencies, like brotli.
Also, since that was the only zig dependency outside the standard library, this finally gives me the freedom to update zig whenever I want.
This is a necessary step for #117.

Resolves #139
2023-10-21 10:35:39 +02:00
IntegratedQuantum
cc85c8af1d Update zig. 2023-10-17 17:34:54 +02:00
IntegratedQuantum
91bd0b031c Compile all the C files into a static lib first.
Fixes #125

The workaround was taken from here: https://github.com/ziglang/zig/issues/17091#issuecomment-1710907659
2023-10-16 22:30:20 +02:00
IntegratedQuantum
86ab8ef782 Remove portaudio submodule, getting it through the zig package manager instead.
Resolves #103
2023-09-26 17:42:54 +02:00
IntegratedQuantum
6e43ec3d40 Update zig version to 0.12.0-dev.596+2adb932ad
I also had to add some workarounds for a new regression in the zig compiler: https://github.com/ziglang/zig/issues/17289
2023-09-26 17:15:55 +02:00
IntegratedQuantum
e7c5635048 Update mach-freetype, it got easier to set up. 2023-09-18 15:40:41 +02:00
IntegratedQuantum
1b2ed56e3c Update zig version to 0.12.0-dev.389+61b70778b and display debug times in µs instead of ns. 2023-09-16 20:21:02 +02:00
IntegratedQuantum
7d4d110b03 Use mach-freetype with the package manager and update zig version to 0.12.0-dev.163+6780a6bbf 2023-08-24 09:47:13 +02:00
IntegratedQuantum
dbbda05022 Some improvements to the log function. 2023-08-05 12:51:35 +02:00
IntegratedQuantum
bf3a01ad95 Revive windows support.
It had been broken for a while due to a (now fixed) bug in zig and a couple other problems.
2023-06-21 11:20:18 +02:00
IntegratedQuantum
4fcfd10307 Add music loading/playing using portaudio and stb_vorbis. 2023-06-05 23:11:40 +02:00
IntegratedQuantum
fc12bd5a63 Add terrain generation. 2023-05-01 18:35:45 +02:00
IntegratedQuantum
b98f565f2e Start working on the server:
It can now do a handshake (sort of).
I also added a CommandQueue for the gui system to prevent issues from closing windows while they are being updated.
2023-04-09 11:28:21 +02:00
IntegratedQuantum
60f0c5d3af Add support for menu background scenes (but no default scene yet). 2023-04-04 11:30:02 +02:00
IntegratedQuantum
61e2e417a2 Add textures for the button and window. 2023-02-24 13:25:59 +01:00
IntegratedQuantum
0cf88c46a5 Start the gui system: movable windows 2023-02-14 12:46:29 +01:00
IntegratedQuantum
43da550385 Use the posix socket API wrapper of the zig standard library instead of messing with C code. 2023-01-05 17:18:11 +01:00
IntegratedQuantum
38cae34a27 I cannot pull the submodule from build.zig :( 2022-12-28 13:08:16 +01:00
IntegratedQuantum
5098d4fe0f Use harfbuzz for layouting. 2022-12-28 12:08:20 +01:00
IntegratedQuantum
249b8baa3b Text rendering using mach-freetype. 2022-12-25 17:39:45 +01:00
IntegratedQuantum
0c32d76a4a Make it compile on windows and remove -gdwarf-4 (a workaround to an old zig compiler issue). 2022-10-14 20:08:00 +02:00
IntegratedQuantum
dbc416332a Add Mesh creation for voxelSize=1 chunks. My goal is to combine all meshes in one algorithm to simplify things from the java version. 2022-09-29 12:15:47 +02:00
IntegratedQuantum
af54187d4b Add the STUN stuff. 2022-09-09 16:54:47 +02:00
IntegratedQuantum
d542c21c86 Finish the ConnectionManager and implement the socket in a cross-platform way. 2022-09-09 10:16:45 +02:00
IntegratedQuantum
b12e61260c image loading, chunks/chunk meshes, starting a bit on rendering. 2022-09-02 19:48:16 +02:00
IntegratedQuantum
786b65d556 Add glfw and glad and make a window. 2022-08-24 22:08:07 +02:00
IntegratedQuantum
5ad35f4955 Init project and overwrite logging, so it logs to a file. 2022-08-23 23:06:35 +02:00