Stephen Gutekanst
|
1f8962408c
|
gfx: integrate new font stack into Text module
Helps hexops/mach#877
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-10-05 20:35:36 -07:00 |
|
Stephen Gutekanst
|
34259ed1b8
|
gfx: font: account for glyph bearings
Helps hexops/mach#877
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-10-05 20:35:33 -07:00 |
|
Stephen Gutekanst
|
dfbf3e3603
|
gfx: font: add glyph rendering functionality
Helps hexops/mach#877
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-10-05 20:35:30 -07:00 |
|
Stephen Gutekanst
|
87c3de78f5
|
gfx: font: begin adding text shaping via harfbuzz
Helps hexops/mach#877
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-10-05 20:35:13 -07:00 |
|
Stephen Gutekanst
|
3bcbdc4682
|
move mach.Atlas -> mach.gfx.Atlas
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-10-03 22:36:44 -07:00 |
|
Stephen Gutekanst
|
3b4f811529
|
minor cleanup
|
2023-10-03 19:50:52 -07:00 |
|
Joel D. Schüller
|
c03c627780
|
math: Have Ray return fitting subtype, scale precision automatically
|
2023-10-03 19:50:52 -07:00 |
|
Joel D. Schüller
|
0273e12902
|
math: Implement function to determine Ray hit fallback precision
|
2023-10-03 19:50:52 -07:00 |
|
Joel D. Schüller
|
4d6b3e200f
|
math: Declare Ray, Rayh, and Rayd types
|
2023-10-03 19:50:52 -07:00 |
|
Joel D. Schüller
|
24b9a415b3
|
math: Add Ray type and ray methods to test runner
|
2023-10-03 19:50:52 -07:00 |
|
Joel D. Schüller
|
9399cda75c
|
math: Implement ray-triangle intersection
|
2023-10-03 19:50:52 -07:00 |
|
Jeremia Dominguez
|
06f66d7a32
|
text: Fixed atlas finding glyphs of wrong size
Signed-off-by: Jeremia Dominguez <me@jeremia.dev>
|
2023-10-03 19:46:52 -07:00 |
|
Stephen Gutekanst
|
e661dcaf0a
|
cleanup
|
2023-10-03 10:28:34 -07:00 |
|
Stephen Gutekanst
|
f0bb14524b
|
cleanup
|
2023-10-03 10:28:34 -07:00 |
|
Om Prakaash
|
3527937086
|
Added mulVec function for matrices
Added function to multiply a matrix with a vector (Matrix* Vec).
|
2023-10-03 10:28:34 -07:00 |
|
Joel D. Schüller
|
a3671ab0ef
|
math: Implement Vec swizzle method
|
2023-10-01 10:06:42 -07:00 |
|
Joel D. Schüller
|
f6213a4237
|
math: Add enum for Vector components
|
2023-10-01 10:06:42 -07:00 |
|
Stephen Gutekanst
|
4e091f1cb8
|
replace module() helper; remove invalid re-exports;
Fixes hexops/mach#1041
Helps hexops/mach#1038
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-24 17:20:40 -07:00 |
|
Joel D. Schüller
|
2615afaaed
|
math: Overhaul old Vec tests
Old tests were not in accordance to the testing style guide
|
2023-09-23 04:19:18 -07:00 |
|
Joel D. Schüller
|
0bd8690ee1
|
math: Fix Vec cross method calculation arguments
|
2023-09-23 04:19:18 -07:00 |
|
Joel D. Schüller
|
085974a4b2
|
math: Fix Vec swizzling method component calls
|
2023-09-23 04:19:18 -07:00 |
|
Joel D. Schüller
|
8613ba9b17
|
math: Add tests for basic Vec operations
Tests for add, sub, div, mul, addScalar, subScalar, divScalar, mulScalar
|
2023-09-23 04:19:18 -07:00 |
|
Olle Lukowski
|
45b23264da
|
math: add perspective camera matrix
|
2023-09-22 16:40:57 -07:00 |
|
Joel D. Schüller
|
b6e0539c52
|
math: Add tests for new Vec operations
Tests for max, min, inverse, negate, maxScalar, minScalar
|
2023-09-22 09:51:55 -07:00 |
|
Joel D. Schüller
|
7597f03b71
|
math: Implement more Vec operations
max, min, inverse, negate, maxScalar, minScalar
|
2023-09-22 09:51:55 -07:00 |
|
Stephen Gutekanst
|
c16cddd250
|
all: refactor: cleanup module structure
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-22 08:24:16 -07:00 |
|
Stephen Gutekanst
|
52c4eb5d74
|
all: canonicalize import paths with mach- prefix
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-21 14:36:21 -07:00 |
|
Stephen Gutekanst
|
26a9392188
|
build: remove earcut dependency
Related to hexops/mach#967
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-21 14:10:22 -07:00 |
|
Stephen Gutekanst
|
164e52cd85
|
editor: move to github.com/hexops/mach-editor
Fixes hexops/mach#1018
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-21 11:00:21 -07:00 |
|
Stephen Gutekanst
|
8a57ea059c
|
gfx2d: add initial text rendering ECS module
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-21 07:27:28 -07:00 |
|
Stephen Gutekanst
|
0803e71a0e
|
gfx2d: cleanup sprite2d in prep for text2d
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-18 08:43:21 -07:00 |
|
Olle Lukowski
|
445265c554
|
math: add more tests (#1001)
|
2023-09-15 10:57:44 -07:00 |
|
Olle Lukowski
|
93357bd358
|
math: add initial Quaternion implementation (#1000)
|
2023-09-15 10:38:46 -07:00 |
|
Stephen Gutekanst
|
b7ad36078f
|
gfx2d: even larger sprite buffer; fix reference counting
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-13 18:04:43 -07:00 |
|
Stephen Gutekanst
|
45cbfcf7b6
|
gfx2d: redesign Sprite2D
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-13 18:04:43 -07:00 |
|
Stephen Gutekanst
|
b83b71e2b2
|
engine: add render pass / encoder / queue management
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-13 18:04:43 -07:00 |
|
Stephen Gutekanst
|
4d2c917b66
|
gfx2d: begin Sprite2D new design
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-13 18:04:43 -07:00 |
|
Stephen Gutekanst
|
77b95aa9a9
|
math: fix lerp reference
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-09 19:24:03 -07:00 |
|
Stephen Gutekanst
|
fe517f3efb
|
math: improve debug build performance
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-09 18:24:10 -07:00 |
|
Stephen Gutekanst
|
b96e8ac995
|
gfx2d: use latest mach.math API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 23:18:51 -07:00 |
|
Stephen Gutekanst
|
578bd4f22c
|
math: minor fixes
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 23:18:31 -07:00 |
|
Stephen Gutekanst
|
c6a22fd913
|
math: add matrix rotation constructors
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 22:48:15 -07:00 |
|
Stephen Gutekanst
|
d814bb1527
|
math: add matrix multiplication
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 22:36:10 -07:00 |
|
Stephen Gutekanst
|
7e8e1c03b9
|
math: add matrix transposition
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 21:47:13 -07:00 |
|
Stephen Gutekanst
|
5dda26960d
|
math: add matrix column/row getters
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 21:24:34 -07:00 |
|
Stephen Gutekanst
|
de90bb6c12
|
math: make matrix init visually match scientific notation
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 20:18:39 -07:00 |
|
Stephen Gutekanst
|
8fd84a6bda
|
math: add Matrix translation getters
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 18:08:11 -07:00 |
|
Stephen Gutekanst
|
94540a4332
|
math: add orthographic projection
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 17:53:37 -07:00 |
|
Stephen Gutekanst
|
eba9390616
|
math: add Matrix translation constructors
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 17:50:30 -07:00 |
|
Stephen Gutekanst
|
5095002b1e
|
math: add Matrix scaling constructors
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
|
2023-09-08 17:10:20 -07:00 |
|