martinfouilleul
311cef65e8
[wip, win32, canvas] dispatch path setup, segment setup and backprop in batches of GL_MAX_COMPUTE_WORK_GROUP_COUNT elements
2023-07-03 16:16:39 +02:00
martinfouilleul
e24a872fad
[wip, win32, canvas] encode strokes
2023-07-03 15:16:27 +02:00
martinfouilleul
d00024b515
[wip, win32, canvas] added MSAA to new canvas renderer
2023-07-03 15:00:40 +02:00
martinfouilleul
0e6d67f636
[wip, win32, canvas] Cubics segment setup
2023-07-03 14:21:53 +02:00
martinfouilleul
01aa4f838f
[wip, win32, canvas] quadratics
2023-07-03 12:14:21 +02:00
martinfouilleul
899ad4c030
[wip, win32, canvas] Correctly setup path index in segment_setup.glsl
2023-07-03 11:02:04 +02:00
Ben Visness
6e2457ded3
Remove incorrect extern defs
2023-07-02 09:24:34 -05:00
Ben Visness
8925e3e3a0
Actually draw that background image
2023-07-02 07:22:12 -05:00
Ben Visness
c509c612e1
Add dtrace + spall script
2023-07-02 07:09:39 -05:00
Ben Visness
b1c0754d54
Draw text better, make block layout more interesting
2023-07-02 06:27:29 -05:00
martinfouilleul
e31f6cd4ec
[win32] Fix building the pong sample on win32
2023-07-02 12:50:32 +02:00
martinfouilleul
36c75a55dd
[win32] Fix first image not being rendered in win32 canvas renderer
2023-07-02 12:49:45 +02:00
martinfouilleul
b61d8868d3
[wip, win32, canvas] wip trying to fix multiple shapes
2023-07-02 12:26:54 +02:00
Ben Visness
d139619147
Add paddle angle fun time party
2023-07-01 14:33:28 -05:00
Ben Visness
f6e89e6168
Implement basic breakout
2023-07-01 12:02:41 -05:00
Ben Visness
071e8560d4
A little build script cleanup
2023-06-30 17:14:10 -05:00
martinfouilleul
7628138cee
[wip, win32, canvas] tiling in per-path tile queues, then merge (no backprop for now)
2023-06-30 16:53:36 +02:00
martinfouilleul
f0b7cf32a9
[wip, win32, canvas] winding backprop and right crossing segments
2023-06-30 15:30:05 +02:00
martinfouilleul
0870097262
[wip, win32, canvas] bin segments to screen tile queues
2023-06-30 15:18:37 +02:00
martinfouilleul
15c54b9385
[wip, win32, canvas] segment setup, non tiled
2023-06-29 16:43:38 +02:00
martinfouilleul
f76ff94c28
[wip, win32, canvas] raster elements directly per pixel
2023-06-29 15:48:52 +02:00
Ben Visness
23984e8370
Enable font stuff in Orca
2023-06-28 20:44:13 -05:00
Ben Visness
b792476d36
We can render text!
2023-06-28 20:43:52 -05:00
martinfouilleul
b797f187dc
[wip, win32, canvas] porting new canvas renderer to opengl
2023-06-27 18:53:09 +02:00
Martin Fouilleul
b7e3e83f3e
Block for events in main thread, and avoid burning the planet
2023-06-26 20:00:29 +02:00
Martin Fouilleul
21aa1bef68
[win32] honor timeout value in mp_pump_events
2023-06-26 19:59:34 +02:00
Martin Fouilleul
0d65d19436
str8_to_cstring forwards to str8_push_copy(), which null-terminates the copy
2023-06-26 16:24:12 +02:00
Martin Fouilleul
0a83f26f7b
avoid some unnecessary str8 copies now that arena-allocating string functions null terminate strings
2023-06-26 16:07:44 +02:00
Martin Fouilleul
ffb900d872
String functions that return str8/16/32 allocated on an arena implicitly zero-terminate strings, so we can avoid one copy when passing to C stdlib APIs
2023-06-26 16:06:26 +02:00
Martin Fouilleul
463e6322a4
- Changed mkapp.py flags to embed files and directories.
...
'--resource name' now copies file or directory 'name' into the app's private filesystem
'--resource-dir dir' copies all files _inside_ 'dir' into the app's private filesystem
2023-06-26 12:24:22 +02:00
Martin Fouilleul
4e90290add
[build] check if wasm3/milepost dependencies are present and build them otherwise
2023-06-26 11:13:09 +02:00
Martin Fouilleul
abb37537e9
- Investigating clang's handling of memory builtins and bulk memory code generation in test/bulkmem
...
- Using bulk memory (via builtins) for memset/memcpy/memcmp
- Change build script to build wasm3 with optimizations on
2023-06-25 20:37:22 +02:00
Martin Fouilleul
d0ad92f0b8
Load images in pong example
2023-06-25 20:36:02 +02:00
Ben Visness
4175efb7a5
zsh bus error garbage
2023-06-25 20:33:42 +02:00
Ben Visness
47ea91ef66
Get enough of libc added for stb_image, maybe
2023-06-25 20:33:16 +02:00
Martin Fouilleul
4b491ee94a
- Defined mp_thread_local to nothing for Orca platforms (since this requires atomics, which we don't have yet). This allows use to enable bulk-memory without getting clang backend errors about missing tls and atomics.
...
- Replaced memory copy/fill routines with builtins
2023-06-25 20:29:50 +02:00
Martin Fouilleul
98a67cef72
#define MORECORE to orca_mem_grow. Removed builtin memory routine that don't seem to be supported by wasm3 (TODO: investigate that later)
2023-06-25 20:29:50 +02:00
Ben Visness
bcf84e0b80
Graphics and memory stuff for stb_image
2023-06-25 20:29:50 +02:00
Martin Fouilleul
571e8a6f8e
Explicitly mark symbols imported from the runtime and avoid --allow-undefined (get compile-time errors on non-runtime-provided undefined symbols)
2023-06-25 20:18:14 +02:00
Martin Fouilleul
bc03887148
Added ORCA_IMPORT to mark symbols imported from the runtime
2023-06-25 20:17:01 +02:00
Martin Fouilleul
7d4fdf9a75
explicitly mark exported functions in wasm module with ORCA_EXPORT
2023-06-25 19:57:28 +02:00
Martin Fouilleul
1f75f40536
give read _and_ write access to data dir capability, so that we can both read and create files inside it. (warning for when we implement delete/rename etc: Write access to a directory shouldn't permit deleting/renaming it, just to delete/rename stuff inside it)
2023-06-23 17:26:19 +02:00
Martin Fouilleul
28e0a6c88e
Add tag to io_op enum, for debugging convenience
2023-06-23 17:24:18 +02:00
Martin Fouilleul
da2b0867a6
explicitly deselect surfaces before using them in the runloop thread
2023-06-23 15:38:13 +02:00
Martin Fouilleul
18c793dbb4
When we call mg_surface_prepare() on a surface, select it in a per-thread handle. Automatically call deselect on the selected handle when preparing another surface. Also have a way to deselect whichever surface is currently selected. This is needed for some backend that explicitly need to be 'unbound' before using them from another thread
2023-06-23 15:32:32 +02:00
martinfouilleul
472d3031b2
[win32, multisurface] putting 'present' call for guest and surface overlay next to each other.
2023-06-22 17:28:32 +02:00
martinfouilleul
238963df0b
[wip, win32] got debug overlay ~working, with a couple hacks: use top-level transparent windows as child windows (see milepost), and create a dummy surface just to deselect normal and debug surface before using them in render thread. TODO: make an API for deselecting those surfaces. Investigate multisurface options more...
2023-06-21 19:27:15 +02:00
martinfouilleul
83f128fb55
[win32, graphics] adding example to test rendering in a secondary thread
2023-06-21 19:14:56 +02:00
martinfouilleul
a09b10714c
[win32] debugging multi surface
2023-06-21 15:49:03 +02:00
martinfouilleul
0366e3d724
[win32, graphics] experiments with multisurface with transparent top-level windows
2023-06-21 15:48:26 +02:00