Daub 2 days ago

As a traditional and digital painter, there is one unique feature that is easy to overlook: the colors are selectable as true pigments.

Painters don't categorize colors using standard terms: red, blue, green etc. Rather they categorize according to pigment. Different pigments (i.e. chemical base to the paint) have different properties.

For example, a Prussian blue appears almost black when applied thickly, but is very chromatic when applied thinly. In contrast, a cobalt blue is pretty much the same however it is applied.

ASAIK, this is the only app that supports this feature out the box.

The digital painting toolset has been pretty much in stasis for years, but this app offers node based brushes! I am very intrigued. Downloading it now.

  • Daub 2 days ago

    I have had time to browse through the app. Regarding the nodes, it would be good if the node parameters had too tips, as it is they are labeled very mysteriously. The keyboard-powered brush picker is very useful. I wish Photoshop had one. The lighting feature I don't see as very useful. Its basically no more than a temperature adjust. The color picker had a few cool features, but I admit I did not explore it too deeply.

    Overall I enjoyed it but nonetheless see it as being in the same family as every other painting app.

    I would love to see painting apps stop trying to emulate real media and instead try to do things that are uniquely digital. My dream digi-daub app would feature...

    - 16 bit as standard. Do a gradient in an 8 bit Photoshop document and you will see how limited 8 bit info is. (OUR PAINT supports this).

    - A brush that can paint both behind and in front of previous strokes. Of course, this would need to be supported by a depth channel.

    - Supporting this, I want an adjustment parameter that can adjust based on depth. Depth-based contrast is a uniquely powerful force in image-making.

    - Also a brush that increases/decreases neighboring regional contrasts.

    - Almost all digital brushes are simply repeated stamps. This is now ancient technology. I would love to see a brush that can paint entire objects or the textured components of those objects. For example, with one stroke I would love to be able to paint a tree, or hair and fur. Of course, such a tool would likely be AI.

    - An AI powered style randomizer.

    • rikroots 2 days ago

      > 16 bit as standard. Do a gradient in an 8 bit Photoshop document and you will see how limited 8 bit info is. (OUR PAINT supports this).

      For interest, this seems to be an active issue for the HTML <canvas> element in browsers. There's a proposal[1] to extend the canvas data type to include both "unorm8" (the beloved default) and a new "float16" (normalised?) format - which should meet your desire?

      Typically, the proposal seems to have shipped already in Chrome/Edge browsers. Documentation around what the new functionality is for and how to make best use of it is (of course!) sparse - MDN barely mentions it. As a canvas library maintainer I find this upsetting (eg: Ignore it and it might Go Away).

      (I think for now my unhelpful response is: manipulate your RGB images as much as you like; just do it in the OKLAB color space.)

      [1] - https://github.com/w3c/ColorWeb-CG/blob/main/hdr_html_canvas...

      • Daub 2 days ago

        > (I think for now my unhelpful response is: manipulate your RGB images as much as you like; just do it in the OKLAB color space.)

        Good advice. I am often introducing photographers to color editing in Lab. They are always amazed at how much more sensitive their lightness and saturation adjustments are.

        • chengdulittlea 18 hours ago

          > manipulate your RGB images as much as you like; just do it in the OKLAB color space

          Be careful, OKLAB also isn't quite handling energy correctly (Or, the gradient of the energy slope in this color space had quite some irregularities). In most cases you can get a more "natural" transition (like blue doesn't visually shift to purple when transitioning to white), so make sure you know what you are doing.

    • chengdulittlea 18 hours ago

      Hi Daub!

      > A brush that can paint both behind and in front of previous strokes. Of course, this would need to be supported by a depth channel.

      > Also a brush that increases/decreases neighboring regional contrasts.

      I believe you can just use Blender Grease Pencil for that. You can paint with depth and sculpt the opacity/contrast to your desire. (Or honestly any vector drawing program? I believe adobe illustrator does this too)

      > Almost all digital brushes are simply repeated stamps. This is now ancient technology. I would love to see a brush that can paint entire objects or the textured components of those objects. For example, with one stroke I would love to be able to paint a tree, or hair and fur. Of course, such a tool would likely be AI.

      > An AI powered style randomizer.

      You won't want that in this context. If that being an asset production tool or a diagram tool then maybe yes, but otherwise nope. This tool is intended to create images, and human (supposedly) perceive an image with spatial arrangement of shapes and gradients, and the way artists interpret and represent shapes and edges is mainly what natural painting process is all about. So the basic structure of an artwork in this sense is just a bunch of abstract shapes arranged in a certain order, not a statistic probability of pixel values.

ravetcofx 2 days ago

> Our Paint is Developed by Wu Yiming and licensed under GNU GPL v3 or later for individuals. For commercial licensing, customization and technical support, contact Yiming for details.

