ScripToons

MaxScript Release 0.46 Beta (10/1/1998)

Copyright (c) 1998 by Borislav Petrov, Bobo's Rendert**ls.

SHORT DESCRIPTION

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 additional plug-ins.
ScripToons reads the prerendered images and creates new images based on the different settings it provides for color flatting, color mapping and ink drawing.


EXAMPLE


This 240x180 animation was rendered using MAX 2
on a P233MMX in about 10 minutes.
It was Tooned using the User Color Scheme method of
ScripToons 0.21 (internal release) in about the same time.


FEATURES

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 Paint Source.
    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 these formats).
  • 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 process.


  • 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 channels.

  •  
  • 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.

  • 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 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.


  • The "Basic Color Scheme" Rollout lets you set up the default color reduction method.

  •  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 [Use Color Scheme] button is checked by default. It is in radio-button relation to the "Reduce Color Depth" button mentioned above.
  • 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.

  • 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 one.


  • 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 0.46.

    NOTE: The Demo version is limited to 240x180 pixels resolution.
    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.


  •