Commit graph

94 commits

Author SHA1 Message Date
Stephen Gutekanst
bc5e2fe9bf examples: workaround change in @embedFile not working with relative paths
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 22:48:19 -07:00
Stephen Gutekanst
37c3045314 examples: update zigimg usage
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 22:43:04 -07:00
Stephen Gutekanst
dc00067ec1 examples: update zigimg for self-hosted compatibility
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 22:40:21 -07:00
Stephen Gutekanst
a4ddfb6bda examples: make map-async compatible with self-hosted compiler
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 13:17:52 -07:00
Stephen Gutekanst
0e14764ab2 examples: make advanced-gen-texture-light compatible with self-hosted compiler
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 12:02:58 -07:00
Stephen Gutekanst
edc3b5d60e examples: use default values, gpu helper APIs
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-17 01:42:27 -07:00
Stephen Gutekanst
f299d87aa2 {examples,shaderexp}: update to new mach/gpu API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
dweiller
4f7d3ddedf examples/gkurve: fix memory leak 2022-07-20 21:16:48 -07:00
dweiller
35930b1600 examples/gkurve: ResizableLabel: fix deinit leaks
This issue with the previous (commented out) implementation was that by
remaking the iterator each loop, the same element was attempted to be
freed each iteration, as the element was not actually removed from the
map.
2022-07-20 21:16:48 -07:00
Stephen Gutekanst
8184ce82f7 freetype: rename newX functions to createX 2022-07-19 09:19:55 -07:00
Lucas Romanó
7de47a8f2d examples: add map-async example
Signed-off-by: Lucas Romanó <9062026+lucasromanosantos@users.noreply.github.com>
2022-07-17 09:27:29 -07:00
Lucas Romanó
a787265af2 examples: add image-blur example
Signed-off-by: Lucas Romanó <9062026+lucasromanosantos@users.noreply.github.com>
2022-07-15 12:02:17 -07:00
iddev5
81e6de55f8 mach: wasm: Build textured-cube and ecs-app examples 2022-07-06 05:55:04 -07:00
Stephen Gutekanst
d3b03901fb examples: add initial ecs-app
This is a temporary application to begin iterating on high-level ECS applications.

