Copyright: Copyright 1997 Pontari Productions.  All rights reserved.
Citation: Copyright 1997 Pontari Productions.  All rights reserved.


Super Glow

Pontari Productions’ Super Glow for LightWave 3D 5.0 is a powerful plug-in for adding glow effects to scenes render in LightWave.  This on-line user’s guide is meant to serve as the ready reference for every day use of Super Glow.  The contents are fairly similar to the printed manual.  Together they should provide enough information for you to use Super Glow.

Make it glow!

Super Glow Copyright 1997 Pontari Productions.  All rights reserved.

All product and company names are trademarks or registered trademarks of their respective companies.


SOFTWARE LICENSE

ATTENTION:  PLEASE READ THIS DOCUMENT CAREFULLY BEFORE INSTALLING THIS PACKAGE.  THE INDIVIDUAL OR ENTITY INSTALLING THIS PACKAGE (THE "END USER") AGREES TO BE BOUND BY THE TERMS OF THIS LICENSE.  IF YOU INSTALL THIS PACKAGE AND DO NOT AGREE TO THE TERMS OF THIS LICENSE, DO NOT USE THE SOFTWARE AND PROMPTLY RETURN THE PACKAGE UNOPENED AND UNINSTALLED, AND THE LICENSE PRICE WILL BE REFUNDED.

The enclosed computer program(s) and the accompanying documentation are provided to the End-User by Pontari Productions ("Licensor") for use only under the following terms.  Licensor reserves any right not expressly granted to the End-user.  The End-User owns the disk on which the Software is recorded, but Licensor retains ownership of all copies of the Software itself.  The End-User assumes sole responsibility for the installation, use and results obtained from use of the Software.

1.  License.

End-User is granted a limited, non-exclusive license to do only the following:

A.  Install and maintain the Software on one computer at any time for use only in the End-User's own business.  The single exception to this is for use in a rendering network via ScreamerNet.

B.  Make one copy in machine-readable form solely for backup or archival purposes for the computer which the Software is installed.  The Software is protected by copyright law.  As an express condition of this License, the End-User must reproduce on the copy Licensor's copyright notice and any other proprietary legends on the original copy supplied by Licensor.

C.  Transfer the Software and all rights under this License to another party together with a copy of this License and all written materials accompanying the Software, provided (i) the End-User gives Licensor written notice of the transfer (including in such notice the identity of the transferee), and (ii) the other party reads and agrees to accept the terms and conditions of this License.

2.  Restrictions.

The End-User may NOT sublicense, assign, or distribute copies of the Software to others.  The Software contains trade secrets.  The End-User may NOT decompile, reverse engineer, disassemble, or otherwise reduce the Software to a human readable form.  THE END-USER MAY NOT MODIFY, ADAPT, TRANSLATE, RENT, LEASE, LOAN, RESELL FOR PROFIT, DISTRIBUTE, OR OTHERWISE ASSIGN OR TRANSFER THE SOFTWARE, OR CREATE DERIVATIVE WORKS BASED UPON THE SOFTWARE OR ANY PART THEREOF, EXCEPT AS EXPRESSLY PROVIDED IN SECTION 1.C. ABOVE.

3.  Protection and Security.

The End-User agrees to use its best efforts and to take all reasonable steps to safeguard the Software to ensure that no unauthorized person shall have access thereto and that no unauthorized copy, publication, disclosure or distribution in whole or in part, in any form, shall be made.  The End-User acknowledges that the Software contains valuable confidential information and trade secrets and that unauthorized use and/or copying are harmful to Licensor.

4.  Termination.

This License is effective until terminated.  This License will terminate immediately without notice from Licensor if the End User fails to comply with any of its provisions.  Upon termination the End User must destroy the Software and all copies thereof, and the End-User may terminate this License at any time by doing so.

5.  Limited Warranty.

Licensor warrants that, for ninety (90) days from the date of initial use by the original End User, the Software shall operate substantially in accordance with the published functional specifications current at the time of shipment.  If, during the warranty period, a defect appears, End User shall return the Software to Licensor and Licensor's only obligation shall be, at Licensor's election, to replace the defective Software or refund the purchase price.  The End-User agrees that the foregoing constitutes the End-User's sole and exclusive remedy for breach by Licensor under any warranties made under this Agreement.  This warranty does not cover any Software that has been altered or changed in any way by anyone other than Licensor.  Licensor is not responsible for problems associated with or caused by incompatible operating systems or equipment, or for problems in the interaction of the Software with software not furnished by Licensor.

No oral or written information or advice given by Licensor or its dealers, distributors, employees or agents shall in any way extend, modify or add to the foregoing warranty.

THE WARRANTY AND REMEDY PROVIDED ABOVE ARE EXCLUSIVE AND IN LIEU OF ALL OTHER WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE END-USER ASSUMES ALL RISK AS TO THE SUITABILITY, QUALITY, AND PERFORMANCE OF THE SOFTWARE.  IN NO EVENT WILL LICENSOR, OR ITS DIRECTORS, OFFICERS, EMPLOYEES OR AFFILIATES, BE LIABLE TO THE END-USER FOR ANY CONSEQUENTIAL, INCIDENTAL, INDIRECT, SPECIAL OR EXEMPLARY DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF DATA OR BUSINESS INFORMATION, AND THE LIKE) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE OR ACCOMPANYING WRITTEN MATERIALS, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

