Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Brush Tip: Custom Shapes #6

Open
AnTi-ArT opened this issue Aug 13, 2014 · 0 comments
Open

Brush Tip: Custom Shapes #6

AnTi-ArT opened this issue Aug 13, 2014 · 0 comments

Comments

@AnTi-ArT
Copy link
Contributor

Moved from myPaint

Right now the brushes are all based on circular/elliptic shapes. And even with so many options, some brush behaviours simply arent possible. For example a rake brush:
image

Having custom brush tips would especially benefit concept artists, because Speedpaintings usually start with random forms, and mood paintings usually use textured/shaped brushes a lot.

Possible ways for "Custom Brush Tips":

  • A pixel bitmap graphic that gets stamped on the canvas. See Photoshop. Contra: Loss of quality when scaling/rotating/changing-ratio of the tip. Effects like blur/hardness wouldn't work the same like with the dabs. Pro: Probably easiest to implement, Additional GUI is minimal (load file button)
  • An opaque, closed vector shape as replacement for the elliptical dab. See Alchemy (however, alchemy is pure vector based, as far as I know). Everything that's possible with the dab, should be possible with a vector shape too (like blur etc). Additional GUI can be simple like bitmap tip. Contra: Having a complex shape will likely impact performance and I'm not sure how complicated it is to write code that checks if something is masked by a vector or not... Vector shapes could also replace basic inbuilt shapes like rectangle, triangle etc - however this is probably not as efficient as (see next).
  • Inbuilt shapes: Rectangle or Triangle could be implemented as mathematical formulas (like the circle, right now). Pro: Just a single, simple shape like the rectangle opens up a lot of new opportunities and is rather easy to code. Contra: A program would need more buttons to change shapes. And a rake is still not possible
  • Inbuilt shapes 2.0: n-gones, stars, hexagons, hollow circles, circle parts, and the like, that can be defined by the user through a special GUI in the program. See Inkscape shapes. With options to plot out one shape multiple times at once based on settings, a rake brush might be possible. Downside: Even more buttons and specialized GUI dialogues.
  • Extended functionality: Spawning a series of shapes (either vector or from a gif or similar) in order or randomly or based on a pen setting. See Art Rage

Personally I'd prefer the to load one vector from svg as brush tip (in myPaint).

Technical Issues

I'm no programmer and can barely understand the code here... So this is up for comments. I can only guess some issues here:

  • Brush tip has to be stored in the brush preset/settings. This might lead to compatibility problems.
  • Does it have to be stored in the .ora, too? The ora seems to keep track of individual strokes...
  • Right now, it looks like the circular shape is hard coded. At least I noticed a lot of "radius". If we add a rectangle now, wouldn't it be better to use rectangle as "standard" and circular as special case? I have no idea what I'm talking about... a rectangle is also a better bounding box for a bitmap or vector brush tip...
  • One important thing to keep in mind though: Performance of drawing with the elliptical dab has to stay as good as it is now. A round brush is the essential tool, other shapes are helpful, but not as important.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

2 participants