Forma

Languages and libraries

graphics rendering library

SHOW HN2022

291points
58comments
#148of 2,570 in 2022
Top 6%of 2022 by points

How HN took it

CuriousMostly questions and neutral comments

7 positive, 13 neutral or asking, 0 mixed, 2 critical, out of 22 comments about the project. Thread score +0.24.

Performance: 4 for, 0 againstExecution: 0 for, 2 againstIdea: 2 for, 0 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Fast vector rendering on GPU compute; strong WebGPU demo

    From 2 comments
    • I'm very happy to see this work! The era of rendering vector graphics in GPU compute shaders is upon us, and I have no doubt it we'll start seeing these in production soon, as…
      raphlinus on HN
    • This is cool. Being able to render SVG animations natively, without having to embed a browser, is awesome. The map of Paris rendered in 40ms on my M1 Air which is crazy…
      programmarchy on HN
  • Could help games and animation tools needing vector graphics

    From 2 comments
    • A while ago I wanted to make some vector-based toy games for fun. I surveyed the available options and basically couldn't find any. If an engine supports vector graphics, it…
      Waterluvian on HN
    • about a decade ago I wanted to get started prototyping gameplay with vector graphics and I was dismayed at the state of available libraries to do this efficiently. I'm glad…
      adamrezich on HN

Objections

  • Missing stroke support limits comparisons and use

    From 2 comments
    • I just tried it in my own renderer (that uses tiny-skia) to compare performance, but unfortunately forma is still lacking some features to do a proper comparison (strokes, the…
      CryZe on HN
    • This is cool. Being able to render SVG animations natively, without having to embed a browser, is awesome. The map of Paris rendered in 40ms on my M1 Air which is crazy…
      programmarchy on HN
  • No browser demo available

    From 2 comments
    • The README mentions WebGPU - do you have a URL to a demo of this running in the browser using WebAssembly?
      simonw on HN
    • Feature request: a demo URL that does that! I'm interested enough to click on a demo, but I'm not _quite_ interested enough to figure out what hoops I would need to jump through…
      simonw on HN

Requests

  • A demo URL running in the browser

    From 1 comment
    • Feature request: a demo URL that does that! I'm interested enough to click on a demo, but I'm not _quite_ interested enough to figure out what hoops I would need to jump through…
      simonw on HN
  • More implementation detail in documentation

    From 1 comment
    • Please, write more about the implementation! There is so little information on this topic in general. Like, how does sorting pixel segments result in coverage masks? Is there an…
      screwreg on HN

Questions

  • How it compares to Skia and tiny-skia

    From 2 comments
    • I'm curious how this relates to Skia (the library that handles cross-platform rendering for Chrome and Flutter). Seems like this could be an alternative backend but also could…
      matlin on HN
    • How does this compare to https://github.com/RazrFalcon/resvg ?
      nerpderp82 on HN
  • What a pixel segment and its sort order are

    From 2 comments
    • > Line segments are transformed into pixel segments by intersecting them with the pixel grid. We developed a simple method that performs this computation in O(1) and which is run…
      tayistay on HN
    • Ok, and when you sort these pixel-contained segments, what's the ordering?
      tayistay on HN

Alternatives named

  • Skia

    From 2 comments
    • Haven't Skia et al been GPU accelerated for ages?
      gct on HN
    • Yes, Skia uses the traditional method of tessellating path geometry on the CPU and then having the GPU handle transforming and shading it as if it were 3D geometry. Compare that…
      jahewson on HN
  • resvg / tiny-skia

    From 1 comment
  • Pathfinder

    From 1 comment
    • You might be interested in https://github.com/servo/pathfinder
      bepvte on HN
  • Vello (piet-gpu)

    From 1 comment
    • I'm very happy to see this work! The era of rendering vector graphics in GPU compute shaders is upon us, and I have no doubt it we'll start seeing these in production soon, as…
      raphlinus on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/34015953)