LICENSOR'S LIABILITY TO THE END-USER (IF ANY) FOR ACTUAL DIRECT DAMAGES FOR ANY CAUSE WHATSOEVER, AND REGARDLESS OF THE FORM OF THE ACTION, WILL BE LIMITED TO, AND IN NO EVENT SHALL EXCEED, THE AMOUNT ORIGINALLY PAID TO LICENSOR FOR THE LICENSE OF THE SOFTWARE.

6.  General.

This License will be governed by and construed in accordance with the laws of the state of Washington, and shall inure to the benefit of Licensor and End-User and their successors, assigns and legal representatives.  If any provision of this License is held by a court of competent jurisdiction to be invalid or unenforceable to any extent under applicable law, that provision will be enforced to the maximum extent permissible, and the remaining provisions of this License will remain in full force and effect.  Any notices or other communications to be sent to Licensor must be mailed first class, postage prepaid, to the following address:

Pontari Productions

17016 NE 107th St

Redmond, WA  98052.

This Agreement constitutes the entire agreement between the parties with respect to the subject matter hereof, and all prior proposals, agreements, representations, statements and undertakings are hereby expressly cancelled and superseded.  This Agreement may not be changed or amended except by a written instrument executed by a duly authorized officer of Licensor.

7.  Acknowledgment.

BY INSTALLING THIS PACKAGE, THE END-USER ACKNOWLEDGES THAT IT HAS READ THIS LICENSE, UNDERSTANDS IT, AND AGREES TO BE BOUND BY ITS TERMS AND CONDITIONS.  Should you have any questions concerning this License, contact Licensor at the address set forth above.


Installation

The Super Glow plug-in consists of the following files:

sglow.p

sglow.hlp

sglow.cnt

All three of these files should be copied to your NewTek/Plug-ins/Layout directory.  In addition Super Glow ships with a new version of the NewTek plug-in LWPanels.p.  This new version should be copied on top of your existing LWPanels.p.

In the event you have a more recent version of LWPanels.p you should not need to do this.  LWPanels.p created after January 23th 1997 should work fine with Super Glow.  Pervious versions will produce crashes or jumbled UI in the main Super Glow panel.

Once you have copied the files to your plug-in directory you need to add Super Glow to your LightWave configuration files.  To do this first start LightWave layout and choose the Options button at the top.  On the Options panel you should choose the Add Plug-ins option and point the file requestor to the sglow.p file.  This will add the Super Glow image filters and shaders to your current LightWave configuration.  You should exit LightWave at this time to make sure a good lw.cfg file is written.

If you haven’t added the LWPanels.p plug-in you should perform the same steps as above only choosing it instead of the sglow.p file.

If you have successfully installed Super Glow you will have the following plug-ins added to LightWave.

Under the Effects->Image Processing->Image Filter Plug-ins

Super_Glow

Multi_Super_Glow

Under the Surfaces->Shader plug-ins

Super_Glow

Super_Glow_Protection

Super_Glow_Bright

Super Glow’s also comes with a copy of the printed manual in Microsoft Word 6.0 format so that it can be easily printed or viewed on-line.  This doesn’t need to installed for Super Glow to run, however you may want to copy it to your hard drive for easy access.

Users without Microsoft Word can get a free Microsoft Word viewer that has printing capability from Microsoft’s web site.  At the time of this writing the Word viewer could be found at http://www.microsoft.com/word/internet/viewer/viewer95


General usage

In order for Super Glow to add a glow to your scene you must do two things:

You need to apply the Super Glow image filter to the scene.  You do this by going to the Effects Panel and choosing the Image Processing tab.  Under Image Filter Plug-ins you will find the two Super Glow image filters,  Multi_Super_Glow and Super_Glow.  Choose the one that bests suites your needs.

You need to tell the Super Glow’s image filter where the glow should be.  This is done in two ways with Super Glow.  The easiest way is to apply the Super Glow shader.  With it you can select the glow number that should be applied.  Every where in the final image that surface appears Super Glow will add a glow to it.  You can also use the Special Buffers button on the Surfaces panel.  Setting the Super Glow image filters special buffer to a value above one will cause the surface to also glow.  Each method has advantages and disadvantages.  The shader will cause glows to be reflected and in general is more accurate.  It also allows you to choose which glow should be applied in the Multi Super Glow image filter.  The special buffer glows will not be reflected.  However they consume less memory and can handle inter-object morphing better than the binary shader.

In general the Special Buffer method of marking surfaces for glow has been left for those rare cases when a glow being reflected would be worse than it not being reflected.  There are also a few morphing and antialiasing cases that the Special Buffer’s can help Super Glow produce a better looking result.

Once these steps are done and the scene is rendered, Super Glow will add the specified glow to the surfaces you have selected.  In order to adjust the glow and it’s properties you should go to the Effect Panel and choose the options button for the Super_Glow or Multi_Super_Glow image filters you have applied.

