For some reason, it seems popular for GUI crates to use the GPU. I just want to make simple widgets, for like a calculator.

No fancy graphics. I want it quite lightweight.

For some reason, popular GUI crates love to do everything through a GPU, which bumps up the memory / cpu use significantly.

  • RunAwayFrog@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    14
    arrow-down
    1
    ·
    1 year ago

    Funny you should mention that. I think iced as of four days ago can do this!

    If I’m reading the release notes and Cargo.toml right, cargo add iced --no-default-features and you should be good to go, as tiny-skia will be used as a rendering backend instead of wgpu.

    • van2zOP
      link
      fedilink
      arrow-up
      14
      ·
      edit-2
      1 year ago

      OMG, thank you! I have been using Iced. My simple application’s RAM just went down from 80 MB to only 4 MB.

      The executable size went down from about 8 MB to 2.5 MB

      • hch12907
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        8MB to 2.5MB is a huge drop. I wonder what caused the bloat - a crate?

  • Tobias Hunger
    link
    fedilink
    arrow-up
    11
    arrow-down
    1
    ·
    1 year ago

    Slint fits the bill: We have a demo running on a line-buffer in a microcontroller with <300KiB of RAM. Framebuffers are of course supported as well, as is GPU-accelerated rendering.

      • Tobias Hunger
        link
        fedilink
        arrow-up
        5
        ·
        1 year ago

        I did tick that, since I saw text boxes and went “give me everything” without reading:-)

        Fixed. Thank you for pointing this out.

    • spikespaz
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      You have much to learn Young Padawan. If you’re wanting to make a desktop app in Rust it behooves one to avoid embedded web environments. For performance reasons of course.