Typical Procedural Things

Share your suggestions & ideas for BlackInk
Posts: 1
Joined: 18 May 2022, 10:48

Typical Procedural Things

Postby sipes42 » 18 May 2022, 11:37

I've been messing around with BlackInk, and I'm shocked no one else has made something like this before. It's great stuff! Node-based, procedural workflows are wonderful... but, there are some rather basic things that seem to be missing - I've seen a couple of these things referenced in other posts, but I wanted to make a list of things I really think should be included in a program with a $60 price tag.

Basic Painting / Image Editing

The transformation types allowed seem to be weirdly limited for a program that seems like it should be leaps and bounds ahead of free competitors (see Krita). There seem to only be rotate, translate, and scale operations. In almost every modern painting program, there are a lot more things that can be done - like making a 2D image appear to be twisted in 3D space. An example would be magic circles drawn orthographically and then 'rotated' to appear on the ground in a scene, or around a hand or staff.

Warping is another such function, often achieved with a matrix of manipulation points - this seems like it should be pretty easy to implement procedurally, and like the aforementioned 'rotating' function, it's usually a given in modern programs.

Color adjustments are another area that BlackInk seems to really struggle with. HSV or cross-channel adjustments are, again, pretty standard, but there don't seem to be nodes for that sort of thing. Nor does there seem to be a simple invert node - even MSPaint has an invert function, and has since at most Windows98. This would be a super easy node to implement, and I urge you to add it.

Though more complex to implement, I would very much suggest a variety of filter nodes as well. These are, yet again, incredibly common, even in free programs (Again, see Krita, or even Gimp).

Typical Procedural Stuff
In any node-based environment I've used, there are ways to parameterize things. I've seen this referenced in another post, and I cannot stress enough the need for this. Having one variable that is easily altered and propagated to many nodes is essential.

Another highly useful node would be a switch node - that is to say that it would take any number of inputs, and output one of them. This could be accomplished easily with radial buttons, variable names, or really any number of ways. When dealing with many iterations or versions of an image where colors, layers, transformations, masks, and/or filters need to be swapped out easily, it becomes very inconvenient to have things contained in layer stacks, since you have to alter the visibility on multiple layers to achieve one change, and it's easy for users to make mistakes.

With Parameters and Switches, we can consider the overarching, absolutely essential, bread-and-butter of procedural workflows: logic nodes. I'm talking if-thens, greater-thans, less-thans, etc. You don't even really need that many, just a few boolean operators would be plenty, and would be very easy to implement. With switches, global variables, and a couple of comparison boolean nodes, users could do sooooo much more.

There are some odd things I've noticed while using BlackInk as it is now, and one of them is that there is a Color node, but it just ouputs a layer, rather than color data to be used in, say, a Color Overlay node... Even though the color overlay node requires a color to be chosen. This is very unintuitive, and makes things very unwieldy. This seems to point toward poorly classed data types, but maybe it's just that the color overlay node wasn't quite made right. Either way, for users things like this are fundamentally just... frustrating.

There arenice things about the program as it is now - The UI in particular feels very nice - it's really pretty slick! But it's functionality is lacking, and this post is to tell you part of what's missing, not to commend you for things done well - that's why everything probably seems kind of negative so far. I'd really love to see BlackInk succeed, but unless you are able to implement commonly (and freely) available painting functions, it just won't be a good painting program, regardless of how neat the procedural aspect is. And as far as that procedural aspect goes... it's promising, but right now it's very primitive. I'd love to see this program be worth $60 - but as it stands now, I'm not sure that I'd suggest anyone buy it at higher than a quarter of that. Right now, it's not an advanced digital artwork program - it's just an idea. Don't get me wrong, it's a great idea, but it's not very developed yet, and is a bit buggy besides - I've had it crash several times in a couple hours just doing normal stuff in the layer editor. I really hope you'll continue developing this very promising software. Please feel free to reach out to discuss any of my suggestions - I do genuinely hope for your success in development.

User avatar
Posts: 1184
Joined: 11 Jun 2012, 10:41

Re: Typical Procedural Things

Postby u2bleank » 07 Sep 2023, 14:21

Thank you for your valuable feedback and feature requests. We're committed to improving our software, and we want to assure you that your suggestions have been noted and are important to us. While we do plan to add these features over time, we have limited resources and may not be able to implement them as quickly as we'd like.

Please know that your input helps shape the future of our software, and we appreciate your patience and understanding. If you have any further suggestions or questions, please don't hesitate to reach out. We're dedicated to making our software better with each update, and your input is instrumental in that process.

Return to Suggestions