It is important to remember that the Super Glow information is saved in two separate places.  The Super Glow shader and Special Buffer values are saved with your object.  The Super Glow image filter is saved with your scene.  In the event you want to load an object with a complex glow setup, you should save the object and scene and use the Load From Scene option.  This way you can load your Null settings as well as the Super Glow settings.


Using the Null's

Super Glow allows nearly all of its parameters to be animated through the use of Null objects added to your scene.  Anywhere in Super Glow that you see a [image] button the parameters near that button can be animated.  Choosing the Null button will bring up the Null requestor.  They all look something like this:

The Null requestor gives a quick summary of which channels on the Null object control what features in Super Glow.  For example the Null that controls Width, Percent and Falloff has the following channel assignments:

X Channel is the Glow Width

Y Channel is the Glow Percent (fringe)

Z Channel is the falloff

X Scale is the Glow Percent (surface)

So in order to animate the Glow Width you would first create a Null in the objects panel.  Then Save the null to give it a unique name.  In Super Glow you would enter that name into the Null requestor.  Super Glow ignores case on object names.  Then you would need to animate the Null you have just created to control the parameters you which to change.  The easiest way to do this is to select the object in layout and choose Motion Graph.  In the Motion Graph dialog choose the channel you want to change the settings on and then create key frames with the values you wish to use.

Because Super Glow overloads more than one channel on the Null it is very important to set all the channels in use for that Null option to the default values you want.  So in this example we only want to change the width.  So we need to set the Y channel, Z channel, and the X Scale channels to reasonable defaults on frame 0.  So we set the Y channel to 50, Z channel to 1, and the X Scale to 50.  Then we create some key frames and change the X channel to be different values for the glow width.

This may seem slightly confusing at first but if you remember to set the defaults on the features your not going to animate you should find it to be a bit easier to manage than having separate Nulls for every animatable feature in Super Glow.


Super Glow image filter

This is the main plug-in in the Super Glow family.  By applying this image filter to your LightWave scene you create the glow effect.  Just as with NewTek’s glow, adding a glow is a two step process.  You must mark the surfaces you wish to have glow and you must add this image filter.   The main options panel for Super Glow consists of three sub-panels.  Each panel is selected by pressing one of the three buttons at the top of the Super Glow interface.  This UI is very similar to the LightWave panel buttons.  Think of them as tabs in a very large control.

The options on these dialogs will be saved with your scene file and not your object files.  As a result you may want to use the Load From Scene option on the Objects panel to load an object and its Super Glow settings.


Multi Super Glow image filter

This image filter is a collection or bundle of eight separate Super Glow image filters.  Each one of these filters can be toggled on and off as well as have its own private set of parameters.  While you can use the Mutli Super Glow image filter all the time, it is a bit slower than the single image filter.  If you don’t need more than one different glow you should use the single image filter.

The multi version does have the ability to turn on and off a glow effect without losing the glow settings.  This feature may be handy during the scene’s setup

This panel shows a summary of the major parameters of each of the glows.  By default each of the glows is assigned a glow number from 1 to 8.  If you have more than one Multi Super Glow in a scene you will need to change these numbers.  When adding the Super Glow shader to a surface be sure to enter the correct glow number.  If two glows have the same glow number they will both be applied to the surface.  Glows are applied in the order they appear in this dialog.


Super Glow shader

This shader plug-in is the tool you will use to mark which surfaces are glowing in the scene.  With it you can say which of the 32 available glows is to be applied.  More than one glow can be applied to a single surface.  The Super Glow shader’s options will be saved with your object, not with your scene.  So be sure to save all objects after applying the Super Glow shader to your surfaces.

The Super Glow shader’s other option is for adjusting for adaptive sampling.  When rendering a scene without antialiasing, if the adaptive sampling filter is turned on some points on the surface will not be evaluated.  This is how adaptive sampling speeds up render times.  The problem is that it can cause Super Glow to miss some of the pixels that make up your surface.  This can result in gaps and holes in the glow on the surface.  It also can greatly increase Super Glow’s render time.  When the adjust option is checked we will mark the current and next pixel as being part of the glow.  This will fill out the entire surface area.  The only problem is that it will always cause an extra pixel to be included in the glow on the right had side of your surface.  If you render without adaptive sampling you can safely turn this off to get a more exact outline of your surface.

When rendering with any level of antialiasing this option is ignored.  All points on the surface will be correctly evaluated.  It is only when there is no antialiasing and adaptive sampling is enabled that this option is used.  In general its best to just leave it on, which is the default.

This adaptive sampling solution can cause problems and errors when using the Z-buffer features.  Because an additional pixel is included in the glow mapping when Super Glow goes to compute the depth for that glow edge it incorrectly uses the false edge created by adjusting for adaptive sampling.  To avoid these problems when using Super Glow’s Z-buffer features either turn on some level of antialiasing or turn off adaptive sampling and set all the Super Glow shaders to not adjust for it.  You can also use the Special Buffer to apply the glow to the surface since it doesn’t suffer the same problems that the shader does.


Super Glow protection shader

