Commit graph

2812 commits

Author SHA1 Message Date
Ali Chraghi
cd61c631f2 glfw: ci: don't run tests when cross-compiling 2023-01-20 14:53:22 -07:00
Ali Chraghi
320090ee42 freetype: ci: don't run tests when cross-compiling 2023-01-20 14:53:22 -07:00
Ali Chraghi
36a40dc51a sysaudio: add workaround for wine
wine crashes when using AudioClient3. it's weird since it returns success when quering
2023-01-20 14:53:22 -07:00
Ali Chraghi
7315d1ab62 sysaudio: access sample rate from field (except for jack) and add media role option 2023-01-20 14:53:22 -07:00
Ali Chraghi
bb6a654c90 sysaudio: pipewire backend
missing features:\n - volume adjustment\n - device watcher\n - device listing (default device)
2023-01-20 14:53:22 -07:00
Stephen Gutekanst
1b375f70ce Revert "gpu-dawn: update to latest binary release"
This reverts commit 2edfa729ec.
2023-01-20 04:46:27 -07:00
Stephen Gutekanst
0e9746d2e2 gpu-dawn: pin Dawn version using branch name not SHA
so that Wrench can automatically update it (and because branch name is already
versioned)

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-19 20:47:25 -07:00
Release automation
2edfa729ec gpu-dawn: update to latest binary release 2023-01-20 02:30:57 +00:00
Release automation
9873ec5c1c gpu-dawn: update to latest binary release 2023-01-20 02:15:28 +00:00
Stephen Gutekanst
988b5c0da8 Revert "gpu-dawn: update to latest version origin/generated-2023-01-19.1674151689"
This reverts commit 858003f6e4.
2023-01-19 18:38:26 -07:00
Wrench[bot]
858003f6e4 gpu-dawn: update to latest version origin/generated-2023-01-19.1674151689
Signed-off-by: Wrench[bot] <wrench@hexops.com>
2023-01-19 18:34:30 -07:00
Release automation
c694f50295 gpu-dawn: update to latest binary release 2023-01-18 18:15:58 +00:00
Wrench[bot]
4681425f56 all: update Zig to version 0.11.0-dev.1350+bbab4beda
Signed-off-by: Wrench[bot] <wrench@hexops.com>
2023-01-18 10:34:40 -07:00
Stephen Gutekanst
0eaa56b4ad mach: platform/libmach: update to latest mach/core API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-17 09:49:40 -07:00
Stephen Gutekanst
a15b9bb5f6 mach: platform/wasm: correct return signature
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-17 09:49:40 -07:00
Stephen Gutekanst
02ba76a95b shaderexp: update to latest mach/core API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-17 09:49:40 -07:00
Stephen Gutekanst
8082228186 mach: eliminate heap allocation of Core
Prior to this change `mach.Core.init` would heap allocate the structure, returning `*Core`:

```zig
app.core = try mach.Core.init(allocator, .{});
```

This was obviously not ideal, but wasn't possible to eliminate before due to how Core was
entangled with the platform abstraction. Now that it has been removed, we can reduce Core
initialization to take a `*Core` to initialize. In practice this means initialization looks
something like this:

```zig
try mach.Core.init(&app.core, alloctor, .{});
```

Or more simply:

```zig
try app.core.init(allocator, .{});
```

