Stephen Gutekanst
bd655828e3
all: use new mach.Entity.Mod query API
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-07 23:40:56 -07:00
Stephen Gutekanst
541ce9e7c0
all: rename mach.Entity.Mod -> mach.Entities.Mod
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-07 23:40:56 -07:00
Stephen Gutekanst
65e2168b9f
module: injected mach.Entity.Mod for global entity operations
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-07 23:40:56 -07:00
Stephen Gutekanst
cb6bdd7eca
examples: play-opus: change sfx noise
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-07 23:40:56 -07:00
Stephen Gutekanst
69ff2e027f
all: rename mod.entities -> mod.__entities (private)
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-07 23:40:56 -07:00
Stephen Gutekanst
2e8926d6fa
module: rename query -> queryDeprecated
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-07 23:40:56 -07:00
Stephen Gutekanst
95c9ae5278
module: support merging module lists
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-06 14:03:57 -07:00
Stephen Gutekanst
7ccfcefa96
examples: update play-opus to latest Audio API
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-06 14:02:42 -07:00
Stephen Gutekanst
ca08255ec2
{gfx,examples}: fix refcounting bugs, improve sysgpu compatability
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-06 14:00:54 -07:00
Stephen Gutekanst
a065c79200
examples: glyphs: do not use event arguments
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-06 14:00:54 -07:00
Stephen Gutekanst
7ad38d6eff
Audio: do not use event arguments
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-05-06 14:00:54 -07:00
Ali Chraghi
e711f69fad
Audio: duplicate mono sounds to all channels
2024-05-06 14:00:36 -07:00
Ali Chraghi
5bd6d0cf3d
add play-opus example
2024-05-05 21:10:07 +03:30
Stephen Gutekanst
cbf066ade5
{gfx,examples}: improve sysgpu compatibility with higher-level examples
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
15fd2c3a64
Core: use an explicit .start event sent by app to begin .tick events
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
fc0ff2fffd
all: rename local_events -> events
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
33bfdee520
{module,Audio}: ability to store event name and send it later
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
136c86e929
examples: fix/improve custom-renderer example
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
2c8ba82aa3
Core: use .app local init/deinit/tick events (avoid global events)
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
fb37f74d41
examples: rename main modules -> App
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
e0640cc948
TextPipeline: make .init and .deinit explicit
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
ed9137fe98
SpritePipeline: make .init and .deinit explicit
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
3504dfcab6
Audio: make deinit explicit
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
4a000c7995
{Core,examples}: add TODO markers for core APIs that require module exposure
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
03a089610b
Core: store framebuffer information as components
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
656b0202f2
Core: add .present_frame event replacing swapbuffers call
...
Note that on e.g. web platform, swapbuffers is not an explicit call.
We also need a signal that the frame has been submitted and finished,
and this is it.
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
431e0dbbe1
{gfx,examples}: use core.state().queue
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
68677b3448
{Core,examples}: set window title via component
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
79dccb4d73
{gfx,examples}: use core.state().device
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-29 20:17:26 -07:00
Stephen Gutekanst
bffc668005
{gfx,examples}: add labels to gpu objects
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-21 20:29:14 -07:00
Stephen Gutekanst
487beaabde
examples: rename sysaudio example -> piano
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-21 16:38:15 -07:00
Stephen Gutekanst
58ffa2c870
examples: sysaudio: provide better controls
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-21 16:34:46 -07:00
Stephen Gutekanst
d045b34f70
{gfx,examples}: update all to new mach.Core module API
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-17 11:27:48 -07:00
Stephen Gutekanst
ac4fe65eb2
examples: core-custom-entrypoint: revise based on SYCL24 learnings
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-16 21:41:37 -07:00
Stephen Gutekanst
2c73f8c518
examples: remove gkurve test-bed for now (will come back later)
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-16 19:31:42 -07:00
Stephen Gutekanst
d573a59d67
examples: core-custom-entrypoint: minor cleanup
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-16 19:15:19 -07:00
Stephen Gutekanst
282c83877e
audio: redesign audio module
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-16 19:14:37 -07:00
Stephen Gutekanst
3d8c28a361
all: rename parameters foo_mod -> foo
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-16 19:14:37 -07:00
Stephen Gutekanst
f1dbc3955c
audio: cleanup audio module
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-16 11:48:15 -07:00
Ali Chraghi
be3300b80a
audio: add audio mixing/playback module
2024-04-16 10:50:59 -07:00
Stephen Gutekanst
b90b70084e
examples: glyphs: improve code structure / naming / init logic
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-16 10:40:36 -07:00
Stephen Gutekanst
16a895240d
gfx: improve Sprite module pipeline management
...
* No longer abuse event arguments for pipeline information.
* Store pipeline information as entities/components.
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-16 10:10:37 -07:00
Stephen Gutekanst
5714a60108
gfx: split text style entity components into a distinct module
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-15 02:42:07 -07:00
Stephen Gutekanst
d1c3d26710
core: provide a default pub const GPUInterface
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-09 21:20:48 -07:00
Stephen Gutekanst
27fd19271c
examples: migrate custom-renderer to mach.Core module API
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-08 23:49:38 -07:00
Stephen Gutekanst
013546b189
core: add mach.Core module API
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-08 23:49:38 -07:00
Stephen Gutekanst
f578e1f5e2
{module,ecs}: Mach ECS becomes the Mach' module system
...
This moves the bulk of the ECS code into `src/module`. It also makes
types like `mach.ecs.EntityID` accessible at the top-level `mach.EntityID`
instead.
The motivation of this change is to make the Mach module system a
first-class property of Mach.
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-06 15:18:38 -07:00
Stephen Gutekanst
883a9a7807
examples: add some TODOs
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-06 15:18:38 -07:00
Stephen Gutekanst
a7a6ecdd45
examples/custom-renderer: correct packed struct -> extern struct
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-06 15:18:38 -07:00
Stephen Gutekanst
8bd822c35d
examples/custom-renderer: minor docs improvement
...
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2024-04-06 15:18:38 -07:00