The protection shader is applied to surfaces that you don’t which to have a glow fringe on top of.  This is useful when the glow surface is part of a larger object.  There is no interface to the protection shader. A surface protected from glow will not glow or allow a glow fringe to appear on top of it, even if a glow shader is also applied.  Glow protection applies to all Super Glow image filters in the scene, selective glow protection is not possible.


Super Glow brightness shader

This shader allows you to apply a brightness image map to a surface’s glow.  In order to use it you must also apply a glow to the surface with the Super Glow shader.  Using this you can map an image on the glow making it brighter and dimmer based on the intensity of the glow at that point.  This shader works very much like the image maps in LightWave with a few minor differences in UI and a lack of some features.

The Texture Type is a choice between Planar, Cylindrical, Spherical mapping.

The Alpha Image is an image already loaded into Layout.

The Texture Axis controls which axis the image is mapped onto.

The Texture Size, Center and Wrap amounts are the same as in LightWave texture mapping.

Objects saved with the brightness shader will attempt to load in the image that you applied when they are loaded.  Due to bugs in LightWave’s plug-in interface the brightness shader cannot reload an image sequence.   As a result two thing can happen when loading one of these objects.  If the image sequence has a frame with the number 000, the object will load without error, but the only image available will be from this first frame.  If there is no zero frame you will get an error and be asked to pick a replacement frame.  In both cases once the object is loaded, go to the Image’s panel and choose the first frame and pick Replace With Sequence and choose the first frame of the sequence.  Everything should work fine from then on.  As a result of this bug you cannot correctly use image sequences with the brightness shader and ScreamerNet.


Glow number

The glow number is used to identity each glow in the scene.  Using the Multi Super Glow image filter you can have up to 8 glows.  LightWave allows you to add four image filters to a single scene.  Using four Multi Super Glow plug-ins you can get 32 different glows.  When applying the Super Glow shader to a surface you need to choose the glow number that you are applying.  Even the single Super Glow image filter allows you to specify a glow number as you can have four single Super Glow filters in a scene.


Glow width

Pixel width of glow

Glow width is the distance from the edge of the surface you have assigned a glow outward to the point where the glow will fall to zero.  It is given in pixels.  This property can be controlled by the X channel of the Null assigned to the Glow width, percent, and falloff parameter.

Glow width can be adjusted and compensated for based on screen aspect, field rendering and Z-depth.  See those sections for more information.


Glow percent (fringe)

This property describes how much of the image behind the fringe of the glow will show through.  It also influences how bright the glow is.  The smaller this number the darker the glow fringe will be.  A value of 100 will show the full brightness of the glow color.  Depending on the base surface color and the difference between the fringe and the surface percent a visible edge between the surface and the fringe may be visible.


Glow percent (surface)

This property describes how much of the original surface will show through on fully glowing sections.  This in general describes how the surface will look with a glow on top.  It also influences how bright the glow is.  Depending on the base surface color and the difference between the fringe and the surface percent a visible edge between the surface and the fringe may be visible.


Falloff factor

Falloff factor determines how fast the glow will fall to zero.  A factor of 1 is a linear glow.  Factors lower than one will cause the glow to be soft all the way to the edge.  Factors above 1 will cause the glow to be hard all the way out to the edge.


Width, percent, and falloff null

This button brings up a dialog for you to enter the name of the item you wish to associate with these glow parameters.  You can enter the name of any item, but in general you will want to enter the name of a Null item.  Each frame of the animation Super Glow will take the X, Y, Z positions of the item you name here and use them for the glow width, glow percent, and glow falloff values respectively.  This allows you to animate the glow by key framing the null object's channels.  The name is not case sensitive.


Falloff Type

Super Glow supports a number of different falloff equations.  This controls the rate at which the glow fades out.

Linear Falloff	The falloff is 1/distance.

Square Root Falloff	The falloff is 1/square root of the distance

Sine Falloff	The falloff is a function of the SIN(distance).  This creates a halo type effect.

Cosine Falloff	The falloff is a function of the COS(distance).

Exponential Falloff	The falloff is a function of 1/exp(distance)


Glow type

Super Glow provides the following types of glow.  Each glow type computes the value of the glow a little bit differently.  Most also have different speed/performance trade offs.

Slow glow	This glow computes the full radial value of the glow for each glowing pixel on the surface.  It can be extremely slow, but does produce a smoother glow.

Fast glow	This is an edged based glow method that only computes glow fall off as a function of the edges of the glowing item.  While very fast it doesn’t handle sharp corners as well as the slow glow.  With the use of the smoothing option the Fast glow can be made to look fairly similar to the Slow glow.

Particle glow	This glow is the same as the slow glow with the exception of how it computes the glow on top of the glowing particles.  Slow glow will always make sure that the surface itself has a glow.  Particle glow actually uses the density of the glowing particles to determine how bright the glow is even on the surface that is glowing.  As a result with 100% transparent surfaces unless there is a dense number of glowing pixels the glow brightness will not be that high.  This is how Super Glow creates smoke and gas effects.


Smoothing

Once the glow gradient is computed this option will go though and smooth the gradient map by use of a 7x7 convolution filter.  Each of the smoothing types uses a different smoothing matrix.


NewTek style glow

Color type

Super Glow has three different ways to compute the color of the glow.

Single color 	This uses the color entered in Super Glow control panel for the color of the glow.

