Commit graph

341 commits

Author SHA1 Message Date
dasimmet
caafb26fe4
mach: add option to set the monitor index on fullscreen (#611)
* add option to set the monitor index on fullscreen
* make monitor index optional

Co-authored-by: Tobias Simetsreiter <tobias.simetsreiter@meliot.de>
2022-11-14 15:46:42 -07:00
Stephen Gutekanst
212c902747 mach: test ResourceManager
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-11-05 14:12:56 -07:00
Stephen Gutekanst
030cbf71a1 mach: resource: update function pointer declarations
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-11-05 13:32:18 -07:00
Stephen Gutekanst
6a45971c6f trimesh2d: remove in favor of mach/earcut library
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-10-31 12:12:01 -07:00
Stephen Gutekanst
96c2e35ab3 all: integrate earcut library
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-10-31 12:12:01 -07:00
Ali Chraghi
a27121c00a mach: implement setCursorMode for wasm 2022-10-21 07:43:34 -07:00
Stephen Gutekanst
af357c0a8a mach: expose trimesh2d package
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-10-19 07:30:11 -07:00
Stephen Gutekanst
e0e0a6d0bb mach: update wasm root.panic signature for latest Zig version
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-10-14 17:58:34 -07:00
Martin Wickham
78dfa2df6b mach: add setCursorMode (desktop only for now) 2022-10-14 09:23:49 -07:00
Stephen Gutekanst
c94dee263b mach: correct WebGPU C ABI export
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-10-11 01:06:59 +02:00
Ali Chraghi
58f7121a3d all: prefix environment variables with MACH_ 2022-10-11 00:59:23 +02:00
Stephen Gutekanst
4e47477e9a mach: export WebGPU C ABI compatibility
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-10-11 00:55:46 +02:00
Dustin Taylor
cc301493ca mach: 0 size swapchain noop fix 2022-09-25 10:01:03 -07:00
Stephen Gutekanst
8026526b99 mach: add TODO about self-hosted unused variables 2022-09-20 02:30:45 -07:00
Ali Chraghi
9f6c4bf7b1 build: fix compilation errors
this should make linux CI green
2022-09-20 02:30:45 -07:00
Ali Chraghi
2811904eac mach: check Platform functions declaration & add deinit for wasm 2022-09-19 20:11:55 -07:00
Stephen Gutekanst
12c8d9ae8a mach: correct Wayland comment
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-19 06:57:16 -07:00
Ali Chraghi
15dfb2867a all: rename setShouldClose to close
Closes #550
2022-09-18 09:50:15 -07:00
Stephen Gutekanst
412df4490c mach: fmt
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-17 08:50:25 -07:00
Ali Chraghi
6043c7eae6
mach: add is_app option to disable gamemode in desktop applications; use parseIp4 (#544)
* mach: add `is_app` option to disable gamemode in desktop applications
* use parseIp4 instead of resolveIp (which throws a compile error in windows)
2022-09-16 23:32:27 -07:00
LeRoyce Pearson
47d1544b64
{mach,sysjs}: put WASM imports into their own namespaces (#537) 2022-09-16 16:56:22 -07:00
Louis Pearson
6183e39593
mach: add {s} formatter to mouse cursor debug print (#539)
* Fix setMouseCursor compile error
2022-09-16 16:42:19 -07:00
Jeremia
7ed8829349
mach: better compile error for missing fields in App. (#548)
Stage2 Zig ends up coercing structs without any fields into consts.
The current error given is not entirely clear to the cause or how
to fix the issue for users.

Related to https://github.com/ziglang/zig/issues/12275
2022-09-16 16:36:15 -07:00
praschke
b0cd4ec1a0
all: fix pointless discards; typo; fix libmach compilation on Linux (#541) 2022-09-15 07:41:05 -07:00
praschke
38c4fc5b01 mach: make default minimum window size 350x350 2022-09-15 07:39:38 -07:00
praschke
a873227ab8 {mach,examples,shaderexp}: fix default minimum window size 2022-09-15 07:39:38 -07:00
Louis Pearson
9676665ccf
mach: fix setMouseCursor compile error (#538) 2022-09-14 18:15:41 -07:00
locriacyber
b8c48d6321
all: remove ineffective _ = variable assignments (#530)
Lastest Zig complains about this, so they must removed to build.
2022-09-14 09:42:29 -07:00
Stephen Gutekanst
8113ca370d all: remove support for stage1
With almost all tests/examples working on all platforms now with the new compiler,
https://github.com/hexops/mach/issues/180, it's time to remove stage1 support.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-10 00:09:30 -07:00
Louis Pearson
70f4514c66 sysaudio: fix compile for web 2022-09-09 22:39:35 -07:00
Stephen Gutekanst
78485e49f5 mach: wasm: add stub GPUInterface
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-09 22:06:27 -07:00
Stephen Gutekanst
9a759c55c5 mach: do not attempt to import gamemode on non-Linux platforms
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-08 07:26:46 -07:00
Stephen Gutekanst
c97bcdde0a mach: improve compatibility with self-hosted compiler
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-08 07:26:30 -07:00
Ali Chraghi
194971586d mach: use std.log.(scope) instead of std.debug.print 2022-09-07 21:25:35 -07:00
Ali Chraghi
d8af6740c5 mach: exit if no backend found for adapter 2022-09-07 21:25:35 -07:00
Ali Chraghi
55e6959f28 mach: supress gamemode dlopen failed error 2022-09-06 20:48:30 -07:00
Stephen Gutekanst
ec0be9294d mach: fix panic on application exit (invalid free)
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-29 01:20:18 -07:00
Stephen Gutekanst
2e61125601 mach: expose sysaudio/sysjs packages
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-28 23:37:56 -07:00
Stephen Gutekanst
28fb75c7eb mach: simplify sign function & improve self-hosted compiler support
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-28 23:37:56 -07:00
Stephen Gutekanst
1cc15e92a0 mach: add objc_message.zig dependency
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 12:03:17 -07:00
Stephen Gutekanst
192de6946e mach: improve compatibility with self-hosted compiler
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 12:02:01 -07:00
Stephen Gutekanst
72b081c97a mach: improve compatibility with self-hosted compiler
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 11:41:01 -07:00
Stephen Gutekanst
d03078fbd6 mach: fix conflicting symbol name (recent change in Zig)
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-19 12:34:08 -07:00
Stephen Gutekanst
631d3eadbb {mach,gpu}: correct unused parameter
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-18 11:29:07 -07:00
Stephen Gutekanst
f5d34e1247 {mach,gpu}: fix accidental inclusion of objc/message.h on non-darwin platforms
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-18 11:22:51 -07:00
Stephen Gutekanst
eb0eceb707 mach: correct vsync mode setting
This correctly sets presentation modes for vsync, both at startup and at runtime via
a `setOptions` request.

Note: There may still be platforms where setting vsync is not enough, and a frame rate
limiter is needed to achieve proper synchronization. This is tracked in hexops/mach#444
and not fixed by this change.

Fixes hexops/mach#307

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-18 10:33:34 -07:00
Stephen Gutekanst
bac182f804 mach: update to latest mach/gpu API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 23:15:54 -07:00
Stephen Gutekanst
68d5f6fcb1 {mach,gpu}: add autorelease pool
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:05:15 -07:00
Stephen Gutekanst
78675470ae {mach,gpu}: rename GPU_BACKEND -> MACH_GPU_BACKEND
Per https://github.com/hexops/mach/issues/376#issuecomment-1170374460

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 14:54:09 -07:00
Ali Chraghi
9a79da0f69 mach: use optional specifier 2022-08-12 10:39:49 -07:00