Somewhere to start to discuss how a 2d drawing library would work in rust, whether it is necessary, and what it should look like.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE Initial commit Sep 23, 2018
README.md Update README.md Sep 23, 2018

README.md

rfcs

Somewhere to start to discuss how a 2d drawing library would work in rust, whether it is necessary, and what it should look like.

The idea is that we replace these questions with statements over time (& expand on them) until we have a plan.

Requirements

What problem is this library trying to solve? Who would benefit from it?

  • 2d games?
  • desktop UI?
  • webrender?
  • ...?

What exactly is the problem in each of these area that needs solving?

Prior art

Do any of these solve the above problems today? Could they solve them after improvement? If not, can we learn from them?

Rust

Non-rust with wrapper

  • gtk
  • qt
  • cairo
  • pango
  • what does webrender do?
  • ...?

Interaction with other functionality

Unix philosophy - solve one problem well and be composable.

  • Windowing
  • Surface creation
    • We probably have to wrap this functionality rather than be composable?
  • Event processing
  • scene graphs
  • fonts
  • what other functionality do we interact/overlap?

Dependencies

I would think we could write something on top of gfx-ll and then be able to run on all the backends it supports. Do we need anything else? How can we be as fast (& low power) as possible?