Is that allowed under GPL V3 to limit commercial use?

  • pmahoney 2 days ago

    If that phrase "for individuals" means "for individuals only", then it isn't GPLv3, but some bespoke non-free license.

    My speculation: it was intended to mean: use it under terms of GPLv3 (for commercial purposes or not), OR contact to negotiate different terms.

    But there's a built-in assumption that no commercial entity would _want_ to use it under GPLv3 terms.

    • binarycrusader 2 days ago

      I think it's more subtle than that:

      https://web.archive.org/web/20250719210835/https://www.wello...

      The project is a mix of licenses since it's a mix of components. If I had to guess, they intend source code and maybe the binaries under GPLv3 that they own, fonts under SIL Open Font, but "brushes" and "splash images" under CC_BY_NC, etc. mean they could probably constrain certain uses:

        Our Paint is a painting application.
      
        Copyright (C) 2022-2025 Wu Yiming
      
        Learn more about LaGUI: https://ChengduLittleA.com/lagui
      
        Support the development: https://patreon.com/ChengduLittleA
      
        Our Paint is licensed with GNU GPL v3, and Noto fonts are licensed with SIL Open Font license. You should be able to find details about the license in the source code directory.
      
        The splash screen images under Resources are licensed with Creative Commons Attribution-NonCommercial 2.0 Generic (CC BY-NC 2.0). You can not use these images commercially, but you are free to contact the author for licensing info on other products such as prints.
      
        The brushe files packed with Our Paint distribustion are licensed with Creative Commons Attribution-NonCommercial 2.0 Generic (CC BY-NC 2.0).
      
      My personal opinion is that if that's what they intended, it seems quite reasonable.
    • satellite2 2 days ago

      > there's a built-in assumption that no commercial entity would _want_ to use it under GPLv3 terms.

      We also have a fairly strict no GPL dependency at work which I find surprising. Especially for a software like this one that you only use, never ship nor modify I don't understand the risks this license poses. It's like we went from a reasonable "be careful around it" to a "don't touch it with a 10 foot pole". And it's leaving me wondering if there is a more concerted effort to demonize this license

      • chengdulittlea 18 hours ago

        To put it simply, I made it that way so

        - Other GPL software can just include features in my programs if they wanted to.

        - I can remove myself from the responsibilities of potential free maintenance burden if approached by commercial entities.

        - On paper it prevent crappy Chinese companies here from taking the code as their own (which is unlikely judging by the nature of this program, but if they want they probably would do it anyway just like the case with ffmpeg).

chengdulittlea 19 hours ago

Hi guys, I'm the developer of Our Paint :D Interesting to see someone posted this on HN again (?) lol

To answer some questions...

- Our Paint is 16 bit per channel (8/128 bit on mobile due to GLES limitation).

- I really didn't implement much stuff other than just straight up painting features, and a cropping/moving feature (able to move stuff 1000px at a time), that's why it's sort of featureless because it lacks a lot of tricks like selection and free transform.

- The "Programmable" is maybe a weird term yeah, I intend it to mean the node based brushes cause it does support branching and looping in the evaluation.

- My site is slow because it's only got like 500KB/s bandwidth otherwise it's pretty expensive. But it works :P

I have _some_ timelapse videos of me painting and drawing stuff using it on my youtube channel. Here: https://www.youtube.com/playlist?list=PLa86QFowwyVRKiUURCyWu...

But yeah if you are a lay person who is expecting some similar features from other software you probably are gonna be disappointed because it's not intended to replace other art programs. Our Paint is more like a restriction so you get consistency and creativity when you use it to create images.

Yiming

nick__m 2 days ago

For a featureless program it appears to be quite featurefull !

  Opaque and transparencies, at the same time.
  
  Use opaque color for impasto, or glazing over with transparencies, any process, any time.

  Different reflectance behaviour for dense/diluted colors, enjoy the hue shifts as you mix. 
  
  Allow different light source and exposure control of the image.

  Node-Based Brush Engine
  ...
ktpsns 20 hours ago

The website also has a fresh unconventional UX.

It runs on LaMDWiki which seems to be a self-developed Wiki installation that looks a bit like microblogging. Described at https://www.wellobserve.com/index.php?post=20211107011347 Code seems to be available at a Forgejo instance at https://www.wellobserve.com/repositories/chengdulittlea/ but the repo link gives a 500 right now https://www.wellobserve.com/repositories/chengdulittlea/LaMD...

  • chengdulittlea 18 hours ago

    It's been 500 for quite a while which I haven't figured out why :sweat_smile:

    I guess it's not that important because nobody else is gonna use it anyway...

justusthane 2 days ago

I looked at the website, but I don’t really get what this is about. Is anyone able to summarize what it means that it’s programmable, or how that sets it apart from other programs?

  • Daub 2 days ago

    The brushes are editable to a degree that I have not seen in other apps. For this the authors have employed a node-based system which they call 'programable'. Not sure how valid that it, but it is certainly novel.

icedshrimp a day ago

never thought I'd see the day this ended up on hacker news

not mad at all

LoganDark 2 days ago

Interesting that the color management has caveats on both Windows and Linux, but not macOS. Did Apple just do a good job or did everyone else do badly? Also surprised Wayland isn't supported since color management is like, one of The Things that it's supposed to do better than X11 (not that Wayland does anything well)

  • chengdulittlea 18 hours ago

    Since the GUI (or the entire application framework) is fully hand written by myself, it would take some time for its wayland adaptation. However, the way wayland protocol handles everything just makes everything much more complex.

    In hind sight I may need to show a message for when this application is running in xwayland and notify the color management quirks to the user.

  • gradientsrneat a day ago

    The program requires OpenGL 4.5 or later, which MacOS doesn't support.

    • LoganDark a day ago

      Oh, well that's certainly one way to do it...