NewTek style 	This causes Super Glow to ignore the glow color parameter and compute the glow color based on the surface color and brightness.  Our replication of NewTek’s glow is not quite exactly the same and you may find that it is not a suitable replacement.  But in those situations that you want a NewTek style brightness additive glow but need some of Super Glow’s other features this has been provided.

Gradient glow	This uses the color entered in the main color and the color entered into the gradient color and shades the glow fringe with a smooth gradient between the two colors.  The rate that the gradient moves from the main color to the gradient color is controlled by the gradient falloff number.


Noise type

Super Glow supports three different noise types.  Each of these noise functions will lighten and darken the glow fringe and glow surface based on its location in the final image.  This is different than a surface shader which will move the noise with the surface being shaded.  As a result if you move a glowing object with a noisy glow the noise will change.  Even with this drawback the noise functions are very useful at generating fire and turbulence in your glow.

Perlin noise: The classic 3D noise function.  This is a very grainy noise that is even and fairly thick.  It resembles TV static.

Turbulence noise: Turbulence noise is much more coherent with areas of darkness and light in more blotch like patterns.

Veins: This is very much like turbulence but a bit noisier and more strung out.


Noise factor

Super Glow will lighten or darken each pixel of the glow using the chosen noise function.  The larger this number the greater the effect.  Values around 50 produce very interesting results.  If this number is zero there will be no noise in the glow.  Numbers above zero activate the noise.


Noise change rate

This value determines how often the noise function is reseeded.  A value of zero means the noise stays the same all the time.  A value of one will change the noise every frame.  Note the noise is a function of location in the frame as a result a moving surface will see a noise change as a result of a different location in the final image, even if the noise change rate is zero.


Noise null

The noise null controls the value of noise factor and noise change rate.  The null’s X position is the noise factor and its Y position is the noise change rate.


Glow color

Determines the color of the final glow.  This parameter is also controlled by a Null item and can be animated.


Glow color null

This button brings up a dialog for you to enter the name of the item you wish to associate with the glow color.  You can enter the name of any item, but in general you will want to enter the name of a Null item.  Each frame of the animation Super Glow will take the X, Y, Z positions of the item you name here and use them for the color.  All values are modula 256.


Gradient color

Determines the second color of a gradient color glow.  This parameter is also controlled by a Null item and can be animated.


Gradient falloff

This determines how the two colors that make up the gradient glow are mixed together.  A value of 1 will start the second color at the midpoint of the glow fringe.  Values less than one will start the second color much earlier.  Values greater than one will start the second color much later in the fringe.  This can also be animated to make it appear that the color of the fringe is changing with a direction or outward flow.


Gradient null

This button brings up a dialog for you to enter the name of the item you wish to associate with the gradient glow color.  You can enter the name of any item, but in general you will want to enter the name of a Null item.  Each frame of the animation Super Glow will take the X, Y, Z positions of the item you name here and use them for the color.  All values are modula 256.  The X scale parameter controls the gradient falloff value.


Render fields separately

This option causes field rendered images to be treated as two separate interleaved images.  NewTek’s current glow control doesn’t do this.  Rather it applies the glow effect to the final image without regard to the interleaving of frames.  When this option is on the glow aspect ratio is also changed to compensate for the interleaved frames.  In general you will want this to be left on.  If you do not have field rendering turned on this option will do nothing.


Edge glow only

This option controls the glow effect on the surface.  When off the glow will cover the surface and extend out beyond the glow by the amount specified by the pixel width of the glow.  When this option is turned on the surface will have no glow on top of it.  This is useful for creating halo’s and other edge fringe effects.  When using this option it is very easy to lose the effect of antialiasing as the glow will overwrite the aliased pixels on the edge.  Use to the antialias glow edges option can help make this effect not so severe.


Reverse glow

This option controls how the fringe edge of the glow appears.  Normally the glow will go from brightest near the surface with the glow and fade out over time.  With this option turned on the glow is reversed and the brightest edge of the glow is the farthest away.  This can create a halo effect and is useful with the Edge glow only option.  It also can help create other interesting fringe effects using the various falloff equations available.


Effect alpha channel

Effects alpha channel

When this option is turned on area’s that are touched by a glow will have the alpha channel effected to account for the glow added.  NewTek’s glow does nothing to the alpha channel, which can cause problems when doing composite operations.  The Alpha channel effect is based on the brightness of the glow at that point.


Antialias glow edges

When this option is turned on the outer and inner edges of the glow will be slightly blurred in order to reduce the sharp line effect.  The color based glow methods Super Glow uses tends to overwrite some of the effects of LightWave’s antialiasing as a result it is important to remember that this option plus careful choice for the Glow percent for the surface and fringe can help avoid this problem.


Make entire alpha channel glow

The option will cause this glow to use LightWave’s alpha channel as the source for what should glow.  This has the effect of making all foreground objects glow.  Combined with the edges only option, you can make a halo around all foreground objects.

By turning on the effects alpha channel option and edges only option you can stack more than one glow to create interesting rainbow edge effects.  Like this:

]

Of course we aren’t quite sure why you would really want to do this.


Correct for pixel aspect ratio

