Patrick Walton
8c518deebe
Do a better job of approximating cubic Bézier curves with quadratics
...
This still isn't great, but it's a lot better than the old approximation, which was just bogus.
2017-09-22 17:15:19 -07:00
Patrick Walton
88f1d3f108
Fix de Casteljau subdivision when a curve has two inflection points
2017-09-22 13:40:41 -07:00
Patrick Walton
b48b256ab3
Actually reverse indices for early Z!
...
2x performance improvement. I feel silly.
2017-09-14 17:20:54 -07:00
Patrick Walton
a7d75f913c
Split paths into monotonic segments before partitioning them in the demo
2017-09-12 09:35:57 -07:00
Patrick Walton
068e2bd99e
Stub a benchmarking tool, not working yet
2017-09-11 11:22:19 -07:00
Patrick Walton
c36896e337
Implement path stroking using the FreeType stroker.
...
I'm not too happy with this, as I discovered a segfault in FreeType that doesn't give me confidence
in this as a solution for the long term. Additionally, this exposes the problems in the partitioner
with lack of winding fill rule, proper handling of self-intersections, and splitting of paths at
their extrema. (I believe these problems should be fairly straightforward to handle, but we just
don't handle them yet.)
2017-09-08 16:50:27 -07:00
Patrick Walton
3e5b53f13c
Partially refactor the path APIs to be streaming, like Lyon
2017-09-08 13:09:00 -07:00
Patrick Walton
6cbc7dc082
Use some names from the Mozilla Monument in the 3D demo
2017-09-06 22:50:07 -07:00
Patrick Walton
2166f9fa07
Reverse Z order of interior elements for early Z
2017-09-06 18:28:23 -07:00
Patrick Walton
444e7bbf96
Use the Citardauq Formula in the partitioner as well as the shader to avoid precision problems.
...
Addresses the issue with the Nimbus Sans "o" mentioned in #24 .
2017-09-01 23:45:51 -07:00
Patrick Walton
632202e5eb
Implement a basic mesh debugger
2017-09-01 22:29:05 -07:00
Patrick Walton
1eb1bb5343
Stub a mesh debugger app
2017-09-01 18:11:44 -07:00
Patrick Walton
a1013de5ba
Expose the Rust API documentation via the server
2017-08-31 19:47:58 -07:00
Patrick Walton
e448ba7b30
Switch from ES6 interpolation to Handlebars and add a simple landing page
2017-08-30 23:25:58 -07:00
Patrick Walton
d6767219ff
Automatically load some built-in fonts and SVGs
2017-08-30 19:48:18 -07:00
Patrick Walton
58b558de64
Make the demo UI less cluttered
2017-08-30 17:01:28 -07:00
Patrick Walton
d7b606987a
Update to Bootstrap 4 beta
2017-08-30 09:51:15 -07:00
Patrick Walton
7029248610
Stub a 3D demo
2017-08-29 19:46:18 -07:00
Patrick Walton
8d6636b1cf
Add `-demo` to the SVG and text demo files
2017-08-29 18:57:43 -07:00
Patrick Walton
40c0e9b8c5
Use ES6 templates to reduce duplication in the demo HTML
2017-08-29 16:04:40 -07:00
Patrick Walton
4d16df17db
Implement the server-side support for SVG path partitioning in the demo
2017-08-28 16:47:27 -07:00
Patrick Walton
e5f1f3ccfb
Remove unused dependency
2017-08-27 12:45:05 -07:00
Patrick Walton
01d1382324
Begin splitting up `index.ts`
2017-08-25 20:20:45 -07:00
Patrick Walton
894226e023
Stub an SVG demo page
2017-08-25 19:40:08 -07:00
Patrick Walton
93277c7c11
Allow multiple glyphs to be rendered simultaneously
2017-08-19 16:34:02 -07:00
Patrick Walton
ec78a632dc
Split path IDs and Loop-Blinn data into separate VBOs
2017-08-17 12:47:50 -07:00
Patrick Walton
4b62ec8fa7
Get edge detection working in the demo
2017-08-16 16:37:39 -07:00
Patrick Walton
f8bd405759
Get basic polygons rendering in the demo
2017-08-14 16:08:45 -07:00
Patrick Walton
ee9c1a7998
Download shaders via XHR
2017-08-11 21:26:25 -07:00
Patrick Walton
57ebbf8281
Split out B-vertex positions and info so that they're easier to pack into textures
2017-08-11 15:56:07 -07:00
Patrick Walton
fa1b2390c7
Remove bad `extern crate` directive
2017-08-10 21:02:32 -07:00
Patrick Walton
933e4023ed
Send mesh indices along to the client as well
2017-08-10 21:00:37 -07:00
Patrick Walton
5b84b052a0
Upload the chosen font to the server
2017-08-10 18:38:54 -07:00
Patrick Walton
0ad2f9abfe
Initial implementation of the Rocket-based demo server
2017-08-10 15:26:27 -07:00
Patrick Walton
2ddf95bd70
Initial work on the font renderer component
2017-08-09 15:36:41 -07:00