Constant
color. This one is quite simple: it just applies the selected
color over a designated surface, in accordance with the selection
map, blending options and opacity.
Gradient
tool. The Gradient tool one may encouter in other design software
is given a completly new dimension in DDS V2. Linear, circular and angular
gradients are just the beginning. A practically infinite amount of other
gradients, with complex shapes and variations can be defined. The gradients
are actually values ranging from 0 to 1. Using linear interpolation,
these values are linked to RGBAlpha values, and an interesting 32 bit
bitmap surface is drawn.
Texture.
By texture, one may simply understand a RGB image. Thus texturizing,
is applying the texture's color upon a designated surface, considering
extrapolation methods, X,Y offsets and, of course, selection map, blending
options and opacity. The Texture tool has a wide variety of applications.
If one selects "Layer" as reference and "Auto" for
automatic load of layer, the result is a classical cloning brush.
Color correction
involves the optimization of color space and visualization in an image,
using effects as levels, gamma, contrast. Also, for rather unconventional
effect the user can write his own equations for modifying the color
space.
Convolution
generally refers to bluring, sharpening, edge detection and edge enhancement.
There are two methods of convoluting in DDS and another one especially
designed for fast gaussian blur.
The first method involves convolution with a custom MxN matrix of
real numbers. Two separate convolutions can be defined: one for RGB
and another for the Alpha channel. Also, convolution can be applied
only on RGB or only on the Alpha channel. The convolution matrixes
can be defined by a function of two variables. Gaussian blur is defined
by the Gauss surface (exp(0-a*hypot(x,y)); classical blur is defined
by a constant value; one may also manually modify the convolution
kernels.
A much faster method, which is generally almost as efficient, is
the convolution with a kernel of constant size (3x3) and integer coefficients.
Also, convolutions may be applied separatelly on RGB and Alpha. There
are predefined kernels (Laplace operator, blurring, sharpening etc).
The user may also manually modify kernels.
The (non-linear) Gaussian blur is very fast compared to the MxN method,
because it performs integer and bitwise specialized operations. The
user must specify only the radius of the blur - everything else is
set up automatically.
The general options allow the user to specify whether the effect
is applied on the entire layer or exclusively on the selected surface.
Also, the use of blending equations is optional.
The extrapolation of opacity is crucial, especially for gaussian
blur. The boundary method maps pixels on the boundary region of the
surface, while constant method considers the outer pixels as being
of constant values.
In the V2 version of DDS, several fast methods of blurring have been
included: Linear Blur, True Gaussian Blur and Geometric Blur (a new
kind of blur, slightly slower, but with interesting results). Moreover,
a new convolution-related concept has been introduced: Iterated Convolution
of Vecinity - it means picking an initial value, iterating it with
every pixel value in the vecinity of a main pixel and finally replacing
the main pixel with the last iterated value; some particular cases
for ICS are the Min/Max filters encountered in other image editing
software.
Other effects, for
specialized purposes:
Resampling. Includes
all filters, from linear to Spline, Lanczos and Gauss, with a user-defined
window size.
Text Rendering.
Basic text rendering, with user-defined font, alignment and color/texture.
Retouch. Two filters:
SUSAN - eliminates noise without affecting din edges; Edge Enhance -
enhances edges without contributing to noise.
Gaussian JPEG Repair.
Overlays a blurred version of the image on the original, in those areas
which do not contain edges.