Commit Graph

  • e6d8aab974 Don't draw backwards miters. Patrick Walton 2020-03-31 19:38:43 -0700
  • 764953a643 Fix counterclockwise arc drawing logic Patrick Walton 2020-03-31 17:59:41 -0700
  • bf2fd6569b Fix tests Patrick Walton 2020-03-31 17:17:25 -0700
  • 32a56eab85 Stop leaking textures and framebuffers in the OpenGL backend. Patrick Walton 2020-03-31 17:14:28 -0700
  • bbcd371efc Show the progress spinners behind thumbnail images in the NanoVG demo Patrick Walton 2020-03-31 17:14:06 -0700
  • 2f6071c059 Make solid tiles not use mask 1. Patrick Walton 2020-03-31 14:15:45 -0700
  • 2db4cfcfed Uncomment round join code in the NanoVG demo now that it doesn't crash Patrick Walton 2020-03-31 13:31:35 -0700
  • 40377d657a Prevent taking the square root of a negative number in the half-angle formula Patrick Walton 2020-03-31 13:32:00 -0700
  • f142f045aa Detect coincident points and bail out of the line join code as necessary. Patrick Walton 2020-03-31 13:30:50 -0700
  • c7ca630aad Search backward for a non-coincident point if the two ending points of a capped stroke are coincident. Patrick Walton 2020-03-31 13:29:47 -0700
  • 9212c742b7 Avoid taking the square root of a negative number in `arc_from_cos()`. Patrick Walton 2020-03-31 13:28:55 -0700
  • df4021e3c5 Limit the number of trips through the round join loop. Patrick Walton 2020-03-31 13:27:47 -0700
  • 93f5fbc6d2 Add convenience constructors: `vec2f`, `vec2i`, `Vector2F::zero()`, `Vector2I::zero()` Patrick Walton 2020-03-31 11:28:34 -0700
  • d83f54457c
    Merge pull request #290 from s3bk/patch-1 Patrick Walton 2020-03-30 22:01:04 -0700
  • 4af74f225d Add support to canvas for the commonly-used `textBaseline` values Patrick Walton 2020-03-30 22:00:13 -0700
  • 9a0fbe1d11 Flesh out the NanoVG demo yet more Patrick Walton 2020-03-30 21:33:05 -0700
  • f1d7a0bfa3 Make the gradient construction methods more convenient Patrick Walton 2020-03-30 21:32:55 -0700
  • 6d6b5191bb Clean up the `text` module inside `canvas` a bit Patrick Walton 2020-03-30 21:32:30 -0700
  • e864536b31 Add a `From` implementation to `FillStyle` and use it in `canvas` for brevity Patrick Walton 2020-03-30 21:31:18 -0700
  • f1d5906c9e Switch to my branch of `skribo` for much better `fill_text()` performance Patrick Walton 2020-03-30 21:29:25 -0700
  • 7ac822bc2e Cache image hashes. Patrick Walton 2020-03-30 16:48:01 -0700
  • cf78ac4569 Fix image pattern texture atlas logic. Patrick Walton 2020-03-30 16:19:03 -0700
  • a1f0ae097a Add thumbnail images to the NanoVG demo Patrick Walton 2020-03-30 16:18:41 -0700
  • 257067e368 Flesh out the NanoVG example even more Patrick Walton 2020-03-28 12:45:23 -0700
  • cb91f40d7a
    add Contour::clear Sebastian 2020-03-28 19:22:39 +0300
  • ed2807eb84 Flesh out the NanoVG demo some more Patrick Walton 2020-03-27 20:53:57 -0700
  • 9723fa441b Update `image`, `glutin`, and `jni` crates. Patrick Walton 2020-03-27 15:49:26 -0700
  • b6762cecb8 Don't include the closing segment when printing a path as a string. Patrick Walton 2020-03-27 15:40:27 -0700
  • 6239356d89 Add a `Debug` impl for `Path2D` Patrick Walton 2020-03-27 15:05:10 -0700
  • 6eb0232aad Add `precision highp sampler2D` everywhere so our winding numbers don't get clipped Patrick Walton 2020-03-27 14:53:00 -0700
  • 7b53cc6731 Close all subpaths right before filling them. Patrick Walton 2020-03-27 14:50:02 -0700
  • c258616bad Add `Path2D::add_path()` Patrick Walton 2020-03-27 12:33:06 -0700
  • 15718d297c Add `Contour::with_capacity()` from #289 Patrick Walton 2020-03-27 10:06:56 -0700
  • b29ffdf3fa Add missing packed comparisons to the scalar implementation of `I32x2` Patrick Walton 2020-03-27 10:04:42 -0700
  • 55df287fec Move radial gradients from the CPU to the GPU Patrick Walton 2020-03-26 20:01:17 -0700
  • 0c24619dd0 Add a `clear` method to `Outline` as suggested in #289 Patrick Walton 2020-03-26 08:34:47 -0700
  • 0c93045f50 Replace the individual tile shaders with an ubershader Patrick Walton 2020-03-19 16:44:45 -0700
  • 51277a2027
    Merge pull request #288 from kyythane/master Patrick Walton 2020-03-25 16:58:04 -0700
  • 22d54a82ca
    CanvasFontContext now implements .clone() Lillian Primrose 2020-03-24 22:15:09 -0400
  • 0f5de612f9
    Merge pull request #281 from zimond/master Patrick Walton 2020-03-09 17:17:09 -0700
  • 0b0c45a49a Collapse linear gradients down to a single 256x1 sliver instead of a 256x256 square Patrick Walton 2020-03-05 16:58:26 -0800
  • 2548ab853a Unify solid tiles and render target tiles. Patrick Walton 2020-03-05 12:22:01 -0800
  • 9935c9fdff Don't distinguish between render targets and other images in the texture atlas allocator Patrick Walton 2020-03-04 19:41:24 -0800
  • a8f7438cd9 Remove transforms from paths. Patrick Walton 2020-03-04 16:18:32 -0800
  • 27357a23d3 Separate the `AddPaintData` render command into different subcommands Patrick Walton 2020-03-04 15:49:38 -0800
  • e50039f4c2 Create framebuffers for every texture page Patrick Walton 2020-03-04 12:35:07 -0800
  • a3736859ba Rename "paint texture" to just "texture page" Patrick Walton 2020-03-04 12:09:08 -0800
  • 22f9c3bf6e Use instant crate to build for wasm32 target 乌戈 2020-03-05 01:54:36 +0800
  • d0f4579864 Move `RenderTargetId` out of the `pattern` module Patrick Walton 2020-03-03 15:50:48 -0800
  • 2beb2bb126 Apply path transforms to paints Patrick Walton 2020-03-03 14:26:38 -0800
  • 12574101e5 Add a transform field to `DrawPath`. Patrick Walton 2020-03-03 11:17:09 -0800
  • afd1585d5d
    Merge pull request #278 from inferiorhumanorgans/iho/pub-outline Patrick Walton 2020-03-03 11:00:00 -0800
  • 468848086a Use the paint texture uniform belonging to the appropriate program Patrick Walton 2020-03-03 10:56:32 -0800
  • f607b607b0 Composite render targets using tiles, taking the Z-buffer into account. Patrick Walton 2020-03-02 20:04:09 -0800
  • c8496a1cb2 Make Path2D#into_outline public Alex Zepeda 2020-03-02 00:14:24 -0800
  • 0f35d9c817 Add an embedded resource loader that places resources directly in the binary. Patrick Walton 2020-02-28 17:10:53 -0800
  • ee6c7e0797 Explicitly cast `aTessCoord` to `vec2` for WebGL compatibility Patrick Walton 2020-02-28 12:49:21 -0800
  • e2fbde820d Implement a WebGL backend Sebastian K 2020-02-26 21:59:29 +0300
  • c59b347c62 Mention CoC in the community section Patrick Walton 2020-02-28 10:07:27 -0800
  • fa2cb9b6e0 Update README to mention chat room Patrick Walton 2020-02-28 10:05:39 -0800
  • d2ae183ed6 Update README Patrick Walton 2020-02-28 09:46:42 -0800
  • b4681dcf8f Add a PNG version of the logo Patrick Walton 2020-02-28 09:44:09 -0800
  • 40bb1b412c Implement radial gradients along a line, following Pixman. Patrick Walton 2020-02-27 16:24:02 -0800
  • 59783ad457
    Merge pull request #272 from adamnemecek/master Patrick Walton 2020-02-27 09:04:21 -0800
  • 3d39c5e9b7 trimmed whitespace Adam Nemecek 2020-02-27 08:13:14 -0800
  • 060241e4d0 Fix Metal backend Patrick Walton 2020-02-27 04:07:09 -0800
  • e913f83eee Remove obsolete TODOs Patrick Walton 2020-02-27 04:03:08 -0800
  • b998449885 Remove unused #define Patrick Walton 2020-02-26 18:46:48 -0800
  • 3a014d78eb Implement a blur filter for canvas shadows Patrick Walton 2020-02-26 18:43:41 -0800
  • d1c7da8bd2 Implement pattern repeating and image smoothing control Patrick Walton 2020-02-26 14:56:05 -0800
  • 77b3555828 Separate opacity out from paint. Patrick Walton 2020-02-26 12:43:07 -0800
  • 1deb53fa9c Implement the remaining Porter-Duff compositing operators Patrick Walton 2020-02-25 18:37:23 -0800
  • e7de50eb67 Fix sub-Z-buffer indexing error with render targets Patrick Walton 2020-02-25 18:36:46 -0800
  • 0a3f64eb44 Implement the difference and exclusion blend modes Patrick Walton 2020-02-25 14:55:58 -0800
  • a8e33d3d3d Add the soft light blend mode Patrick Walton 2020-02-25 14:39:06 -0800
  • 9b4217300f Implement the source-in, destination-in, source-out, and destination-atop blend modes to round out the assortment of Porter-Duff blend modes Patrick Walton 2020-02-25 12:52:11 -0800
  • 02012431ca Implement color dodge and color burn blend modes Patrick Walton 2020-02-25 11:37:42 -0800
  • 5b228ed825 Implement multiply, screen, hard light, and overlay blend modes. Patrick Walton 2020-02-24 21:23:17 -0800
  • 149efeb672 Fix `is_fully_transparent()` for colors. Patrick Walton 2020-02-24 21:22:36 -0800
  • 99d980c0c7 Fix batch breaking logic for blend modes Patrick Walton 2020-02-24 21:22:15 -0800
  • 00b7a2ee5a Factor out 3-element selection into a `select3()` function Patrick Walton 2020-02-24 21:20:56 -0800
  • c96cb62f47 Factor out common functions used in tile alpha shaders Patrick Walton 2020-02-24 19:42:32 -0800
  • 5421525eaa Implement the HSL filters (called "non-separable blend modes" in the spec). Patrick Walton 2020-02-22 14:39:03 -0800
  • 67d12adb6c Replace layers with render targets, which can be used as patterns. Patrick Walton 2020-02-21 21:42:15 -0800
  • 3245796445 Add support for multiple paint texture pages. Patrick Walton 2020-02-21 14:46:10 -0800
  • 0b102ec97d Fix compile error in `convert` utility Patrick Walton 2020-02-20 22:23:38 -0800
  • 36538d5748 Implement a few more blend modes and switch to premultiplied alpha for layer compositing Patrick Walton 2020-02-20 22:22:15 -0800
  • 4933efb513 Add Lighten and Darken composite ops Patrick Walton 2020-02-20 20:38:43 -0800
  • ab55b9509b Fix handling of solid tiles with the Clear blend mode Patrick Walton 2020-02-20 18:15:20 -0800
  • 6acd2d91f7 Implement `clear_rect()` in the canvas front-end by introducing the concept of per-path blend modes. Patrick Walton 2020-02-20 15:52:40 -0800
  • 0c3dad974f Expose individual blend factors in `pathfinder_gpu` Patrick Walton 2020-02-20 15:28:37 -0800
  • 16a2de88df Rename "postprocessing" to "effects" and start initial work on composite ops Patrick Walton 2020-02-20 14:22:07 -0800
  • d9e994e46d Transition the existing postprocessing system to a layers system. Patrick Walton 2020-02-19 17:44:41 -0800
  • 25f9346160 Add an incomplete port of the NanoVG example app Patrick Walton 2020-02-18 14:35:00 -0800
  • fd070d7a24 Start an `angle` module in `pathfinder_geometry` Patrick Walton 2020-02-19 10:58:53 -0800
  • 95d5fab5ef Minor cleanup in `pathfinder_canvas` Patrick Walton 2020-02-19 10:58:34 -0800
  • cc9711e151 Transform some paints in the canvas API Patrick Walton 2020-02-18 16:06:39 -0800
  • 3f79927eb1 Allow the paint texture to grow a bit Patrick Walton 2020-02-18 15:06:09 -0800
  • d97eb32566 Add a (somewhat inefficient) HSLA to RGBA conversion function Patrick Walton 2020-02-18 14:36:26 -0800
  • df150dea8a Add a method to fetch the center of a rect Patrick Walton 2020-02-18 14:36:10 -0800