MaxScript Release 0.46 Beta (10/1/1998)
Copyright (c) 1998 by Borislav
Petrov, Bobo's Rendert**ls.
ScripToons is a Cartoon Shading Script.
It lets you filter prerendered animation files and
give them a toon-like 2D look.
HOW DOES IT WORK?
Despite the lack of VideoPost support in MAXScript,
ScripToons works similar to a post-rendering filter.
To create a Toon image or animation, you need to
render a regular file using standard MAX functionality, and perhaps some
ScripToons reads the prerendered images and creates
new images based on the different settings it provides for color flatting,
color mapping and ink drawing.
This 240x180 animation was rendered using MAX 2
on a P233MMX in about 10 minutes.
It was Tooned using the User Color Scheme method
ScripToons 0.21 (internal release) in about the
Beta 0.46 (10/1/98)
The "Files" group of controls lets you specify the input/output
files and settings.
The "Paint Source" button lets you select any supported
image or animation file.
This file is used as color source for the "Tooning"
process. It can be also used to determine the contours for the Pen Ink.
A VFB will open to show you the selected image.
Also, additional animation controls will appear
in form of an Animation Ranges floater. Since Release 0.30b, the floater
will open for single images, too.
It lets you set the start and end frames for the
"tooned" animation, see thumbnail reperesentations of the start and end
frame, and preview the animation range in the VFB window.
The optional "Ink Source" button becomes active after
you select the Paint Source file.
An additional VFB will open over the one with the
This file can be used to control the contours for
the Pen Ink. For example you can select an Alpha Channel, Z-buffer image,
M-buffer, G-buffer image, or a separately rendered color image.
NOTE: ScripToons cannot acquire
any of the above buffer information by itself. You have to use third party
plug-ins like Z-buffer viewer or let MAX save Alpha channel information
as separate file in order to use them for ink contour detection.
A good plug-in for this reason
is the Z-Buffer Viewer by EFECTWARE. There are also some other Channel
viewers available on the Rendert**ls
MAX Free2 Page.
Paint Source (MAX Rendering)
Ink Source (Z-Buffer image)
The [Get Path] button and the text field bellow
it let you specify the working directory the resulting "Tooned" files should
be written to. The default entry is "C:\stoons\". Once you have set
your desired directory, you can press the "Save Path" button in order to
make the new path default. ScripToons will write a small INI file to your
C:\ Root directory listing both the Path Name and the Prefix. These will
be used next time you start ScripToons.
The "Prefix" text field defines the base name for the
output files. It defaults to "stoons". A single image is written as prefix+extension,
animations are written as prefix+number+extension.
The [Save Files] button is DEACTIVATED by default.
You have to check it in order to save any files you "Tooned". The dropdown
list to the right lets you specify the desired output file format.
The [Save Anim] button is ACTIVE by default.
It lets you save to AVI or FLC format (using the MAX default settings for
The [Dynamic Display] button is checked by default
and lets you watch the progress of the "Tooning" process. The number to
the right defines the number of scanlines that are displayed at once. (similar
to the 3DS & MAX renderer). Setting it to 1 increases the shading time
significantly, setting it to more than 10 doeas not reduce rendering time
that much, so you can leave it as it is. Deactivating the button lets ScripToons
show just ready frames (with two passes when applying Ink.)
The [LET'S TOON IT!] button starts the shading
The "Pen and Ink Settings" Rollout lets you set
the color of the optional ink contour, its Width, and turn it on and of.
It is OFF by default.
The [Apply Pen Ink] button has to be activated
in order to use the above settings.
The dropdown list lets you select between 3 possible
ink contour sources: The Paint Source Image itself, the resulting Flat
Color image, or the external image already descussed. The results when
using thes settings are quite different.
The "Pen Width" value sets the number of pixels
for a single pen spot.
The "Ink Color" picker lets you set the color
for the outline contour.
The "Relative Threshold" and "Absolute
Threshold" values and the checkbox that activates them are the same
as in the ShapeScape(tm)
script. Please consult the ShapeScape documentation for more details on
contour tracing techniques. The Relative method is better for greyscale
or color images like Z-buffer or Paint Source, while the Absolute method
is superior when using B&W images.
PLEASE NOTE that the Pen Ink
functionality in ScripToons is under development and is still quite "dirty".
ScripToons lets you choose between two shading methods.
The default one is "Basic Color Scheme" which will be described later.
The other method is based on Custom Color Depth Reduction of the 3 color
The "Flatten Colors" Rollout gives you
all the controls over the Color Depth Reduction.
INFO: The Custom Color
Depth Reduction is similar to converting an image to 8 or less bit color
depth - Color "Banding" appears, which in the normal case is undesired,
but in the case of Toons can be very useful.
Press the [Reduce Color Depth] button to activate
this mode. It works as a radio button with the [Use Color Scheme]
button in the "Basic Color Scheme" group.
The Gradient preview consists of two areas - the upper
one is static and shows a standard color ramp. The lower one is the representation
of the standard ramp after applying the Color Reduction settings. It is
fully interactive and updates with every value change.
The 3 checkbuttons "RED", "GREEN", "BLUE" let you select
which color channels should be affected. They are all checked by default.
The 3 checkbuttons "UP" are checked by default
and tell ScripToons to round the color channel values that are higher than
the Limit values described in the next line Up or Down.
The 3 value fileds define what color values are rounded
up/down according to the "UP" or "DOWN" buttons. By default, all 3 read
128. This means that a color channel value of 160 will be rounded according
to the state of the "UP" buttons, and a color channel value of 80 will
be rounded according to the state of the "DOWN" buttons.
The "DOWN" buttons are responsible for color
channel values that are bellow the limit value.
The next 3 spinners let you specify the value used to
define the range for color reduction for each channel. The lower the value,
the more the colors. For example, with dafault "UP" and "DOWN" button settings,
a value of 40 lets ScripToons combine all color values between 0 and 39
to 0, these between 201 and 240 to 240 etc.
The 3 "Lock..." buttons let you lock each two value
fields together. When a value in one field in a locked pair is changed,
the second field is changed, too. They are checked by default, so you can
set the same value for all three color channels (which is what you will
want most of the time) This applies to both the Limit and Reduction fields.
NOTE: In Release 0.25,
there was just one set of "UP" buttons for all channel values. Because
of that, rounded up images looked too bright and contrastless, and rounded
down images looked too dark.Since Release 0.30, you can draw a line between
light and darkness using the Limit values, and have dark regions become
darker and bright colors become brighter.
The "Basic Color Scheme" Rollout lets you set
up the default color reduction method.
The [Use Color Scheme] button is checked by default.
It is in radio-button relation to the "Reduce Color Depth" button mentioned
The "Light/Shadow Limit" controls how each color
channel is rounded up or down. By default, every channel value bellow 128
is set to 0, every value over 128 is set to 255.
You can use the color swatches to replace the basic
colors with any user-defined colors:
The [Replace Background] button lets you replace
any color with a user-defined color BEFORE the color reduction. The "Auto"
mode detects the color in the upper left corner of the first frame and
replaces it with the color in the "Background" swatch.
It converts the colors in the image to
one of the 8 basic colors. These can be mapped to 8 user-defined colors.
You can also define a background color which is replaced without reduction.
The "User" mode replaces the color in the "User
BG" swatch with the one in the "Background" swatch. To set the "User BG"
color, right-click in the VFB showing the Paint Source, then drag and drop
the selected color from the VFB color swatch to the "User BG" color.
The [SAVE] button lets you save any user-defined
color scheme to disk for later use. The file is saved with ".SCT" extension.
You don't have to enter the extension by hand.
The [LOAD] button lets you load any preset color
scheme. Currently, the L/S value, the 8 basic colors, the background replace
color, the ink color and pen width are saved.
The [RESET] button sets the color scheme to the
Default Color Scheme with L/S Limit of 128
A User Color Scheme with L/S Limit of 160
A User Color Scheme with L/S Limit of 140
BETA TEST DOWNLOAD
Download ScripToons Beta Demo
NOTE: The Demo version is limited to 240x180
A Full Release of ScriptToons is available for MAX R3 only.
KNOWN BUGS AND LIMITATIONS
If you close the Paint Source VFB using the Windows
[X] button, you can open it again by setting Start and End frames to the
same value and pressing the PLAY RANGE button in the Animation Floater.
If you close the Animation floater, you cannot open
it anymore unless you restart the script.