When rendering with non-square pixels this option will alter the width of the glow so as to match the aspect ratio of the output device.  Super Glow will use the output ratio defined in the Camera control panel.


Noise based glow widths

This feature will vary the glow width as a function of the Super Glow noise.  The width for each ray of glow will be some percentage of the normal glow width.  This can create a noisy fringe effect.  When used with the slow or particle glows however the end result is something like random blobs of glow all over the surface.  You may need to use very large glow widths in order to get a decent sized fringe.  Values above 60 are not uncommon.

Here is an example of an edge glow with this option:


Scale glow width to 640x40
Scale glow width to 640x480

Normally when you change the final render size you will have to adjust the glow width to compensate for the new size.  With this option turned on Super Glow will adjust the glow width entered relative to a 640x480 screen.  On a larger render the glow will be increased on a smaller it will be decreased.  This isn’t always exactly what you want however as straight pixel ratios don’t always produce the best looking results.  But this can help if you want to make test renders at lower resolutions and not have to readjust all your glow widths.


Glow is abortable

When Super Glow is processing your image it spends a small amount of its time updating the progress meter and checking to see if the user canceled the render.  This can take up a great deal of time, especially for short renders.  As much as 20% of the render time can be spent checking to see if the user wishes to cancel.  With this option you can tell Super Glow to not check for an abort.  When this is on you cannot abort the Super Glow process, but it will render much faster.


Z origin for scaling

Super Glow has a number of features that use LightWave’s depth channel.  When adding glows in order to vary the glow width by how far away from the camera the item glowing is you need to know what the base distance from the camera is.  This is the Z origin for scaling.  For example:

The camera is at (0,0,0) and the item you have a glow on is at (0,0,5).  When rendered the item is 5 units away.  If you wish to have a 20 pixel glow at that distance you should enter a 5 for the Z origin.  At this distance the glow width will be whatever is in the Glow width control.  If the item is closer or father away from this distance the glow will be scaled based on the Factor for Z scaling.


Factor for Z scaling

When this is non-zero Super Glow will adjust the Glow width based on the distance of the object doing the glow and the Z origin for scaling option.  The difference between the object and the Z origin are computed and multiplied by this factor.


Hide glow based on Z buffer

NewTek’s glow does not stop the fringe of the glow from appearing on top of items the glow should be behind.  When this option is turned on the glow fringe will not appear on top of an item in front of it.  Having this option or a non-zero factor for Z scaling will require that you do the final render in one segment.  See the section about Z buffer effects for more information.

Without Z buffer protection glow bleeds onto box in front of the ball

With Z buffer protection the glow is cut off behind the box


Common questions

When using LightWave’s antialiasing with Super Glow the edges aren’t smooth.  It appears Super Glow is over writing the antialiasing values.   What can I do?

Super Glow's glow algorithm is not ideally suited to antialiased edges.  It is very easy for Super Glow to over write the antialiased pixels or to not start the glow until outside of the antialiased areas.  In order to compensate for some of this Super Glow does have the antialias glow edges feature.  It attempts to blur the pixel wide edge that separates the object from the glow and the glow from the background.  However some antialias detail can still be lost.  A careful choice of the surface glow percent can often remove a great deal of these aliasing problems.

When the Super Glow help is on top of the Super Glow image panel the panel doesn’t seem to redraw itself.

This is a bug/feature of the LWPanels plug-in that is providing the UI support for Super Glow.  By clicking on the Super Glow panel it will fully repaint itself.  This is a harmless UI glitch.

The Super Glow panel’s seem to flash a bit before drawing the next panel when moving from panel to panel is this normal?

Yes.  Trying to place as much UI as Super Glow has in a small enough space to be usable has required us to make some tradeoffs.  This flashing is one of them.

Super Glow appears to consume lots of RAM, what can I do about it?

You should check the help section on Memory usage.  In general some options in Super Glow can increase its RAM usage by a significant amount.  These options are antialiasing glow edges, NewTek style color, and any of the Z buffer options.  Avoiding these can greatly reduce Super Glow’s memory needs.

LightWave crashes when I load a scene with Super Glow.

When a scene contains a plug-in that is no longer installed or available a bug in LightWave can cause it to crash after giving you an “Activation Error 2” error.  Future versions of LightWave(builds after 5.0M) may have fixed this problem.  If you do not have Super Glow available anymore you should remove it from your LW.CFG to work around this problem.

Rendering with ScreamerNet doesn’t seem to work.

ScreamerNet will by default skip any plug-in that it cannot find.  As a result you will not notice the problem until you actually look at the final output.  In general this is caused by incorrect LW.CFG files on the ScreamerNet nodes.  ScreamerNet output is also disabled on our demo version which may be causing your problems as well.  Make sure all the rendering nodes have access to the correct version of Super Glow.

These NULL’s are really confusing.  I can’t seem to figure out what’s really going on.

Super Glow’s use of the NULL’s to animate glow parameters can be very confusing.  A few things to keep in mind:

Most NULL’s serve more than one purpose, be sure to set all the channels on the NULL to reasonable default values, even if your only animating one channel.

