Brush Creation and Edit Instances

From GIMP GUI Redesign
Jump to: navigation, search

Current Edit and Creation Instances of Raster and Parametric Brushes

On GIMP the brushes parametric and raster are shown together, in the same list on Brushes Dialog. This causes some issues when a user tries to edit a brush:

  1. If is parametric the brush opens correctly the parametric brush editor;
  2. If is raster the brush is opened also on the parametric brush editor (evidently, isn't possible to edit the raster here).
  3. Bug 994 - Improvements on brush creation and their filtering (tags) | Proposal (edit)

Is curious to note that the contextual is the same for the two kinds but it recognizes when is a parametric brush... the 'Open Brush as image...' is disabled.

Simplifying the flow to create/edit raster brushes directly on the dialogue lists

Ideally is fine to have a unique dialog list to show parametric (.vbr) and (.gbr, .gih) brushes... is necessary to correct any kind the way to edit them.

The menu of these assets in my opinion must be modified in this way:

  1. Divide the brush assets by category (raster and parametric). Would be interesting to have a default tag embedded and independent of user choices.
  2. Each brush asset category enables the editing kind, for instance, raster or parametric brushes have a dedicated way (conditional option) to open this asset as an image or as a vector, respectively.

Proposal Two Levels Simplified

It was needled the Parametric Brush and Raster Brush to classify the kinds of them: Parametric and Raster Brush (shaped versions).

|<|Contextual Menu of the [Brushes Menu]

Second Level opening [Brushes Menu]

|<|Contextual Menu
  \_Brushes Menu  >
                  Edit Brush               [1]
                  New Brush         >
                  ---
                  Duplicate Brush
                  Copy Brush Location
                  Show in File Manager
                  Delete Brush
                  ---
                  Refresh Brushes 
|<|Contextual Menu  (Opening 'New Brush' menu)
  \_Brushes Menu  >
                  New Brush         >
                  \_Parametric...          [2]
                  \_Raster Brush    >
                    Elliptic...
                    Elliptic feathery...
                    Rectangular...
                    Rectangular feathery...
Messages and Scripts
  • [1] A conditional option: if is parametric send it to Parametric Editor, if is raster open the archive as an image.
  • In each message box of [2] option, when we have mouseover, we need to write or repeat the kind of brush that will be created, for instance: to parametric kind, 'New Parametric Brush...'. This option opens the Parametric Brush Editor.

Brush Editor | To Create/Edit Brushes (Raster (.gbr and .gih) or Parametric)

Current Status

The current Parametric Brush Editor used to shows the raster brush.

The current Brush Editor is usable only to create and modify the .vbr brushes (parametric). The idea is to make it usable to create also raster brushes (.gbr and a simple .gih brush with a unique dimension).

Contextual Menu Proposal |<|

Using the Brush Editor the Contextual Menu of the Brushes Menu is more easy to understand and slim. When we use [1] or [2] we have access to Brush Editor to create and edit different kind of brushes (rasters and parametric).

|<|Contextual Menu
  \_Brushes Menu  >
                  Edit Brush               [1]
                  New Brush         >      [2]
                  ---
                  Duplicate Brush
                  Copy Brush Location
                  Show in File Manager
                  Delete Brush
                  ---
                  Refresh Brushes

Improvements and New Features

  1. The Shape selector must have a button to load a seed stain for irregular shapes or informal stains. Already we can create the simple .gbr brushes with simple shapes, e.g., circle, square or diamond the current buttons could be used to link with specific scripts as such we already exist or these procedures be improved with a different code. When we are creating the animated brushes, we can have an aid filter to create the variations in these stains to complete the array of the .gih brushes. In this way, it could be simplified the load the stains in different layers of the .gih brush.
  2. A selector to have RGB or Grayscale Brushes. IMO is very useful to have both types for raster and parametric brushes.
  3. Selector of Kind Brush: Parametric or Raster.
    1. If Parametric we have the current features already existent.
    2. If Raster we need to decide if is a .gbr or .gih brush. For them we have made choices around the stains, regular or irregular. In these cases, we have different procedures:
    3. If it is a .gbr raster, the condition is more simple and the final brush has the shape stain chosen by the user. After we have the instance to control Size, Spikes(?!), Opacity(?!), Hardness, Aspect ratio, Angle and Spacing to finalize the brush creation with a Save Brush.
      1. If it is a .gih raster, we have different choices for the unique dimension of the brush:</br>How many variations we want (Cells = Layers) and which parameter we will use for these variations (angular, incremental, pressure, velocity or random).
        Another important simplification is to have an aid app to create variations of the seed stain to load each Cell = Layer.
        IMO, I think using Morphing, Hardness/Opacity variations. When we have a morphing effect we need two stains to make an efficient variation for painting brushes.
        The general idea is to have a fast way to create .gih brushes for painting tasks without complex interactions with the array matrix of the .gih. The scope of these brushes is similar to the current Acrylics series, for instance. To elaborate and complex brushes, we think that the current method using the array is yet useful... or we need also to think of a plugin to solve, in short, some arrays of .gih brushes.
        1. After making the choices of .gih brush we proceed to creation of brush.

Size Brush

For the raster brushes normally we have two size dimensions, length and width. On the Parametric Brush Editor, we have a radius, I propose to use the diameter (in this way we have the same method to build raster and parametric brushes). For instance, if you need a parametric brush of 100 pixels we need to create a brush with 50 pixels radius on the current editor.

Current features of Brush Editor applied for the raster brushes

The controls of Hardness, Aspect Ratio, Angle and Spacing are usable completely to create raster stains with similar characteristics of .vbr brushes.
Spikes - are usable also to create different geometric shapes of the regular circle, square and diamond raster brushes.
Opacity - I am not sure if is useful to have an 'Opacity control' for the raster stains... the hardness has a similar or an approximated effect but works as a border feathering.

Preview of brushes

The current preview is focused on the .vbr parameter. To have a universal preview for all brushes, parametric or raster, we need to implement a preview based on the Path with Paint Along Path (dynamics On or Off).
Each time that we make a change in the editor the path is loaded with the new instance of values present on the Brush Editor.
For the condition of static shape, with a raster brush, we need to see if is sufficient the feature of Edit/Stroke Selection (Paint along the selection outline). For instance, using a small circular shape selection is possible to have almost the effect of the dab... is an approximated effect.

Fields to Author, License and Comments

In the dialogues to build brushes on GIMP is interesting to have three new fields:

  1. Author Name
  2. License
  3. Comments

Tag Field

Many brushes could be organized by the designer in origin. When a brush is created the author could organize the tags that each brush has by default. This feature is a great way to customize the author's sets and a facility to use the sets on GIMP.