Commit Graph

44 Commits

Author SHA1 Message Date
Patrick Walton d24dd7ce24 Fix off by one error in glyph atlas rects 2017-08-24 19:39:07 -07:00
Patrick Walton cae6e16416 Make some more methods and attributes private 2017-08-24 19:33:58 -07:00
Patrick Walton 99767ce48d Make a bunch of methods and properties private 2017-08-24 19:30:53 -07:00
Patrick Walton 77db92bc42 Fix off by one error in the path color buffer 2017-08-24 16:23:02 -07:00
Patrick Walton 1213eaa3d7 Make the atlas texture bigger and scissor to improve clearing performance on Intel Mac 2017-08-24 16:18:26 -07:00
Patrick Walton 132b6e183b Fix the pan/zoom logic in `onWheel()` 2017-08-24 13:34:45 -07:00
Patrick Walton 07d425dfb2 Split the ECAA shader into separate shaders for monochrome and multicolor 2017-08-24 12:08:58 -07:00
Patrick Walton ad565ffde7 Use early Z to avoid resolving blank areas for ECAA. ~50% speedup. 2017-08-24 11:43:38 -07:00
Patrick Walton 81a6f8f051 Enable early Z for edge detection and render only in the used area of the atlas 2017-08-23 19:18:24 -07:00
Patrick Walton ed0288906c Use a fixed atlas size and reuse textures/FBOs more aggressively 2017-08-23 13:23:29 -07:00
Patrick Walton 52afa359b4 Render a line of text using the atlas 2017-08-22 18:25:32 -07:00
Patrick Walton 7db61bfe8e Add a transform parameter to blit and switch framebuffer sizes to be `glmatrix.vec2` types 2017-08-19 16:52:14 -07:00
Patrick Walton 93277c7c11 Allow multiple glyphs to be rendered simultaneously 2017-08-19 16:34:02 -07:00
Patrick Walton 9b3f9d029c Fix flipped inequality in the shader causing AA artefacts 2017-08-19 11:37:06 -07:00
Patrick Walton 9f194b7618 Add timing measurement 2017-08-19 09:57:54 -07:00
Patrick Walton da6483c3ab Add basic support for panning and zooming in the demo 2017-08-18 22:11:52 -07:00
Patrick Walton 37c947c751 Get basic ECAA fully working 2017-08-18 20:23:45 -07:00
Patrick Walton 653530be0b Add a curve shader for ECAA and refactor the line shader to minimize code duplication 2017-08-18 17:12:58 -07:00
Patrick Walton 3a9b29735a Get exact antialiasing mostly working for lines (no curves yet) 2017-08-18 15:17:23 -07:00
Patrick Walton a9eeec39fe Implement the line antialiasing shader, untested as of yet 2017-08-18 11:44:17 -07:00
Patrick Walton ccf5000e1c Get the cover step mostly working 2017-08-17 22:47:28 -07:00
Patrick Walton 9a7063a29b Render conservative coverage. Not working yet. 2017-08-17 20:09:18 -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 0a4d57580a Add the ECAA cover shader, untested as of yet 2017-08-16 19:51:13 -07:00
Patrick Walton 4b62ec8fa7 Get edge detection working in the demo 2017-08-16 16:37:39 -07:00
Patrick Walton b10807d217 Initial setup for ECAA in the demo 2017-08-15 22:09:09 -07:00
Patrick Walton 3f7fc8baf6 Add an edge detection shader for ECAA, untested as of yet 2017-08-15 17:28:07 -07:00
Patrick Walton 7dc8f5debb Switch to depth textures to aid edge detection 2017-08-15 16:51:26 -07:00
Patrick Walton 0f5b23622a Implement SSAA in the demo 2017-08-15 15:57:52 -07:00
Patrick Walton 8bae26b521 Implement some antialiasing strategy infrastructure 2017-08-15 13:38:54 -07:00
Patrick Walton eb7cfe7c5f Fetch the colors of paths 2017-08-14 21:24:58 -07:00
Patrick Walton 309034b7dd Implement basic Loop-Blinn curves 2017-08-14 19:08:18 -07:00
Patrick Walton f8bd405759 Get basic polygons rendering in the demo 2017-08-14 16:08:45 -07:00
Patrick Walton 5f89f7ba50 Fix compile errors in shaders 2017-08-13 13:39:51 -07:00
Patrick Walton d0dd883ddf Switch to the Fetch API 2017-08-12 10:08:35 -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
Patrick Walton 376faf8c38 Move `demo/` to `demo/client/` in preparation for making a partitioning web service 2017-08-08 11:35:10 -07:00
Patrick Walton ef040b61bf Introduce demo skeleton code 2017-08-08 11:23:30 -07:00