It’s much easier to work with the NULL’s by using the Motion Graph panel than trying to animate it using the standard layout/keyframe approach.  The fact that the NULL is a visible object in the layout window doesn’t require you to deal with it like other objects.

When assigning a NULL to a Super Glow feature a quick summary of what channels are mapped to which feature will be printed.  Refer back here if you can’t remember which channel goes where.

Why is Super Glow more complicated that layout and modeler combined?

Super Glow does have a great number of user controllable options.  Many of these options are so obscure that there is no real need to become an expert at them.  If you focus on the core pieces dealing with glow width and color the rest of the options should work themselves out.

I can’t seem to get Super Glow to look like the NewTek glow.

While Super Glow does have a color option that bases the glow color on the surface's color it isn’t a complete emulation of NewTek’s glow method.  Super Glow uses a very different concept of glow percent as well as has a much greater level of control over falloff.  You should be able to come close to the NewTek glow by choosing a fringe glow percent of 100 and a surface glow percent of what you would use with the NewTek glow.  Choose NewTek style color and slow glow.  This should come close to the NewTek style effect.

I want a much more subtle glow than Super Glow wants to give me, what can I do?

Lower values for the falloff will thin out a glow.  The same is true for fringe falloff values less than 100.  You can also try picking a lighter glow color.

I’m using a Fast Glow and the glow gradient is not very smooth, what can I do?

The smoothing option was designed to help out the fast edge based glow type.  It basically will blur the glow gradient so that the end result glow doesn’t have so much distortion.

I’m rendering a scene without antialiasing and I’m having trouble getting Super Glow’s Z buffer features to work correctly, what can I do?

Super Glow’s Z buffer features all require knowing the correct distance from the camera the glowing pixel or glowing edge is.  However the Super Glow shader when used without antialiasing by default always includes an extra pixel along the right hand side of your object to adjust for LightWave’s adaptive sampling feature.  The problem is that this glowing pixel edge has an incorrect Z depth since it is not on top of the object.  As a result glowing edges can be dropped when scaling based on the Z depth and hiding the glow based on the Z depth won’t work at all.  The easiest solution to this is to use at least low antialiasing.  You can also turn off adaptive sampling and set all the Super Glow shaders to not adjust for it.  See the help on the Super Glow shader for more details.

I can’t seem to get an image sequence to work with the brightness shader.  I either get an error on load and I am forced to choose a single frame to replace the image sequence or it forgets it was a sequence and uses only the first frame for the entire animation.  What can I do?

Objects saved with the brightness shader will attempt to load in the image that you applied when they are loaded.  Due to bugs in LightWave’s plug-in interface the brightness shader cannot reload an image sequence.   As a result two thing can happen when loading one of these objects.  If the image sequence has a frame with the number 000, the object will load without error, but the only image available will be from this first frame.  If there is no zero frame you will get an error and be asked to pick a replacement frame.  You should choose the first frame of the animation.

Once the object is loaded, go to the Image’s panel and choose the first frame and pick replace with sequence and choose the first frame of the sequence.  Everything should work fine from then on.  As a result of this bug you cannot use image sequences with the brightness shader and ScreamerNet.

How can I get an object to glow behind another object?

Super Glow requires that the glow source appear in the final frame.  Because it doesn’t use geometry to compute the location of the glow it isn’t possible to do the glow behind effect that LightWave’s lensflares can do.  The only way to do this type of effect is by compositing the foreground objects on top of the glow object.


Customer Support

Pontari Productions is a very small company and as a result we are limited in the amount of customer support and hand holding we are capable of doing.  Technical support for Super Glow is entirely email based.  If you have questions about Super Glow please feel free to send email to

superglow@pontari.com

Bug reports can be sent to

bugs@pontari.com

We also will place updated information about Super Glow on our web site.  Super Glow customers can always access the latest version of Super Glow at

http://www.pontari.com/pontari/superglow/intel

or

http://www.pontari.com/pontari/superglow/alpha

You will need your account and password to access these pages.


Memory Usage

Super Glow consumes a great deal of memory depending on the options that are being used.  This is a guide to the amount of memory various options can consume.  Most of Super Glow’s memory consumption is after the final rendering has been made, but at this point in time LightWave will still have a number of image buffers allocated.  As a result Super Glow may fail to allocate enough memory and will abort.   Adding more virtual memory using the Windows control panel can often solve some of these problems.

In all of these numbers the image size is the width * height of the final image being rendered.

Super Glow’s shader consumes 4*imagesize

The main Super Glow render buffer will use 4*imagesize + 4*image width bytes.

The NewTek color option will use an additional 7*imagesize bytes.

The antialias glow edges option will use an additional 3*imagesize bytes.

Any of the Z buffer options will use an additional 4*imagesize bytes.

The smoothing options will allocate for a short time an additional 4*imagesize bytes.

The glow brightness shader will allocate an additional 1*imagesize bytes.

The glow protection shader will allocate an additional (imagesize/8) bytes.

The Multi Super Glow will allocate an additional 8*imagesize bytes.

For example a 640x480 scene using the glow shader and the default glow options will use:

640*480*(4+4)+640*4 = 2460160 or 2.4 megs of ram.

That same scene with a Multi Super Glow and all the memory options and shaders in use could use:

