Home Coding, Scripting, Shaders

Building a GPU powered painting program.

greentooth
Offline / Send Message
Muzzoid greentooth
Hey all.

It's been a while!

I've been working on something cool. I always get frustrated with painting software, it's slow, most of them work in 8 bit, and work in srgb, and the workflows haven't improved really that much for decades.

So I'm working on my own painting program, from scratch, using odin. The only library I'm using is a super fast ui layout library called clay, but rolling everything else myself.

The big trick, is I'll be doing all image manipulation on the gpu in compute shaders. Basically not even holding the image buffers in ram. This of course will mean that this program isn't at all suitable for low end hardware, but I don't care, I have a need for SPEED.

I have a lot more crazy stuff planned that nobody has ever done before, but i'll keep that stuff hush, until i have the core program with basic functionality running.

For now, this is showing the program with a 4096x4096 canvas, and a 500px brush, painting at around 900 FPS on a rtx 4070 ti

(kinda funny trying to show performance in a low fps gif i know)
ow

Replies

  • iam717
    Offline / Send Message
    iam717 interpolator
    Play on crisis meme, but can it do layers?

    while also painting on said layers, can it do, i found this to be the test in an alternative app @5k and 2.gb's "mem" starts to pick up rather quickly in said app.  Just mentioning this, looks cool.
  • Muzzoid
    Offline / Send Message
    Muzzoid greentooth
    It's not worth comparing the approaches to other software unless you know of anything doing it like this exactly. As far as i can tell this is a fundamentally different approach.

    You WILL be limited by vram, as you are using uncompressed half floats, but remember this is a painting program, not a design program. For people like me, I'd rather have a lower layer count, but the silkiest smoothest performance possible, over extreme flexibility. This is an experiment in uncompromising performance.
  • Vexod14
    Offline / Send Message
    Vexod14 polycounter
    This is extremely interesting ! As someone who mostly paint on a single layer when doing concepts (like, I prefer picking neighbor color over switching from paint brush to erase tool, as less tools means less shortcuts to keep in mind and more time actually expressing my ideas)
    I'll keep an eye on your software ! Great work !

  • pior
    Offline / Send Message
    pior grand marshal polycounter
    Looking forward to it !
    Does the focus on high performance mean that it would also behave well on lower-end GPUs, by limiting the canvas size accordingly for instance ?
Sign In or Register to comment.