Eventually, this will be removed - for now it's just here so we can see how this API
looks today and improve it.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-07-04 22:25:39 -07:00
Stephen Gutekanst
167f2d3a4f {examples,shaderexp}: make const App public
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-07-04 21:32:38 -07:00
Stephen Gutekanst
1b97c9f1e5 {examples,shaderexp}: rename mach.Engine -> mach.Core
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-07-04 20:14:27 -07:00
Ayush
858c14bbae
{mach,examples}: Fix memory leaks (#384) 2022-07-03 08:47:47 -07:00
Ali Chraghi
2b325e9c4b freetype: rename OutlineFuncs* to Funcs* 2022-06-14 19:53:29 -07:00
Stephen Gutekanst
53a1a2e9fd examples/gkurve: update to latest freetype API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-06-10 13:24:02 -07:00
PiergiorgioZagaria
112b837cae examples/gkurve: fixed logic for points inside polygon 2022-06-10 13:24:02 -07:00
PiergiorgioZagaria
c1b3996b63 examples/gkurve: support for UTF32 characters 2022-06-10 13:24:02 -07:00
PiergiorgioZagaria
98138dd2fa examples/gkurve: initial commit for resizable_label 2022-06-10 13:24:02 -07:00
iddev5
2d53b8bdfd examples: Do not return bool on update()
Also replaced all ``return false;`` usages with Engine.setShouldClose(true).
2022-06-08 07:31:53 -07:00
Ali Chraghi
04a0a79ef6 freetype: ~99% Core-API Coverage
- breaking structure changes
- optimazed examples
- more tests
2022-06-07 19:23:33 -07:00
David Vanderson
a2a6c2a288
mach: add mouse motion and mouse button events (#325)
* add mouse motion and mouse button events
* add scroll events
* switch from button/action to mouse_press and mouse_release events
2022-06-04 06:29:23 -07:00
iddev5
7b395759b7 examples, shaderexp: update to new options and size limit API 2022-06-01 23:45:56 -07:00
iddev5
03491dfd27 examples: update to new Engine API 2022-06-01 23:45:56 -07:00
David Vanderson
3961073084
{mach,examples}: followups to getWindowSize / getFramebufferSize (#322)
* followup to window size saving, getWindowSize and getFramebufferSize no longer return errors
* updated the examples
2022-05-31 11:39:53 -07:00
PiergiorgioZagaria
8fa9ab2f58 examples/gkurve: add atlas text rendering 2022-05-27 21:24:31 -07:00
iddev5
b5737af9cd examples: Load all images from Memory (using embedFile) instead of File 2022-05-27 01:09:15 -07:00
Ali Chraghi
b5d10fb167 gpu: taked slice child type in writeTexture 2022-05-24 14:34:13 -07:00
Stephen Gutekanst
8d067b62c2 examples/gkurve: update wireframe rendering to 2 barycentric coordinates
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-22 22:57:22 -07:00
Stephen Gutekanst
38091d0d1b examples/gkurve: add alpha blending
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-22 21:12:35 -07:00
Stephen Gutekanst
ec95bc8103 examples/gkurve: correct LICENSE for texture atlas code 2022-05-22 11:50:15 -07:00
PiergiorgioZagaria
056f13cd6e examples/gkurve: added LICENSE.atlas 2022-05-22 11:50:15 -07:00
PiergiorgioZagaria
2f87141a3a examples/gkurve: added texture atlas 2022-05-22 11:50:15 -07:00
Stephen Gutekanst
01f88df397 examples/gkurve: make orthographic view use pixel (not subpixel) units
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-22 09:12:53 -07:00
PiergiorgioZagaria
1e8ad533e2
examples: gkurve added shapes and textures (#284) 2022-05-22 08:52:40 -07:00
iddev5
f4de00d8b5 examples: boids: use std.log.info instead of std.debug.print
std.debug.print uses IO which depends on file system and thus needs
support from OS, which dont have in freestanding targets (like WASM).
2022-05-22 08:26:56 -07:00
Stephen Gutekanst
ff5636c6f6 examples/gkurve: adjust frag shader to show barycentric coordinates
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-21 12:40:29 -07:00
Stephen Gutekanst
2b2ba15332 examples/gkurve: correct triangle coordinates (one was inverted horizontally)
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-21 12:18:10 -07:00
Stephen Gutekanst
2d4d856e55 examples/gkurve: fix bug in barycentric coordinates
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-21 12:14:05 -07:00
Stephen Gutekanst
2b718c6de1 examples/gkurve: explain frag_bary coordinates intent
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-21 11:26:54 -07:00
Stephen Gutekanst
eae2a090c6 examples/gkurve: border rendering, non-linear field
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-20 12:26:43 -07:00
iddev5
58709070dd examples: remove commented out old code in advanced-gen-texture-light 2022-05-20 09:14:32 -07:00
iddev5
02b9048734 examples: update to new event-based input method 2022-05-20 09:14:32 -07:00
Stephen Gutekanst
92028a11ef examples/gkurve: take into account high density displays
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-05-20 08:56:47 -07:00
PiergiorgioZagaria
a4e8de2a83 examples: fix depth texture recreation 2022-05-20 08:52:14 -07:00
iddev5
3bb45c75a1 mach: introduce cross platform Timer abstraction
This Timer uses std.time.Timer as backing timer in native platforms, and
will use custom timers for special platforms (wasm, android?, ios?).

Unlike std.time.Timer, its primary API is focused on floats. Also meant
to provides some convenient functions alongside base ones.

Follows std.time.Timer API, but methods by default return f32 i.e
non-precise variant with precise variants available returning u64.
2022-05-17 23:56:41 -07:00
Stephen Gutekanst
be935c64ef examples/gkurve: change window size to default 2022-05-15 10:36:08 -07:00