640*480*(4+4+7+3+4+4+1+8)+4*640+imagesize/8 = 10792960 or 10.5 megs of ram.

Since everytime you double the screen size you multiply by four the imagesize a print resolution scene with every memory using option would consume about 168 megs of ram.  This is in addition to LightWave’s own memory usage, which includes at least an additional 8*imagesize filter buffer allocation in order to run any filter plug-in.


Basic usage tutorial

In this tutorial you will learn how to apply a default glow to an item and render the scene.

To start, first load up LightWave layout.

In the new empty layout load an object you would like to apply a glow to.  For this example lets load the Cow item that is installed with LightWave.

To make the CowHide surface on the cow glow we must first add the glow to the effects panel.  Choose Effects from the top toolbar in layout.  Choose the Image Processing tab.  In the lower half of this tab are the Image filter plug-ins.  Choose the first image filter plug-in slot and scroll down till you find the Super Glow plug-in.  This will add a Super Glow to your render using the default properties.

Now we need to go and add the glow to the CowHide surface.  Choose the Surfaces control and you will notice that CowHide is the first surface in the surface list.  At the bottom of the surfaces panel is a Shader Plug-ins button.  Press it.  You should see a dialog that lets you apply various installed shaders.  Pick the first Plug-in slot and scroll down till you find Super_Glow.  This will  by default apply Super Glow number 1 to the CowHide surface.

Now go and render your scene.  If you have done everything correctly the cow hide will have a blue tint and a light 8 pixel glow around it.


How to make smoke and gas with Super Glow

Super Glow can be used to create smoke and other gaseous effects; here’s how to set this up.

First you need to create a particle object that will be your smoke or gas.  The easiest way to do this is in Modeler choose the plug-in Primitives and pick random points.  This will create a bunch of points.  Then choose the Points2Poly plug-in on the Tools->Custom menu to make these points into polygons.  You might also want to try Pontari Productions’ PointDist plug-in which creates random one point polygons.  It can be found at several places on the net.

Make sure you generate enough points to get the effect you want.  The denser the points are, the darker the smoke or gas will be in that area, 200 points is a good starting place.

In Modeler shape the points into a general outline of the smoke you want. Apply a surface to these points and save them out.  Inside layout, load your object and then add the Super Glow plug-in to the scene.

For settings in Super Glow choose a glow width of about 25 and make sure you set the Glow Percent for both the fringe and surface to 100.  Choose the Particle Glow type, as it is the only glow type that will blend together glows.  For color (220,220,200) makes a nice smoke.  Altering the falloff value and/or glow width can control the density of the smoke effect.

Now go to the Surfaces panel and choose your smoke surface.  Set the transparency to 100% and apply the Super Glow shader plug-in.  Now go and render.  You should see a nice white type smoke.  You can make the smoke darker either by adding more particles or by lowering the Glow Falloff.  Numbers less than 1 makes the smoke denser.  Numbers above 1 make the smoke lighter.  Good values depend on the particle spread you are using.


Using gradient particle glow for an explosion
Using gradient particle glow for an explosion/fire effect

In this tutorial we are going to create the following image:

First we need to create a particle cloud.  Load up modeler and choose the Primitives plug-in on the Object->Custom  menu.  Select Random Points.  For the requestor choose 4000 points and a sphere.  Then from the Tools->Custom menu choose Points2Polys.  Now make a surface and apply it to the points.  Save this and load it into layout.

In layout go to the Surfaces panel and make the points 100% transparent and apply the Super Glow shader.

Now add the Super Glow image filter with the following settings:

Width: 15

Glow percent (fringe and surface) 100

Particle glow

Gradient color

Glow color (255 118 0)

Gradient color (255 0 0)

This should give you a rich fireball type look.  By animating the size of the ball you will notice that as the particles are dense the color will be more the main glow color.  The less dense areas will be the gradient color.  This can be used to create very rich explosion effects.


How to animate glow width

In the tutorial we are going to animate the glow width on a surface using a null.

First start up Layout and load in any simple object.  Choose a large surface on that object and apply the Super Glow shader to it.

Now add the Super Glow image filter to the scene.  Bring up the Super Glow option panel and press the Null button nearest the Glow Width.  Ok the dialog leaving the Null name as Null.  The Null button should now be highlighted.  If you wished to turn off the Null you can click the Null button once.  Clicking it while it is off will bring up the requestor panel, clicking it while it is on will just toggle it off.

Now go to the objects panel and choose Add Null Object.  Leave the objects panel and select Edit->Objects and make sure that the Null object is the selected object.  Now press the Motion Graph button.  This brings up the Motion Graph panel.

In this panel we first need to set all the default values.  Choose the X position channel and type in 35 and press return.  Our glow will start out with a width of 35.

Now choose the Y position channel and type in 100 for a 100% glow fringe.

Now choose the Z position channel and type in 1 for a 1.0 falloff.

Now choose the X scale channel and type in 50 for a 50% surface glow.

Now press the create button and make a new key frame at frame 30.

Choose the X position channel and change its value to be 0 and leave the Motion Graph panel.

Now render your animation from frames 1-30.  You should see the glow width change from 35 to 0 as the animation progresses.