Patrick Walton
|
ab93ea1f22
|
Fix bogus thin culling that was causing artefacts
|
2019-01-29 11:27:25 -08:00 |
Patrick Walton
|
d1ca5fe757
|
Use a much better technique for curve flattening
|
2019-01-28 20:36:06 -08:00 |
Patrick Walton
|
a9c1760de5
|
Clipping mostly works now
|
2019-01-28 14:58:57 -08:00 |
Patrick Walton
|
7e3365c481
|
wip
|
2019-01-28 12:57:15 -08:00 |
Patrick Walton
|
80db7155b8
|
wip
|
2019-01-25 17:07:37 -08:00 |
Patrick Walton
|
938bd30a78
|
wip
|
2019-01-25 14:28:53 -08:00 |
Patrick Walton
|
7da8bdef89
|
Generalize clipping to non-axis-aligned lines
|
2019-01-22 21:40:43 -08:00 |
Patrick Walton
|
3ce60afb44
|
Fix clipping
|
2019-01-22 11:46:01 -08:00 |
Patrick Walton
|
d98b244bda
|
Fix transforms
|
2019-01-17 14:16:29 -08:00 |
Patrick Walton
|
b3681684a6
|
Minor cleanups
|
2019-01-17 12:49:52 -08:00 |
Patrick Walton
|
4b1c948e6a
|
Fix view box
|
2019-01-17 12:38:10 -08:00 |
Patrick Walton
|
a4386ab3e7
|
Add a new Ghostscript tiger test case
|
2019-01-17 09:18:18 -08:00 |
Patrick Walton
|
f3e0d2777a
|
Add strafing
|
2019-01-17 08:45:23 -08:00 |
Patrick Walton
|
554586c5bf
|
Fix rotation
|
2019-01-16 20:41:05 -08:00 |
Patrick Walton
|
090e20676a
|
Fix floating point error in clipping
|
2019-01-16 20:04:29 -08:00 |
Patrick Walton
|
8166de112c
|
Perspective transforms barely standing up!
|
2019-01-16 17:11:47 -08:00 |
Patrick Walton
|
93ae7d3548
|
Basic perspective support
|
2019-01-16 16:53:10 -08:00 |
Patrick Walton
|
a95db7dff9
|
Fix 3D transform math and add some unit tests
|
2019-01-16 11:22:01 -08:00 |
Patrick Walton
|
05d2b26fa7
|
Implement some 3D transform code, untested as of yet
|
2019-01-15 19:15:33 -08:00 |
Patrick Walton
|
3c3c3a5062
|
Basic monotonic conversion on transform
|
2019-01-15 14:21:37 -08:00 |
Patrick Walton
|
02928f295d
|
Basic rect clipping
|
2019-01-15 13:49:26 -08:00 |
Patrick Walton
|
0097ffab19
|
wip
|
2019-01-15 11:42:25 -08:00 |
Patrick Walton
|
5bbb5a1b74
|
Get the native code demo rendering the tiger
|
2019-01-15 10:52:37 -08:00 |
Patrick Walton
|
a4c2796883
|
Implement a third demo with native code, not working yet
|
2019-01-14 19:32:53 -08:00 |
Patrick Walton
|
821b54b8f4
|
Factor renderer and SVG code out into separate crates
|
2019-01-14 14:20:36 -08:00 |
Patrick Walton
|
3f28845157
|
Move monotonic conversion to the geometry crate
|
2019-01-14 11:22:45 -08:00 |
Patrick Walton
|
dcee161f6a
|
Move the path transform iterator to the geometry crate
|
2019-01-14 11:13:43 -08:00 |
Patrick Walton
|
77f4f6b188
|
Add the Lyon interoperability to the geometry crate
|
2019-01-14 11:10:47 -08:00 |
Patrick Walton
|
7f2003988e
|
Move transforms to the geometry crate
|
2019-01-14 11:07:08 -08:00 |
Patrick Walton
|
f0353e07aa
|
Move outlines to the geometry crate
|
2019-01-14 10:59:48 -08:00 |
Patrick Walton
|
e7a50f2abb
|
Fix SIMD conditional compilation
|
2019-01-12 20:50:11 -08:00 |
Patrick Walton
|
832e79db94
|
Conditionally compile SIMD
|
2019-01-12 20:46:06 -08:00 |
Patrick Walton
|
72204e948b
|
Add a scalar fallback
|
2019-01-12 20:12:52 -08:00 |
Patrick Walton
|
41709daffa
|
Redo the way shuffles work
|
2019-01-12 18:10:18 -08:00 |
Patrick Walton
|
af2f729520
|
Rustfmt
|
2019-01-12 17:15:20 -08:00 |
Patrick Walton
|
bbf193f00f
|
Remove simdeez
|
2019-01-12 17:13:58 -08:00 |
Patrick Walton
|
37e6e71251
|
Move the `Segment` type to the geometry crate
|
2019-01-11 15:50:09 -08:00 |
Patrick Walton
|
d4320cdb3e
|
Move the SIMD line segment type to the geometry crate
|
2019-01-11 15:41:46 -08:00 |
Patrick Walton
|
8ff3da8a68
|
Build outlines from segments; move SIMD points into `geometry`
|
2019-01-11 15:24:13 -08:00 |
Patrick Walton
|
c8bbb71dd4
|
Migrate the monotonic conversion iterator away from Euclid types
|
2019-01-11 14:21:02 -08:00 |
Patrick Walton
|
2675864ce0
|
Migrate the path transforming iterator away from Euclid types
|
2019-01-11 14:08:30 -08:00 |
Patrick Walton
|
ddae909cbf
|
Implement Euclid PathEvent <-> Segment adapters
|
2019-01-11 11:03:37 -08:00 |
Patrick Walton
|
3165a4a1b0
|
Remove old demo server; remove `SegmentFlags`
|
2019-01-10 20:43:03 -08:00 |
Patrick Walton
|
7bc62bb5af
|
Remove partitioner and frontend
|
2019-01-10 19:33:17 -08:00 |
Patrick Walton
|
4f95666cc8
|
Use SIMD for transforms
|
2019-01-10 16:11:15 -08:00 |
Patrick Walton
|
93134bc14d
|
Merge pull request #101 from Eijebong/env_loggerup
Update env_logger
|
2019-01-10 16:01:14 -08:00 |
Patrick Walton
|
289938b03b
|
Optimize `y_extrema()` with some SIMD
|
2019-01-10 15:11:41 -08:00 |
Patrick Walton
|
0da1ee7cd3
|
Fix blend mode and change hairline stroke width
|
2019-01-10 14:19:55 -08:00 |
Patrick Walton
|
ffe9abba6b
|
Stop using Lyon's monotonic converter
|
2019-01-10 14:14:59 -08:00 |
Patrick Walton
|
455e807ee3
|
Rework batch building into a streaming API
|
2019-01-10 11:18:27 -08:00 |
Patrick Walton
|
adf49ab932
|
Rename `path-utils` to `geometry`
|
2019-01-10 10:01:21 -08:00 |
Patrick Walton
|
3e6fb1157e
|
Optimize `add_fill` a bit more
|
2019-01-09 19:19:25 -08:00 |
Patrick Walton
|
e109a8958c
|
Refactor `ActiveEdge::process()`
|
2019-01-09 15:52:32 -08:00 |
Patrick Walton
|
a937855a0e
|
Get rid of the `down_` prefix for oriented edges
|
2019-01-09 15:26:41 -08:00 |
Patrick Walton
|
4f527a4f66
|
Fix clippy lints
|
2019-01-09 14:50:44 -08:00 |
Patrick Walton
|
dc4c0b2710
|
wip
|
2019-01-09 10:44:32 -08:00 |
Patrick Walton
|
4043f49fa4
|
Fix warnings
|
2019-01-09 08:26:28 -08:00 |
Patrick Walton
|
d72bc29002
|
wip
|
2019-01-09 08:22:13 -08:00 |
Patrick Walton
|
7929e610bc
|
wip
|
2019-01-08 10:26:20 -08:00 |
Patrick Walton
|
73ab591d2a
|
wip on the fly
|
2019-01-08 10:18:52 -08:00 |
Patrick Walton
|
68eff21138
|
Optimize Horner's method with SIMD
|
2019-01-07 17:47:59 -08:00 |
Patrick Walton
|
6482708a7d
|
Switch to Dekker's method (1969)
|
2019-01-07 17:10:03 -08:00 |
Patrick Walton
|
1ee1eaee4d
|
SIMD-ify cubic curve flattening
|
2019-01-07 16:10:46 -08:00 |
Patrick Walton
|
12d5e7c678
|
SIMD-ify de Casteljau subdivision
|
2019-01-07 15:15:43 -08:00 |
Patrick Walton
|
91ee0cb0f2
|
Port Lyon's subdivision algorithm over
|
2019-01-07 13:39:34 -08:00 |
Patrick Walton
|
ff07b4f034
|
Cull on-the-fly
|
2019-01-06 12:02:47 -08:00 |
Patrick Walton
|
8854ffb5ec
|
Factor out Z-buffering into a separate object
|
2019-01-06 11:32:17 -08:00 |
Patrick Walton
|
b2432b3a7f
|
Throw even more SIMD at `add_fill()`
|
2019-01-04 18:51:01 -08:00 |
Patrick Walton
|
c5ad95ffd5
|
SIMD-ify a bunch of things
|
2019-01-04 18:20:51 -08:00 |
Patrick Walton
|
9f736338d7
|
Partially SIMD-ify `Point2D<f32>`
|
2019-01-04 09:54:41 -08:00 |
Patrick Walton
|
a9ec34006d
|
Remove commented-out code
|
2019-01-03 20:56:54 -08:00 |
Patrick Walton
|
808bcaeed4
|
Rename "object" to "shader"; cull degenerate fills
|
2019-01-03 20:55:31 -08:00 |
Patrick Walton
|
2109049269
|
Merge identical shaders into one
|
2019-01-03 20:03:25 -08:00 |
Patrick Walton
|
eb7d3b46ef
|
Log object count
|
2019-01-03 14:08:06 -08:00 |
Patrick Walton
|
7af83c9ddf
|
Use resvg instead of hand-rolling SVG parsing
|
2019-01-03 13:57:14 -08:00 |
Patrick Walton
|
bc25f087a6
|
Don't use <style> elements in the architecture Markdown file
|
2019-01-03 10:40:31 -08:00 |
Patrick Walton
|
f4ed611e56
|
Add very preliminary architecture documentation
|
2019-01-03 10:35:54 -08:00 |
Patrick Walton
|
ad8814fcea
|
Remove `#[inline(never)]` for a small perf boost
|
2019-01-02 18:54:03 -08:00 |
Patrick Walton
|
edd140a957
|
Fix active windings > 1 or < -1
|
2019-01-02 18:20:17 -08:00 |
Patrick Walton
|
7d55515f72
|
Stop filling paths that don't have a fill attribute set
|
2019-01-02 15:04:17 -08:00 |
Patrick Walton
|
c0c0daa427
|
Compress primitives.
|
2019-01-02 14:02:10 -08:00 |
Patrick Walton
|
68e0e791a4
|
More bug fixes
|
2019-01-01 01:12:18 -08:00 |
Patrick Walton
|
6575012cc9
|
Fix nasty off-by-one error in MIN point finding
|
2018-12-31 12:26:06 -08:00 |
Patrick Walton
|
e09a3f2977
|
Remove curve support from line shader
|
2018-12-30 18:01:48 -08:00 |
Patrick Walton
|
6c8e4de739
|
Fix occlusion culling.
It's slow now, but I'm pretty sure it can be optimized.
|
2018-12-30 17:38:34 -08:00 |
Patrick Walton
|
6b0087f1a2
|
Fix a bunch of stuff
|
2018-12-30 16:04:42 -08:00 |
Patrick Walton
|
028de44023
|
Do color lookups in a separate table
|
2018-12-30 14:07:39 -08:00 |
Patrick Walton
|
6e0e621d19
|
WIP: get demo compiling again
|
2018-12-30 09:38:57 -08:00 |
Patrick Walton
|
28d948a36e
|
Use Horner's method to evaluate cubics
|
2018-12-29 18:29:26 -08:00 |
Patrick Walton
|
1a6b5bd27d
|
Optimize cubic Bezier sampling a bit
|
2018-12-29 18:26:08 -08:00 |
Patrick Walton
|
ad9da96336
|
Build objects in parallel!
|
2018-12-29 17:08:49 -08:00 |
Patrick Walton
|
abb062bf71
|
Rewrite to handle objects independently
|
2018-12-29 17:00:50 -08:00 |
Patrick Walton
|
aaa8f26a5c
|
wip before switching to per-object subscenes
|
2018-12-29 13:44:34 -05:00 |
Patrick Walton
|
17ff919cd2
|
Retain fills
|
2018-12-28 10:30:54 -05:00 |
Patrick Walton
|
dda6fd4a6e
|
Replace fill color with object index
|
2018-12-26 18:44:43 -05:00 |
Patrick Walton
|
e681a28da3
|
Stop stroking every path!!
|
2018-12-21 21:04:48 -08:00 |
Patrick Walton
|
5bac1b6517
|
Compress point indices
|
2018-12-21 17:58:39 -08:00 |
Patrick Walton
|
b29ad14d83
|
wip
|
2018-12-21 17:45:16 -08:00 |
Patrick Walton
|
e6f4072495
|
Fixes
|
2018-12-21 14:35:19 -08:00 |
Patrick Walton
|
4471a74144
|
Pack vertices a little tighter
|
2018-12-21 14:10:26 -08:00 |