And we eliminate the `*Core` allocation entirely in most cases.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-17 09:49:40 -07:00
Austin Rude
f54d584991 gpu: fix getting adapter propeties in example
Dawn now verifies the next chain is null, requiring this change. See
3c9d26a6 and the code review comments for more info.
2023-01-15 17:57:00 -07:00
Austin Rude
77341e2905 gpu: link glfw directly to gpu 2023-01-15 17:57:00 -07:00
Stephen Gutekanst
9d1c96ed0e gpu: improve SupportedLimits query example
`supported` is a better variable name because `supported.limits.foobar` is the actual
way it need be referenced, and `limits.limits.foobar` would be redundant.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-15 13:21:25 -07:00
Ali Chraghi
2fd8e876fd mach: re-create swapchain on vsync mode change 2023-01-15 09:45:17 -07:00
Release automation
24132ad4d9 gpu-dawn: update to latest binary release 2023-01-15 16:09:14 +00:00
Ali Chraghi
ac133f52af gpu-dawn: fix {linux,windows}->macos cross-compilation 2023-01-15 08:31:26 -07:00
Ali Chraghi
168a84805a ecs: saturated add
Fixes #409
2023-01-15 08:31:26 -07:00
Ali Chraghi
10d5f344e3 {glfw,mach}: remove dead code 2023-01-15 08:31:26 -07:00
Release automation
30d614c377 gpu-dawn: update to latest binary release 2023-01-14 19:47:46 +00:00
Ali Chraghi
8197b869bf system_sdk: update to latest revision 2023-01-14 12:12:00 -07:00
Ali Chraghi
9f6020e545 {gpu,gpu-dawn}: add X11 linkage back; update to latest WebGPU API 2023-01-14 12:12:00 -07:00
Ali Chraghi
8a15fcd694 gpu-dawn: update for building latest dawn 2023-01-14 12:12:00 -07:00
Ali Chraghi
a52c6e5f5c gpu: update interface to latest webgpu headers 2023-01-14 12:12:00 -07:00
Wrench[bot]
e4f2f08431
gpu-dawn: update to latest Dawn version (#656)
* gpu-dawn: update to latest version generated-2023-01-12.1673546526

Signed-off-by: Wrench[bot] <wrench@hexops.com>
Co-authored-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-14 08:26:48 -07:00
Austin Rude
c02578721a gpu: Update example to latest zig/glfw
Update the mach/gpu only example to work with the latest zig and
recent glfw error handling changes.
2023-01-12 21:46:27 -07:00
Release automation
340e886e78 gpu-dawn: update to latest binary release 2023-01-12 18:43:13 +00:00
Ali Chraghi
3e51dc0581 ci: remove git install step 2023-01-12 10:51:16 -07:00
Ali Chraghi
a97a33334c {mach, gpu-dawn}: don't hardcode linux window manager to X11 2023-01-12 10:51:16 -07:00
Ali Chraghi
8a645fa1bf gpu-dawn: fix binary revision 2023-01-12 10:51:16 -07:00
Release automation
772071c095 gpu-dawn: update to latest binary release 2023-01-12 10:04:11 +00:00
Release automation
f990d6761b gpu-dawn: update to latest binary release 2023-01-12 09:36:21 +00:00
Wrench[bot]
a19dcbbc19 all: update Zig to version 0.11.0-dev.1268+0e66df209
Signed-off-by: Wrench[bot] <wrench@hexops.com>
2023-01-12 02:05:33 -07:00
Ali Chraghi
9364c8b6c2 gpu-dawn: append -g0 when debug mode is disabled
most binaries size will be reduced to half now
2023-01-12 01:54:48 -07:00
Ali Chraghi
e6f8630ac6 wasmserve: fix compilation with latest zig 2023-01-12 01:54:48 -07:00
Ali Chraghi
9675bd662e gamemode: fix package path 2023-01-12 01:54:48 -07:00
Ali Chraghi
1d7cd4be80 mach: fundamental changes
- Core doesn't depend to `App` anymore
 - `setOptions` has replaced with some new functions (`setTitle`,
   `setSize`, etc)
   - and more
2023-01-12 01:54:48 -07:00
Lue
91a53807ab mach: fix outdated reference to glfw.Error 2023-01-10 20:52:41 -07:00
Lue
eed2be4591 glfw: refactor getError and related functions
`getError()` now returns a struct `Error` containing `error_code` and
`description`. Rationale: retrieving the error code with the previous
implementation of `getError()` caused `getErrorString()` to return
null (the reverse is also true). The new implementation allows both
values to be retrieved at once.

The previous `getError()` function has been renamed to
`getErrorCode()` to reflect the fact that it returns a simple Zig
error rather than the `Error` struct. The error set returned by
`getErrorCode()` is now named `ErrorCode` rather than `Error`.

The behavior of the `getError()` family of functions clearing the
stored error is unchanged. However, since all code that used
`defer glfw.getError() catch {}` to explicitly clear errors had to be
refactored, a new `glfw.clearError()` function that returns void is
now available to make this operation more explicit.

Additionally, `mustGetError()` is now `mustGetErrorCode()`, and new
functions `mustGetError()` and `mustGetErrorString()` have been added
which wrap `getError()` and `getErrorString()` but panic if no error
is actually available.

Tests and API documentation had to be refactored across all of
`mach/glfw`. This commit also takes the opportunity to skip tests
involving window creation on CI so that other tests may still execute
normally.
2023-01-10 20:52:41 -07:00
Release automation
779359a519 gpu-dawn: update to latest binary release 2023-01-10 09:35:27 +00:00
Stephen Gutekanst
a750e31d11 Revert "all: build: fix sdkPath for relative @src.file / fix autocompletion with ZLS / IDEs (#661)"
This reverts commit a1fe671db8.

Lue suggested reverting #661 because ZLS worked around the issue of @src
being relative in that environment: https://github.com/zigtools/zls/pull/898

This is not a perfect solution (what zls did seems to be a workaround), but
is good enough for us until Zig gets an official package manager.
2023-01-10 01:57:52 -07:00
Wrench[bot]
7d246e76b3 all: update Zig to version 0.11.0-dev.1247+87b223428
Signed-off-by: Wrench[bot] <wrench@hexops.com>
2023-01-08 18:21:50 -07:00
Stephen Gutekanst
cd236e8df7 glfw: README: update usage example
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-08 18:21:11 -07:00
Stephen Gutekanst
2cd4ce12f2 mach: update to latest GLFW error handling approach
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2023-01-08 18:21:11 -07:00